Stap 11: Het Roverbot Program
De eenvoudigste manier om te beschrijven wat dit programma doet is het wacht het lichtniveau in de kamer te bereiken van een bepaalde intensiteit en zodra dat licht niveau is bereikt, het programma schakelen de rover plaatsvervangers het recht en links motoren in- en uitschakelen. Dit zal resulteren in de rover draaien rechts, toen links, toen rechts, toen links, ad infinitum. Hier is wat de BASIC-code als kijkt:
' BASIC geconverteerd vanuit stroomdiagram:
"C:\Documents and Settings\Desktop\lightmeter1.cad
' Geconverteerd op 1/25/2012 op 06:10:25
belangrijkste:
label_6: ' terwijl b0 minder dan 201 is
ReadADC 4, b0 ' waarde van b0 krijgen van pin 4 (hoeveelheid licht valt op RP sensor)
serout 0,N2400,(#b0,13,10) ' output waarde van b0 (hoeveelheid licht valt op RP sensor) om het programmeren van de seriële terminal van de redacteur
wacht 1 ' wacht één seconde voordat u verdergaat
Als b0 > 200 dan label_51 ' als waarde van b0 > 200 (als de helderheid van het licht op de sensor RP bereikt gekozen niveau, roverbot begint te dansen
goto label_6 ' licht is niet helder genoeg dus, neem een andere lezing
label_51:
label_27:
hoge 0 ' schakelaar liet roverbot motor op
laag 1 ' juiste roverbot motor schakelen
onderbreken van 1000 ' juiste motor draait gedurende één seconde
lage 0 ' links motor uitschakelen
hoge 1 ' schakelaar rechts motor op
onderbreken van 1000 ' juiste motor draait gedurende één seconde
goto label_27 ' Herhaal Dance Dance Roverbot is uitgeschakeld
Het "readadc 4, b0" proces leest de waarde van de analoog / digitaal-converter op pin 4 en die waarde toegewezen aan b0 de mogelijke waarden van 0 tot 255 afhankelijk van de hoeveelheid licht valt op de foto-weerstand (RP lopen) verbonden met pin 4 op de PICAXE.
De "serout 0,N2400,(#b0,13,10)" input/output is niet nodig voor het programma te draaien. Ik heb ingevoegd het zodat ik kon de lichtniveaus in de kamer op de seriële Terminal van de redacteur van de programmering testen en het programma dienovereenkomstig aan te passen. Als u het stroomdiagram omzetten in BASIC en program van de PICAXE kunt u de seriële Terminal weergeven door op F8 te drukken. In de afbeelding kunt u zien dat ik de lichtniveaus in een kamer met een dimmer schakelaar op het licht testte.
Het proces van de "wacht" vertelt het programma om te wachten op een seconde voordat u verdergaat met de volgende stap. Op de op de programmering Editor's seriële Terminal zag ik de waarden weergegeven van eenmaal per seconde.
De "als b0 > 200 dan label_51" besluit diamant zegt dat als de waarde toegekend aan b0 groter is dan 200 dan ga naar de volgende stap in het programma anders ga terug naar de "readadc 4, b0" proces. Als je kijkt naar de afbeelding van de seriële Terminal wat doen je denken gebeurde wanneer ik hief het lichtniveau van de dimmer schakeloptie en de waarde in b0 sprong van 122 naar 235?
De "hoog 0" input/output vertelt de PICAXE aan de pin 0 hoog ingesteld. Hiermee start u de motor van de linker kant op de rover te beginnen draaien naar voren.
De uitgangen "laag 1" vertelt de PICAXE aan pin 1 laag ingesteld. Dit zal de rechterkant motor vertellen op de rover om te stoppen met draaien.
De "lage 0" input/output vertelt de PICAXE aan de pin 0 laag ingesteld. Dit zal de linkerkant motor vertellen op de rover om te stoppen met draaien.
De "hoog 1" ingang/uitgang vertelt de PICAXE aan pin 1 hoog ingesteld. Hiermee start u de motor van de rechterkant op de rover te beginnen draaien naar voren.
Als u wilt het programma uitvoert, zorg ervoor dat de Snap Circuits schuif schakelaar S1 is overgeschakeld af anders het programma zal uitvoeren terwijl het programma nog wordt gedownload naar de PICAXE en kan per ongeluk de kabel programmering als het lichtniveau vallen op de RP-sensor ervoor zorgt dat de waarde groter is dan 200 veroorzakend de roverbot om te dansen. Daarna, zorg ervoor dat de Snap Circuits 9 volt batterij blok B5 aanstaat of het programma niet gedownload naar de PICAXE. De Snap Circuits programmering usbkabel verbinden met uw computer.
1. Sluit de gele module aan op de S-In module op het Snap Circuits 8 pins Socket U14 blok (de PICAXE chip vervoerder).
2. Sluit de Rode module aan de module van de S-uitgang op het Snap Circuits 8 pins Socket U14 blok (de PICAXE chip vervoerder).
3. Sluit de zwarte module aan de GND of negatieve (-)-module op de 8 pins Socket U14 blok (de PICAXE chip vervoerder).
Alvorens over te gaan wil je ter dekking van de RP-sensor met uw vinger.
In de programmering Editor Klik op PICAXE en klik vervolgens op uitvoeren. Een statusbalk wordt de voortgang van de download van het programma om aan te tonen de PICAXE weergegeven.
Zodra het programma gedownload, moet u de programmering kabel loskoppelen van uw computer en Dance Dance Roverbot. Plaats de Roverbot op de grond een veilige afstand van eventuele obstakels. Vervolgens zet de schuif schakelaar S1 aan. Wanneer u klaar om te kijken van uw Roverbot dans bent, Verwijder langzaam uw vinger van de RP-sensor. Wanneer voldoende licht valt op de sensor aan de waarde van b0 201 de Dance Dance Roverbot zal beginnen draaien rechts, dan links, dan rechts, dan links (een robotachtige versie van The Twist), totdat u de schuif schakelaar uitzetten.