Po zasnovi tega robotskega sledilnega robota z uporabo arduino uno sem razvil tega računalniško vodenega robota. Nadziramo ga lahko prek računalnika, za premikanje pa ga lahko uporabljamo s posebnimi tipkami na tipkovnici. Poteka čez serijsko komunikacijo, o čemer smo že govorili v prejšnjem projektu - PC Controlled Home Automation.
Potrebne komponente
- Arduino UNO
- Enosmerni motor
- Prenosnik
- Motorni voznik L293D
- 9-voltna baterija
- Priključek za baterijo
- Kabel USB
- Robot Chasis
Koncepti in podrobnosti
To robotsko krmiljeno osebno vezje lahko razdelimo na različne segmente, in sicer - odsek senzorja, odsek nadzora in odsek gonilnika. Oglejmo si jih ločeno.
Ukaz ali oddelek za osebni računalnik: Ta odsek ima serijsko komunikacijsko napravo, kot so osebni računalnik, prenosni računalnik itd. V tem projektu smo za predstavitev uporabili prenosni računalnik. Arduinu pošljemo ukaz tako, da vtipkamo znak na hiper terminal ali kateri koli drug serijski terminal, kot so hiper terminal, Hercules, kit, serijski terminal arduino itd.
Nadzorni odsek: Arduino UNO se uporablja za nadzor celotnega procesa robota. Arduino bere ukaze, ki jih pošilja prenosnik, in jih primerja z določenimi znaki ali ukazi. Če se ukazi ujemajo, arduino pošlje ustrezen ukaz v odsek gonilnika.
Vozniški odsek: odsek za voznika je sestavljen iz IC-pogonskega sklopa L293D in dveh enosmernih motorjev. Motorni voznik se uporablja za pogon motorjev, ker arduino ne napaja motorja z dovolj napetosti in toka. Torej dodamo vezje motornega pogona, da dobimo dovolj napetosti in toka za motor. Z zbiranjem ukazov iz arduina voznik motorja poganja motorje v skladu z ukazi.
Delo
Robota, ki ga nadzoruje osebni računalnik, smo programirali tako, da deluje z nekaterimi ukazi, ki se pošljejo prek serijske komunikacije v računalnik arduino. (glej oddelek za programiranje spodaj)
Ko pritisnemo 'f' ali 'F', se robot začne premikati naprej in premikanje se nadaljuje, dokler ne dobimo naslednjega ukaza.
Ko pritisnemo 'b' ali 'B', robot spremeni svoje stanje in se začne premikati nazaj, dokler ne dobimo nobenega drugega ukaza.
Ko pritisnemo 'l' ali 'L', Robot zavije levo do naslednjega ukaza.
Ko pritisnemo 'r' ali 'R', se robot obrne v desno.
In za zaustavitev robota damo ukaz 's' ali 'S' arduinu.
Shema vezja in razlaga
Shema vezja za PC, ki ga krmili Arduino, je prikazana v zgornjem diagramu. Samo arduino IC je povezan z gonilnikom motorja za vodenje robota. Za pošiljanje ukaza robotu smo uporabili vgrajeni serijski pretvornik podatkov z uporabo USB kabla s prenosnikom. Vhodni zatiči 2, 7, 10 in 15 gonilnika motorja so priključeni na arduino digitalne številke 6, 5, 4 in 3. Tu smo za pogon robota uporabili dva enosmerna motorja, pri katerih je en motor priključen na izhodni zatič gonilnika motorja 3 in 6, drugi motor pa pri 11 in 14. 9-voltna baterija se uporablja za pogon motornega gonilnika za pogon motorjev.
Pojasnilo programa
V programiranju smo najprej opredelili izhodne zatiče za motorje.
Nato smo pri nastavitvi dobili navodila za pripenjanje in začetek serijske komunikacije.
Po tem preberemo serijski vmesnik z branjem funkcije “serial.read ()” in njegovo vrednost dobimo v začasno spremenljivko. Nato ga povežite z definiranimi ukazi z uporabo stavka "if" za upravljanje robota.
Obstajajo štirje pogoji za premikanje tega računalnika, ki ga nadzoruje robot, ki so navedeni v spodnji tabeli.
Ukazi za vnos |
Izhod |
Gibanje robota |
||||
Levi motor |
Desni motor |
|||||
|
|
|
|
|||
S. |
|
|
|
|
|
Nehaj |
|
|
|
|
|
|
Zavij desno |
|
|
|
|
|
|
Zavijemo levo |
|
|
|
|
|
|
Nazaj |
|
|
|
|
|
|
Naprej |
Program smo napisali v skladu s pogoji iz zgornje tabele. Popolna koda je navedena spodaj.