Table of Contents

Ștefan-Radu MAFTEI (78317) - RoboDraw

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

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.

Descriere generală

RoboDraw funcţionează astfel:

Schema bloc:

Hardware Design

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

2. Schema electrică:

Software Design

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.

Rezultate Obţinute

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

Concluzii

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!

Download

Schema electrică (Eagle Scheme): robodro_final.sch

Codul sursă (cod + Makefile + script de încărcare): robodro_mafteistefan-radu_336cc.zip

Jurnal

Bibliografie/Resurse

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: