ERSP

From ImageWiki

(Difference between revisions)
Jump to: navigation, search
m (Added to ERSP category)
Line 1: Line 1:
-
Denne side er samlingspunktet for erfaringer o.lign. med ERSP. P sigt er det meningen at ERSP skal erstattes af [[Player/Stage/Gazebo]], da det vil vre fordelagtigt at benytte en mere ben platform.
+
[[Category:ERSP]]
 +
Denne side er samlingspunktet for erfaringer o.lign. med ERSP. P sigt er det meningen at ERSP skal erstattes af [[Player/Stage/Gazebo]], da det vil v?re fordelagtigt at benytte en mere ?ben platform.
== Introduktion til ERSP ==
== Introduktion til ERSP ==
-
ERSP er en software platform til udvikling af robotapplikationer. Generelt er dokumentation temmelig god og det anbefales at have denne ved hnden nr ERSP benyttes. Specielt er den Doxygen-genererede dokumentation yderst anvendelig. Pt. benyttes ERSP p DIKU's [[The Scorpion robots|Scorpion robotter]]. Der er (noget simplificeret) to tilgange til udvikling med ERSP (beklager terminologimisbruget)
+
ERSP er en software platform til udvikling af robotapplikationer. Generelt er dokumentation temmelig god og det anbefales at have denne ved h?nden n?r ERSP benyttes. Specielt er den Doxygen-genererede dokumentation yderst anvendelig. Pt. benyttes ERSP p DIKU's [[The Scorpion robots|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++.
+
* '''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 prget af at ERSP er designet til Top-down udvikling.
+
* '''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 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++.
+
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++.
== Dokumentation ==
== Dokumentation ==
Dokumentationen til ERSP er generelt ganske god. Specielt kan det anbefales at blive fortrolig med den Doxygen genererede dokumentation. P DIKU's UNIX system findes dokumentationen i kataloget
Dokumentationen til ERSP er generelt ganske god. Specielt kan det anbefales at blive fortrolig med den Doxygen genererede dokumentation. P DIKU's UNIX system findes dokumentationen i kataloget
  ~image/doc/ERSP/
  ~image/doc/ERSP/
-
og p de brbare computere til [[the Scorpion robots|Scorpion robotterne]] findes den i kataloget
+
og p de b?rbare computere til [[the Scorpion robots|Scorpion robotterne]] findes den i kataloget
  /opt/evolution-robotics/doc/
  /opt/evolution-robotics/doc/
-
Vi har desvrre ikke lov til at opbevare dokumentationen offentligt (s som p wiki'en) da Evolution godt kan lide at holde deres kort yderst tt til kroppen.
+
Vi har desv?rre ikke lov til at opbevare dokumentationen offentligt (s som p wiki'en) da Evolution godt kan lide at holde deres kort yderst t?t til kroppen.
== 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.
-
* '''[[ERSP Templates|Skabeloner]].''' Et par skabeloner som det kan vre hensigtsmssigt at tage udgangspunkt i nr ERSP benyttes for frste gang.
+
* '''[[ERSP Templates|Skabeloner]].''' Et par skabeloner som det kan v?re hensigtsm?ssigt at tage udgangspunkt i n?r ERSP benyttes for f?rste gang.
-
* '''[[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.
+
* '''[[ERSPProgramFFF|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.
-
* '''[[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.
+
* '''[[ERSPProgramOpenCV|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 ==
== Composer ==
-
For at f fuld udbytte af ERSP kan det anbefales at benytte Evolutions grafiske vrktj ''composer.sh''. En kort vejledning i at benytte dette vrktj kan ses [[Media:Composer.sh_vejledning.pdf|her]]. Desuden anbefales det at lse Evolutions egne tutorials, da disse gr mere i dybden med vrktjet.
+
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 [[Media:Composer.sh_vejledning.pdf|her]]. Desuden anbefales det at l?se Evolutions egne tutorials, da disse g?r mere i dybden med v?rkt?jet.
== Fejl i tutorial ==
== Fejl i tutorial ==
-
I tutorialen (afsnit 2.8) er der omtalt en funktion der hedder 'handle_new_landmark', den er erklret p flgende mde:
+
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)
   void SLAMCorrection::handle_new_landmark(const Landmark *landmark)
-
men i flge ERSP-API'en skal den erklres p flgende mde
+
men i f?lge ERSP-API'en skal den erkl?res p f?lgende m?de
   void handle_new_landmark (Landmark *landmark)
   void handle_new_landmark (Landmark *landmark)
alts ingen 'const'.
alts ingen 'const'.
-
For at bruge de eksempler som er med i tutorialen skal man alts slette 'const', ellers overloader man ikke den funktions erklring som er i superclassen (OdometryCorrector).
+
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).

Revision as of 09:52, 30 August 2007

Denne side er samlingspunktet for erfaringer o.lign. med ERSP. P� sigt er det meningen at ERSP skal erstattes af Player/Stage/Gazebo, 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. Generelt er dokumentation temmelig god og det anbefales at have denne ved h?nden n?r ERSP benyttes. Specielt er den Doxygen-genererede dokumentation yderst anvendelig. 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++.

Dokumentation

Dokumentationen til ERSP er generelt ganske god. Specielt kan det anbefales at blive fortrolig med den Doxygen genererede dokumentation. P� DIKU's UNIX system findes dokumentationen i kataloget

~image/doc/ERSP/

og p� de b?rbare computere til Scorpion robotterne findes den i kataloget

/opt/evolution-robotics/doc/

Vi har desv?rre ikke lov til at opbevare dokumentationen offentligt (s� som p� wiki'en) da Evolution godt kan lide at holde deres kort yderst t?t til kroppen.

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