Indice |
1 - Introduzione
Il progetto presentato in questo documento è un riproduttore di file musicali comandato da 30 ingressi ed un generatore di colonna sonora continua. Può essere utilizzato, in abbinamento ad un timer o ad un generatore di uscite programmabili (ad esempio il progetto Presepe6 http://sasasbarra.altervista.org/projects/presepe6.htm), per generare i suoni di un presepe o di una scenografia, oppure per riprodurre a comando il suono di campane, brani musicali, eccetera.
Utilizza 2 moduli preassemblati VS1000mod oppure una scheda esterna MDFLY AU5018.
Senza moduli audio, il circuito può essere utilizzato per interfacciare ingressi di varia natura ad un pc mediante una porta seriale di tipo talk-only.
2 – Caratteristiche tecniche
30 ingressi optoisolati
i primi 15 situati sulla scheda madre e gli ulteriori 15 su una scheda di espansione che può essere montata anche al di sopra della scheda madre per risparmiare spazio. Gli ingressi del circuito accettano tensioni continue ed alternate, impostabili da 12 a 220V modificando il valore di una sola resistenza. Possono essere collegati in parallelo ad utilizzatori di qualsiasi tipo (lampade, motori, led) connessi ad uscite di tipo on-off o dissolvenza provenienti da circuiti esterni (per esempio Presepe6). Gli ingressi a Trigger di Schmitt provvederanno a rilevare il fronte positivo della tensione di ingresso (passaggio dal livello basso al livello alto) in entrambi i casi.
Utilizzo di 2 moduli preassemblati VS1000mod
della VLSI che hanno la stessa grandezza di un integrato a 32 pin e leggono file musicali di tipo OGG (un classico file mp3 può essere convertito) residenti su una memoria miniSD il cui zoccolo è situato sul lato corto del modulo stesso. Il primo modulo è utilizzato per riprodurre a comando i file musicali quando su uno dei 30 ingressi viene rilevato un fronte positivo. Il secondo modulo (opzionale) è utilizzato per generare una colonna sonora continua: lo stesso effetto ottenuto utilizzando un vecchio riproduttore di audio-cassette con funzione autoreverse. Al posto del primo modulo VS1000 è possibile anche utilizzare una scheda mp3 di tipo MDFLY modello AU5018 mediante piccoli adattamenti elettrici.
Pulsanti Play/Next e Stop
per riprodurre manualmente in sequenza le tracce audio residenti sulla memoria microSD del primo modulo audio, quello utilizzato per le tracce riprodotte a comando. Questi pulsanti possono essere utilizzati dall’utente per verificare che i file copiati sulla memoria microSD siano effettivamene riprodotti dal modulo.
Jumper
per impostare il tipo di modulo utilizzato, la velocità della porta seriale e la modalità di funzionamento
Display a due cifre (opzionale)
per visualizzare il numero della traccia riprodotta e lo stato di funzionamento del circuito. Lo stato di funzionamento è segnalato anche dalla modalità di lampeggio del led HeartBeat.
2 Potenziometri (opzionali se è stato montato un unico modulo)
per regolare singolarmente il segnale audio proveniente dai due moduli. E’ possibile utilizzare sia potenziometri doppi (audio stereo) che singoli (audio mono).
Uscita audio jack
da cui è possibile prelevare la miscelazione del segnale audio (stereo o mono) proveniente dai due moduli. Per ascoltare questo segnale audio è necessario collegare questa uscita ad una coppia di casse amplificate (tipo computer) oppure ad un amplificatore esterno.
Interfaccia ingressi per pc
E’ possibile di utilizzare il circuito, senza nessun modulo audio montato, per interfacciare ingressi di varia natura ad un pc mediante una porta seriale di tipo talk-only: verrà trasmesso ciclicamente lo stato degli ingressi ed eventualmente il numero dell’ingresso su cui è stato rilevato il fronte positivo. La velocità di trasmissione può essere impostata a 9600bps o a 115200bps.
Alimentazione
della scheda da 9 a 12V alternati o continui. L’assorbimento massimo è di 160mA con il display ed entrambi i moduli montati ed in fase di riproduzione.
3 – Modalità di funzionamento
Il circuito può essere utilizzato in 2 modalità:
Riproduttore audio a comando (JP2 aperto)
che utilizza il modulo VS1000 (JP1 aperto) o il modulo MDFLY (JP1 chiuso). JP1 determina la velocità di comunicazione (115200bps per VS1000 e 9600bps per MDFLY) e il tipo di routine utilizzate.
Nella root della memoria SD del modulo audio devono essere presenti file audio (di tipo OGG per VS1000 e MP3 per MDFLY) nominati da 01 a 30. Quando viene rilevato un fronte positivo su uno dei 30 ingressi, viene riprodotto il file audio associato. Nel caso di più fronti positivi rilevati contemporaneamente, verrà scelto l’ingresso con numero inferiore; fronti negativi non hanno nessun effetto. Se durante la riproduzione di un file viene rilevato un fronte positivo su un altro ingresso, verrà interrotta la riproduzione in corso e avviata la riproduzione del file associato all’ingresso su cui è stato rilevato il nuovo fronte positivo. I due pulsanti servono per testare la riproduzione dei file senza utilizzare gli ingressi: con il pulsante Play/Next è possibile avviare la riproduzione in sequenza di tutti i file o saltare a quello successivo; con il pulsante Stop si arresta la riproduzione del file. I pulsanti sono sempre attivi, anche nel caso in cui il file riprodotto sia stato avviato da un fronte positivo rilevato sugli ingressi.
Sul display è visualizzato il numero di traccia e lo stato di funzionamento del circuito.
Lettore di ingressi con uscita su porta seriale (JP2 chiuso)
Questa modalità, senza moduli audio montati, serve per interfacciare ingressi di varia natura ad un pc mediante una porta seriale talk-only. Sul pc potrà essere sviluppata un’applicazione che intraprende azioni (avvia programmi, file audio o video, presentazioni) secondo lo stato degli ingressi esterni. Mediante JP1 può essere selezionata la velocità di comunicazione (aperto: 115200bps, chiuso: 9600bps); la cpu leggerà periodicamente gli ingressi ed invierà sulla seriale ogni 1,2 secondi una stringa contenente lo stato degli ingressi ed eventuali fronti rilevati. Nel caso di più fronti positivi rilevati contemporaneamente, verrà scelto l’ingresso con numero inferiore; fronti negativi non hanno nessun effetto. Sul display apparirà il numero di ingresso su cui è stato rilevato il fronte positivo; i due pulsanti non sono utilizzati.
I dati stampati periodicamente sulla seriale hanno il seguente formato:
001122334455 10110 00010 00101 11100 11000 01011 CrLf (nessun fronte positivo rilevato)
001122334455 10110 00010 00101 11100 11100 01011 23 CrLf (rilevato fronte positivo su ingresso 23)
I primi 12 caratteri indicano la progressione della lettura della matrice, segue lo stato (0/1) dei 30 ingressi ed eventualmente il numero dell’ingresso su cui è stato rilevato il fronte. La stringa è terminata dai caratteri CrLf (13 + 10 Ascii). Questa modalità può essere utilizzata anche per testare la funzionalità della matrice di ingresso.
Maggiori informazioni su: http://sasasbarra.altervista.org/projects/musicbox.htm
4 - Download progetto MusicBox
Documentazione tecnica: http://sasasbarra.altervista.org/download/projects/musicbox_doc.pdf
Schemi elettrici e circuito stampato: http://sasasbarra.altervista.org/download/projects/musicbox_sch_pcb.zip
Firmware per cpu e documentazione: http://sasasbarra.altervista.org/download/projects/musicbox_fw.zip