Cum să controlați radio motoarele DC ieftin: 5 pași
Cum să controlați radio motoarele DC ieftin: 5 pași
Anonim
Cum se controlează radio motoarele DC ieftin
Cum se controlează radio motoarele DC ieftin
Cum se controlează radio motoarele DC ieftin
Cum se controlează radio motoarele DC ieftin
Cum se controlează radio motoarele DC ieftin
Cum se controlează radio motoarele DC ieftin

Pentru persoanele care nu știu ce este un „VEX”. Este o companie care vinde piese și truse robotizate. Ei vând un emițător și un receptor „VEX” pe site-ul lor pentru 129,99 USD, dar puteți obține un emițător și un receptor „VEX” pentru aproximativ 20 USD pe „Ebay” și în multe alte locuri.

Transmițătorul "VEX" este un transmițător FM cu 6 canale, cu 2 joystick-uri care pot merge în sus și în jos și dintr-o parte în alta. Pe partea din spate a transmițătorului există 4 butoane care controlează canalul 5 și canalul 6. Comenzile transmițătorului pot fi setate în stil rezervor sau în stil arcade. Transmițătorul are o serie de alte caracteristici. Acest lucru îl face o modalitate foarte ieftină de telecomandă a servomotoarelor. Singura problemă este că puteți controla numai motoare servo și trebuie să cumpărați un microcontroler scump "VEX" de 149,99 USD doar pentru a face acest lucru. Asta este până acum!

Pasul 1: Cum funcționează totul

Cum funcționează totul
Cum funcționează totul

Acest „cip de interfață motor” cu cost redus (14,95 USD) poate fi cumpărat de la: https://robotics.scienceontheweb.net Cipul poate decoda semnalele de la receptorul „VEX” pentru a controla până la 8 punți H ale motorului și 1 driver. De asemenea, poate primi comenzi de la un alt cip de microcontroler pentru a controla motoarele. Acest cip de interfață folosește 3 pini de ieșire pentru a controla H-Bridge-ul unui motor. Doi pini pentru a controla direcția motorului și un pini pentru a controla viteza motorului utilizând P. W. M. Cipul utilizează intrarea de la cele două butoane de pe canalul 5 pentru a controla intrarea de la joystick-ul stâng al emițătorului "VEX", astfel încât să poată controla 6 motoare. Cipul folosește intrarea de la celelalte 2 butoane de pe canalul 6 pentru a bloca ieșirea mare sau mică la pinul 14 al cipului de interfață al motorului. Cipul de interfață a motorului are următoarele caracteristici. Este posibil ca aceste funcții să nu funcționeze, deoarece un receptor poate prelua un semnal de oriunde. Nu ne asumăm niciun fel de responsabilitate directă sau indirectă din utilizarea acestor piese. AVERTIZARE! NU UTILIZAȚI NICIODATĂ TELECOMANDA PE UN ROBOT CARE POATE CAUZA DETERIORĂ DACĂ IEȘEȘTE DIN CONTROL. Dacă robotul dvs. iese din raza de acțiune a emițătorului; cipul de interfață al motorului poate opri motoarele și poate da controlul unui microcontroler dacă robotul dvs. folosește unul. Acest lucru poate fi valabil și dacă opriți transmițătorul. Cipul de interfață al motorului nu utilizează un port serial pentru a comunica cu alte microcontrolere. Acest lucru înseamnă că puteți utiliza un cip de microcontroler foarte ieftin pentru a fi creierul robotului dvs. Dacă puneți un pic pe pinul 2, toate motoarele vor funcționa la jumătate din nivelul de putere atunci când utilizați transmițătorul.

Pasul 2: Cum să conectați receptorul VEX la cipul de interfață

Cum să conectați receptorul VEX la cipul de interfață
Cum să conectați receptorul VEX la cipul de interfață
Cum să conectați receptorul VEX la cipul de interfață
Cum să conectați receptorul VEX la cipul de interfață

Motoarele, releele și sursele de alimentare vor provoca interferențe radio; deci alegeți un loc pe robotul dvs. unde receptorul "VEX" este departe de aceste lucruri. Am montat-o pe a mea pe un catarg lung de 43 inchi care era atașat la baza robotului.

