Questa è una vecchia versione del documento!
QCL Library
Regole di utilizzo di una funzione
FUNZIONI PER OPERAZIONI SU INGRESSI DIGITALI
| IR10EdgeInp | Rilevazione del fronte di salita e di discesa di un ingresso o di un flag |
| IR10Edge | Rilevazione del fronte di un segnale digitale con tempo di verifica |
| IR10EdgTmInp | Rilevazione del fronte di salita e di discesa di un ingresso o di un flag con reset a tempo dei flag di cattura fronti |
| VC10ChronVar | Misurazione del tempo di attivazione di un ingresso o di una variabile |
FUNZIONI PER OPERAZIONI SU USCITE DIGITALI
| OA10BlinkOut | Gestione del lampeggio (blink) di una uscita o flag |
| OA10SetTmOut | Gestione dell'attivazione di un'uscita per un tempo impostabile |
| OT11PidReg | Modulazione di una uscita digitale per il controllo di un processo di termoregolazione tramite sistema P.I.D. |
| OT21PidReg | Modulazione di due uscite digitali per un controllo generico di processo tramite regolazione PID + FF. |
| OT30PidReg | Regolatore generico PID + FF. Dati di regolazione a 16 bit |
| OT31PidReg | Regolatore generico PID + FF. Dati di regolazione a 16 o 32 bit |
FUNZIONI PER OPERAZIONI SU VARIABILI
| VC10CollVal | Comparazione di un valore rispetto ad altri due |
| VC10Copy | Copia un valore da A a B oppure da B ad A |
| VC10HistVar | Isteresi di una variabile rispetto ad altri due valori |
| VC10ChronVar | Misurazione del tempo di attivazione di una variabile o ingresso |
| VC10Calendar | Calcolo del giorno della settimana (lunedì-ecc) a partire da una data |
| VC12FndXPnt | Calcolo dell'ascissa di un punto su una retta |
| VC12FndYPnt | Calcolo dell'ordinata di un punto su una retta |
| VT10OnChVar | Segnalazione della variazione di una variabile |
| VT10OnChTVar | Segnalazione della variazione di una variabile con reset a tempo del flag di cambio valore |
| VC10DivRound | Arrotondamento di una variabile a un numero di cifre decimali impostabile |
| VC10LPFilter | Filtro digitale passa basso del primo ordine (filtro RC) per dati di dimensione WORD |
| VC21LPFilter | Filtro digitale passa basso del primo ordine (filtro RC) per dati di dimensione massima +/- 999999 con opzione di precaricamento |
| VC10MkTime | Fornisce il numero di secondi trascorsi dalle 00:00 del 1°gennaio 1970 fino alla data introdotta. |
| VC20MkTime | Fornisce il numero di secondi trascorsi dalle 00:00 del 1°gennaio 1970 fino alla data introdotta. |
| VC11Hdr | Visualizzazione della posizione di un device con sistema Hdr OBSOLETA |
| VC12Hdr | Visualizzazione della posizione di un device con sistema Hdr |
| VC11HdrJoint | Visualizzazione della posizione di un device Joint con sistema Hdr |
| VC10Granularity | Visualizzazione di un valore con filtro di granularità e soglia |
| VR10WrdtoLng | Conversione: Trasforma due variabili Word in una Long |
| VR10LngtoWrd | Conversione: Trasforma una variabili Long in due Word |
| VR10UbyToBin | Conversione: Unsigned Byte → Binario |
| VR10SByToBin | Conversione: Signed Byte → Binario |
| VR10UwrToBin | Conversione: Unsigned Word → Binario |
| VR10SwrToBin | Conversione: Signed Word → Binario |
| VR10SLnToBin | Conversione: Signed Long → Binario |
| VR10BinToUBy | Conversione: Binario → Unsigned Byte |
| VR10BinToSBy | Conversione: Binario → Signed Byte |
| VR10BinToUWr | Conversione: Binario → Unsigned Word |
| VR10BinToSWr | Conversione: Binario → Signed Word |
| VR10BinToSLn | Conversione: Binario → Signed Long |
| VR10UbyToAsc | Conversione: Unsigned Byte → Ascii |
| VR10SbyToAsc | Conversione: Signed Byte → Ascii |
| VR10UwrToAsc | Conversione: Unsigned word → Ascii |
| VR10SwrToAsc | Conversione: Signed Word → Ascii |
| VR10SlnToAsc | Conversione: Signed Long → Ascii |
| VR10AscToUBy | Conversione: Ascii → Unsigned Byte |
| VR10AscToSBy | Conversione: Ascii → Signed Byte |
| VR10AscToUWr | Conversione: Ascii → Unsigned Word |
| VR10AscToSWr | Conversione: Ascii → Signed Word |
| VR10AscToSLn | Conversione: Ascii → Signed Long |
| VR10ToSingle | Copia un valore long intero codificato IEEE754 in una variabile single. |
FUNZIONI DI CONTROLLO ENCODER
| DT11BreakEnc | Controllo rottura encoder assi ANALOGICI |
| DT21BreakEnc | Controllo rottura encoder assi ON/OFF |
FUNZIONI GENERALI PER POSIZIONATORI
| DA11Ramp | Generatore di rampa generico |
| DA10AnOopos | Gestione uscita analogica per asse ON/OFF con rampe |
FUNZIONI DI GESTIONE BUFFER CIRCOLARI
| BC10InitBuf | Init di un buffer circolare (con variabili di gestione buffer interne all'array) |
| BC10PushBuf | Inserimento di un valore (push) in un buffer circolare (con variabili di gestione buffer interne all'array) |
| BC10PopBuf | Estrazione di un valore (pop) da un buffer circolare (con variabili di gestione buffer interne all'array) |
| BC21InitBuf | Init di un buffer tipo FIFO (circolare) |
| BC21PushBuf | Inserimento di un valore (push) in un buffer tipo FIFO |
| BC21PopBuf | Estrazione di un valore (pop) da un buffer tipo FIFO |
| BC21Inspect | Acquisizione di un valore interno del buffer |
| BC21Elements | Acquisizione del numero di elementi presenti nel buffer |
FUNZIONI CON OPERAZIONI GENERALI SU ARRAY
| AC10AvergArr | Calcolo della media aritmetica degli elementi di un array |
| AC10CtrlArr | Analisi degli elementi contenuti in un array |
| AC10SortUpAr | Ordinamento in modo crescente degli elementi di un array |
| AC10SortDwAr | Ordinamento in modo decrescente degli elementi di un array |
| AC10FdMaxArr | Estrazione del massimo valore contenuto in un array |
| AC10FdMinArr | Estrazione del minimo valore contenuto in un array |
| AC11ResetArr | Reset completo di un array |
| BC10ArrFifo | Gestione di un buffer Fifo (first input-first output) |
FUNZIONI PER PROTOCOLLO MODBUS
| DW13Modbus | Protocollo Modbus SLAVE : gestione scambio dati con device MODBUS |
| DW11SerModMa | Protocollo Modbus MASTER simulato tramite device SERCOM |
| DW14SerModSl | Protocollo Modbus SLAVE simulato tramite device SERCOM |
| DU10MbRetry | Esecuzione del comando SEND del device MODBUS con verifica e gestione di eventuali ritentativi. |
FUNZIONI PER VECTOR IMAGE (QPAINT)
| VI10InitBuffer | Inizializzazione Buffer |
| VI10BeginDrawBuffer | Prepara il Buffer per aggiungere le operazioni di disegno e restituisce il codice di errore precedente |
| VI10DrawBuffer | Disegna il contenuto del Buffer |
| VI10WaitBufferReadyUsingEND | Attende che il buffer sia pronto a nuove operazioni uscendo dal task speciale con END |
| VI10WaitBufferReadyUsingWAIT VI11WaitBufferReadyUsingWAIT | Attende che il buffer sia pronto a nuove operazioni uscendo dal task speciale con WAIT |
| VI10GetErrorCode | Restituisce il codice di errore attuale |
| VI10ClrErrorCode | Cancella il codice di errore attuale |
| VI10GetUnusedBufferSize | Recupera la dimensione del Buffer utilizzato |
| VI10AddNop | Aggiunge al Buffer il comando NOP (nessuna operazione) |
| VI10AddCls | Aggiunge al Buffer il comando CLS (cancella l'area Vector Image) |
| VI10SetLayer | Aggiunge al Buffer il comando SET_LAYER (imposta il layer attivo) |
| VI10AddPen | Aggiunge al Buffer il comando PEN (imposta il colore disegno) |
| VI10AddSet | Aggiunge al Buffer il comando SET (imposta le coordinate attuali) |
| VI10AddPoint | Aggiunge al Buffer il comando POINT (disegna un punto) |
| VI10AddLine | Aggiunge al Buffer il comando LINE (disegna una linea) |
| VI10AddRect | Aggiunge al Buffer il comando RECT (disegna un rettangolo) |
| VI10AddCircle | Aggiunge al Buffer il comando CIRCLE (disegna un cerchio) |
| VI10AddArc1 | Aggiunge al Buffer il comando ARC1 (disegna un arco di tipo 1) |
| VI10AddArc2 | Aggiunge al Buffer il comando ARC2 (disegna un arco di tipo 2) |
| VI10AddArc3 | Aggiunge al Buffer il comando ARC3 (disegna un arco di tipo 3) |
| VI10AddArcBetweenAngles | Aggiunge al Buffer il comando per il disegno di un arco che va da una angolo A ad un angolo B |
| VI10SetBackground | Aggiunge al Buffer il comando background (imposta il colore di background) |
| VI10AddMoveArea | Aggiunge al Buffer il comando MOVEAREA (muove il contenuto del vector Image) |
| VI10UnsetLayer | Aggiunge al Buffer il comando UNSET_LAYER (disabilita il layer indicato) |
| VI10LoadImage | Aggiunge al Buffer il comando LOAD_IMAGE (carica l'immagine associata ad un oggetto Image) |
| VI10GetDimension | Aggiunge al Buffer il comando GET_DIMENSION (legge le dimensioni dell'oggetto VectorImage) |
| VI10ExtractDimension | Estrae le dimensioni dell'oggetto VectorImage dal Buffer dopo l'esecuzione del comando VI10GetDimension |
FUNZIONI PER GESTIONE TERMOCOPPIE
| IR10CJRead | Lettura del giunto freddo |
| IR10HJRead | Lettura del giunto caldo |
| VC10TCoupleB | Calcolo della temperatura per termocoppia di tipo B |
| VC10TCoupleJ | Calcolo della temperatura per termocoppia di tipo J |
| VC10TCoupleK | Calcolo della temperatura per termocoppia di tipo K |
| VC10TCoupleN | Calcolo della temperatura per termocoppia di tipo N |
| VC10TCoupleT | Calcolo della temperatura per termocoppia di tipo T |
| IR11PTCRead | Lettura della resistenza PT100 da scheda a 3 punti |
| IR20PTCRead | Lettura della resistenza PT100 da scheda a 3 punti con modalità di lettura differenziale. |
| VC10PTC100 | Calcolo della temperatura per PT100 |
FUNZIONI PER GESTIONE USCITE PROGRAMMABILI
| OP10Init | Uscite programmabili, inizializzazione |
| OP10isOutOn | Uscite programmabili, test se stato uscita attivo |
| OP10isParOk | Uscite programmabili, verifica correttezza valore |
| OP10Manage | Uscite programmabili, elaborazione dati |
| OP10ResOut | Uscite programmabili, reset stato uscita |
| OP10ResRet | Uscite programmabili, reset ritenuta uscita |
| OP10SetOut | Uscite programmabili, set stato uscita |
FUNZIONI PER CALCOLO CHECKSUM
| VC10Cr32Init | Calcolo CRC, inizializzazione |
| VC10Cr32Beg | Calcolo CRC, Inizio del calcolo |
| VC10Cr32Calc | Calcolo CRC, Conclusione del calcolo |
| VC10Cr32Udt | Calcolo CRC, Aggiornamento del calcolo |
FUNZIONI PER GESTIONE LISTA ALLARMI E STORICO
| UU10WarnNotify | Inserimento di un warning in un buffer FIFO |
| UU20MessageNotify | Inserimento di un messaggio in un buffer FIFO |
| UU20TextMessageNotify | Inserimento di un messaggio con stringa di testo in un buffer FIFO |
| UU20AlarmNotify | Inserimento di un allarme in un buffer FIFO |
| UU20TextAlarmNotify | Inserimento di un allarme con stringa di testo in un buffer FIFO |
FUNZIONI PER SYNCROMOVE
FUNZIONI GENERALI PER OPERAZIONI CON CAMMING
| DW22WrCam | Scrittura su settori camma (40 settori) (CAMMING2,CAMMING3,CAMMING4) |
| DW31WrCam | Scrittura su settori camma (128 settori) (CAMMING3,CAMMING4) |
| DC11SpaceCam | Calcoli per ricerca spazio master minimo con spazio slave impostato |
| DC10VelCam | Calcoli per costruzione dei settori di accelerazione, velocità costante e decelerazione di una camma elettronica, impostando lo spazio Master e Slave e le rispettive velocità |
FUNZIONI PER ALBERO ELETTRICO
| DC10ElGear | Calcoli per gestione Albero Elettrico Master/Slave |
| DC10ChGear | Calcoli per cambio rapporto di sincronismo “al volo” in Albero Elettrico Master/Slave (senza rampe) |
| DC10ChVelRat | Calcolo per impostare e/o cambiare il rapporto di velocità Slave/Master di un albero elettrico in maniera dinamica con rampe di addolcimento durante il cambio velocità |
FUNZIONI PER TAGLIO AL VOLO
| DC21FlyCut | Calcoli per taglio al volo lineare con ottimizzazione della produttività macchina |
| DC30FlyCut | Calcoli per taglio al volo lineare con spazio Slave fisso |
| DW22WrCam | Scrittura su settori camma (40 settori) (CAMMING2,CAMMING3,CAMMING4) |
| DW31WrCam | Scrittura su settori camma (128 settori) (CAMMING3,CAMMING4) |
| DW10ChLenght | Scrittura su settori camma per cambio lunghezza taglio al volo lineare (CAM01) |
| DW22ChLenght | Scrittura su settori camma per cambio lungh. taglio al volo lineare (CAMMING, CAMMING2, CAMMING3) |
| DC10DoubFlyC | Calcolo per prelievo di un pezzo campione durante l'esecuzione di un taglio al volo lineare. |
| DC10DinHFlyC | Calcolo per modifica lunghezza al volo del pezzo da tagliare durante l'esecuzione di un taglio al volo lineare (tipicamente taglio difetto su materiale) |
FUNZIONI PER SPANDIFILO (GUIDA-FILO)
| DC10Winding | Calcolo per la costruzione della camma per la gestione di uno spandifilo |
FUNZIONI PER TAGLIO AL VOLO CIRCOLARE
| DC12RotCut | Gestione di un taglio al volo circolare con cilindro di taglio mono o multilama (da1 a 6 lame) |
| DC22RotCut | Gestione di un taglio al volo circolare con cilindro di taglio mono o multilama (da1 a 6 lame) con fermata ad Home dello Slave e Comando taglio manuale dissincronizzato |
FUNZIONI DI SISTEMA
| SY10InitializeCriticalSection | Gestione inizializzazione sezione critica |
| SY10EnterCriticalSection | Gestione entrata in sezione critica |
| SY10LeaveCriticalSection | Gestione uscita da sezione critica |
STRING FUNCTIONS
| ST10StrStr | String search in substring |
| ST10StrCpy | String copy |
| ST10StrLen | String length |
| ST10StrNCpy | Copy characters from string |
| ST10atoi | Convert string to integer |
| ST10StrCat | Concatenate strings |