Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
Entrambe le parti precedenti la revisione Revisione precedente Prossima revisione | Revisione precedente Prossima revisioneEntrambe le parti successive la revisione | ||
sezioni:legenda_grafica [2014/11/03 11:05] – [2. Dichiarazione del device] documentazione | sezioni:legenda_grafica [2014/11/05 11:55] – documentazione | ||
---|---|---|---|
Linea 9: | Linea 9: | ||
Nota: informazione importante per un corretto uso dello strumento. | Nota: informazione importante per un corretto uso dello strumento. | ||
</ | </ | ||
+ | |||
+ | < | ||
<WRAP center round help 60%> | <WRAP center round help 60%> | ||
Linea 18: | Linea 20: | ||
</ | </ | ||
- | ====== DEVICE FREQ ====== | ||
- | |||
- | ====== - Introduzione ====== | ||
- | |||
- | FREQ è un device interno che permette di misurare la frequenza di un segnale digitale. Integra, inoltre, un contatore di impulsi monodirezionale, | ||
- | |||
- | Le principali caratteristiche del device sono: | ||
- | * risoluzione della frequenza selezionabile tra centesimo e millesimo di hertz. | ||
- | * fronte di acquisizione del segnale da misurare selezionabile tra salita e discesa. | ||
- | * filtro digitale passa basso del 1°ordine sulla misura con costante di tempo impostabile. | ||
- | * scaling della misura per mezzo di tre coefficienti programmabili. | ||
- | * acquisizione del duty cycle del segnale da misurare (per segnali con frequenze inferiori a 150 Hz). | ||
- | * disponibilità del valore della frequenza, della misura e della misura filtrata. | ||
- | |||
- | < | ||
- | |||
- | |||
- | |||
- | |||
- | ====== - Dichiarazione del device ====== | ||
- | |||
- | Per poter usufruire del device è necessario eseguirne la dichiarazione nell' | ||
- | |||
- | <code QCL> | ||
- | ; | ||
- | ; Dichiarazione device interni | ||
- | ; | ||
- | INTDEVICE | ||
- | ... | ||
- | < | ||
- | </ | ||
- | |||
- | Dove: | ||
- | |< | ||
- | |FREQ|parola chiave che identifica il device FREQ| | ||
- | |TCamp|tempo di campionamento device espresso in millisecondi (1÷250)| | ||
- | |IntL|linea di interrupt associata all' | ||
- | |||
- | |||
- | <WRAP center round important 60%> | ||
- | Attenzione: Tutti i campi della dichiarazione sono obbligatori e devono essere presenti sulla stessa linea. Impostare " | ||
- | </ | ||
- | |||
- | < | ||
- | |||
- | ====== - Funzionamento ====== | ||
- | |||
- | {{: | ||
- | |||
- | ===== - Filtro antiglitch ===== | ||
- | |||
- | Il blocco " | ||
- | |||
- | <WRAP center round info 60%> | ||
- | L' | ||
- | </ | ||
- | |||
- | ===== - Edge detect ===== | ||
- | |||
- | Il blocco "edge detect" | ||
- | |||
- | ===== - Edge counter ===== | ||
- | |||
- | Il blocco "Edge counter" | ||
- | |||
- | ===== - Upper limiter ===== | ||
- | |||
- | Il blocco "Upper limiter", | ||
- | |||
- | ===== - Scaling ===== | ||
- | |||
- | Il blocco " | ||
- | La formula per ottenere il valore misurato è:\\ | ||
- | //outUm// = (//outbit// * //scaleA// / //scaleB//) + //scaleC// | ||
- | |||
- | ===== - Low pass filter ===== | ||
- | |||
- | Il blocco "Low pass filter" | ||
- | |||
- | ==== - Note sul funzionamento del device ==== | ||
- | * Il filtro antiglitch ha la caratteristica di eliminare eventuali disturbi sul segnale di ingresso ma ha ha lo svantaggio di introdurre un " | ||
- | * Il device non può funzionare contemporaneamente come misuratore di frequenza e rilevatore di duty cycle perciò, quando il parametro //capture// è impostato a 5, il valore di uscita del blocco "edge detect" | ||
- | |||
- | < | ||
- | |||
- | ====== - Tabella parametri ====== | ||
- | |||
- | ^Nome^Dimensione^Valore di default^Tipo di accesso^Unità di misura^Range valido^Condizioni di scrittura^Descrizione^ | ||
- | |frqmax|Long|Ritentivo|RW|Hz/ | ||
- | |frqmin|Long|Ritentivo|RW|Hz/ | ||
- | |capture|Byte|Ritentivo|RW|-|0÷5|-|**Modalità cattura segnale e risoluzione misura frequenza**\\ Definisce le modalità di cattura del segnale (fronte e frequenza/ | ||
- | |scaleA|Long|Ritentivo|RW|-|-2147483648÷2147483647|-|**Coefficiente A nella funzione di scaling**\\ È il parametro per il quale viene moltiplicato il valore della frequenza rilevato dal blocco "edge detect" | ||
- | |scaleB|Long|Ritentivo|RW|-|-2147483648÷2147483647|-|**Coefficiente B nella funzione di scaling**\\ È il parametro per il quale viene diviso il valore della frequenza rilevato dal blocco "edge detect" | ||
- | |scaleC|Long|Ritentivo|RW|-|-2147483648÷2147483647|-|**Coefficiente C nella funzione di scaling**\\ È il parametro che viene sommato al risultato ottenuto moltiplicando il valore valore della frequenza rilevata dal blocco "edge detect" | ||
- | |tfilter|Word|Ritentivo|RW|ms|0÷32767|-|**Costante di tempo del filtro**\\ Costante di tempo.\\ <WRAP center round info 60%> nel caso in cui //tfilter// sia minore o uguale del tempo di campionamento del device viene disattivato il filtro ed il parametro //outUmF// viene aggiornato con lo stesso valore di // | ||
- | |par01|Long|Ritentivo|RW|-|-2147483648÷2147483647|-|**Parametro generico**\\ Parametro disponibile per future implementazioni.| | ||
- | |par02|Long|Ritentivo|RW|-|-2147483648÷2147483647|-|**Parametro generico**\\ Parametro disponibile per future implementazioni.| | ||
- | |outfrq|Long|-|R|Hz/ | ||
- | |outUm|Long|-|R|-|-|-|**Valore misurato**\\ È il valore della misura cioè il valore di frequenza rilevata passato per la funzione di scaling.| | ||
- | |outUmF|Long|-|R|-|-|-|**Valore misurato filtrato**\\ È il valore della misura dopo l' | ||
- | |outcnt|Long|-|RW|-|-|-|**Contatore impulsi**\\ È il valore di uscita del blocco "edge counter" | ||
- | |outvar|Long|-|RW|-|-|-|**Variabile generica**\\ Parametro attualmente non implementato.| | ||
- | |errcode|Byte|0|R|-|-128÷127|-|**Codice di identificazione errore**\\ Indica il tipo di errore intervenuto nel device. Il codice è valido solo se // | ||
- | |errvalue|Byte|0|R|-|-128÷127|-|**Codice di identificazione della causa dell' | ||
- | |wrncode|Byte|0|R|-|-128÷127|-|**Codice di identificazione warning**\\ Indica il tipo di warning intervenuto nel device. Il codice è valido solo se // | ||
- | |wrnvalue|Byte|0|R|-|-128÷127|-|**Codice di identificazione della causa del warning**\\ Indica la causa del warning intervenuto nel device. Il codice è valido solo se // | ||
- | |||
- | < | ||
- | |||
- | ====== - Tabella stati ====== | ||
- | |||
- | ^Nome^Valore di default^Descrizione^ | ||
- | |st_01|0|**Stato input**\\ Stato dell' | ||
- | |st_02|0|**Stato generico**\\ Parametro disponibile per future implementazioni.| | ||
- | |st_error|0|**Presenza di un errore**\\ Indica lo stato di errore del device, per riconoscere il tipo di errore si deve far riferimento alle variabili //errcode// ed // | ||
- | |st_warning|0|**Presenza di un warning**\\ Indica lo stato di warning del device, per riconoscere il tipo di warning si deve far riferimento alle variabili //wrncode// e // | ||
- | |||
- | < | ||
- | |||
- | ====== - Tabella comandi ====== | ||
- | |||
- | ^Nome^Condizione^Descrizione^ | ||
- | |CMD01|-|**Comando generico**\\ Comando disponibile per future implementazioni.| | ||
- | |CMD02|-|**Comando generico**\\ Comando disponibile per future implementazioni.| | ||
- | |RSERR|-|**Reset dello stato di errore**\\ Azzera lo stato // | ||
- | |RSWRN|-|**Reset dello stato di warning**\\ Azzera lo stato // | ||
- | |||
- | < | ||
- | |||
- | ====== - Errori e allarmi ====== | ||
- | |||
- | ===== - Errori ===== | ||
- | |||
- | Quando il device non riesce ad eseguire le operazioni derivanti da una non corretta programmazione da parte dell' | ||
- | La seguente tabella specifica i valori assunti da // | ||
- | |||
- | ^errcode^Descrizione^ | ||
- | |0|nessun errore| | ||
- | |1|linea di interrupt associata all' | ||
- | |||
- | Per mezzo del parametro // | ||
- | La seguente tabella specifica i valori assunti da // | ||
- | |||
- | ^errvalue^Descrizione^ | ||
- | |0|nessuna informazione riguardo l' | ||
- | |||
- | ===== - Allarmi ===== | ||
- | |||
- | Quando i parametri del device vengono programmati con valori fuori range essi non vengono accettati e mantengono il loro valore precedente. Il device segnala questa condizione tramite l' | ||
- | La seguente tabella specifica i valori assunti da wrncode: | ||
- | |||
- | ^wrncode^Descrizione^ | ||
- | |0|nessun warning| | ||
- | |||
- | Per mezzo del parametro // | ||
- | La seguente tabella specifica i valori assunti da // | ||
- | |||
- | ^wrnvalue^Descrizione^ | ||
- | |0|nessuna informazione riguardo il warning| |