Datalogger a 5 canali


Lo strumento pronto per l'uso

Si tratta di uno strumento di laboratorio indispensabile quando si ha la necessità di monitorizzare e registrare tensioni analogiche in rapida variazione, da analizzare comodamente in un secondo tempo con il proprio personal computer.

Le applicazioni sono moltissime, come anche la gamma di sensori che possono essere collegati alle entrate dello strumento, ad esempio sensori di pressione, sonde di temperatura, accelerometri, fotocellule, celle di carico ecc.

Qualsiasi tensione in continua nel range da 0 a 5 volt può essere monitorizzata dallo strumento, inoltre, interfacciando il datalogger a dei moduli RF digitali, possiamo ottenere un valido sistema di telemetria.

Questo progetto, semplice e poco costoso nella realizzazione ma molto versatile e potente, prevede anche l’alimentazione a batteria, per aumentare il campo d’impiego.

Il progetto è integrato alla serie di articoli sulla Missilistica amatoriale in quanto originariamente è stato concepito per assolvere la funzione di datalink telemetrico installato sulla capsula payload del razzo in costruzione, per il rilevamento dei parametri di volo.

Lo stesso dispositivo sarà anche usato come registratore dati, accoppiato al banco di test per motori a razzo, oggetto di una delle prossime puntate, insieme ad una cella di carico ad estensimetri.

 


Lo schema elettrico

IL CIRCUITO ELETTRICO

Il dispositivo è costruito intorno ad uno dei "best-seller" della Microchip, il validissimo microcontroller PIC 16F876, dotato di un efficiente convertitore analogico/digitale shiftabile su diversi ingressi.

I pochi componenti esterni al microcontroller sono il generatore di clock (un oscillatore a 4 Mhz), uno stabilizzatore di tensione a 5 volt, una memoria EEPROM 24LC64 (oppure 24LC256), un display LCD da 16 caratteri su due linee e un convertitore di protocollo seriale MAX232.

In questa configurazione il circuito ci permette di campionare le tensioni presenti sui 5 ingressi (nel range di 0 a 5 V), di visualizzare i valori digitali sul display, di memorizzare le letture sulla memoria e di ritrasmetterle in un secondo tempo ad un personal computer, dove un opportuno programma può interpretarle a piacimento.

L’attivazione dei campionamenti e relativa trasmissione in RS232 in tempo reale viene comandata dalla pressione del pulsante P1, premendo nuovamente dello stesso pulsante si comanda lo STOP, mentre la visualizzazione e la contestuale trasmissione seriale al PC dei dati memorizzati viene attivata dal pulsante P2. I dati sono conservati intatti anche in assenza di alimentazione mentre la cancellazione dei vecchi dati viene fatta al momento del nuovo campionamento.

Il clock del microcontroller è generato dal quarzo XT da 4 Mhz insieme ai condensatori C2 e C3.

Scegliendo un quarzo di frequenza più alta il campionamento varia di conseguenza ed è possibile montare un quarzo fino a 20 Mhz. Attenzione però agli eventuali problemi di trasmissione seriale.

Il display LCD è collegato alle porte RB0-RB4 tramite il connettore CN1, mentre gli ingressi analogici sono collegati alle porte RA0-RA3, impostabili a seconda delle necessità in modalità digitale oppure analogica (AN0-AN3).

Il connettore CN2 raggruppa tutti gli ingressi da campionare, insieme ad un pin di massa e uno a 5 volt, utile per alimentare alcuni sensori attivi.

I pulsanti di servizio sono collegati alle porte RC0-RC2 e sono disponibili sia sul connettore CN1, sia sul CN7, dedicato appositamente per questo scopo.

Sulla porta RC5 è collegato un buzzer piezoelettrico attivo e un led per segnalare visivamente l’attivazione.

L’archiviazione dei dati viene fatta sulla memoria 24LCxxx, connessa al PIC tramite le porte RC3-RC4 (linee SCL e SDI).

Contestualmente alla memorizzazione le letture sono trasmesse sull’interfaccia seriale disponibile sulle porte RC6-RC7. Lo standard TTL è convertito in protocollo RS-232 dal chip MAX232 della Maxim, sostituibile con i modelli equivalenti prodotti da altre case.

