ShockRunner

Sergio Guerra

 

Sistema per il monitoraggio delle vibrazioni subite dai moduli del calorimetro a cristalli ECAL dell’esperimento CMS durante il viaggio di trasporto in container isotermico da Roma a Ginevra con possibilita’ di rilevamento della posizione geografica tramite GPS e trasmissione dati via GSM

 

 

 

Requisiti di progetto:

 

  1. rilevamento delle sollecitazioni mediante accelerometri a tre assi (al massimo tre terne XYZ) e memorizzazione dei dati misurati
  2. invio allarme di superamento soglia via radio alla cabina di guida con link RF a 433 Mhz
  3. rilevamento e memorizzazione di temperature (interna ed esterna al container) e di umidita’
  4. rilevamento e memorizzazione della posizione geografica tramite sistema GPS integrato

5.      possibilita’ di accettare richieste di informazioni tramite ricezione e invio di SMS su rete telefonica mobile GSM

  1. trasferimento dati e impostazione parametri da remoto con link seriale GPRS su rete GSM

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Fig. 2: schema a blocchi

 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


I componenti del progetto:

 

 

 

La scheda Master con Real Time Clock

 

·          inizializzazione del Modulo GSM

·          inizializzazione del Modulo GPS

·          lettura del Modulo GPS a intervalli di 1 minuto

·          controllo della presenza di SMS a intervalli di 15 secondi e, se presenti, invio di risposta in base al tipo di richiesta

·          lettura e memorizzazione delle temperature (interno/esterno)

·          lettura e memorizzazione dell’umidita’ relativa

·          lettura e memorizzazione della velocità del mezzo ad intervalli di 1 minuto

·          scrittura del log-file degli SMS ricevuti e inviati

·          scrittura del log-file contenente la storia di tutte le operazioni eseguite dal sistema: accensione, spegnimento, creazione dei file, cancellazione dei file, totale degli eventi registrati, inizio e fine dei link seriali GPRS su rete telefonica GSM, completi di data e ora 

·          scrittura di tutti gli eventi memorizzati dalle schede di controllo degli accelerometri

 

La scheda Master e’ equipaggiata con un  microprocessore AT mega128 (Atmel) con un clock a 14 Mhz. che provvede alla gestione dei moduli GPS e GSM, alla selezione delle porte seriali delle altre schede tramite switch analogici e all’acquisizione delle temperature.

Per il Real Time Clock ho usato il PCF8563 su un bus I2C con batteria ricaricabile al litio per il mantenimento delle impostazioni.

Lo stesso bus gestisce anche una RAM da 256 Kbyte tipo 24C256 per usi futuri.

Le temperature vengono acquisite tramite due sonde LM35 montate in configurazione differenziale per ottenere anche la lettura dei valori negativi. La loro precisione e’ di 0.5 °C e la non linearita’ ±1/4°C.

L’umidita’ relativa viene acquisita da un sensore HIH 3610 della Honeywell con accuratezza del ±2% a 25 °C e una linearita’ tipica del ±0.5%.

L’uscita delle sonde viene letta dall’ADC a 10 bit del microprocessore con una risoluzione di 1/10 di grado per le temperature e una una risoluzione dell’ 1% per l’umidita’. Le temperature e l’umidita’ risultanti vengono memorizzate ad intervalli di 1 minuto in una memoria CompactFlash™ da 128 Mb.

Il firmware legge il GPS ad intervalli di 1 minuto e carica nelle variabili la posizione (protocollo geodetico WGS 84), la velocita’ in Km/h e l’altitudine sul livello del mare in metri.

Questi dati, con data e ora, verranno richiesi dalle CPU delle schede degli accelerometri ad ogni evento acquisito e verranno utilizzate durante l’analisi del viaggio.

Il GSM viene interrogato ad intervalli di 15 sec per controllare la presenza di un SMS.

In caso affermativo viene letto il messaggio che, se contenente un codice identificativo delle funzioni previste, viene decodificato ed eseguito. La funzione si conclude con l’invio di un SMS al telefono chiamante contenente le informazioni richieste.

Il GSM viene controllato di continuo per vedere se è in arrivo una chiamata.

Se è presente una chiamata viene analizzata e se non è di tipo “scambio dati” viene rifiutata.

Nel caso in cui la chiamata è accettata viene inviato il comando di risposta e attivato  il link per lo scambio dati con un modem remoto. Viene poi inviato un menu’ per la scelta delle opzioni.

