Soundsensor.
1.assignment: lav programmet om så vi aflæser lyd (i 100. dele), i stedet for a
fstand som vi gjorde i sidste uge med ultrasonic sensor.
Det ændrede program er
at finde her: http://code.google.com/p/lego2010/source/browse/trunk/Lego+Lab3/src/SoundSensorTest.java?spec=svn8&r=8 .
Ved aflæsningen af lyd ved forskellige distancer fandt v
i ud af at der registreres hvor høj lyden er, og i det øjeblik hvor lyden er. Hvis lyden ikke er "lang" nok og robotten ikke sampler tit nok kan den miste målingen af lyden, da den så ikke bliver spurgt tit nok.
Vi prøvede at logge noget data, med de udleverede programmer, vi ændrede lidt i dataloggeren for at få denne til at producere et output vi havde nemmere ved at læse(http://code.google.com/p/lego2010/source/browse/trunk/Lego+Lab3/src/DataLogger.java?spec=svn8&r=8), og plotte dette med følgende resutat:

2.Assignment: Afprøvning af soundctrcar, hvor bilen reagerer på lyd.
Vi ændrede koden sådan at vi kunne afslutte programmet uafhængigt af tilstanden via. en buttonlistener. Du kan se koden her: http://code.google.com/p/lego2010/source/browse/trunk/Lego+Lab3/src/SoundCtrCar.java?spec=svn8&r=8 .
Vi forsøgte os med forskellige værdier for soundTreshold, vi havde svært ved at "larme" nok, så vi startede med at sætte den til 40 og satte den herefter op til 60 og tilsidst 90. Ved 40 skulle der ikke ret meget til for at robotten skiftede retning, det var nok at vi grinte. Ved 60 var robotten nem at styre, og det var ikke ubehagelig højt man skulle kommunikere med den.
Vi ændrede også tiden hvor den sov, fordi vi syntes at robotten var svær at styre fordi den sov så længe.
Vi prøvede at klappe af bilen, man skulle klappe meget højt for at den reagerede (når treshold var på 90), derimod var det nemmere at "råbe" højt nok.
3.Assignment: Lave metode til at måle klap, jvf. Toledos metode
Vi lavede et program der målte lyd og opdagede når det var et klap (jvf. Toledo), hvis det var et klap kørte den ligesom i SoundCtrCar. Vi ændrede igen på tresholdværdien fra 85 ned til 60, da vi havde svært ved at klappe højt nok. Herefter var det nemmere at få registreret et klap. Vi forsøgte også at råbe af robotten, men som forventet virkede dette ikke, da det er svært at råbe højt i et kort stykke tid.
Sammenlign metoderne i de to programmer:
I SoundCtrCar lytter vi efter en lyd der er større end 90, og når det sker gør vi noget.
Med Toledos metode venter vi på en lyd der er lav og så høj (over 85) inden for 25 ms og så bliver lav igen indenfor 250 ms.
I soundCtrCar vil bilen nok reagere på klap, men også generelt larm på over 90, hvor Toledo stiller krav til at lyden skal være lav så høj og så blive lav igen og reagerer derfor ikke på f.eks. et råb.
Vores implementation af Toledos metode er at finde her: http://code.google.com/p/lego2010/source/browse/trunk/Lego+Lab3/src/OurSoundCar.java?spec=svn8&r=8
Vi loggede vores klap således at vi gemte værdien 200 i vores .txt så det var nemt at se når robotten genkendte et klap. Grafen ses herunder:

Ingen kommentarer:
Send en kommentar