Progettazione e sviluppo
di una infrastruttura hardware e software
per un sistema di supporto integrato
in ambiente domestico
Primo Relatore: Luca Fanucci
Secondo Relatore: Pierfrancesco Foglia
Terzo Relatore: Simone Perini
Indice degli argomenti
L’azienda: Amic s.r.l.
La domotica
– Definizione
– La situazione del mercato
– Lo stato dell’arte
Il progetto ELIK
Il modulo sviluppato: la
Control Board
– L’architettura hardware
• Scelta del microcontrollore
• Schemi a blocchi e elettrici
– Il firmware
• Gli ambienti di sviluppo
• I protocolli
• Testing
• Integrazione
L’azienda: Amic S.r.l.
Società del gruppo Microtel
– Costituito da diverse società europee
– Opera nel settore dell'Electronic Manufacturing Services
– Progettazione, sviluppo e produzione di schede elettroniche,
moduli e sistemi
Realizza dispositivi e sistemi elettronici
partendo dalle specifiche del cliente
Spin-Off della Scuola Superiore
La domotica (1)
Disciplina che integra le tecnologie
dell’impiantistica domestica tradizionale con
tecnologie innovative, per ottenere funzionalità
complesse
– Integrazione: condivisione dell’informazione fra i singoli
impianti installati
Separazione dell’evento dall’azione
Per il trasporto dell’informazione vanno definiti:
– Protocolli (proprietari o aperti)
– Mezzi trasmissivi
La domotica (2)
Vantaggi:
– Componenti più funzionali ed efficienti
– Risparmio energetico
– Miglioramento della qualità della vita delle persone in
condizioni di svantaggio rispetto alla maggioranza
della popolazione
– Sicurezza edifici
• Security (antifurto e controllo degli accessi)
La situazione del mercato
Mercato europeo della domotica fortemente in crescita
Divergenza fra
l’Europa del nord e
quella dell’area
mediterranea
In Italia, il mercato
presenta
un importante
trend evolutivo
Sono ancora poche le aziende
in grado di offrire soluzioni integrate e integrabili
Fonte:
Lo stato dell’arte (1)
Diverse soluzioni per l’home automation:
– MyHome della BTicino
– ByMe di Vimar
– Chorus della Gewiss
– Atmosphera di BM S.p.A.
– …
Lo stato dell’arte (2)
Cosa offrono:
– Controllo dei servizi connessi al sistema e gestone dell’impianto di
sicurezza
– Dotati di interfaccia a menù:
• LCD
• Touchscreen
– Controllo da remoto:
• Internet
• Telefono (cellulare o fisso)
Cosa manca:
– Nessun grado di specializzazione
– Spesso soluzioni proprietarie
Il progetto ELIK (1)
Sistema integrato
in grado di rendere
sicuro, intelligente
e maggiormente
usabile il sistema
cucina domestica
Integra una
nuova generazione
di elettrodomestici
dotati di intelligenza
superiore che
permette un utilizzo
efficiente e sicuro
Modulo acquisizione Connessione WirelessDispositivo di interfaccia portatile Piano cottura
Bus standard
Control board
Interface board Control board
Multistandard Board Master Board
Interne
t
Interne
t
Control board Interface board Archivio Sensori generici FrigoriferoIl progetto ELIK (2)
Offre:
– Supporto alle attività dell’utente della cucina per mezzo di sistemi
esperti, permettendo:
• Creazione di ricette ideali
in funzione del contenuto della base di conoscenza
(dati clinici, gusti, disponibilità in dispensa, ecc.)
• Impostazione automatica degli attuatori
(temperatura e tipologia di cottura del forno, selezione del
lavaggio più indicato per la lavatrice, ecc.).
– Aumento del livello di sicurezza in cucina, segnalando:
• Presenza di eventuali anomalie
(fughe di gas o acqua, variazioni anomale delle temperature)
• Malfunzionamenti
Il progetto ELIK (3)
Vantaggi rispetto alle soluzioni esistenti:
– Controllo dell’ambiente cucina in tutta la sua complessità
– Interfacciamento con la maggior parte delle soluzioni
in commercio
– Infrastruttura su cui è possibile impostare una serie di
future applicazioni
– Basata su protocolli aperti
Il progetto ELIK (4)
Ulteriori vantaggi:
– Maggior tutela della salute dei lavoratori e maggiore
sicurezza dei luoghi di lavoro:
mediante rilevatori di anomalie e malfunzionamenti
– Strumento di perseguimento delle pari opportunità:
consente una migliore gestione dei lavori domestici, tuttora
quasi esclusivo appannaggio del sesso femminile
– Risparmio energetico:
politiche di gestione delle utenze in modo da:
• Ridurre l’impatto ambientale
Il diagramma di Gantt
Progettazione e sviluppo
protocollo Modbus
Progettazione e sviluppo
schede controllo
Il modulo sviluppato: la Control Board
Scheda che consente il controllo di un singolo
elettrodomestico
Hardware:
– Microcontrollore LPC2378 della Philips basato su microprocessori
ARM7TDMI-S
– Interfacce RS232, RS485, Ethernet e USB
Firmware:
– Protocollo industriale ModBus
– Protocollo AmicLan
– Protocollo TCP/IP
– Protocollo USB
Il modulo sviluppato: la Control Board
Scheda che consente il controllo di un singolo
elettrodomestico
Hardware:
– Microcontrollore LPC2378 della Philips basato su microprocessori
ARM7TDMI-S
– Interfacce RS232, RS485, Ethernet e USB
Firmware:
– Protocollo industriale ModBus
– Protocollo AmicLan
– Protocollo TCP/IP
– Protocollo USB
Scelta del microcontrollore
Confronto fra LPC2148 e LPC2378 Philips
Caratteristiche
LPC2148
LPC2378
Frequenza
≤ 60MHz
≤ 72MHz
Ethernet
USB
Flash
512 kB
512 kB
SRAM
32 kB
32 kB
Controller mem. esterna
Blocchi timer/counter
2
4
Bus USB
APB
AHB
Power Domain
2
4
Scelta del microcontrollore
Confronto fra LPC2148 e LPC2378 Philips
Caratteristiche
LPC2148
LPC2378
Frequenza
≤ 60MHz
≤ 72MHz
Ethernet
USB
Flash
512 kB
512 kB
SRAM
32 kB
32 kB
Controller mem. esterna
Blocchi timer/counter
2
4
Bus USB
APB
AHB
Power Domain
2
4
Schemi a blocchi e elettrici (1)
Schema
a blocchi
LPC2378
Memoria Esterna
128K x 8
SSP
USB
Ethernet
P
H
Y
Latch
Triac
Power
Supply
RS232
RS485
Isolated
Digital Input
Blocco
Interfaccia
Isolated
Probes
Thermo
Schemi a blocchi e elettrici (2)
Schema elettrico
Microcontrollore
JTAG
Memoria
esterna
USB
Oscillatori
Schemi a blocchi e elettrici (3)
Schema
elettrico
Latch
dei Triac
Schemi a blocchi e elettrici (4)
Schema elettrico
Power Supply
Switching
Lineare
Schemi a blocchi e elettrici (5)
Schema elettrico
Interfacce
Seriali
Schemi a blocchi e elettrici (6)
Il modulo sviluppato: la Control Board
Scheda che consente il controllo di un singolo
elettrodomestico
Hardware:
– Microcontrollore LPC2378 della Philips basato su microprocessori
ARM7TDMI-S
– Interfacce RS232, RS485, Ethernet e USB
Firmware:
– Protocollo industriale ModBus
– Protocollo AmicLan
– Protocollo TCP/IP
– Protocollo USB
Il modulo sviluppato: la Control Board
Scheda che consente il controllo di un singolo
elettrodomestico
Hardware:
– Microcontrollore LPC2378 della Philips basato su microprocessori
ARM7TDMI-S
– Interfacce RS232, RS485, Ethernet e USB
Firmware:
– Protocollo industriale ModBus
– Protocollo AmicLan
– Protocollo TCP/IP
– Protocollo USB
Gli ambienti di sviluppo
Provati tre ambienti di sviluppo diversi:
Caratteristiche
IAR Embedded
WorkBench
uVision 3
Keil
WinIDEA
iSystem
Usabilità
Molto buona
Ottima
Buona
Toolchain
Solo proprietaria
Realview
o GNU
Qualsiasi
Riutilizzabilità
Solo ARM
Ottima
dalla toolchain
Dipendente
Il protocollo ModBus (1)
Protocollo a scambio di messaggi master/multislave di tipo
richiesta/risposta
Due layer:
– ModBus Application Protocol
– ModBus Data Link Protocol
Formato pacchetto:
– Campo Indirizzo: ID dello slave destinatario o broadcast
– Codice Funzione: codifica l’operazione richiesta dal master
– Dati: contiene informazioni aggiuntive
– CRC: controllo dell’errore
Campo Indirizzo Codice Funzione Dati CRC (o LRC)
PDU ModBus PDU serial link ModBus
Il protocollo ModBus (2)
FlowChart
Primo car. ricevuto / iniz. e avvio t1.5 e t3.5 Stato iniziale /avvio t3.5 Carattere ricevuto / inizializzaz. e avvio t3.5 Idle (pronto a ricevere o trasmettere)
Carattere emesso [se già emesso l’ultimo car.] Emissione Richiesta di emissione t3.5 scaduto Carattere ricevuto / inizializzaz. e avvio t3.5, t1.5 Ricezione t1.5 scaduto t3.5 scaduto t3.5 scaduto Controllo e attesa Commento Controlla frame: flag = frame OK o NOK Carattere ricevuto / flag=frame NOK Legenda t1.5, t3.5 : timer t1.5 : 1.5 tempi di carattere t3.5 : 3.5 tempi di carattere Commento Se frame OK Elabora frame Se frame NOK Cancella intero frame Attesa richiesta ModBus Convalida Codice funzione Convalida Indirizzi dati Convalida Valore dei dati
Esecuzione Funzione ModBus Invio Risposta [Valido] [Validi] [Validi] [Valida] Invio Eccezione ModBus Codice Eccezione 1 Codice Eccezione 2 Codice Eccezione 3 Codice Eccezione 4/5/6 [NonValido] [NonValidi] [NonValidi] [NonValida] [Ricezione PDU]