La velocità di connessione è in autobauding e dipende dalla rete GSM/GPRS.

Il link è dotato di una routine di timeout per evitare eventuali malfunzionamenti del collegamento.

La scheda Master gestisce inoltre l’indirizzamento, tramite switch analogici, di tutte le porte seriali dei vari dispositivi per lo scambio delle informazioni.

Dispone inoltre di una ulteriore porta seriale esterna per il collegamento ad un PC per le impostazioni dei parametri e il trasferimento dei dati acquisiti.

 

 

La scheda di controllo degli accelerometri

 

 

·          1 scheda per ogni terna di assi da monitorare (max. 3 schede)

·          rate max di acquisizione ~200 Hz

·          lettura dei segnali di uscite/a degli accelerometri, conversione in G e memorizzazione

·          la memorizzazione viene eseguita su memorie commerciali CompactFlash™ (una per ogni scheda di controllo), di grande capacita’(fino a 512 Mb) e facilmente sostituibili.

·          scrittura del log dei files creati e cancellati

·          scrittura del numero totale degli eventi

·          parametri impostabili:

1.       nome del file di acquisizione

2.       soglia di acquisizione ( da 0.000 a 9.999 G)

3.       soglia di allarme ( da 0.000 a 9.999 G)

4.       numero di acquisizioni per singolo shock (da 1 a 9999)

5.       numero di eventi per singolo file

 

La scheda per la lettura degli accelerometri e’ equipaggiata con un  microprocessore AT mega128 (Atmel) con un clock a 14 Mhz.Ogni scheda legge di continuo il duty cycle della terna di accelerometri connessa ai suoi ingressi e converte la lettura in G.

Se la lettura di uno dei tre assi supera la soglia impostata, parte un’acquisizione per un tempo stabilito e i dati vengono memorizzati insieme a data e ora. Inoltre se la lettura ha superato la soglia di allarme viene inviato un segnale al microprocessore della scheda Master che provvede all’attivazione del trasmettitore per l’invio dell’allarme via radio a 433 Mhz che avviserà in cabina l’autista del mezzo di trasporto. La scelta di un sistema radio evita l’utilizzo di cavi facilitando le operazioni di installazione.

Il firmware della scheda è provvisto di routine per l’azzeramento (anche da remoto) e per la calibrazione dei tre assi degli accelerometri.

Il collegamento ad un PC per le impostazioni dei parametri e il trasferimento dei dati acquisiti avviene tramite porta seriale utilizzando un qualsiasi programma per lo scambio di dati, p. es.: Hyperterminal.

 

 

Il modulo GPS (Global Positioning System)

 

 

Per il sistema GPS ho utilizzato il modulo MS1E della u-blox ricevitore a 12 canali paralleli con una risoluzione di 5 mt ed un tempo di re-acquisizione di 100 ms. Il tempo di acquisizione a freddo (senza memorizzazione della posizione) e’ di circa 60 sec e si riduce a 2-6 sec se e’ stata memorizzata l’ultima posizione prima dello spegnimento.

Comunica con la scheda Master tramite protocollo seriale a 19200 baud inviando una serie di stringhe NMEA  contenenti tutte le informazioni relative alla posizione (protocollo geodetico WGS 84), alla velocita’ in nodi e all’altezza sul livello del mare in metri.

 

Esempio di stringhe NMEA

$GPRMC,140005.242,A,4717.1126,N,00833.7862,E,0.02,79.58,010201,,*36

$GPVTG,79.58,T,,M,0.02,N,0.0,K*51

$GPGGA,140006.242,4717.1126,N,00833.7862,E,1,06,1.3,540.9,M,,,,0000*06

$GPGLL,4717.1126,N,00833.7862,E,140006.242,A*31

$GPGSA,A,3,06,17,25,22,30,10,,,,,,,2.9,1.3,2.6*3A

$GPGSV,2,1,07,06,58,062,45,17,52,161,44,25,45,239,45,22,35,301,44*7F

$GPGSV,2,2,07,30,31,123,45,10,17,059,39,01,05,316,*4F

 

Le stringhe prese in considerazione sono la GPRMC(Recommended Minimum Specific GNSS Data) e la GPGGA(Global Positioning System Fixed Data) e vengono lette ogni secondo.

Il firmware provvede alla decodifica e alla presentazione dei dati.

