fredag den 28. september 2007

ESEA - Labnotes

NXT programming - Lesson 4
Varighed: 3.5 timer - kl. 09.00-12.30
gruppemedlemmer: Aslak, Ruben og Lars

Målet for i dag er at påbegynde arbejdet med linjefølger-robotten, som skal deltage i næste uges Robot Race. Følgende delmål forventes at blive gennemført i dag.
  • implementere følgende 3 filer : BlackWhiteSensor.java, LineFollowerCal.java og Locomotion.java
  • arbejde med at optimere på disse, for på denne måde at optimere på robottens opførsel på en sort streg på en hvid baggrund. Arbejdet med at få robotten til at genkende det grønne "målområde" venter vi med til senere

Filen BlackWhiteSensor.java http://userportal.iha.dk/~20060651/JavaFiles_ESEA/BlackWhiteSensor.java omfatter en kalibrering af lyssensoren, hvor bilen placeres over hhv. en sort og en hvid flade, således at lysintensiteterne for disse kan gemmes. På baggrund af lysintensitetsmålingerne for sort og hvid beregnes en tærskelværdi som bruges til at fastslå om robotten skal dreje til højre eller venstre ((intensitet_sort+intensitet_hvid)/2).


Filen Locomotion.java er den samme, som er blevet benyttet ved tidligere lektioner. Til denne lektion har vi ændret lidt i filen, og den ændrede kan findes her: http://userportal.iha.dk/~20060651/JavaFiles_ESEA/Locomotion.java


Filen LineFollowerCal.java er main-filen i dette projekt. Den version af filen, som vi var kommet frem til ved denne lektions afslutning kan findes her: http://userportal.iha.dk/~20060651/JavaFiles_ESEA/LineFollowerCal.java


Den første del af dagens opgave forløb ganske uden overraskelser. BlackWhiteSensor.java bruges af LineFollowerCal.java til at teste om sensoren er på sort eller hvidt underlag.


Anden del af dagens opgave, at ændre i LineFollowerCal-filen og optimere på robottens opførsel blev påbegyndt. Denne opgave slutter først, når selve løbet Robot Race løber af staben på næste fredag (d. 5. oktober 2007). Vores tilgang til robottens opførsel er en videreførsel af tilgangen til WallFollower-problematikken (se Lektion 2). I stedet for den eksisterende kode, drejer robotten, i den ændrede kode, til at begynde med kun en lille smule til hhv. højre og venstre, når lyssensoren måler intensiteter svarende til hhv. sort og hvid. Det bløde sving opnås ved at begge hjul kører på samme tid, det ene hurtigere end det andet. Måles der den samme intensitet 2 gange i træk (eksempelvis hvid) drejer robotten skarpere til venstre. Dette skarpere sving opnås underforstået ved, at det venstre hjul (i dette tilfælde) sættes til en endnu lavere hastighed. Som koden er i øjeblikket, bliver der, når den samme intensitet (farve) er målt 3 gange i træk drejet aller skarpest, som resultat af, at det forventes at robotten er på afveje.


Ved afslutning af denne lektion blev det besluttet at gruppen mødes igen på mandag (d. 1.oktober 2007) kl. 17.00.

Ingen kommentarer: