Corso di BASCOM 8051 - (Capitolo 3 8 ) Corso Teorico/Pratico di programmazione in BASCOM 8051. Autore: DAMINO Salvatore. T I M E R e C O U N T E R ( 1). La struttura interna dei Mini Moduli è composta da molte sezioni diverse che sono in grado di offrire i più svariati supporti Hardware per supportare diverse applicazioni. Nelle figure che seguono è possibile rendersi conto di quale è la tipica sezione interna della sezione di Timer/Counter del controllore. Nelle figure sono illustrate due tipiche modalità di settaggio. Timer/Counter x (x=0 oppure 1 )in Modo 2. Timer/Counter 0 in Modo 3. Due Contatori a 8 bit. 254
Un sensore molto diffuso, che spesso viene utilizzato nelle applicazioni industriali, è il Sensore di Prossimità comunemente detto Proximity. Ne esistono svariati tipi da quello Induttivo, Capacitivo, ecc. ma fondamentalmente, riferendoci al modello più semplice, sono dei dispositivi che, al verificarsi della condizione prevista, si comportano come un interruttore aprendo o chiudendo un contatto. Tipico Sensore di Prossimità conosciuto normalmente come Proximity. Senza volerci addentrare nella descrizione degli innumerevoli modelli esistenti, che Vi assicuro sono veramente tanti, appunteremo la ns. attenzione solo su un particolare tipo che viene utilizzato per realizzare la così detta Ruota Fonica. Questo dispositivo è schematicamente costituito da una ruota dentata, collegata ad esempio sull albero di trasmissione di un automobile, i cui denti vanno ad eccitare un sensore di prossimità. Al passaggio di ogni dente verrà generato un impulso elettrico. Elaborando questo segnale è possibile, ad esempio, mandarlo al tachimetro dell automobile per indicare la velocità della stessa. Un altra applicazione di questo dispositivo è quello, decisamente più complesso, legato al controllo dell ABS dei freni degli autoveicoli. 255
Schematica Rappresentazione di una Ruota Fonica. Reale Applicazione del principio della Ruota Fonica. 256
Contatore Elettro-Meccanico per Liquidi. Un altra applicazione che Vi vogliamo segnalare è quella relativa ai Contatori Elettro/Meccanici per la misura del passaggio dei liquidi come, ad esempio, per il consumo dell acqua. Quello illustrato in figura è un classico esempio. La quantità di acqua che è passata è efficacemente indicata da una serie di indicatori meccanici. Un apposito sensore, inoltre, fornisce, tramite un contatto pulito di un Ampolla Reed, un impulso al passaggio di ogni unità nota di liquido. Elaborando questo segnale sarà possibile, anche a distanza, conoscere sia le portate istantanee e nel tempo che, chiaramente, la quantità complessiva del liquido che è passato. 257
Esempio.075. Gestione di una Linea di Conteggio da 32 bit da Ingresso Optoisolato. Definizioni aggiunte: Dichiarazioni aggiunte: Istruzioni aggiunte: Operatori aggiunti: Nessuno Schema Elettrico Applicativo per Ingressi Optoisolati del Tipo NPN. Programma di Esempio.075 del corso BASCOM 8051. Contatore di Transizioni da ingresso optoisolato a 32 bit. Il programma conta le transizioni che avvengono sul segnale d'ingresso optoisolato collegato al TIMER0. Il numero di conteggi gestito non si limita ai 16 bit massimi 258
del TIMER0 bensì li raddoppia portandoli a 32 bit, pari a 4.294.967.296 transizioni. Il programma illustra la tecnica per aumentare questa risoluzione del contatore e l'utente la può adattare alle proprie esigenze. Il numero delle transizioni viene continuamente rappresentato sulla console seriale. Attivando l'ingresso Opto-In 5, collegato al connettore CN4 della GMM TST3 come da schema elettrico, si commuta il segnale T0 che coincide con quello d'ingresso al contatore. Gli Overflow del contatore vengono riconosciuti in Interrupt ed a loro volta contati, in modo da aumentare la risoluzione dei conteggi. Gli usi tipici di questo programma sono ad esempio il conteggio degli impulsi forniti da una ruota fonica, da generico conta pezzi, gestire la posizione di un Encoder Monodirezionale, ecc. Il programma si presenta ed usa una console seriale dotata di monitor e tastiera, con un protocollo fisico costante a 19.200 Baud, 8 Bit x chr, 1 Stop bit, Parità. Questa console può coincidere con un sistema in grado di gestire una comunicazione seriale in RS 2 3 2. Al fine di semplificarne l'uso si può usare un PC dotato di una linea COMx, che esegue un programma di emulazione terminale come HYPERTERMINAL o l'omonima modalità offerta dal BASCOM 8051 (vedere Configurazioni IDE). Il programma funziona solo se la GMM 5115 è montata sullo zoccolo Z2 della GMM TST3!! Nel programma i nomi che identificano i segnali usati sono riferiti allo schema elettrico ed al manuale tecnico della GMM TST3!! 259
Esempio.076. Gestione di 4 Linee di Conteggio da 32 bit da Ingressi Optoisolati. Definizioni aggiunte: Dichiarazioni aggiunte: Istruzioni aggiunte: CONFIG TIMER2. Operatori aggiunti: CONFIG TIMER2; CONFIG TIMER1; ON TIMER1; ENABLE TIMER1; START COUNTER1; STOP COUNTER1; PRIORITY SET TIMER1 Programma di Esempio.076 del corso BASCOM 8051. Quadruplo Contatore di Transizioni da ingressi optoisolati a 32 bit. Il programma conta le transizioni che avvengono su tutti i segnali d'ingresso optoisolati collegati a periferiche hardware preposte (TIMER ed Interrupt). I conteggi sono sempre gestiti a 32 bit, pari a 4.294.967.296 transizioni in modo da fornire un'alta risoluzione sul massimo numero di canali disponibili. I numeri delle transizioni vengono continuamente rappresentati sulla console seriale. Attivando i 4 ingressi Opto-In 3, 4, 5, 6 collegati al connettore CN4 della GMM TST3 come da schema elettrico, si incrementano i relativi contatori. Gli usi tipici di questo programma sono ad esempio il conteggio degli impulsi forniti da ruote foniche, da generici conta pezzi, gestire la posizione di Encoder Monodirezionali, ecc. 260
Il programma si presenta ed usa una console seriale dotata di monitor e tastiera, con un protocollo fisico costante a 19.200 Baud, 8 Bit x chr, 1 Stop bit, Parità. Questa console può coincidere con un sistema in grado di gestire una comunicazione seriale in RS 2 3 2. Al fine di semplificarne l'uso si può usare un PC dotato di una linea COMx, che esegue un programma di emulazione terminale come HYPERTERMINAL o l'omonima modalità offerta dal BASCOM 8051 (vedere Configurazioni IDE). Il programma funziona solo se la GMM 5115 è montata sullo zoccolo Z2 della GMM TST3!! Nel programma i nomi che identificano i segnali usati sono riferiti allo schema elettrico ed al manuale tecnico della GMM TST3!! 261