Il GPS e’ inoltre fornito di datalogger per la memorizzazione ad intervalli di 1 secondo di tutti i punti del tragitto.

 

 

Il modulo GSM

 

 

Il sistema GSM usa il modulo GM862-GPRS della Telit dual band (900-1800 Mhz) che supporta la gestione degli SMS e l’invio di dati con sistema GPRS ad alta velocita’.

Comunica con la CPU tramite protocollo seriale a 19200 baud usando il set di comandi Hayes standard AT secondo le specifiche ETSI GSM 07.07 .

Inviando al sistema ,tramite qualsiasi telefono cellulare,un SMS contenente un codice, questo decodifica il codice e invia un SMS di risposta con tutte le informazioni richieste.

Inoltre si puo’ collegare via radio ad un PC provvisto di modem per l’impostazione dei parametri o il trasferimento dei dati da remoto.

 

 

La motherboard

 

 

 

 

 

·          Gestione elettronica supporta meccanicamente e controlla tutte le carte elettroniche del sistema.

La Motherboard e’ equipaggiata con un  microprocessore AT mega8 con un clock a 7 Mhz. che provvede alla gestione dei segnali di allarme da inviare al trasmettitore a 433 Mhz.

Il Tx  ha una potenza RF di 10 mW e copre una distanza (in campo libero) di circa 500 mt.

 

·          Switch provvede all’indirizzamento delle porte seriali delle varie schede per lo scambio di dati tramite switch     analogici

·          Sezione di alimentazione gestisce l’alimentazione del sistema

·          Trasmissione via radio invia i segnali di allarme di superamento soglia (impostabile anche da remoto) tramite Tx a 433 Mhz al ricevitore posto nella  cabina del mezzo

 

 

Ricevitore allarme

 

Modulo ricevente a 433 Mhz con una sensibilità di –117 dbm.

Il codice di uscita viene decodificato da un microprocessore AT90S2323 che provvede, in caso di allarme, all’attivazione di un buzzer e al lampeggio di un led ad alta luminosità.

 

 

 

Accelerometri

 

Il progetto si basa sull’accelerometro ADXL210 della Analog Device.

L’ADXL210 e’ un accelerometro a 2 assi con un range di misura da + 10 G a – 10 G con una risoluzione di 2 mg a 60 Hz. L’ ADXL210 misura l’accelerazione dinamica(es. vibrazioni)e l’accelerazione statica (es. gravita’). Il noise tipico e’ 200 µG/√‾Hz.

Il drift in funzione della temperatura e’ di 50 ppm/°C.

L’uscita e’ un voltaggio analogico oppure un segnale digitale dove il duty cycle (rapporto tra durata(T1) dell’impulso e periodo(T2)) e’ proporzionale all’accelerazione.

La banda passante dell’uscita digitale e’ 500 Hz.

 

Fig. 1: uscita digitale dell’ADXL210

 

 

Alimentazione

 

L’alimentazione di tutto il sistema avviene tramite accumulatore da 12 V 3Ah ricaricato in tampone e questo per i seguenti motivi:

·          ottenere un’alimentazione esente da disturbi

·          il sistema viene alimentato anche quando il mezzo è fermo, in assenza di alimentazione.

 

 

 

Link remoto

 

Tramite la rete GSM si puo’ monitorare in tempo reale la posizione del mezzo e visualizzarla su un computer palmare.

Il programma per la gestione del collegamento e la visualizzazione cartografica e’ scritto in Visual Basic Embedded 3.0

Il PDA viene connesso al telefono cellulare, provvisto di modem, tramite un cavetto con un traslatore di livello RS232.

Possono essere visualizzati:

·          posizione del mezzo

·          temperature interna ed esterna

·          umidita’ relativa

·          numero degli eventi memorizzati

inoltre possono essere impostati nuovi parametri per gli accelerometri

 

Tutti i componenti elettronici del progetto sono SMD (Surface Mount Device) per migliorare resistenza alle sollecitazioni meccaniche.

Le memorie CompactFlash sono formattate con filesystem tipo FAT16 in modo da poter essere lette, tramite un’adattatore commerciale, su un qualsiasi PC. I file prodotti dal sistema sono normali file di testo.

Per lo sviluppo dei firmware e la programmazione dei microprocessori ho utilizzato un compilatore Bascom con codice scritto in Basic e Assembler.