Dato: 28/10 - 2010
Tid arbejdet: kl 11 til 14
Deltagere: Lasse Staal, Esben Andersen og Toke Brødsted
Bil 1
Ved starten af denne lektion begyndte vi at implementere den første type bil som skal køre hurtigere jo højere lyde den registrere. Dette løste vi ved at lave en 1 til 1 mapping fra lyd registreret til motor power da begge har en skala fra 0 til 100.
Bil 2 - lys
Den anden bil koder vi ved at bruge samme klasse som bil 1 da vi ved løsningen hertil havde sat to motorer til bare at køre som var det en motor. Måden vi gør det på er at lave en specifik run metode til hver type bil. Dette gør at vi hurtigt kan teste de forskellige biler i forhold til hinanden.
Første implementation af bil 2 laves ved at des mere lys registreret på højre lyssensor før højre hjul til at køre hurtigere rundt.
Den anden implementation bytter om på dette så des mere lys registreret ved højre lyssensor des hurtigere kører højre hjul.
Ved begge vores implementationer med lyssensorer har vi valgt at implementere en normalize funktion som ændrer den registrerede lys værdi om til en værdi som vi kan få vores motorer til at køre. Denne metode er taget direkte fra [3], Tom Dean, Notes on construction of Braitenberg's Vehicles, Chapter 1-5 of Braitenbergs book.
Videoen viser at bilen følger lyset da den side hvor lyset er kraftigst kører langsomt. Man kan se at robotten drejer primært til den ene side. Dette skyldes at den sides lyssensor registrerer højere værdier end den anden side.
For at få robotten til at køre lige har vi hardcodet noget kalibrering i koden så robotten nu kører lige:
Herefter byttede vi om på sensor portene så robotten nu flygtede fra lyset frem for at køre mod det
Bil 2 - lyd
Vi havde kun en lydsensor til rådighed da vi kom til denne opgave så vi har valgt at løse denne opgave teoretisk.
Man burde sagtens få en robot til at bevæge sig efter lyden alt afhængigt af hvor godt lydsensorerne kan måle lyden, hvor langt de er fra hinanden. Man kan eventuelt lave en lille væg mellem de to lydsensorer for at bryde lyden i mellem dem og få en større afstand.
Bil 2 - lyd og lys
Ved næste opgave hvor vi skulle indføre en inhibitor valgte vi at lave en lydsensor hvis værdi vi trækker fra motorernes kraft. Udover den nye lydsensor så kører den præcist som i bil 2 med lyd.
Bil 2 - Dynamisk
Dette løste vi ved at flytte lyssensorerne ud i en thread som selv registrede maks og min værdier som der så blev gemt. Registrere hele tiden nye værdier.
I den sidste video her kan man se resultatet fra i dag. Det viser at robotten gemmer nye lys værdier og den kan konfigurere sig selv til at køre lige ud.