Cum sa comandam doua motoare cu un driver de motoare pentru un robot prin padurea mea

Placa de dezvoltare Arduino, in mai toate variantele sale, ca si multe alte placute de dezvoltare, poate furniza direct de la pinii sai curenti de intesitate mult mai redusa decat cea necesara unui motor electric.

Din acest motiv se folosesc asa numitele drivere de motoare, care realizeaza comanda lor folosind pinii placii de dezvoltare, ca un fel de relee electronice.

Modulul dual – adica un driver ce poate comanda doua motoare in acelasi timp – pe care vi-l prezentam astazi, este bazat pe 2 circuite integrate L9110, cate unul pentru fiecare motor.

Modulul suporta maxim 800 de mA pe fiecare canal, la o tensiune de maxim 12 V ceea ce inseamna ca vom putea controla doar roboti foarte mici. Cu toate acestea, modulul este extrem de usor de utilizat si indicat incepatorilor sau celor pentru care performatele acestui modul, destul de modeste dupa cum am vazut, sunt suficiente. Pretul sau este imbatabil.

De remarcat ca daca putem comanda distinct doua motoare, putem sa controlam miscarea unui vehicul senilat cu 2 senile (unele utilaje moderne folosesc 4 senile). Sau putem sa controlam un vehicul cu 4 roti, cu o performanta mai redusa insa.

Modulul poseda 4 conectori cu surub, cate 2 pentru fiecare motor comandat si 6 pini tata pentru comanda celor 2 motoare si alimentarea lor, asa cum se vede in fotografie.

Odata ce reusim sa intelegem programarea si montarea acestui modul, vom putea sa utilizam orice alt driver de motoare, fie pentru motoare mult mai puternice, fie pentru un numar mai mare de motoare (4), fie pentru comanda unor motoare pas cu pas.

Programul necesar in mediul Arduino se gaseste in mai multe locuri pe internet, in multiple variante. Noi vom sublinia ca avem nevoie in oricare caz de 2 seturi de variabile  (cate o variabila pentru fiecare motor din cele 2):

  1. Pentru controlul directiei de rotatie a motorului (inainte, inapoi)  – pe nivelele logice LOW-HIGH;

  2. Pentru controlul vitezei motorului, proportional cu o valoare de la 1 la 255 (PWM).

Comanda inainte – inapoi si marimea vitezei pot proveni fie de la o telecomanda, fie de la o logica de analiza a mediului cu ajutorul senzorilor. Posibilitatile sunt nelimitate – de la indreptarea robotului purtator de senzori spre zone greu accesibile din padure, cu lumina redusa, pana la urmarirea si fotografierea unor insecte sau chiar animale.

Modulul controleaza viteza motorului cu ajutorul tehnicii PWM (in engleza Pulse Width Modulation, adica modulare prin latimea pulsului). Practic, tensiunea este periodic coborata la zero, astfel incat tensiunea medie rezultata depinde de latimea pulsului respectiv. Si cu cat procentul ocupat de tensiunea ridicata este mai mare, cu atat tensiunea medie este mai mare. Si cu cat tensiunea medie este mai mare, cu atat viteza motorului este mai mare.

Un pin digital poate furniza valori intre 0 si 255, ceea ce este suficient pentru a realiza o varaitie proportionala a semnalului PWM.

Pinii acestui modul sunt: B-IA: Motor B Input A 2. B-IB: Motor B Input B 3. GND: ground 4. VCC: 2.5V-12V DC 5. A-IA: Motor A Input A 6. A-IB: Motor B Input B

Exemplu de secventa de program ce initializeaza variabilele necesare comenzii celor 2 motoare (se folosesc in acest exemplu pinii digitali 3,4,5,6):

const int AIA = 3;

const int AIB = 4;

const int BIA = 5;

const int BIB = 6;

byte speedA = 255;

byte speedB = 255;

Acestea fiind zise, puteti sa folositi orice driver va vine la indemana, principiul de funcitoanre si programul vor fi aceleasi. Va recomandam un motor cat mai mare, de exemplu cele din seria de 37 mm diametrul carcasei, cu un cuplu cat mai bun, pentru a realiza un robot de investigatie pentru padurea mea.

Si, cine stie, poate maine veti participa la asolizarea unui asemenea robot pe Marte sau chiar mai departe. Drum bun in viitor !

Attribution-NonCommercial 
CC BY-NC

Este permisa preluarea in parte sau in tot sau utilizarea continutului articolului, in mod gratuit, exclusiv pentru scopuri necomerciale, cu obligatia citarii sursei, sub forma urmatoare: Asociatia pentru dezvoltare si mediu – ADEMED ong, www.ademed.eu

Leave a Reply

Your email address will not be published. Required fields are marked *

Page Reader Press Enter to Read Page Content Out Loud Press Enter to Pause or Restart Reading Page Content Out Loud Press Enter to Stop Reading Page Content Out Loud Screen Reader Support