torsdag den 16. september 2010

Lab Session 2

Vi tilføjede SonicSensor'en til robotten fra sidste lab session 1, og derefter overførte vi SonicSensorTest programmet til NXT enheden.

Programmet målte afstanden vha sensoren via metoden getDistance(). Vi sad og eksperimenterede med at måle afstanden til forskellige objekter. I et forsøg på at nå så tæt på de maksimale 254 cm som muligt, så målte vi direkte mod væggen. Her lykkedes det os at rykke sensoren væk fra væggen til at måle 180 som den højeste værdi. Hvis vi målte længere væk var den målte værdi blot 255, som indikerer at sensoren ikke modtager signalet tilbage inden timeout.

Herefter overførte vi programmerne Tracker og Car til NXT enheden. Ved at stille robotten i en vilkårlig afstand fra et objekt (selvfølgelig under 2 meter), så blev SonicSensor'en her anvendt til at flytte robotten hen til en ønsket afstand angivet af værdien af desiredDistance i Tracker programmet. Ved at eksperimentere med forskellige værdier, så viste forsøget tydeligt at robotten placerede sig i den angivede afstand i forhold til objektet foran robotten. Robotten stod herefter og kørte en lille smule frem og tilbage omkring den ønskede afstand i forsøget på at opretholde den ønskede afstand.

torsdag den 9. september 2010

Lab Session 1

Marc Ilsø Poulsen (20072826)
Peter Bartram Hansen (20063465)
Bjarne Antonsen (20071828)

Formålet med denne lab session var at få installeret leJOS, og derefter bygge vores første simple robot med lyssensoren (Linefollower)

Vi havde store problemer med at få forbindelsen til NXT enheden til at virke. Vi kørte på en Vista 64 bit maskine, så vi sad og rodede alt for langt tid med at forsøge at finde den rigtige driver. Det viste sig dog ikke at være et driver problem, men derimod at leJOS kun fungerer med 32 bit JDK, og på maskinen lå både 32 bit og 64 bit versionen hvilket åbenbart skabte problemer. Ved at uninstalle 64 bit JDK'en kunne vi endelig komme i gang med dagens opgaver...

Tabel over diverse farveværdier målt med lyssensoren:


LED=ON

white = 62
tree = 57-59
black = 35-36
blue = 44
blue (floor) = 41


LED=OFF

white = 55-56
tree = 46-47
black = 28
blue = 33
blue (floor) = 33

Black-white threshold er i programmet valgt til 45, hvilket må være fordi værdien er cirka midt imellem værdierne for sort og hvid.

Manipulering af "sample intervallet" viste at robotten virkede OK ved 10 og 100 ms, men ved 500 og 1000 ms sampler robotten for langsomt til at kunne nå at korrigere retningen, så den opfører sig korrekt ved de høje værdier.

Brug af strenge direkte i metodekald viste sig at opbruge memory en del hurtigere end ved anvendelse af strengvariabler i metodekaldene.