Se si ha la necessità di inviare il segnale ad una stazione di ricezione remota (radio telemetria) è possibile prelevare il segnale in standard TTL ed inserirlo sull’ingresso di un trasmettitore radio (ad esempio i moduli ibridi prodotti da diverse case).

Il segnale RS-232 è disponibile sul connettore CN3, previsto per la connessione al personal computer.

In questo caso il cavo di connessione richiede solo un polo oltre alla massa. Ricordarsi però di cortocircuitare i pin 7-8 e 4-6 sul connettore canon a 9 poli da collegare al PC.

Il connettore CN11 è usato per la programmazione ON-BOARD, molto utile per evitare di estrarre il micro dallo zoccolo. Per programmarlo in questo modo serve un apposito programmatore ed in questa fase i ponticelli sul CN10 e sul CN11 devono essere momentaneamente rimossi.

LA COSTRUZIONE

Il circuito stampato può essere realizzato con la tecnica della fotoincisione a raggi UV, seguito dallo sviluppo con idrossido di sodio diluito al 2% e corrosione con acido cloridrico (70%) e perossido d’idrogeno (acqua ossigenata) a 90 volumi. Per questo scopo è stato predisposto il master illustrato in figura.

Per consentire la realizzazione in casa del circuito stampato senza troppe complicazioni è stato disegnato a singola faccia, è però importante ricordare inserire i tre ponticelli in filo di rame tra le piazzole predisposte.

Una volta forata la basetta con la punta da 0,8 mm ed averla adeguatamente sgrassata procederemo con l’inserimento e saldatura degli zoccoli, degli strip-connector a passo 2,54, delle resistenze e dei condensatori, successivamente saranno montati i componenti attivi.

Il montaggio del display LCD è previsto sul pannello anteriore del contenitore, così anche i pulsanti e i led. Controllare la zoccolatura del display in base al modello disponibile (verificare tabella illustrata).

L’interruttore di alimentazione, la presa seriale RS232 e il connettore multipolare per gli ingressi saranno invece installati sul pannello posteriore.

Nelle foto è visibile uno dei prototipi realizzati dagli autori, nella fattispecie si tratta della versione portatile, alimentata a batteria. Il circuito del datalogger è il modulo centrale, mentre a fianco si può vedere l’amplificatore per celle di carico ad estensimetri, che sarà oggetto di un prossimo articolo.

Sul pannello anteriore è installato il display LCD, i pulsanti di comando e i Led di status. Sul pannello posteriore sono disponibili gli interruttori per le diverse sezioni e le prese per l’interfacciamento con l’esterno.

COME SI USA

Possiamo collegare ad una o più entrate un valore di tensione in continua compreso da 0 e 5 volt, per fare dei test sono sufficienti anche dei normali potenziometri o trimmer con un terminale a massa, l’opposto ai 5V disponibili sullo zoccolo di collegamento e il cursore centrale sull’ingresso. Regoliamo inizialmente i potenziometri o i trimmer in modo da connetterli a massa.

Diamo tensione dl circuito e leggeremo sul display la scritta : Telemetric System Ready.

Premiamo una volta il pulsante di start P1 e un breve suono ci avviserà che il campionamento è iniziato.

Sulle due righe del display potremo leggere : A0000B0000C0000D0000E0000 REC

Se sposteremo i potenziometri vedremo che il valore 0000 cambierà indicando altre cifre.

Una tensione di 5 V sarà rappresentata dalla cifra 1024, perciò ogni aumento di un volt della tensione presente sul segnale in entrata causerà un incremento di 205 unità sul display.

La scritta REC indica che si è in fase di campionamento e registrazione, mentre il LED lampeggia.

Il sistema continua a memorizzare i dati fino a quando non premeremo nuovamente il pulsante P1 oppure si esaurirà la capacità della memoria FLASH (794 letture con una memoria 24LC64 e 3176 letture con una 24LC256).

A questo punto possiamo collegare il dispositivo alla porta seriale RS232 del nostro PC, lanciamo il programma di scaricamento e premiamo il pulsante P2.

