sviluppo di un prototipo di simulatore polifonico per concerto di campane trieste, 12 marzo 2013...

16
SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato Correlatore: Ing. Piergiorgio Menia Università degli Studi di Trieste DIPARTIMENTO DI INGEGNERIA E ARCHITETTURA Corso di Laurea in Ingegneria Elettronica

Upload: patrizia-angeli

Post on 01-May-2015

219 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

SVILUPPO DI UN PROTOTIPO DI SIMULATORE

POLIFONICO PER CONCERTO DI CAMPANE

Trieste, 12 marzo 2013

Laureando:

Francesco Guzzi

Relatore:

Prof. Sergio Carrato

Correlatore:

Ing. Piergiorgio Menia

Università degli Studi di Trieste

DIPARTIMENTO DI INGEGNERIA E ARCHITETTURACorso di Laurea in Ingegneria Elettronica

Page 2: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

PREMESSA E SPECIFICHE:● Simulare un gruppo di 12 campane → 12 semitoni● Sistema da collegare ad un sequencer esterno.● Riproduzione campioni audio pre-registrati → 10 s● Gestione ritardi.● 2 file per campana

→ 24 file● Latenza < 10 ms.● Basso costo totale.

DELAY 1PLAY 1 DELAY 1 PLAYBACK

DELAY 1PLAY 2 DELAY 2 PLAYBACK AUDIO OUT

DELAY 1PLAY 24 DELAY 24 PLAYBACK

...

MEMORIACAMPIONIINTERFACCIA

REMOTO

PC

... ...

SEQUENCERESTERNO

2/ 16

Page 3: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

SOLUZIONE IMPLEMENTATA● Boot istantaneo.● Bassa latenza.● 24 ingressi digitali. ● 1 uscita monofonica

analogica.● Ritardi programmabili

per ogni voce.● Gestione da remoto.● Soluzione a memoria

distribuita

BUS

MODULO 1

MODULO 2

MODULO 12

PLAY 1

PLAY 2

MCU

PLAY 24

OUT

PC

BUS

BUS

...

...

...

...

...

3/ 16

Page 4: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

MODULO VS1000mod● 12 moduli● Alimentazione 5 V.● Formato DIP32.● File in formato VORBIS (o WAV).● SoC VS1000 programmabile.● Funzioni tipiche in ROM istruzioni.● Poca RAM istruzioni.● Sorgenti firmware di default.● GPIO a livelli CMOS.● FLASH SPI da 16 Mbit. → 23,7 s● Uscita audio analogica lineout 4/16

Page 5: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

FIRMWARE CUSTOMInit audio structs

Set Pll

Auto Addressing

Check upload startup

Check volume startup

Main code Endless loop

GPIO conf

Init SPI

Enable interrupts

START

Set Hook

– Usa funzioni di libreria del firmware originario

– Accesso FLASH-SPI

– Lettura/scrittura filesystem a blocchi

– “Raw” TX/RX UART

– Implementato decoder software WAV

– GPIO “manuale”.

– Protocollo → upload file.

→ set volume.5/ 16

Page 6: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

UPLOAD FILES: protocollo– Implementato protocollo a pacchetto di tipo

“stop and wait”

– Risposta ACK / NACK

– ByteStuffing / De-stuffing

– Campo dati a lunghezza variabile (MAX 240 Byte)

– Gestione timeout, overflow, address-mismatch

– Struttura pacchetto:

[STX] || [Indirizzo][Tipo_pacchetto][num_sequenza][dati][CHK] || [ETX]

6/ 16

Page 7: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

SISTEMA DI CONTROLLO– Triggerare esecuzione dei file audio dopo il delay

programmato.

– Rimanere in ascolto sulla porta seriale per esecuzione comandi.

• Propri

• “Helper”

7/ 16

–12 x 2 Input e Output digitali.

– 1 uscita per pilotare il reset moduli;

– UART

– memoria non volatile;

– Prototipo con ATMEGA16L

Page 8: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

SISTEMA DI CONTROLLO

8/ 16

Page 9: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

– Tutti i nodi in ascolto

– Tx solo se indirizzo coincide

– RS232 logica invertita

– Idle “alto”

– Buffer digitali IN/OUT

BUS SERIALE MULTIDROP

9/ 16

Page 10: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

Software di gestione

10/ 16

Page 11: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

SISTEMA DI MISCELAZIONESIMULAZIONE

Frequenza [Hz]

Attenuazione[dB]

11/16

Page 12: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

SCHEMA FINALE SOMMATORE

– Partitore idealizzato

– Uso di entrambi gli opmap nel package

12/16

Page 13: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

MODULO ALIMENTATORE

– Alimentazione 12 V CC → 5 V → 3.3 V

– 80 mW / modulo (consumo tipico in play)

13/16

Page 14: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

CONSIDERAZIONI FINALI

– Sistema prototipo funzionante egregiamente.

– Test protocollo con azioni disturbanti

– Unplug cavo durante trasmissione.

– Generazione di semplici errori nel pacchetto.

– Problemi / semplicità derivanti da:

– scelta del sistema modulare.

– uso di campioni pre-registrati.

14/16

Page 15: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

SVILUPPI FUTURI– Implementazione di una funzionalità di

“sequencer autonomo” tipo “carillon”.

– Play standalone ma gestione su PC.

– Auto-apprendimento del tempo di ritardo.

– Riduzione firmware moduli.

– Miglioramento sicurezza protocollo.

15/16

Page 16: SVILUPPO DI UN PROTOTIPO DI SIMULATORE POLIFONICO PER CONCERTO DI CAMPANE Trieste, 12 marzo 2013 Laureando: Francesco Guzzi Relatore: Prof. Sergio Carrato

Grazie per l'attenzione.