This shows you the differences between two versions of the page.
pm:prj2021:avaduva:useless_box [2021/06/03 22:01] alexandru.vasilescu [Software Design] |
pm:prj2021:avaduva:useless_box [2021/06/03 22:48] (current) alexandru.vasilescu [Download] |
||
---|---|---|---|
Line 32: | Line 32: | ||
In functia de tratare a intreruperilor doar modific o variabila globala, functiile mecanismului sunt apelate in loop(). Am ales doar modificare variabilei globale in tratarea intreruperii deoarece mecanismul are o durata de functionare foarte mare si ar fi intrerupt foarte mult decurgerea programului daca pastram totul in intrerupere. | In functia de tratare a intreruperilor doar modific o variabila globala, functiile mecanismului sunt apelate in loop(). Am ales doar modificare variabilei globale in tratarea intreruperii deoarece mecanismul are o durata de functionare foarte mare si ar fi intrerupt foarte mult decurgerea programului daca pastram totul in intrerupere. | ||
- | Am creat mai multe functii, toate asemanatoare intre ele, pentru miscarile mecanismului. Prima data se executa rotatia servomotorului 1 care are rolul ridicarii capacului. Apoi se executa rotatia servomotorului 2 pentru actionarea butonului. Apoi in ordine invers se revine la starea initiala. Am folosit delayuri diferite intre functii pentru a modifica viteza servomotoarelor sau durata de asteptare intre executii(intre cele 2 servomotoare). | + | Am creat mai multe functii, toate asemanatoare intre ele, pentru miscarile mecanismului. Prima data se executa rotatia servomotorului 1 care are rolul ridicarii capacului. |
+ | |||
+ | {{:pm:prj2021:avaduva:ridicare_capac.jpeg?300|}} | ||
+ | |||
+ | Apoi se executa rotatia servomotorului 2 pentru actionarea butonului. | ||
+ | |||
+ | {{:pm:prj2021:avaduva:actionare_buton.jpeg?300|}} | ||
+ | |||
+ | Apoi in ordine invers se revine la starea initiala. Am folosit delayuri diferite intre functii pentru a modifica viteza servomotoarelor sau durata de asteptare intre executii(intre cele 2 servomotoare). | ||
In loop folosesc un switch pentru a detecta care functie sa fie apelata si un index i care este ales random intr-un interval pentru a face jucaria putin mai nedeterminista si amuzanta. | In loop folosesc un switch pentru a detecta care functie sa fie apelata si un index i care este ales random intr-un interval pentru a face jucaria putin mai nedeterminista si amuzanta. | ||
Line 45: | Line 53: | ||
===== Rezultate obtinute ===== | ===== Rezultate obtinute ===== | ||
- | * TBD | + | * Demo: https://www.youtube.com/watch?v=axESkWFMhhI |
+ | |||
+ | Am obtinut o copie functionala dupa o jucarie populara in varianta ei de baza. In demo se poate observa cum functioneaza si cum este comutat butonul intai de mine si apoi comutat din nou de catre jucarie. Se pot observa 4 viteze si actionari diferite. | ||
===== Concluzii ===== | ===== Concluzii ===== | ||
- | * TBD | + | Am reusit sa inteleg notiunile prezentate la laborator si sa le aplic. A fost foarte interesant, desi as fi preferat sa aleg ceva putin mai complex proiectul meu fiind destul de simplu de realizat. Am intampinat si unele dificultati datorate puterii servomotoarelor si rezistentei butonului initial, dar am reusit sa inlocuiesc componente si sa trec peste probleme. |
===== Download ===== | ===== Download ===== | ||
- | * TBD | + | {{:pm:prj2021:avaduva:useless_box_vasilescualexandrumadalin_331cb.zip|Arhiva proiect}} |
- | ===== Jurnal ===== | + | {{:pm:prj2021:avaduva:useless_box.pdf|}} |
+ | ===== Jurnal ===== | ||
+ | * Realizare pagina | ||
+ | * Achizitionare componente | ||
+ | * Documentare | ||
+ | * Dezvoltare schema in Tinkercat | ||
+ | * Creare periferice(cutie, lamele de aluminiu) | ||
+ | * Asamblare componente | ||
+ | * Programare placuta | ||
+ | * Scriere documentatie | ||
+ | * Finalizare pagina wiki | ||
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
+ | |||
+ | * https://ocw.cs.pub.ro/courses/pm/lab/lab3-2021 | ||
+ | * https://en.wikipedia.org/wiki/Servo_(radio_control) | ||
+ | * https://forum.arduino.cc/t/help-with-code-and-wiring-involving-3-position-switch-dc-motor/370709 | ||
+ | * https://forum.arduino.cc/t/how-to-wire-these-6-terminal-toggle-switches-dpdt/527880 | ||
+ | * https://www.arduino.cc/reference/en/libraries/servo/ |