2 Capitolo Acquisizione dati con PC 2.1 Generalità 2.2 Sistema di acquisizione dati analogici monocanale con PC, per segnali lentamente variabili 2.3 Sistema di acquisizione dati analogici multicanale con PC, per segnali lentamente variabili 2.4 Sistema di acquisizione dati analogici monocanale con PC, per segnali non lentamente variabili 2.5 Sistema di acquisizione dati analogici multicanale con PC, per segnali non lentamente variabili . Acquisizione dati con sistema con PC 2.1 GENERALITÀ I sistemi di acquisizione dati con PC sono semplici da progettare e il loro funzionamento è controllato da un programma di gestione, che può facilmente essere adattato ad ogni tipo di esigenza. Un sistema di acquisizione dati multicanale può essere così schematizzato Panoramica dei Blocchi Il trasduttore (T) Il trasduttore ha la funzione di trasdurre la variazione della grandezza fisica da acquisire in una corrispondente variazione di grandezze elettrica. Il circuito di condizionamento La variazione della grandezza elettrica fornita dal trasduttore, deve essere manipolata da un opportuno circuito di condizionamento al fine di ottenere un segnale proporzionale in tensione compreso nel range 0V5V, in quanto il convertitore A/D accetta in ingresso solo segnali variabili in tensione compresi, in genere, nel range 0V5V. - Il filtro passa-basso ha il compito di eliminare i disturbi. Il circuito S/H Dal momento che i convertitori A/D impiegano un tempo finito (ADC0808 100s) per digitalizzare un segnale analogico in ingresso, eventuali variazioni del segnale d’ingresso durante il processo di conversione possono determinare errori significativi. Questo problema viene risolto utilizzando un circuito S/H in grado di campionare il segnale analogico e di mantenere stabile il valore acquisito durante tutto il processo di conversione. Se i segnali analogici sono lentamente variabili (ad es. temperatura, pressione,umidità) questo blocco si può eliminare. Il convertitore analogico digitale (ADC) Il convertitore A/D fornisce in uscita una parola binaria che rappresenta un numero proporzionale al valore del segnale analogico d’ingresso Prof. Francesco Di Sabatino - Dispense di Sistemi Elettronici Automatici II-12 Acquisizione dati con sistema con PC Relazione tra l’ingresso e l’uscita dell’ADC Indicando con Va la tensione analogica d’ingresso e con N il valore decimale corrispondente alla parola binaria d’uscita. Per un convertitore a 8 bit con tensione di fondo scala 5V. Va = 5 N 28 L’interfaccia L’interfaccia rende possibile la trasmissione e la ricezione dei dati tra il P e la scheda di acquisizione. Essa viene inserita nel Bus del PC. E’ interfaccia parallela I/O dotata almeno una due porte. Una porta d’ingresso per la lettura dei dati proveniente dall’ADC e una porta d’uscita per la trasmissione dei segnali di controllo ( SOC e selezione ingressi Amux.). Elaboratore L’unità di elaborazione può essere una scheda aP o un PC. Questo blocco ci permette tramite un software dedicato di memorizzare elaborare, visualizzare, stampare ed eventualmente trasmettere tramite la porta seriale RS232 i dati ricevuti. Prof. Francesco Di Sabatino - Dispense di Sistemi Elettronici Automatici II-13 Acquisizione dati con sistema con PC 2.2 SISTEMA DI ACQUISIZIONE DATI ANALOGICI MONOCANALE CON PC, PER SEGNALI LENTAMENTE VARIABILI Un possibile schema è il seguente Il sistema in figura fa uso di un convertitore A/D ad es. l’ADC 0808, collegato al PC tramite una interfaccia con PPI8255 Flow-Chart e codifica in Qbasic Per la realizzazione del software ipotizzo che l’interfaccia abbia indirizzo base 300h. PA = &H300 PB = PA+1 PC = PA+2 CT = PA+3 OUT CT, &h99 ‘indirizzo porta A ‘indirizzo porta B ‘indirizzo porta C ‘indirizzo registro di controllo ‘programmazione porte A e C in input, port B in output OUT PB, &h01 ‘ SOC = “1” per riportare EOC a zero OUT PB, &h00 ‘ SOC = “0” parte la conversione FOR K=1 TO 5000: NEXT ‘ ritardo N= INP(PC) ‘lettura dato R=5/2^8 VA=R*N ‘risoluzione ADC ‘valore analogico ingesso ADC Prof. Francesco Di Sabatino - Dispense di Sistemi Elettronici Automatici II-14 Acquisizione dati con sistema con PC 2.3 SISTEMA DI ACQUISIZIONE DATI ANALOGICI MULTICANALE CON PC, PER SEGNALI LENTAMENTE VARIABILI Un possibile schema è il seguente Il sistema in figura fa uso di un convertitore A/D ad es. l’ADC0808, collegato al PC tramite una interfaccia con PPI8255. (l’ADC0808 contiene un Amux a 8 ingressi) . Flow-Chart e codifica in Qbasic PA = &H300 PB = PA+1 PC = PA+2 CT = PA+3 OUT CT, &h99 ‘indirizzo porta A ‘indirizzo porta B ‘indirizzo porta C ‘indirizzo registro di controllo ‘programmazione porte A e C in input, port B in output FOR CH=1 TO 7 OUT PB, CH+8 OUT PB, CH SLEEP 1 ‘ Scelta canale analogico (O-7) ‘selezione canale analog. CH e SOC = “1” per riportare EOC a 0 ‘selezione canale analog. CH e SOC = “0” (parte la conversione) ‘ ritardo N = INP(PC) ‘lettura dato uscita ADC R=5/2^8 VA(CH) = R*N ‘risoluzione ADC ‘valore analogico ingesso (CH) NEXT Prof. Francesco Di Sabatino - Dispense di Sistemi Elettronici Automatici II-15 Acquisizione dati con sistema con PC 2.4 SISTEMA DI ACQUISIZIONE DATI ANALOGICI MONOCANALE CONPC, PER SEGNALI NON LENTAMENTE VARIABILI Scelta effettuata Si fa uso di un’interfaccia I/O con PPI8255 (indirizzo base 300h), ADC a 8 bit ad es. ADC0808 e circuito S/H per mantenere stabile il dato all’ingresso dell’ADC per tutta la durata della conversione. Il segnale EOC controlla anche il circuito S/H. Funzionamento del Circuito S/H LF398A EOC = 1 Campionamento segnale (Sample); il segnale d’uscita riproduce quello d’ingresso EOC = 0 Mantenimento segnale (Hold); il segnale d’uscita del circuito S/H mantiene il valore assunto alla fine dell’intervallo di campionamento PA = &H300 PB = PA+1 PC = PA+2 RC = PA+3 OUT CT, &h99 OUT PB, &h01 ‘indirizzo porta A ‘indirizzo porta B ‘indirizzo porta C ‘indirizzo registro di controllo ‘programmazione porte A e C in input, port B in output ‘SOC = “1” per riportare EOC a zero 10 EOC=INP(PA): IF EOC <>0 THEN 10 OUT PB, &h00 ‘SOC = “0” parte la conversione 20 EOC=INP(PA): IF EOC <>1 THEN 20 N= INP(PC) ‘lettura dato R=5/2^8 VA=R*N ‘risoluzione ADC ‘valore analogico ingesso ADC Prof. Francesco Di Sabatino - Dispense di Sistemi Elettronici Automatici II-16 Acquisizione dati con sistema con PC 2,5 ISTEMA DI ACQUISIZIONE DATI ANALOGICI MULTICANALE CON PC, PER SEGNALI NON LENTAMENTE VARIABILI Scelta effettuata Interfaccia con PPI8255 (indirizzo base 300h), ADC a 8 bit. dotato di Amux a 16 ingressi (ADC0817) e circuito S/H LF398A . PA = &H300 PB = PA+1 PC = PA+2 CT = PA+3 OUT CT, &h99 FOR CH=1 TO 7 OUT PB, 16+CH ‘indirizzo porta A ‘indirizzo porta B ‘indirizzo porta C ‘indirizzo registro di controllo ‘programmazione porte A e C in input, port B in output ‘scelta canale analogico (O-7) ‘selezione canale analog. CH e SOC = “1” per riportare EOC a 0 10 EOC=INP(PA): IF EOC <>0 THEN 10 ‘attesa fino a EOC=0 OUT PB, CH ‘selezione canale analog. CH e SOC = “0” (parte la conversione) 20 EOC=INP(PA): IF EOC <>1 THEN 20 ‘attesa fino a EOC=1 fine conversione N = INP(PC) ‘lettura dato R=5/2^8 VA(CH)=R*N ‘risoluzione ADC ‘valore analogico ingesso ADC NEXT Prof. Francesco Di Sabatino - Dispense di Sistemi Elettronici Automatici II-17 Acquisizione dati con sistema con PC Schema elettrico per verifica sperimentale Prof. Francesco Di Sabatino - Dispense di Sistemi Elettronici Automatici II-18