Sulle due righe del display potremo leggere : A0000B0000C0000D0000E0000 PLAY

Il led rimarrà acceso in continuazione mentre i dati si trasferiranno sul PC dove potranno essere archiviati in un file con il nome assegnato e rielaborati successivamente. A trasferimento terminato il LED si spegnerà.

I dati rimarranno in memoria anche a circuito spento e saranno cancellati automaticamente solo al momento di un nuovo campionamento.

IL PROTOCOLLO DI TRASMISSIONE

Sull’uscita seriale, sia in tempo reale che in fase di scaricamento dati memorizzati, disponiamo di una serie di stringhe con i seguenti parametri : 9600 baud, 8 bit, nessuna parità, 1 bit di stop, e con il seguente protocollo: 255, ch0-h, ch0-l, ch1-h, ch1-l, ch2-h, ch2-l, ch3-h, ch3-l, ch4-h, ch4-l, cks-h, cks-l.

Spieghiamo bene cosa significano in dettaglio i sopra descritti simboli :

Per prima cosa attendiamo la ricezione del codice 255, che serve a marcare l’inizio della sequenza. E’ stato scelto questo valore poichè in nessun caso potrà essere usato dagli altri segnali.

Quelli che seguono sono 10 valori raggruppati a due a due, infine i due valori del checksum, che servono ad autenticare i dati precedenti.

La coppia di dati, ad esempio ch0-h e ch0-l, rappresentano il valore effettivo del canale 1, suddivisi in due tronconi in formato "bcd", il primo indica la parte alta ed il secondo la parte bassa.

Questi due valori devono essere riassemblati per ottenere il valore completo disponibile sul canale.

Ad esempio, se il carattere ch0-h convertito in decimale è di 09 e il carattere ch0-l convertito in decimale è di 72, il valore risultante sarà : (09 *100) + 72 = 972

Una semplice procedura scritta in Qbasic per lo scarico dei dati è disponibile sul sito della rivista.

 

I SENSORI INTERFACCIABILI

Al momento sono stati sviluppati i seguenti tipi di sensori:

- Accelerometri a singolo e doppio asse, con un range da 2 a 50 G.

- Barometro ambientale per la misura della pressione atmosferica, utile per implementare un altimetro.

- Voltmetro per misurare lo stato degli accumulatori di bordo.

- Sensore termico, per la misurazione della temperatura ambientale

- Cella di carico ad estensimetri, per la misura di forze, pesi, torsioni, sollecitazioni e vibrazioni.

Sono allo studio anche altri tipi di sensori, ad esempio una bussola elettronica ed un inclinometro.

 

ELENCO COMPONENTI

R1 27 Kohm 1/4W

R2 27 Kohm 1/4W

R3 27 Kohm 1/4W

R4 10 Kohm 1/4W

R5 22 Kohm 1/4W

R6 47 Kohm 1/4W

R7 470 ohm 1/4W

R8 470 ohm 1/4W

R9 10 Kohm 1/4W

R10 10 Kohm 1/4W

R11 470 ohm 1/4W

R12 1 Kohm trimmer

R13 390 Ohm 1/4W

C1 100 nF poliestere

C2 22 pF ceramico

C3 22 pF ceramico

C4 10 nF poliestere

C5 10 nF poliestere

C6 2,2 mF elettrolitico

C7 2,2 mF elettrolitico

C8 2,2 mF elettrolitico

C9 2,2 mF elettrolitico

C10 47 mF elettrolitico

C11 100 nF poliestere

DS1 1N4148 diodo al sicilio

TR1 BC547 transistor NPN

XT Quarzo 4 Mhz

L1 Led rosso

L2 Led verde

L3 Led giallo

IC1 16F876/20 microcontroller

IC2 24LC256 memoria

IC3 MAX232 Maxim

IC4 78SL05 stabilizzatore 5V

LCD Display Hitachi CDL4162 (16 caratteri x 2 linee)

P1-P3 Pulsanti da circuito stampato

S1 Interruttore a slitta

1 zoccolo per integrato a 28 pin

1 zoccolo per integrato a 8 pin

1 zoccolo per integrato a 16 pin





Veduta dell'interno


Veduta del pannello posteriore