This shows you the differences between two versions of the page.
|
pm:prj2024:rpascale:stan.petrisor [2024/05/11 15:56] petrisor.stan [Hardware Design] |
pm:prj2024:rpascale:stan.petrisor [2024/05/20 21:47] (current) petrisor.stan [Software Design] |
||
|---|---|---|---|
| Line 6: | Line 6: | ||
| ===== Descriere generală ===== | ===== Descriere generală ===== | ||
| - | Servomotoarele vor fi conectate la modulul cu driver de motoare L298N, dar si la Arduino cu pinul de semnal. Modulul va fi, in consecință conectat la jack-ul DC, care este conectat la sursa de alimentare. De asemenea, atât senzorul tactil, buzzerul, cât si LED-urile vor fi conectate la Arduino. La primirea unui semnal de la senzorul tactil, microcontroller-ul va începe sa trimită semnale către buzzer pentru producerea de sunete, către LED-uri pentru a fi aprinse si oprite(simularea clipirii) cât si către cele doua servomotoare astfel încât mișcările mâinilor sa fie simulate cu succes. Dupa un moment de timp robotelul va opri dansul. | + | Servomotoarele vor fi conectate la modulul cu driver de motoare L298N, dar si la Arduino cu pinul de semnal. Modulul va fi, in consecință conectat la jack-ul DC, care este conectat la sursa de alimentare. De asemenea, atât senzorul tactil, buzzerul, cât si LED-urile vor fi conectate la Arduino. La primirea unui semnal de la senzorul tactil, microcontroller-ul va începe sa trimită semnale către buzzer pentru producerea de sunete, către LED-uri pentru a fi aprinse si oprite(simularea clipirii) cât si către cele doua servomotoare astfel încât mișcările mâinilor sa fie simulate cu succes. Dupa un moment de timp robotelul va opri dansul.\\ |
| P.S.: Datorita faptului ca nu este necesara alimentarea de la o sursa externa alaturi de un driver de motor, s-a renuntat la urmatoarele piese: L298N, Jack DC, Sursa Alimentare. | P.S.: Datorita faptului ca nu este necesara alimentarea de la o sursa externa alaturi de un driver de motor, s-a renuntat la urmatoarele piese: L298N, Jack DC, Sursa Alimentare. | ||
| Line 24: | Line 24: | ||
| Schema Electrica: | Schema Electrica: | ||
| + | |||
| + | |||
| {{:pm:prj2024:rpascale:catalin_robodance.png?600|}} | {{:pm:prj2024:rpascale:catalin_robodance.png?600|}} | ||
| + | Implementarea schemei electrice: | ||
| + | {{:pm:prj2024:rpascale:implementarehardwarecatalin.jpeg?400|}} | ||
| <note tip> | <note tip> | ||
| Aici puneţi tot ce ţine de hardware design: | Aici puneţi tot ce ţine de hardware design: | ||
| Line 35: | Line 39: | ||
| ===== Software Design ===== | ===== Software Design ===== | ||
| - | |||
| - | |||
| <note tip> | <note tip> | ||
| Descrierea codului aplicaţiei (firmware): | Descrierea codului aplicaţiei (firmware): | ||
| Line 45: | Line 47: | ||
| </note> | </note> | ||
| + | |||
| + | Mediul de dezvoltare folosit pentru realizarea prolectului a fost Arduino IDE, in timp ce libraria externa folosita este Servo.h, utilizata pentru a putea controla servomotoarele SG90. | ||
| + | Ca parte a codului propriu-zis, s-a realizat implementarea a 3 functii: void setup(), void loop(), void do_dance(). | ||
| + | Functia do_dance() are ca scop setarea unei variabile pe 1 astfel incat functia loop() sa execute, intr-un for, stingerea si aprinderea becurilor LED, pornirea buzzer-ului cu o anumita valoare si miscarea servomotoarelor. Pe de alta parte, functia setup() asigura atasarea pinilor 7 si 8 la obiectele de tip Servo ce au ca scop sa poata porni servomotoarele, impreuna cu setarea pinilor 12, 13 si A1 drept output(LED-urile + Buzzer-ul) si setarea pinului 2 drept input. Pe langa aceste initializari, functia setup() asigura functionalitatea unel intreruperi in momentul in care senzorul touch detecteaza o apasare(do_dance()) este functia de intrerupere).\\ | ||
| + | |||
| + | Codul sursa este:\\ | ||
| + | {{:pm:prj2024:rpascale:stan_petrisor_334ca_source_code_final.txt|}} | ||
| + | |||
| + | Libraria externă folosită este:\\ | ||
| + | {{:pm:prj2024:rpascale:servo-master-petrisor.zip|}} | ||
| ===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||