Receptorul „VEX” vine cu un cablu galben. Conectați cablul la receptorul "VEX", celălalt capăt al cablului se conectează la o mufă a receptorului telefonului. Trebuie să cumperi mufa. Din moment ce nu voi cunoaște culorile firelor care ies din mufa ta; Voi referi firele galbene ale cablurilor. Dacă vă uitați la cablul galben, veți vedea 4 fire care sunt galbene, verzi, roșii și albe. Firul galben se conectează la + 5 volți. Firul verde este semnalul și se conectează la pinul 6 pe cipul de interfață. Firul roșu se conectează la masă. Firul alb nu este utilizat. Trebuie să conectați un rezistor de 4,7 K de la pinul 6 de pe cipul de interfață la + 5 volți. De asemenea, veți dori să conectați un condensator 2200 uf pe firele de alimentare aproape de receptorul "VEX". Pinul 2 este un pin de intrare. Trebuie să fie cablat și NU lăsat plutitor. Poate fi conectat la + 5 volți sau împământat printr-un rezistor de 47 ohmi. Poate fi, de asemenea, conectat la pinul 14. Opțiunea 1: pinul 2 ridicat va oferi întreaga gamă de putere motoarelor. Opțiunea 2: pinul 2 redus va oferi jumătate din gama de putere a motoarelor. Opțiunea 3: pinul 2 conectat la pinul 14. Când butonul superior al canalului 6 este apăsat, acesta oferă gama completă de putere motoarelor. Când butonul inferior al canalului 6 este apăsat, acesta oferă jumătate din gama de putere a motoarelor.

Pasul 3: Cum să conectați un microcontroler la cipul de interfață

Cum să conectați un microcontroler la cipul de interfață
Cum să conectați un microcontroler la cipul de interfață

Microcontrolerul dvs., dacă utilizați unul, poate comunica

cu cipul de interfață peste 3 fire. Pinul 7 de pe interfața cip este intrarea pentru bitul de date. Când pinul este scăzut este un bit de date zero. Când pinul este ridicat, este un bit de date. Microcontrolerul dvs. trebuie să emită bitul de date înainte de impulsul ceasului. Bitul de date trebuie să aibă cel puțin 40 de ani. Pinul 16 de pe cipul de interfață este intrarea pentru bitul de ceas. Microcontrolerul dvs. trebuie să emită un impuls mare pentru cel puțin 0,5 noi. Pinul 5 de pe cipul de interfață este un pin de ieșire. Când acest pin crește, acesta trebuie să anunțe microcontrolerul că este gata să primească următoarea comandă. Acest pin va scădea dacă cipul de interfață primește un semnal de la transmițătorul "VEX". Acest pin va scădea și va rămâne scăzut dacă a existat o eroare de comunicare între microcontrolerul dvs. și cipul de interfață. Pinul 4 este un pin de ieșire. Dacă există o eroare de comunicare între cipul de interfață și microcontrolerul dvs., acest pin se va ridica și va rămâne ridicat. Trebuie făcută o resetare pentru a șterge această eroare.

Pasul 4: Lista comenzilor

Există 32 de comenzi pe care cipul de interfață le înțelege. Toate comenzile au o lungime de 3 octeți sau 24 de biți. Formatul comenzilor este după cum urmează.

Primul octet care este trimis este întotdeauna octetul de comandă care este cel mai stâng număr din lista de mai jos. Al doilea octet trimis poate fi un octet PWM. Este un număr între 0 și 50. Când se trimite un 0, P. W. M. pulsul este scăzut, ceea ce înseamnă că motorul va fi oprit. Când se trimite numărul 50, P. W. M. pulsul este mare ceea ce înseamnă că motorul va fi pornit la putere maximă. Când se trimite numărul 25, motorul va funcționa la aproximativ jumătate din putere. După cum se vede pe listă, uneori al doilea octet este doar 0, care este utilizat doar pentru un deținător de loc. Nu are niciun efect asupra motorului. Al treilea octet trimis poate fi un octet PWM sau un număr de verificare a erorilor. Exemplu: Pentru a comanda motorului 1 să meargă la viteză maximă și motorului 2 să meargă la jumătate de viteză înainte, comanda ar fi. 1 50 25 Pentru a comanda motorului 7 să meargă înapoi la 10% putere, comanda ar fi. 16 5 16 1 Motor 1 și 2 înainte, PWM #, PWM # (fără verificare erori) 2 Motor 1 și 2 înapoi, PWM #, PWM # (fără verificare erori) 3 Motor 1 înainte, PWM #, 3 4 Motor 1 înapoi, PWM #, 4 5 Motor 2 înainte, PWM #, 5 6 Motor 2 înapoi, PWM #, 6 7 Motor 3 înainte, PWM #, 7 8 Motor 3 înapoi, PWM #, 8 9 Motor 4 înainte, PWM #, 9 10 Motor 4 înapoi, PWM #, 10 11 Motor 5 înainte, PWM #, 11 12 Motor 5 înapoi, PWM #, 12 13 Motor 6 înainte, PWM #, 13 14 Motor 6 înapoi, PWM #, 14 15 Motor 7 înainte, PWM #, 15 16 Motor 7 înapoi, PWM #, 16 17 Motor 8 înainte, PWM #, 17 18 Motor 8 înapoi, PWM #, 18 19 Viteza tuturor motoarelor, PWM #, 19 20 Motor 1 și 2 viteze, PWM #, PWM # (fără verificare erori) 21 Motor 1 și 2 oprire, X, 21 (pini scăzut) 22 Motor 1 oprire, 0, 22 (pini scăzut) 23 Motor 2 oprire, 0, 23 (pini scăzut) 24 Motor 3 oprire, 0, 24 (pini mici) 25 Motor 4 opriri, 0, 25 (pini mici) 26 Motor 5 opriri, 0, 26 (pini mici) 27 Motor 6 opriri, 0, 27 (pini mici) 28 Motor 7 oprire, 0, 28 (pini jos) 29 Motor 8 oprire, 0, 29 (pini jos) 30 Toate mo tors oprire, 0, 30 (pini scăzut) 31 Pin 14 înalt, 0, 31 32 Pin 14 scăzut, 0, 32

Pasul 5: Pin Rezumat

Pinii de intrare

Pinul 1 Dacă scade, se oprește (MCLR) Pinul 2 Dacă este scăzut, dă doar o jumătate din ieșire motoarelor Pinul 6 Receptorul "VEX" Pinul 7 comandă și datele de la un alt microcontroler Pinul 33 întrerupe datele Pinul 11 + 5 volți Pin 32 + 5 volți Pin 12 la sol Pin 31 la sol Pinii de ieșire Pin 34 PWM pentru motorul 1 Pin 35 Înalt când joystick-ul 1 este lăsat Pin 36 Înalt când joystick-ul 1 este drept Pin 37 P. W. M. pentru motorul 2 Pin 38 Înalt când joystick-ul 2 este sus Pin 15 Înalt când joystick-ul 2 este în jos Pin 16 P. W. M. pentru motorul 3 Pin 17 Înalt când joystick-ul 3 este sus Pin 18 Înalt când joystick-ul 3 este în jos Pin 23 P. W. M. pentru motorul 4 Pin 24 Înalt când joystick-ul 4 este lăsat Pin 25 Înalt când joystick-ul 4 este drept Pin 26 P. W. M. pentru motorul 5 Pin 19 High când joystick-ul 3 este sus și butonul superior 5 este apăsat Pin 20 High când joystick-ul 3 este jos și butonul superior 5 este apăsat Pin 21 P. W. M. pentru motorul 6 Pin 22 High când joystick-ul 4 este stânga și butonul superior 5 este apăsat Pin 27 High când joystick-ul 4 este dreapta și butonul superior 5 este apăsat Pinul 28 P. W. M. pentru motorul 7 Pin 29 High când joystick-ul 3 este sus și butonul inferior 5 este apăsat Pin 30 High când joystick-ul 3 este jos și butonul inferior 5 este apăsat Pin 8 P. W. M. pentru motorul 8 Pin 9 High când joystick-ul 4 este stânga și butonul inferior 5 este apăsat Pin 10 High când joystick-ul 4 este dreapta și butonul inferior 5 este apăsat Pin 14 Rămâne înalt când butonul superior 6 este apăsat; scade când butonul inferior 6 este apăsat Pinul 5 Spune altui microcontroler că poate trimite următoarea comandă Pinul 4 Se ridică dacă a fost detectată o eroare de comandă. Nu este nevoie să puneți pull-up-uri pe acești ace.