Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2022:agmocanu:laserpiano [2022/05/26 10:56]
apostolache2211
pm:prj2022:agmocanu:laserpiano [2022/06/02 18:30] (current)
apostolache2211
Line 20: Line 20:
  
 Schema bloc: Schema bloc:
 +
  
 {{:​pm:​prj2022:​agmocanu:​schema_bloc_postolache_331cb.jpg?​nolink|}} {{:​pm:​prj2022:​agmocanu:​schema_bloc_postolache_331cb.jpg?​nolink|}}
 +
  
 Utilizatorul interactioneaza doar cu laserele, ce reprezinta "​clapele"​ pianului si cu butonul de pornit/​oprit. Laserele interactioneaza cu fotorezistentele ce trimit informatia la Arduino. Placa Arduino trimite comenzi la led, lasere si difuzor. Utilizatorul interactioneaza doar cu laserele, ce reprezinta "​clapele"​ pianului si cu butonul de pornit/​oprit. Laserele interactioneaza cu fotorezistentele ce trimit informatia la Arduino. Placa Arduino trimite comenzi la led, lasere si difuzor.
Line 41: Line 43:
 Schema Electrica: Schema Electrica:
  
-{{:​pm:​prj2022:​agmocanu:​7_schema_circuit.jpg|}}+{{:​pm:​prj2022:​agmocanu:​schema_electrica_post.jpg?​direct&​300|}}
  
 ===== Software Design ===== ===== Software Design =====
Line 54: Line 56:
   * Fotorezistentele sunt conectate la pinii analogici si sunt cele care inregistreaza intensitatea luminii. Daca valoarea citita e mai mare decat un TRESHOLD, atunci nu se va intampla nimic. In caz contrar, se va decide nota muzicala ce va fi cantata de pian.   * Fotorezistentele sunt conectate la pinii analogici si sunt cele care inregistreaza intensitatea luminii. Daca valoarea citita e mai mare decat un TRESHOLD, atunci nu se va intampla nimic. In caz contrar, se va decide nota muzicala ce va fi cantata de pian.
   * Am adaugat si o functie printPianoState() care printeaza la interfata seriala mesaje doar atunci cand pianul isi schimba starile de activitate.   * Am adaugat si o functie printPianoState() care printeaza la interfata seriala mesaje doar atunci cand pianul isi schimba starile de activitate.
-  * O alta functionalitate adaugata este accea ca dupa 10 secunde in starea de ON in care nu s-a cantat nicio nota muzicala pianul sa se opreasca. +  * O alta functionalitate adaugata este accea ca dupa 10 secunde in starea de ON in care nu s-a cantat nicio nota muzicala pianul sa se opreasca. S-au folosit 2 variabile globale currentTime si lastTime impreuna cu functia millis().
-S-au folosit 2 variabile globale currentTime si lastTime impreuna cu functia millis().+
  
 Notele muzicale s-au calculat pe baza algoritmului descris la urmatorul link: [[https://​www.instructables.com/​EAL-Arduino-Laser-Harp/​]] Notele muzicale s-au calculat pe baza algoritmului descris la urmatorul link: [[https://​www.instructables.com/​EAL-Arduino-Laser-Harp/​]]
Line 66: Line 67:
 Am implementat toata descrierea proiectului. Am implementat toata descrierea proiectului.
  
-Link la DEMO: +Link la DEMO: [[https://​youtu.be/​QCsH9M4IrD8]]
  
 ===== Concluzii ===== ===== Concluzii =====
 +
 +Am reusit sa implementez tot ce mi-am propus. Consider ca a fost un proiect interesant la care a trebuit sa incorporez si idei de design in crearea cadrului ce suporta diodele si alegerea dispunerii "​clapelor"​ pianului.
 +Partea de software nu mi-a dat batai de cap, spre deosebire de partea de hardware, din cauza numarului mare de fire ce nu se puteau neinterescta si slabei calitatii de legatura intre diode si fire.
  
 ===== Download ===== ===== Download =====
  
 +Arhiva ce contine codul sursa si schemele: {{:​pm:​prj2022:​agmocanu:​331cb_postolache_alexandru-gabriel_proiect_pm.zip|}}
  
 +Codul se mai gaseste si aici: [[https://​github.com/​alexP22-create/​PM-FAIR/​blob/​main/​proiect.ino]]
 +
 +PDF: {{:​pm:​prj2022:​agmocanu:​laser_piano_milestone2.pdf|}}
  
 ===== Jurnal ===== ===== Jurnal =====
  
   * **7/​5/​2022**:​ realizare pagina wiki + schema bloc (Milestone 1)   * **7/​5/​2022**:​ realizare pagina wiki + schema bloc (Milestone 1)
 +  * **8/​5/​2022**:​ comandarea pieselor
 +  * **10/​5/​2022**:​ research despre lucrul cu piesele comandate
 +  * **19/​5/​2022**:​ legarea componentelor si realizarea schemei electrice
 +  * **24/​5/​2022**:​ finalizarea codului pentru partea software
 +  * **25/​5/​2022**:​ mici retusuri si testare
 +  * **26/​5/​2022**:​ finalizare pagina OCW (Milestone 2)
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
 +  * [[https://​www.instructables.com/​Laser-Piano-DIY/​]]
 +  * [[https://​www.instructables.com/​EAL-Arduino-Laser-Harp/​]]
 +  * [[https://​www.instructables.com/​Light-Sensor-Photoresistor-Arduino-Tinkercad/​]]
 +  * [[https://​create.arduino.cc/​projecthub/​reverendfuzzy/​simple-on-off-pushbutton-f637a7]]
 +  * [[https://​electropeak.com/​learn/​interfacing-5-v-5-mw-dot-laser-diode-module-with-arduino/​]]
 +  * [[https://​create.arduino.cc/​projecthub/​muhammad-aqib/​arduino-rgb-led-tutorial-fc003e]]
 +  * [[https://​www.arduino.cc/​en/​Tutorial/​BuiltInExamples/​toneMelody]]
 +
  
 <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​ <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
pm/prj2022/agmocanu/laserpiano.1653551789.txt.gz · Last modified: 2022/05/26 10:56 by apostolache2211
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