ERSP

From ImageWiki

(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
Denne side er samlingspunktet for erfaringer o.lign. med ERSP. P sigt er det meningen at ERSP skal erstattes af [http://playerstage.sourceforge.net/ Player], da det vil vre fordelagtigt at benytte en mere ben platform.
Denne side er samlingspunktet for erfaringer o.lign. med ERSP. P sigt er det meningen at ERSP skal erstattes af [http://playerstage.sourceforge.net/ Player], da det vil vre fordelagtigt at benytte en mere ben platform.
 +
 +
== Introduktion til ERSP ==
 +
ERSP er en software platform til udvikling af robotapplikationer. Pt. benyttes ERSP p DIKU's [[Scorpion_robotterne|Scorpion robotter]]. Der er (noget simplificeret) to tilgange til udvikling med ERSP (beklager terminologimisbruget)
 +
* '''Top-down:''' ERSP stiller en rkke 'behaviors' til rdighed, der hver lser en serie hj-niveau opgaver. Disse kan sttes sammen vha. et grafisk vrktj kaldet 'composer' (se lngere nede p siden). Hvis ERSP ikke har de ndvendige 'behaviors' er det muligt at implementere nye i C++.
 +
* '''Bottom-up:''' ERSP er lagdelt software, hvilket betyder at det er muligt at starte udviklingen af applikationer fra hardwarelaget. Derved er det muligt at tilg de enkelte dele af robotten direkte fra C++. Dog er API'en prget af at ERSP er designet til Top-down udvikling.
 +
 +
Generelt fs det strste udbytte af ERSP nr Top-down strategien vlges. Desvrre er denne strategi ikke srlig fleksibel, hvorfor det ofte er ndvendigt at skrive sine egne 'behaviors', hvilket er nsten lige s besvrligt som at udvikle programmet udelukkende i C++.
== ERSP eksempelprogrammer ==
== ERSP eksempelprogrammer ==
Her er et par simple eksempelprogrammer til Scorpion robotterne hvor ERSP benyttes.
Her er et par simple eksempelprogrammer til Scorpion robotterne hvor ERSP benyttes.
-
* '''[[ERSPProgramFFF|Fin Fejebakkeflger.]]''' Et simpelt program, der fr en robot til at flge et objekt med en karakteristisk farve.
+
* '''[[ERSPSkabeloner|Skabeloner]].''' Et par skabeloner som det kan vre hensigtsmssigt at tage udgangspunkt i nr ERSP benyttes for frste gang.
-
* '''[[ERSPProgramOpenCV|Konvertering til OpenCV.]]''' Et lille eksempel, der viser hvorledes ERSP kan benytte OpenCV.
+
* '''[[ERSPProgramFFF|Fin Fejebakkeflger]].''' Et simpelt program, der fr en robot til at flge et objekt med en karakteristisk farve. Programmet benytter ERSP's billedbehandlingssystem, hvilket gr programmet undvendigt komplekst.
 +
* '''[[ERSPProgramOpenCV|Konvertering til OpenCV]].''' Et lille eksempel, der viser hvorledes ERSP kan benytte OpenCV. Nr kun ERSP's hardware lag benyttes er der ingen problemer ved at anvende OpenCV -- problemerne opstr nr ERSP's billedbehandlingssystemer benyttes.
== Composer ==
== Composer ==

Revision as of 15:39, 9 July 2006

Denne side er samlingspunktet for erfaringer o.lign. med ERSP. P� sigt er det meningen at ERSP skal erstattes af Player, da det vil v�re fordelagtigt at benytte en mere �ben platform.

Contents

Introduktion til ERSP

ERSP er en software platform til udvikling af robotapplikationer. Pt. benyttes ERSP p� DIKU's Scorpion robotter. Der er (noget simplificeret) to tilgange til udvikling med ERSP (beklager terminologimisbruget)

  • Top-down: ERSP stiller en r�kke 'behaviors' til r�dighed, der hver l�ser en serie h�j-niveau opgaver. Disse kan s�ttes sammen vha. et grafisk v�rkt�j kaldet 'composer' (se l�ngere nede p� siden). Hvis ERSP ikke har de n�dvendige 'behaviors' er det muligt at implementere nye i C++.
  • Bottom-up: ERSP er lagdelt software, hvilket betyder at det er muligt at starte udviklingen af applikationer fra hardwarelaget. Derved er det muligt at tilg� de enkelte dele af robotten direkte fra C++. Dog er API'en pr�get af at ERSP er designet til Top-down udvikling.

Generelt f�s det st�rste udbytte af ERSP n�r Top-down strategien v�lges. Desv�rre er denne strategi ikke s�rlig fleksibel, hvorfor det ofte er n�dvendigt at skrive sine egne 'behaviors', hvilket er n�sten lige s� besv�rligt som at udvikle programmet udelukkende i C++.

ERSP eksempelprogrammer

Her er et par simple eksempelprogrammer til Scorpion robotterne hvor ERSP benyttes.

  • Skabeloner. Et par skabeloner som det kan v�re hensigtsm�ssigt at tage udgangspunkt i n�r ERSP benyttes for f�rste gang.
  • Fin Fejebakkef�lger. Et simpelt program, der f�r en robot til at f�lge et objekt med en karakteristisk farve. Programmet benytter ERSP's billedbehandlingssystem, hvilket g�r programmet un�dvendigt komplekst.
  • Konvertering til OpenCV. Et lille eksempel, der viser hvorledes ERSP kan benytte OpenCV. N�r kun ERSP's hardware lag benyttes er der ingen problemer ved at anvende OpenCV -- problemerne opst�r n�r ERSP's billedbehandlingssystemer benyttes.

Composer

For at f� fuld udbytte af ERSP kan det anbefales at benytte Evolutions grafiske v�rkt�j composer.sh. En kort vejledning i at benytte dette v�rkt�j kan ses her. Desuden anbefales det at l�se Evolutions egne tutorials, da disse g�r mere i dybden med v�rkt�jet.

Fejl i tutorial

I tutorialen (afsnit 2.8) er der omtalt en funktion der hedder 'handle_new_landmark', den er erkl�ret p� f�lgende m�de:

 void SLAMCorrection::handle_new_landmark(const Landmark *landmark)

men i f�lge ERSP-API'en skal den erkl�res p� f�lgende m�de

 void 	handle_new_landmark (Landmark *landmark)

alts� ingen 'const'. For at bruge de eksempler som er med i tutorialen skal man alts� slette 'const', ellers overloader man ikke den funktions erkl�ring som er i superclassen (OdometryCorrector).

Personal tools