Piano Professor

Autor: Theodor Ciuciuc 336CC

Introducere

Ideea a pornit de la un 555timer piano pe care l-am studiat anul trecut la electronica digitala. In acest proiect Arduino va avea un mod “profesor” in care va aprinde niste LED-uri atasate de butoane pentru a dicta ordinea in care trebuie apasate. De asemenea va avea si un mod care va detecta daca butoanele au fost apasate la momentele potrivite, iar in caz contrar va initia o secventa de “game over”. Poate fi util daca vrei sa inveti o melodie.

Descriere generala

Butoanele vor fi puse pe breadboard. Ele vor face legatura intre Arduino, rezistente si difuzor. Astfel cand se apasa un buton se inchide circuitul si Arduino va stii ce frecventa sa trimita difuzorului. Bazat pe niste valori hardcodate in vectori, Arduino o sa stie ce LED sa aprinda la ce moment de timp pentru a semnala utilizatorului ce buton sa apese.

Hardware Design

Software Design

Pentru scrierea codului am folosit strict Arduino IDE. In functia setup() Arduino initializeaza pinii butoanelor si a LED-urilor si asteapta ca utilizatorul sa selecteze modul de functionare prin apasarea unuia dintre primele 3 butoane. Functiile principale sunt piano() care doar produce note la apasarea butoanelor, professor() care aprinde LED-urile corespunzatoare melodiei si punish() care verifica daca butoanele au fost apasate la momentul potrivit. Codul sursa comentat va fi disponibil la sectiunea Download a acestei pagini de wiki.

Rezultate obtinute

Am obtinut un pian electric care poate invata un utilizator cum sa cante o melodie simpla si care are un element de “gamification” prin modul de utilizare care testeaza daca butoanele au fost apasate la momentul potrivit. Mai jos este un link catre un video demo.

Video Demo

tciuciuc_poza.jpeg

Concluzii

Am invatat cum sa lucrez cu componente hardware si cu particularitatile Arduino. De asemenea unele componente comandata au fost defecte si a trebuit sa ma descurc cu aceste inconveniente. Un pin al placii este defect si niste linii ale breadboard-ului nu fac contact cum trebuie. Aceste lucruri au consumat timp in a le descoperi dar sunt de asteptat atunci cand lucrezi cu hardware.

Download

Aceasta arhiva contine codul sursa, schema bloc, schema electrica si o poza cu proiectul.

Arhiva

Jurnal

01.05.2021 - Crearea paginii de wiki. Milestone 1 complet.
20.05.2021 - Testarea functionalitatii componentelor comandate.
21.05.2021 - Sfatuire cu indrumatorul de laborator in urma careia a fost definitivata varianta finala a proiectului.
27.05.2021 - Crearea si testarea partii software si hardware a proiectului. Ramane documentatia de finalizat.
28.05.2021 - Finalizat pagina de wiki. Milestone 2 complet.

Bibliografie/Resurse

Export PDF
https://www.youtube.com/watch?v=UiBbnTxfpAU Video demo.
https://www.diagrams.net Folosit pentru schema bloc.
https://www.autodesk.com/products/eagle/free-download Folosit pentru schema electrica.
https://www.arduino.cc/reference/en/ Documentatia functiilor din libraria Arduino.
https://www.arduino.cc/en/software Arduino IDE folosit la scrierea codului

pm/prj2021/apredescu/piano-professor.txt · Last modified: 2021/05/28 15:30 by theodor.ciuciuc
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0