Stap 18: Programma voor de autonome Bot
Het programma - het is een eenvoudig programma waarmee de bot gedurende 3 seconden vooruit, stoppen dan verplaatsen naar achteren gedurende 3 seconden, rechtsaf voor 3 seconden en vervolgens linksaf gedurende 3 seconden. Ik ontwikkelde dit programma na ongeveer 15 uur van R & D. Het grote voordeel van dit programma is dat alle mijn subroutines voor het verplaatsen van vooruit, achteruit, draaien, stoppen, etc. klaar die zou me enorm helpen in de komende modellen.
Ik heb het programma bijgevoegd:
VOID Setup {}
pinMode (8, OUTPUT); Ingang1 van Motor1 ingesteld op Pin 8 van Arduino
pinMode (9, OUTPUT); Ingang2 van Motor1 ingesteld op Pin 9 van Arduino
pinMode (10, OUTPUT); Ingang1 van Motor2 ingesteld op Pin 10 van Arduino
pinMode (11, OUTPUT); Ingang2 van Motor2 ingesteld op Pin 11 van Arduino
}
void loop {}
Halt(); Stop beide motoren. Dit geeft vloeiende beweging door het vermijden van springen van de motor tijdens het verwisselen van rotatie onmiddellijk
Vooruit(); Aanroepen naar voren functie die op zijn beurt Forward1 & Forward2 functies aanroept
delay(3000); Vertraging van 3 seconden
Halt(); Stoppen van de Robot
delay(250); Vertraging van 0.1 seconden voordat elke motor opnieuw om vloeiende bewegingen (geen kick)
Reverse(); Aanroepen van Reverse-functie, die op zijn beurt Reverse1 & Reverse2 functies aanroept
delay(3000); Vertraging van 3 seconden
}
VOID vooruit() {/ / verplaatsen Robot voorwaarts d.w.z. beide motoren gaat vooruit
Forward1(); Motor1 gaat vooruit
delay(150); Vertraging van 0,15 seconden voordat de tweede motor begint te vermijden plaatsen van de batterijen
Forward2(); Motor2 gaat vooruit
}
VOID Reverse() {/ / verplaatsen Robot achteruit d.w.z. beide motoren beweegt Reverse
Reverse1(); Motor1 wordt achterwaarts verplaatst
delay(150); Vertraging van 0,15 seconden voordat de tweede motor begint te vermijden plaatsen van de batterijen
Reverse2(); Motor2 wordt achterwaarts verplaatst
}
VOID Halt() {/ / zowel motoren stoppen (niet breken die dat jaar abrupt onderbroken)
Halt1();
Halt2(); Stop beide motoren. Dit geeft vloeiende beweging door het vermijden van springen van de motor tijdens het verwisselen van rotatie onmiddellijk
}
VOID Forward1() {/ / Motor1 wordt voorwaarts verplaatst (rechtsom)
digitalWrite (8, hoge);
digitalWrite (9, laag);
}
VOID Forward2() {/ / Motor2 gaat vooruit (rechtsom)
digitalWrite (10, hoge);
digitalWrite (11, laag);
}
VOID Reverse1() {/ / Motor1 beweegt omgekeerde (Anti rechtsom)
digitalWrite (8, laag);
digitalWrite (9, hoge);
}
VOID Reverse2() {/ / Motor2 beweegt omgekeerde (Anti rechtsom)
digitalWrite (10, laag);
digitalWrite (11, hoge);
}
VOID Halt1() {/ / Motor1 stoppen (niet breken die dat jaar abrupt onderbroken)
digitalWrite (8, laag);
digitalWrite (9, laag);
}
VOID Halt2() {/ / Motor2 stoppen (niet breken die dat jaar abrupt onderbroken)
digitalWrite (10, laag);
digitalWrite (11, laag);
}
VOID Stop1() {/ / Motor1 breken d.w.z. abrupt stoppen
digitalWrite (8, laag);
digitalWrite (9, laag);
}
VOID Stop2() {/ / Motor2 breken d.w.z. abrupt stoppen
digitalWrite (10, laag);
digitalWrite (11, laag);
}