lunedì 11 maggio 2015

cassa audio con sensore pir

Ciao a tutti,
qualche tempo fa mi è stato richiesto di costruire alcuni effetti per un live game, tra questi alcune casse audio che si attivassero al passaggio dei giocatori, vista la difficoltà a stendere cavi elettrici sul luogo ho optato per costruire delle piccole casse alimentate da batterie al piombo a 12V.
In pratica i file audio sono caricati su una microsd card, quando il sensore PIR rileva un movimento viene mandato in play il file audio scelto.

Questo è l'elenco dell'hardware utilizzato:
"Faccio presente che non ho rapporti commerciali con nessuno dei siti elencati di seguito"
-1 * arduino uno
-1 * sparkfun mono amp, con tpa2005d1 : https://www.sparkfun.com/products/11044

-1 * altoparlante 3W
-1 * lettore schede sd, per il prototipo ho fatto un adattatore come questo: http://www.hackerspace-ffm.de/wiki/index.php?title=Datei:SD_Card_Connection.png
-1 * batteria 12V al piombo
-1 * integrato 7809
-1 * condensatore 10uf (C1)
-1 * condensatore 0,1 uf (C2)
-1 * power jack

software:
- arduino IDE

Ciò premesso iniziamo a vedere come costruire il nostro prototipo.
Innanzitutto mi premuro di ricordare a chiunque legga che stiamo per avere a che fare con CORRENTE ELETTRICA, quindi siate sicuri di ciò che state facendo prima di metterlo in pratica.

Io ho usato delle batterie al piombo da 12V 5AH, per evitare di surriscaldare troppo il microcontrollore ho costruito un piccolo circuito per abbassare la tensione in ingresso, il circuito è composto da due condensatori C1 e C2 e un integrato 7809, l'integrato abbasserà la tensione da 12 a 9V, io ho aggiunto un ulteriore dissipatore sull'integrato.









PREPARIAMO IL NOSTRO SHIELD
Io ho usato una micro sd con un adattatore sd, in questo modo mentre l'adattatore rimane nel suo alloggiamento si può rimuovere la micro sd per caricare facilmente i file.
Per quanto concerne l'adattatore sd, come scritto sopra ho seguito lo schema su hackerspace e non ho avuto problemi, devo però ammettere che finito il prototipo ho preferito acquistare dei modulini come questi: http://www.amazon.it/Card-Reader-Module-Socket-Arduino/dp/B00KKJULM8/ref=sr_1_7?ie=UTF8&qid=1431360219&sr=8-7&keywords=sd+card++arduino
per velocizzare la costruzione delle altre casse.

Qui di seguito lo schema dei collegamenti:
 
 
Attenzione a collegare i 3.3v e NON I 5V tra l'arduino e il lettore SD.
Inoltre fate attenzione anche a questo particolare: nel mio schema ho collegato il pin 8 di arduino al pin cs del lettore sd, di base nella libreria SimpleSDAudio il pin collegato al cs è il 4, ricordatevi di cambiarlo se come me ne utilizzate un altro, come vedrete nel codice è chiaramente indicato come fare.
Per quanto riguarda il modulo amplificatore vi rimando alle specifiche di Sparkfun, non vi preoccupate comunque in quanto è estremamente semplice, oltre al pin indicato nello schema da me postato dovrete aggiungere i 5v, gnd e il collegamento + e- verso l'altoparlante o verso l'ingresso audio.

terminato il montaggio del nostro shield possiamo pensare di procedere ad inscatolare il tutto, per questo io ho utilizzato una scatola di derivazione IP65 da esterni siliconando la dove creavo delle aperture come quella per il sensore PIR.


 Un ultimo consiglio, attenzione alla taratura del sensore PIR, come potete vedere ci sono due piccoli potenziometri arancioni, quello di sx regola i tempi che devono intercorrere tra una lettura e l'altra, quello di dx invece regola la sensibilità del sensore.

Per quanto concerne invece il codice ho caricato tutto lo sketch commentato su github, vi do solo alcune indicazioni invece sulla libreria, ho trovato simpleSDAudio ottima, dovete fare però attenzione a convertire i file con il tool che troverete all'interno della cartella scaricata;
in pratica dovete convertire il file che vi serve in formato .wav (io uso audacity che per questo scopo va benissimo ed è open), una volta convertito andate nella libreria di Arduino dove avete piazzato simpleSDAudio, aprite la cartella-->tools-->arduino with 16mhz, all'interno troverete una serie di file batch tipo --> Fullrate@16mhz mono.
Prendete il vostro file wav e trascinatelo sopra il file batch di vostro interesse (io ho usato il fullrate@16mhzmono16bit) vi si aprirà una finestra del terminale che vi chiederà di premere un tasto qualsiasi a conversione ultimata, fatelo e a quel punto nella cartella "converted" troverete il vostro nuovo file; questo è il file che dovrete mettere sulla sd e che dovrete richiamare nello sketch al comando "SdPlay.setFile("nomefile"); nello mio sketch di esempio il file si chiama "1.bfm".

Per scaricare comodamente il codice ed il progetto vi rimando al repository sul mio account github:

Un saluto a tutti e alla prossima

Nessun commento:

Posta un commento