Differences

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

Link to this comparison view

pm:prj2026:andrei.batasev:ciprian.munteanu04 [2026/05/03 23:20]
ciprian.munteanu04 created
pm:prj2026:andrei.batasev:ciprian.munteanu04 [2026/05/04 21:01] (current)
ciprian.munteanu04
Line 1: Line 1:
-====== ​Nume proiect ​======+====== ​Vocal Coach ====== 
 ===== Introducere ===== ===== Introducere =====
  
-<note tip> +Vocal Coach este un dispozitiv embedded care ajuta utilizatorul 
-Prezentarea pe scurt a proiectului vostru: +sa exerseze intonatia vocala. Dispozitivul reda o nota muzicala de 
-  * ce face +referinta folosind un buzzer pasiv, capteaza vocea utilizatorului 
-  * care este scopul lui +printr-un microfon analogic cu amplificare,​ analizeaza semnalul audio 
-  * care a fost ideea de la care aţi pornit +folosind algoritmul Goertzel si ofera feedback in timp real: nota 
-  * de ce credeţi că este util pentru alţii şi pentru voi +cantata ​este prea joasa (LOW), corecta (OK) sau prea inalta (HIGH).
-</​note>​ +
-===== Descriere generală =====+
  
-<note tip> +Ideea a pornit de la nevoia unui instrument simplu si accesibil pentru 
-O schemă bloc cu toate modulele proiectului vostruatât software cât şi hardware însoţită de o descriere a acestora precum şi a modului în care interacţionează.+incepatorii in muzica, care sa permita exersarea intonatiei fara a 
 +depinde de un smartphone sau conexiune la internet. Spre deosebire de 
 +aplicatiile generale de tuning, acest dispozitiv este construit special 
 +pentru antrenament vocal pe un set restrans de note (C4-C5), ceea ce il 
 +face fezabil pe hardware cu resurse limitate.
  
-Exemplu de schemă blochttp://www.robs-projects.com/mp3proj/newplayer.html +**Repository GitHub:** https://github.com/ciprianmunteanu1/vocal-coach 
-</note>+ 
 +===== Descriere generala ===== 
 + 
 +{{:​pm:​prj2026:​andrei.batasev:​diagrama_bloc.png?​600|}} 
 + 
 +Sistemul este organizat in urmatoarele module: 
 + 
 +**Module hardware:​** 
 +  * **Intrare audio** — microfon MAX4466 capteaza vocea utilizatorului,​ iesirea analogica conectata la ADC-ul Arduino 
 +  * **Iesire audio** — buzzer pasiv reda nota de referinta prin PWM 
 +  * **Feedback vizual** — modul LED semafor (rosu/galben/​verde) 
 +  * **Afisaj** — OLED 128x64 I2C afiseaza starea sistemului, nota tinta si rezultatul 
 +  * **Intrare utilizator** — 3 butoane (START/​NEXT/​BACK) si potentiometru pentru selectarea notei tinta 
 + 
 +**Module software:​** 
 +  * **Masina de stari** — IDLE -PLAY_NOTE -> LISTEN -> ANALYZE -> RESULT 
 +  * **Esantionare ADC** — configurata prin registre pentru ~8kHz 
 +  * **Motor Goertzel** — calculeaza energia pe 8 frecvente tinta 
 +  * **Calibrare zgomot** — masurare zgomot ambiental la pornire 
 +  * **Logica feedback** — compara nota detectata cu nota tinta 
 + 
 +**Interactiunea modulelor:​** 
 +Utilizatorul selecteaza nota tinta cu butoanele. La apasarea START, 
 +Arduino reda nota pe buzzer, apoi deschide o fereastra de ascultare 
 +in care ADC-ul esantioneaza microfonul intr-un buffer. Algoritmul 
 +Goertzel proceseaza bufferul si identifica frecventa dominanta. 
 +Rezultatul este comparat cu nota tinta si afisat pe OLED si prin 
 +modulul LED.
  
 ===== Hardware Design ===== ===== Hardware Design =====
  
