Sound Efect Board

Student: Popescu Philip-Cristian

Grupa: 335CB

Introducere

Scop

In cadrul acestui proiect voi dezvolta o placa de efecte audio cu capabilitati de inregistrare audio. Acest proiect a fost inspirat de modul de predare al domnului profesor de la seria CB si vocea dansului JOASA si INCEATA. De aceea am decis sa ii creez o interfata pentru a-i imbunatatii metoda de livrare a cursului, cat si volumul (sau mai bine spus lipsa acestuia).

Utilitate

Acest proiect este baza aplicatiilor audio, in special captura si alterarea sunetului in timp real. De asemenea implementarea poate fi folosita si ca placa de efecte pentru instrumente muzicale (eg: chitara).

Aspect

Proiectul va venii sub forma unei cutii cu o intrare de micropfon, o iesire de 3.5mm, display, potentiometru de reglare, butoane de selectie si switch de activare/dezactivare al potentiometrului.

Descriere Generala

Proiectul va acoperii urmaoarele functionalitati:

  1. Inregistrare a maximum 10 secunde de sunet
  2. Redarea inregistrarii peste care se aplica efecte
  3. Schimbarea peach-ului real time
  4. Sound delay
  5. Efecte Voce Robotica
  6. Distors

Pentru realizarea acestor functionalitati este necesara incorporarea unui shield ce contine: ADC, DAC si SRAM (pentru inregistrare). De asemenea este nevoie de un potentiometru pentru reglarea efectelor individuale si un switch pentru activarea/dezactivarea acestuia, un display cu butoane pentru ciclarea intre functionalitati si activarea/dezactivarea acestora.

Schema Bloc

Hardware Design

Lista componente:

Componenta Cantitate
Arduino UNO 1
AudioHacker Shield 1
LCD 16x2 + i2c interface 1
Potentiometru 10k 1
Switch 1
Buton 3
Rezistente 10k 5

Schema generala:

(shield not included)

:

Schema “Audio-Hacker Shield” care vine peste arduino:

Hardware Demo

Sper sa se auda in regula 😅.

Link YouTube video

Software

Detalii

Esantionarea si prelucrarea datelor audio se face in cadr-ul unei intreruperi pe “Timer1” setata la o frecventa de 22khz.

In Cadrul functiei “setup()” se activeaza inputurile , se activeaza clasele si se calculeaza timpul pentru generarea intreruperii.

Functia “loop()” este folosita pentru debug, citirea dispozitivelor de intrare (butoane/potentiometre) si afisarea de mesaje la LCD.

Concluzii

In urma implementarii rezulta ca arduino NU este o platforma buna pentru aplicatii audio, frecventa mica de procesor nu permite analiza furie real time a sunetului, prin urmare trebuie folosite “hack-uri” pentru a modela sunetul.

O IMPARTIRE IA MAI MULT DECAT E PERIOADA DE ESANTIONARE (22KHZ)!

Aplicarea mai multor efecte pe un esantion s-a dovedit prea costisitoare asa ca produsul rezultat poate aplica un singur efect la orice moment de timp. (Efectele pot fi aplicate atat real-time cat si pe datele tip playback).

Bibliografie/Resurse

pm/prj2023/alexau/sound_efect_board.txt · Last modified: 2023/05/28 23:43 by philip.popescu
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