Table of Contents

Arduino Guitar Tuner

Introducere

În cadrul acestui proiect, am utilizat metoda Amandei Ghassaei pentru detectarea frecvenței cu Arduino, pentru a obține citiri precise ale frecvenței sunetului. Proiectul constă într-un acordor de chitară care folosește LED-uri pentru a indica frecvența sunetului, semnalizând dacă coarda este prea înaltă, prea joasă sau bine acordată.

Descriere generală

Hardware Design

  • Arduino Uno: Este placa principală de dezvoltare folosită pentru a citi semnalele de intrare de la chitara electrică și pentru a controla LED-urile care indică dacă o coardă este acordată corect.
  • TL082 Dual JFET Input Op Amp: Acesta este un amplificator operațional cu două intrări JFET (Tranzistor de Efect de Câmp cu Joncțiune), folosit pentru amplificarea semnalului audio de la chitara electrică.
  • LED-uri de 5mm (galbene, roșii, verzi): LED-urile sunt utilizate pentru a indica dacă o coardă este prea ascuțită, prea gravă sau corect acordată.
  • Rezistoare de 150 Ohm: Rezistoarele sunt folosite pentru a limita curentul prin LED-uri pentru a preveni deteriorarea acestora.
  • Baterii de 9V și conectori pentru baterii de 9V: Folosite pentru a alimenta circuitul.
  • Mufă de alimentare tip M: Conectează alimentarea la Arduino.
  • Comutator SPST Rocker: Utilizat pentru a porni și opri circuitul.
  • Jack audio mono de 1/4 inch: Jack-ul de intrare pentru conectarea chitarei electrice la tuner.
  • Plăci de circuit imprimat (PCB) de diferite tipuri: Utilizate pentru montarea și conectarea componentelor electronice.
  • Rezistoare de 100kOhm și 22kOhm: Folosite în circuitele de amplificare și offset pentru ajustarea semnalului audio.
  • Condensatori de 10uF și 100nF: Folosiți pentru a filtra și a stabiliza semnalul audio.

Software Design

Codul implementat realizează următoarele:

  1. Citește semnalul audio de la chitara electrică.
  2. Detectează frecvența semnalului.
  3. Compară frecvența detectată cu frecvența țintă.
  4. Aprinde LED-ul corespunzător pentru a indica dacă coarda este corect acordată, prea gravă sau prea ascuțită.

Codul este organizat pentru a citi semnalul audio, a detecta frecvența acestuia și a afișa starea acordajului utilizând LED-uri. Acesta utilizează Arduino IDE pentru dezvoltare și se bazează pe algoritmi simpli pentru detecția frecvenței și afișarea rezultatului.

Mediul de Dezvoltare

Platformă Utilizată: Arduino IDE

Arduino IDE este un mediu de dezvoltare integrat folosit pentru programarea și încărcarea codului pe plăcile Arduino. Acesta oferă o interfață simplă și acces la multiple librării utile pentru proiecte de electronică și automatizări.

Librării și Surse 3rd-party

Librării incluse:

  • <Arduino.h>: Biblioteca de bază pentru dezvoltarea cu Arduino.
  • <math.h>: Biblioteca standard C pentru funcții matematice.

Algoritmi și Structuri

Algorimti utilizați:

  • Detecția Frecvenței: Algoritm simplu de măsurare a perioadei semnalului audio pentru a calcula frecvența.
  • Indicator Acordaj: Algoritm pentru afișarea stării acordajului utilizând LED-uri pe baza diferenței dintre frecvența detectată și frecvența țintă.

Structuri utilizate:

  • Funcții: Pentru modularizarea și organizarea codului.

Download

arduino_guitar_tuner.zip

Rezultate obținute

Detecția Frecvenței Semnalului Audio:

Indicatori Vizuali pentru Acordaj:

Performanța Dispozitivului:

Utilizabilitate:

Concluzii

Proiectul Arduino Guitar Tuner a demonstrat viabilitatea utilizării platformei Arduino pentru crearea unui acordor de chitară precis și accesibil. Algoritmul de detectare a frecvenței bazat pe FFT a oferit rezultate precise, iar indicatorii LED au furnizat un feedback clar utilizatorului.

Bibliografie/Resurse