-<note tip> +**Lista ​de componente:** 
-Aici puneţi tot ce ţine de hardware design+ 
-  * listă ​de piese +^ Componenta ​                        ^ Cantitate ^ Rol                          ^ 
-  * scheme electrice (se pot lua şi de pe Internet şi din datasheet-uri,​ e.g. http://​www.captain.at/​electronic-atmega16-mmc-schematic.png) +| Arduino Nano ATmega328P + CH340    | 1         | Microcontroller principal ​   | 
-  * diagrame ​de semnal ​ +| Modul microfon MAX4466 ajustabil ​  | 1         | Intrare audio                | 
-  ​* rezultatele simulării +| Afisaj OLED 128x64 I2C SSD1306 ​    | 1         | Afisare informatii ​          | 
-</​note>​+| Buzzer pasiv 5V                    | 1         | Redare nota de referinta ​    | 
 +| Modul LED semafor 3.3-5V           | 1         | Feedback vizual ​             | 
 +| Buton tactil 6x6x5mm ​              | 3         | Intrare utilizator ​          | 
 +| Potentiometru 10K WH148            | 1         | Selectare nota tinta         | 
 +| Rezistor 220 ohm                   | 5         | Limitare curent LED-uri      | 
 +| Condensator electrolitic 10uF      | 2         | Filtrare alimentare ​         | 
 +| Breadboard 830 puncte ​             | 1         | Platforma ​de prototipare ​    | 
 +| Fire Dupont tata-tata / mama-tata ​ | 40+40     | Interconectare ​              |
  
 ===== Software Design ===== ===== Software Design =====
  
 +//(De completat in etapele urmatoare)//​
  
-<note tip> +===== Rezultate Obtinute =====
-Descrierea codului aplicaţiei (firmware):​ +
-  * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) +
-  * librării şi surse 3rd-party (e.g. Procyon AVRlib) +
-  * algoritmi şi structuri pe care plănuiţi să le implementaţi +
-  * (etapa 3) surse şi funcţii implementate +
-</​note>​+
  
-===== Rezultate Obţinute ===== +//(De completat in etapele urmatoare)//​
- +
-<note tip> +
-Care au fost rezultatele obţinute în urma realizării proiectului vostru. +
-</note>+
  
 ===== Concluzii ===== ===== Concluzii =====
 +
 +//(De completat in etapele urmatoare)//​
  
 ===== Download ===== ===== Download =====
  
-<note warning>​ +//(De adaugat in etapele urmatoare)//
-O arhivă ​(sau mai multe dacă este cazulcu fişierele obţinute în urma realizării proiectului:​ surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-). +
- +
-Fişierele se încarcă pe wiki folosind facilitatea **Add Images or other files**. Namespace-ul în care se încarcă fişierele este de tipul **:​pm:​prj20??:​c?​** sau **:​pm:​prj20??:​c?:​nume_student** (dacă este cazul). **Exemplu:​** Dumitru Alin, 331CC -> **:​pm:​prj2009:​cc:​dumitru_alin**. +
-</note>+
  
 ===== Jurnal ===== ===== Jurnal =====
  
-<note tip> +^ Data   ^ Activitate ​                                             ^ 
-Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. +| Etapa 1 | Documentatie initiala, lista componente, schema bloc  |
-</​note>​+
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
-<​note>​ +**Resurse Hardware:** 
-Listă cu documente, datasheet-uri,​ resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. +  * [[https://ww1.microchip.com/downloads/​en/​DeviceDoc/​Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf|ATmega328P Datasheet]] — Microchip 
-</note> +  * MAX4466 Datasheet — Maxim Integrated 
- +  * SSD1306 Datasheet — Solomon Systech
-<​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</a></html>+
  
 +**Resurse Software:**
 +  * [[https://​github.com/​olikraus/​u8g2|U8g2 Library]] — olikraus, GitHub
pm/prj2026/andrei.batasev/ciprian.munteanu04.1777839608.txt.gz · Last modified: 2026/05/03 23:20 by ciprian.munteanu04
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