Autorul poate fi contactat la adresa: Login pentru adresa
RoboDraw (sau Robodró pentru prieteni) este un roboţel care vine în ajutorul celor care doresc să aibă forme desenate impecabil pe o foaie de hârtie.
RoboDraw funcţionează astfel:
1. Listă de piese:
Denumire | Informații | Canitate | Preț total |
---|---|---|---|
Placa de bază (+ componentele de bază) | Placa de dezvoltare | Cantitatea minimă din fiecare + 2 buc în plus la unele componente | ~56 lei |
DVD Writer vechi (cadrul și motoare stepper) | Cadrul robotului | 2 DVD Writere ⇒ 2 cadre + 2 motoare stepper | Obținut |
Driver pentru Motoare Stepper A4988 | Control motoare stepper | x2 | 18 lei |
Placă de Test Universală 70×90 mm | Circuit separat | x1 | 8 lei |
Condensator Electrolitic de 47 uF la 16 V | La alimentare driver | x2 | 1 leu |
Rezistor 470 Ω | Rezistență la LED | x2 | 0.2 lei |
LED roșu | Semnalizare figură | x2 | 1.8 lei |
Buton | Trigger desenare | x2 | 2 lei |
Baterie 9V | Alimentare motoare din driver | x2 | 20 lei |
Fire (mamă-tată, tată-tată) | Legarea elementelor de circuit | x30 | 14 lei |
Pentru realizarea software-ului acestui proiect am lucrat pe Linux, codul fiind scris în gedit. Nu am folosit librării sau surse 3rd-party, în afara celor din laboratoare.
Pentru controlul motoarelor stepper am creat 4 funcții:
Acestea primesc numărul de pași pe care trebuie să îi facă motorul (bot → cel de pe cadrul de jos; top → cel de pe cadrul de sus). Pentru a controla stepper-ul am setat pe HIGH, apoi pe LOW pin-ul de STEP al driver-ului (la fiecare pas). Pentru direcția de mișcare (front sau back) am setat pinul DIR al driver-ului.
Robodró vine cu două figuri pe care le poate desena în mod implicit. Acestea sunt un dreptunghi și scări (sau trei dreptunghiuri unite la colțuri). Pentru acest lucru am utilizat două butoane care vor da o întrerupere și în rutina de tratare, în funcție de butonul apăsat, se va efectua una dintre figuri. Pentru a ști care figură se desenează și faptul că roboțelul încă desenează, am pus și două LED-uri care se aprind și se sting în funcție de butonul apăsat; când LED-ul este stins înseamnă că Robodró este pregătit să deseneze din nou.
Robodró este format din plăcuța de test (pe care sunt lipite circuitele pentru drivere și butoanele cu LED-urile [Poza 1]) și cadrele cu motoare stepper (pe care se află marker-ul [Poza 2]).
O privire de ansamblu a lui Robodró:
Cele două figuri pe care Robodró știe să le deseneze:
Am atașat și un videoclip cu Robodró în acțiune: k3iJNX-BZdA
Proiectul a însemnat pentru mine o provocare, deoarece nu aveam caracteristicile motorului pentru a putea ști cum să le controlez. După ce am căutat și studiat pe internet numeroase site-uri am găsit chiar și un datasheet pentru ele. După ce am reușit să scriu codul pentru controlul motoarelor am observat că motoarele nu aveau putere. După ce am încercat să leg baterii in paralel am ales să le schimb cu baterii de la altă companie și a funcționat (recomand GP-Ultra 9V).
O altă problemă pe care am întâmpinat-o a fost legarea unor pini în cadrul driver-ului. La un moment dat motorul se deplasa doar daca atingeam driver-ul și asta m-a făcut să recitesc datashee-tul și să aflu că mai trebui uniți doi pini. Astfel am reușit să controlez motoarele și apoi am căutat prin încercări numărul de pași pentru a se deplasa pe tijă și timpul dintre setarea pinului de STEP.
Ca să îmi fie mai ușor de umblat cu componentele mi-am făcut pe plăcuța de test soclu pentru drivere și pentru firele motoarele. Acest lucru m-a ajutat să pot să separ componentele și să îl pot depozita mai ușor.
Acest proiect m-a ajuat să recapitulez ce am făcut în acest an la PM și să lucrez ordonat. Mi-a plăcut să creez circuitul pentru plăcuță și să lipesc componentele. Cea mai mare satisfacție a fost, totuși, când robotul a reușit să deseneze primul dreptunghi!
Schema electrică (Eagle Scheme): robodro_final.sch
Codul sursă (cod + Makefile + script de încărcare): robodro_mafteistefan-radu_336cc.zip
Următoarele resurse mi-au fost de mare ajutor pentru a putea controla motoarele din DVD Writer. În continuare sunt datasheet-urile driver-elor și stepper-elor utilizate, dar și video-uri cu explicații despre controlul unui motor de acest tip cu driver-ul ales.
Datasheets:
Link-uri utile: