Autorul poate fi contactat la adresa:
Tema proiectului este realizarea unui reportofon care inregistreaza in momentul in care detecteaza miscare.
In starea initiala, reportofonul nu inregistreaza. In momentul in care senzorul detecteaza miscare, reportofonul incepe sa inregistreze sunetele din jurul sau. Proiectul ofera utilizatorului posibilitatea de a parcurge ultimele inregistrari, ale caror nume sunt afisate pe ecranul unui LCD, si de a reda o inregistrare selectata.
Schema bloc cu toate componentele hardware ale proiectului este urmatoarea:
Inregistrarea vocii presupune conversia in digital a unui semnal analogic - cel produs de vibratiile corzilor vocale. Frecventele emise de vocea umana se incadreaza in spectrul 300 - 4000 Hz, si conform teoremei de esantionare, pentru a putea fi inregistrata corect, este necesara o frecventa de esantionare de cel putin 8000 de Hz. In aplicatie, pentru a mai compensa din pierderile de precizie datorate folosirii unei dimensiuni de 8 biti pe esantion, vocea se va inregistra cu o frecventa de 16kHz.
In cadrul acestui proiect, modalitatea de stocare a sunetului este cardul SD.
Lista de piese:
→ Microcontroller ATmega324
→ 3 butoane
→ Microfon
→ Ecran LCD
→ Senzor de miscare
→ Speaker
→ Amplificator
Schema electrica a proiectului este urmatoarea :
LCD:
LCD-ul suporta modul de transmisie a datelor pe 4 biti. API-ul folosit pentru LCD este mapat pe cel oferit in cadrul laboratului. Acesta a fost conectat la portul D al microcontroller-ului, cu exceptia pinului D7 conectat la pinul 1 al portului B. Am facut aceasta alegere pentru a putea conecta speaker-ul la pinul 4 al portului D.
Butoane de control:
Schema electrica modul senzor sunet analogic si digital (chip principal : LM393):
Schema amplificator + speaker:
Desi amplificatorul este stereo, am conectat un singur difuzor la right.
Schema electrica modul senzor de miscare PIR HC-SR501:
Adaptor card sd:
Biblioteca folosita: Petit FAT Filesystem.
Descriere implementare software:
Module folosite:
- LCD.h : API LCD folosit si in cadrul laboratorului cu mici modificari
- pff.h : biblioteca pentru implementarea sistemului de fisiere Petit FatFs
- sd.h : biblioteca pentru initializarea cardului SD
- spi.h : functii pentru configurare SPI
- main.c : modulul principal al proiectului care implementeaza urmatoarele functii :
Realizarea unui astfel de proiect de la faza initiala (lipitul pieselor pe placuta) si pana la cea finala (implementare software) a fost un drum interesant si
anevoios. :) Anevoios in sensul in care, spre deosebire de restul materiilor parcurse pana acum in facultate, in momentul in care detectai o problema, sursa acesteia
putea fi atat in partea hardware, cat si in cea software.
De asemenea, am folosit pentru prima data letcon-ul pentru a lipi piesele, ceea ce e a fost o experienta placuta si am parcurs majoritatea subiectelor din cadrul
laboratorului (LCD, SPI, filesystem, PWM, timere, intreruperi, ADC).