Robotsimulering

 

 

 

Ett samarbete mellan Tim portnoff och Henrik Lernmark

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Robotinl�rning

 

 

En robots nuvarande problemst�llning �r f�r tillf�llet

             Var �r jag, var ska jag och vad ser jag?

             Hur skall jag kombinera detta till n�got vettigt?

 

 

Robotinl�rning �r en adaptiv process som kombinerar indata fr�n sensorer till utdata till effektorer och som f�rb�ttrar robotens prestation allteftersom tiden g�r

Cloud Callout: Vad g�r jag nu?
 


 

 

 


Varf�r Robotsimulering?

 

             Kostnadseffektivt

N�r v�l simulatorn �r byggd kan m�nga anv�nda den

             Till�ter misstag

Inga dyra robotdelar kan g� s�nder

             Ger en f�rsta f�rst�else

Simulatorn utreder problematiken kring robotstyrning och inl�rning

             Snabbare inl�rning

Inl�rningsalgoritmer kan l�ra sig i simulerad tid

 

 

 

 

 

V�r Simulator �r

 

             Objektorienterad

             Skriven i java

             Arbetar i realtid

             Skalbar �ver n�tverket

             Flexibel (Inl�rningsalgoritmen kopplas till roboten)

             Utbyggbar med nya komponenter

 

 

 

 

 

 


Simulatorns delar och kommunikation

Grafiskt Gr�nssnitt

Rounded Rectangular Callout: Simulatorstatus
Rounded Rectangular Callout: Robot-information

Rounded Rectangular Callout: Kartobjekt 


Roboten Khepera

             Flera kommunikationsalternativ

             Relativt Billig

             Bra utbyggnadsm�jligheter

             Liten

             68030 processor

 
Konstruerad av Labratoire de Microinformatique


 

 

 


Kommunikation med Kheperan

 

Styrprogrammet kommunicerar med den inbyggda kommandotolken i Kheperan

 

 

 

 

 

 

 

 


Sensorer

 

Sensorer m�ter n�gon aspekt av omgivningen och omvandlar dessa till ett eller flera reella tal

 

                  Fotosensor

M�ter ljus fr�n lampor

                  Avst�ndssensor

M�ter avst�nd till objekt

                  N�rhetssensor

M�ter reflekterat ljus fr�n n�rbel�gna objekt

                  Kompass

Bed�mer riktningen p� den robot den sitter p�

                  GPS

Bed�mer positionen av roboten den sitter p�

                  Kartograf

Ger en bild av hur omgivningen ser ut

 

 

Effektorer

 

Effektorer p�verkar omgivningen p� n�got s�tt

 

                  Tv�hjulsmotor

Ger roboten den sitter p� en hastighet och en riktning med programmerbar acceleration och maxhastighet

                  Lampa

Genererar ljus

                  Lysdiod

Genererar lite mindre ljus

 

 

 

Exempel p� en sensor och en effektor

 


Fotosensor m�ter ljus fr�n lampor i omgivningen enligt:

 



Tv�hjulsmotorn p�verkar robotens hastighet och riktning enligt:

 


Med en maximal hastighets�ndring mellan tv� updateringar som avg�rs av accelerationen

Kartobjekt

 

Kartobjekt �r de grundl�ggande byggklossarna f�r att skapa en bana i robotsimulatorn.

Ett kartobjekt kan ha:

             Ett annat kartobjekt kopplat till sig

             En eller flera effektorer

             En eller flera sensorer

 
 


Ett kartobjekt har:

             ett material

             en r�relse

             en polygon

 

 

Exempel p� kartobjekt �r lampor, bollar och v�ggbitar

Aggregationsmodell fr�n klassen robot

 

 

 

 

 

 

 

 

 

 


Brister i simulatorn

 

             Simulatorn fungerar bra men �r lite l�ngsam n�r det finns m�nga objekt p� sk�rmen

             Kollisonshantering �r inte komplett och hanterar ej rotations�ndringar

             M�nga sensorv�rden �r utr�knade fr�n f�renklade algoritmer

             Simulatorn kan bara k�ra i realtid

             Man kan inte konstruera nya robotar utan att kunna java

             Vissa av Kheperans kommandon �r inte implementerade

             Kommunikationen �ver RS-232 med den riktiga Kheperan �r inte gjord �n

 

Positivt med Simulatorn

 

             Programmet har ett grafiskt gr�nssnitt som g�r det l�tt f�r anv�ndaren att testa en robot

             Det �r l�tt att skapa ett nytt styrprogram (om man kan Java)

             Det �r m�jligt att definiera en ny robot genom att bara skapa ett par nya klasser.

             Programmet kan l�tt ut�kas i funktionalitet genom att definiera nya sensorer eller effektorer

             Nyb�rjare kan koppla p� extra sensorer som underl�ttar styrning och inl�rning (ex. GPS och Kompass)

             Skalbarhet genom att utnyttja flera datorer m�jligg�r st�rre projekt

 

 

 

 


Tack!