I diritti d'autore di questo manuale sono riservati. Nessuna parte di questo documento, può essere copiata o riprodotta in qualsiasi forma senza la preventiva autorizzazione scritta della QEM. QEM non presenta assicurazioni o garanzie sui contenuti e specificatamente declina ogni responsabilità inerente alle garanzie di idoneità per qualsiasi scopo particolare. Le informazioni in questo documento sono soggette a modifica senza preavviso. QEM non si assume alcuna responsabilità per qualsiasi errore che può apparire in questo documento. QEM® è un marchio registrato.
Documento: | MIMC1R31F BASE | |||
---|---|---|---|---|
Descrizione: | Manuale di installazione e manutenzione | |||
Redattore: | Riccardo Furlato | |||
Approvatore | Gabriele Bazzi | |||
Link: | http://www.qem.eu/doku/doku.php/strumenti/qmoveplus/C1R31/mimC1R31fx_base | |||
Lingua: | Italiano | |||
Release documento | Release Hardware | Descrizione | Note | Data |
01 | 01 | Nuovo manuale | Valido per release firmware a partire da 5 | 20/01/2012 |
02 | 02 | Realizzata le versione “BASE” di questo manuale | / | 17/02/2015 |
03 | 02 | Aggiunto il capitolo “Generalità di funzionamento” | / | 04/11/2015 |
L'apparecchiatura è stata progettata per l'impiego in ambiente industriale in conformità alla direttiva 2004/108/CE.
C1-R31-F è un controllore compatto da retroquadro della gamma Qmove+.
In base al Codice d'ordinazione dello strumento è possibile ricavarne esattamente le caratteristiche. Verificare che le Caratteristiche dello strumento corrispondano alle Vostre esigenze. |
---|
Modello | Caratteristiche | |||||
C1 | - | R31 | - | FA | - | 10 |
---|---|---|---|---|---|---|
10 = Versione firmware (00 = non installato) | ||||||
F = Livello tecnologico A = Versione hardware |
||||||
R = Strumento da retroquadro 3 = Dimensioni (198x240mm) 1 = Corrispondenza firmware-hardware |
||||||
C1 = Famiglia Qmove “PLC+Motion” |
Attualmente sono disponibili le seguenti versioni hardware:
Versioni hardware | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
B | C | D | E | F | G | I | J | K | Y | Z | ||
SLOT 2 (Scheda base) | USER PORT (RS232, RS422, RS485) | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
AUX1 PORT (RS232, RS422, RS485) | - | - | - | - | - | - | - | 1 | 1 | - | 1 | |
AUX2 PORT (RS485) | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | |
CAN1 PORT | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | |
CAN2 PORT 1) | - | - | - | - | - | - | - | - | - | - | 1 | |
ETHERNET PORT | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | |
USB PORT2) | - | - | - | - | - | - | - | 1 | 1 | - | 1 | |
SLOT 3 (Schede espansione) | Ingressi digitali standard | 32 | 24 | 32 | 32 | 32 | 32 | 32 | 32 | 32 | 24 | 24 |
Ingressi digitali veloci 3) | 2 | 1 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 | |
Ingressi analogici 12bit | 4 | 2 | 4 | 4 | 4 | 4 | 4 | 4 | 4 | 2 | 4 | |
Ingressi analogici 16bit | - | - | - | - | - | - | - | - | - | - | - | |
Ingressi per PT100 4) | - | - | - | - | - | - | - | - | - | - | - | |
Ingressi per Termocoppie 5) | - | - | - | - | - | - | - | - | - | - | - | |
Conteggi bidirezionali 20KHz ABZ (24V-PP, 5V-LD) | - | - | - | - | - | - | - | - | - | - | - | |
Conteggi bidirezionali 200KHz ABZ (24V-PP, 5V-LD) | 26) | 4 | 47) | 68) | 8 | 6 | 2 | 8 | 49) | 4 | 4 | |
Conteggi per encoder SSI | - | - | - | - | - | - | 2 | - | - | - | - | |
Uscite digitali protette | 32 | 24 | 32 | 32 | 32 | 32 | 32 | 32 | 32 | 24 | 24 | |
Uscite digitali a relè | - | - | - | - | - | - | - | - | - | - | - | |
Uscite analogiche 0-10V-12bit | - | - | - | - | - | - | - | - | - | - | - | |
Uscite analogiche +/-10V-16bit | 2 | 4 | 4 | 6 | 8 | 6 | 4 | 8 | 4 | 4 | 4 | |
Uscite stepper | - | - | - | - | - | 2 | - | - | - | - | 410) | |
Connettore per Pulsantiere remotate 11) | - | - | - | - | - | - | - | - | - | - | - | |
Codice software della scheda da dichiarare nello SLOT 3 |
Versione | Descrizione |
---|---|
10 | Completamente programmabile, con funzionalità PLC |
20 | Completamente programmabile, con funzionalità PLC e MOTION |
30 | Completamente programmabile, con funzionalità PLC, MOTION, CAMMING e INTERPOLAZIONE |
Per ulteriori informazioni riguardo alle caratteristiche dei vari firmware, consultare la tabella dei Devices abilitati negli strumenti.
Il C1-R31-F viene configurato con una scheda espansione.
Peso (massima configurazione hardware) | 1Kg |
---|---|
Materiale contenitore | Lamiera |
Led sistema | 8 |
Tasti sistema | 3 |
Temperatura di esercizio | 0 ÷ 50°C |
Temperatura di trasporto e stoccaggio | -25 ÷ +70 °C |
Umidità relativa | 90% senza condensa |
Altitudine | 0 - 2000m s.l.m. |
Grado di protezione del pannello frontale | IP20 |
Microprocessore RISC (32 bit) | |
---|---|
Frequenza di lavoro | 200MHz |
RAM | 16MB |
Flash | 8MB |
Quote in mm. |
---|
Per informazioni riguardanti le sezioni dei cavi utilizabili ed i connettori usati, consultare l'application note AN021 |
---|
Il cablaggio deve essere eseguito da personale specializzato e dotato degli opportuni provvedimenti antistatici.
Prima di maneggiare lo strumento, togliere tensione e tutte le parti ad esso collegate.
Per garantire il rispetto delle normative CE, la tensione d'alimentazione deve avere un isolamento galvanico di almeno 1500 Vac.
Alimentazioni disponibili | 24 Vdc |
---|---|
Range valido | 22 ÷ 27 Vdc |
Assorbimento max. | 30W |
CN1 | Morsetto | Simbolo | Descrizione | |
---|---|---|---|---|
1 | + | Positivo alimentazione | ||
2 | TERRA | Terra-PE (segnali) | ||
3 | - | 0V alimentazione |
Si prescrive l'uso di un alimentatore isolato con uscita 24Vdc +/-5% conforme a EN60950-1.
Usare due alimentatori separati: uno per la parte di controllo e uno per la parte di potenza | |
Nel caso di un unico alimentatore, usare due linee separate: una per il controllo e una per la potenza | |
Non usare le stesse linee della parte di potenza |
CN2 | TerminalRS232 | RS422 | RS485 | Description | |
---|---|---|---|---|---|
1A | - | - | A | Terminal A - RS485 | |
2A | - | - | B | Terminal B - RS485 | |
3A | 0V | 0V | 0V | USER PORT common | |
4A | 0V | 0V | 0V | USER PORT common | |
5A | TX | - | - | Terminal TX - RS232 | |
6A | Ground | ||||
1B | - | RX | - | Terminal RX - RS422 | |
2B | - | RXN | - | Terminal RX N - RS422 | |
3B | - | TX | - | Terminal TX - RS422 | |
4B | - | TXN | - | Terminal TX N - RS422 | |
5B | RX | - | - | Terminal RX - RS232 | |
6B | Ground |
CN3 | Terminal | RS232 | RS422 | RS485 | Description |
---|---|---|---|---|---|
1A | - | - | A | Terminal A - RS485 | |
2A | - | - | B | Terminal B - RS485 | |
3A | 0V | 0V | 0V | USER PORT common | |
4A | 0V | 0V | 0V | USER PORT common | |
5A | TX | - | - | Terminal TX - RS232 | |
6A | Ground | ||||
1B | - | RX | - | Terminal RX - RS422 | |
2B | - | RXN | - | Terminal RX N - RS422 | |
3B | - | TX | - | Terminal TX - RS422 | |
4B | - | TXN | - | Terminal TX N - RS422 | |
5B | RX | - | - | Terminal RX - RS232 | |
6B | Ground |
CN4 | Terminal | Symbol | Description |
---|---|---|---|
1 | 0V | RS485 common | |
2 | B | Terminal RS485 B | |
3 | A | Terminal RS485 A |
CN5-CAN1 PORT CN6-CAN2 PORT | Morsetto | Simbolo | Descrizione |
---|---|---|---|
1 | 0V | Comune CAN | |
2 | CAN L | Terminale CAN L | |
3 | CAN H | Terminale CAN H |
SW5 | Num. Dip | Nome Dip | Impostazione dei DIP | Funzione |
---|---|---|---|---|
1 | JP1 | ON | Terminazione CAN1 | |
2 | JP2 | ON | ||
3 | JP1 | ON | Terminazione CAN2 | |
4 | JP2 | ON |
Se si attiva la terminazione della porta CAN1, devono essere attivati entrambi i relativi DIP JP1(SW5.1) e JP2(SW5.2). Se si attiva la terminazione della porta CAN2, devono essere attivati entrambi i relativi DIP JP1(SW5.3) e JP2(SW5.4). |
---|
ETHERNET PORT | Descrizione |
---|---|
Connettore RJ45. LED: * LINK: led verde = cavo collegato (il led acceso indica che il cavo è connesso ad entrambi i capi) * DATA: led giallo = scambio dati (il led lampeggiante indica lo scambio dati tra i dispositivi collegati) |
Connettore per l'inserimento della Memory card (evidenziato dalla freccia) |
Di seguito sono riportate le caratteristiche elettriche hardware.
I valori di frequenze massime e minime e tempi di acquisizione effettivi, possono comunque dipendere da eventuali filtri software aggiuntivi, vedere per esempio la variabile di sistema “QMOVE:sys004” nel paragrafo Variabili di sistema.
Il connettore USB mini-B non supporta gli standard elettrici USB, deve essere utilizzato solamente mediante una interfaccia IQ009 o IQ013.
Utilizzata per il trasferimento e il debugging del programma applicativo nella CPU.
Standard elettrico | TTL (Usare l'interfaccia seriale IQ009 o IQ013) |
---|---|
Velocità di comunicazione | Min. 9,6 Kbaud - max 115200 Kbaud settabile tramite i dip1 e 2 dello switch SW1 |
Isolamento | Nessuno |
.
Collegamento tra Qmove+ e PC, con l'ausilio dell'accessorio IQ009 |
.
Collegamento tra Qmove+ e un dispositivo dotato di seriale RS232 (per esempio un MODEM), con l'ausilio dell'interfaccia IQ013 |
Velocità di comunicazione | 4800, 9600, 19200, 38400, 57600, 115200 baud |
---|---|
Modalità di comunicazione | Full duplex |
Modo di funzionamento | Riferito a 0V |
Max. numero di dispositivi connessi sulla linea | 1 |
Max. lunghezza cavi | 15 m |
Impedenza d'ingresso | > 3 Kohm |
Limite corrente cortocircuito | 7 mA |
Velocità di comunicazione | 4800, 9600, 19200, 38400, 57600, 115200 baud |
---|---|
Modalità di comunicazione | Full duplex |
Modo di funzionamento | Differenziale |
Max. numero di dispositivi connessi sulla linea | 1 |
Max. lunghezza cavi | 1200 m |
Impedenza d'ingresso | > 12 Kohm |
Limite corrente cortocircuito | 35 mA |
Per attivare la resistenza di terminazione interna vedere paragrafo Settaggio standard elettrico USER PORT, Settaggio standard elettrico AUX1 PORT o Settaggio resistenze di polarizzazione e terminazione AUX2 PORT
.
Velocità di comunicazione | 4800 baud (solo se utilizzata con device SERCOM e/o MODBUS), 9600 baud, 19200 baud, 38400 baud, 57600 baud |
---|---|
Modalità di comunicazione | Half duplex |
Modo di funzionamento | Differenziale |
Max. numero di dispositivi connessi sulla linea | 32 |
Max. lunghezza cavi | 1200 m |
Impedenza d'ingresso | > 12 Kohm |
Limite corrente cortocircuito | 35 mA |
Per attivare la resistenza di terminazione interna vedere paragrafo Settaggio resistenze di terminazione
.
Velocità di comunicazione | 125, 250, 500, 1000 Kbit/s |
---|---|
Max. numero Driver/Receiver sulla linea | 100 |
Max. lunghezza cavi | 500m @ 125Kbit/s, 250m @ 250Kbit/s, 100m @ 500Kbit/s, 25m @ 1000Kbit/s |
Impedenza d'ingresso | >15Kohm |
Limite corrente cortocircuito | 45mA |
Esempio di collegamento CAN BUS.
Attenzione: chiudere i DIP JP1 e JP2 ed inserire le resistenze di terminazione (RL, RH) sull'ultimo dispositivo della catena.
Interfaccia Ethernet 10/100 Base T (IEEE 802.3) su connettore RJ45.
Collegamento tra Qmove+ e PC:
Tipo Memory Card da utilizzare | MMC, SD e SDHC fino a 8GB Per un corretto funzionamento è necessario che il dispositivo sia conforme agli standard definiti da “SD Association” (www.sdcard.org) oppure da “Multi Media Card Association” (www.mmca.org). |
Per essere utilizzate le Memory Card devono essere preventivamente formattate con file system FAT16 o FAT32.
SW1 | Dip | Impostazione dei DIP | Funzione | |||
---|---|---|---|---|---|---|
1 | OFF | OFF | ON | ON | Selezione velocità di trasmissione PROG PORT | |
2 | OFF | ON | OFF | ON | ||
Baud-rate 38400 | Baud-rate 115200 | Baud-rate 19200 | Baud-rate 57600 |
|||
3 | OFF | OFF | ON | ON | Selezione velocità di trasmissione USER PORT | |
4 | OFF | ON | OFF | ON | ||
Baud-rate 38400 | Baud-rate 115200 | Baud-rate 19200 | Baud-rate 57600 |
|||
5 | Selettore baud-rate CANbus. Vedere paragrafo Selettore baud-rate CANbus | |||||
6 | OFF | ON | Selezione modo di funzionamento PROG PORT | |||
PROG PORT utilizzabile anche dai device SERCOM e MODBUS | PROG PORT non utilizzabile dai device SERCOM e MODBUS | |||||
7 | Selettore baud-rate CANbus. Vedere paragrafo Selettore baud-rate CANbus | |||||
8 | OFF | ON | Seleziona la USER PORT come PROG PORT1) | |||
PROG PORT normale | PROG PORT sul connettore della USER PORT |
I led “pow, run, stop, err” sono detti led di sistema.
I led “L1, L2, L3 e L4” sono detti led utente.
Led | Colore | Stato | Descrizione |
---|---|---|---|
pow | Verde | Strumento acceso | |
Se è l'unico led acceso, segnala lo stato di reset della CPU | |||
run | Verde | CPU in stato di RUN | |
CPU in stato di READY | |||
stop | Giallo | Se il led pow è acceso, segnala lo stato di STOP della CPU Se il led pow è spento, segnala lo stato di BOOT della CPU |
|
err | Rosso | Se il led pow è spento, segnala un errore hardware. Vedere paragrafo Codici di errore hardware Se il led pow è acceso, il numero di lampeggi indica il tipo d'errore. Vedere paragrafo Segnalazioni del led err |
N° lampeggi | Errore | Descrizione | Azioni consigliate |
1 | Bus error | Bus non configurato come descritto nell'applicativo. | Verificare la corrispondenza tra la configurazione dell'applicativo QMOVE (sezione BUS della unit di configurazione) e quella del prodotto (schede presenti nel BUS). |
2 | CheckSum Error | Il controllo di integrità sulle variabili ritentive ha dato esito negativo. (Vedi capitolo Reset Error Checksum) | E' necessario ripristinare i dati macchina a partire da un salvataggio (file con estensione DAT) oppure cancellare l'errore con l'apposita funzione di sistema e reintrodurre manualmente i valori. |
3 | Index Out of Bound | Indice di un array è puntato su un elemento inesistente | Con l'ambiente di sviluppo Qview è possibile aprire l'editor di una unit e con il comando “Edit→Go to PC” viene evidenziata la linea di programma che ha causato l'errore. In genere il valore utilizzato come indice ha un valore inferiore a 1 oppure superiore alla dimensione dell'array. |
4 | Program Over Range | L'indice di selezione programma all'interno del DATAGROUP ha tentato di accedere ad un programma non esistente. | Con l'ambiente di sviluppo Qview è possibile aprire l'editor di una unit e con il comando “Edit→Go to PC” viene evidenziata la linea di programma che ha causato l'errore. In genere il valore utilizzato come indice ha un valore inferiore a 1 oppure superiore alla dimensione dell'array. |
5 | Step Over Range | l'indice di selezione del passo all'interno del DATAGROUP ha tentato di accedere ad un passo non esistente. | Con l'ambiente di sviluppo Qview è possibile aprire l'editor di una unit e con il comando “Edit→Go to PC” viene evidenziata la linea di programma che ha causato l'errore. In genere il valore utilizzato come indice ha un valore inferiore a 1 oppure superiore alla dimensione dell'array. |
6 | Division By Zero | Il denominatore di un'operazione di divisione del programma applicativo ha valore zero. | Con l'ambiente di sviluppo Qview è possibile aprire l'editor di una unit e con il comando “Edit→Go to PC” viene evidenziata la linea di programma che ha causato l'errore. |
7 | Syntax Error | Il programma applicativo ha un'istruzione non valida | Tale errore potrebbe comparire perché il program counter ha incontrato l'istruzione QCL END. |
8 | Watch Dog Error | Un modulo CAN non funziona correttamente, oppure una scheda espansione ha un problema hardware | Con l'ambiente di sviluppo Qview è possibile aprire il pannello “Monitor→Bus” e nella colonna di destra chiamata “Watchdog Bus” è indicata la scheda che ha causato il problema. |
9 | Stack Error | Il programma applicativo ha utilizzato tutti i livelli di chiamata a subroutine permessi | Con l'ambiente di sviluppo Qview è possibile aprire l'editor di una unit e con il comando “Edit→Go to PC” viene evidenziata la linea di programma che ha causato l'errore. Analizzare il flusso di esecuzione della unit, gli annidamenti di chiamata delle subroutine hanno un limite, oltre il quale viene generato questo errore. |
Se nella fase di accensione, viene rilevato un malfunzionamento di qualche periferica, il sistema si blocca e viene segnalato l'errore mediante il lampeggio del solo led err mentre tutti gli altri leds di sistema rimangono spenti.
Il numero di lampeggi indica il tipo di errore secondo la seguente tabella:
Numero di lampeggi | Errore |
---|---|
1 | Display |
2 | FPGA |
3 | Media |
4 | Bootloader |
5 | FW |
6 | Bus |
7 | Segnalazione non attiva |
8 | Segnalazione non attiva |
9 | Exception |
.
Ognuna di queste segnalazioni indica una situazione di errore grave. Il prodotto deve essere inviato all'assistenza QEM. |
---|
Nome | Descrizione |
---|---|
FUNC | Premuto all'accensione dello strumento permette di accedere alle Funzioni di sistema |
BOOT | Premuto all'accensione dello strumento permette di impostare la CPU in stato di Boot e quindi di accedere alle funzioni di aggiornamento firmware |
RESET | Reset CPU. Il sistema viene fatto ripartire ripristinando le condizioni iniziali (come dopo una accensione) |
Nel presente capitolo verranno introdotti alcuni concetti e descritti alcuni funzionamenti del prodotto. Tali contenuti sono in parte legati e implementati nel firmware. Tale software implementa tutte le funzionalità che permettono al prodotto di essere un componente del sistema programmabile QEM chiamato Qmove.
Per meglio comprendere la terminologia utilizzata in questo capitolo, è necessario conoscere l'organizzazione dei dati e delle memorie di un applicativo QMOVE. Un applicativo QMOVE è un programma scritto in linguaggio QCL o ladder che, opportunamente tradotto in codice binario, viene trasferito su un hardware QMOVE e ivi memorizzato. In questo hardware il microprocessore, sul quale gira un programma chiamato firmware, si occupa di interpretare le istruzioni del codice binario di cui sopra ed eseguire le appropriate operazioni ad esse associate.
Un applicativo QCL è composto, oltre che dalle istruzioni, anche dalle variabili sulle quali possono agire le istruzioni QCL. Alcune di queste variabili sono ritentive, cioè mantengono inalterato il loro valore tra uno spegnimento ed una accensione, le altre assumono valore zero ad ogni accensione. Lo schema a blocchi seguente illustra l'organizzazione dei dati di un hardware QMOVE:
Come si può notare, all'interno di un hardware QMOVE, vi sono diversi dispositivi di memorizzazione:
“Flash memory”, dove vengono memorizzati:
“Non volatile memory”, dove vengono memorizzate:
“Volatile memory”, dove vengono memorizzate:
La memoria dati volatile è utilizzata anche come memoria dinamica, cioè quella memoria necessaria al firmware per le operazioni interne e per la gestione delle pagine HMI attive.
“Mass storage internal device” gestita attraverso un filesystem standard, è utile per la memorizzazione di informazioni attraverso il device DATASTORE (lettura - scrittura di file binari o csv con ricette, log, parametrizzazioni varie, ecc).
E' inoltre utilizzato per memorizzare il backup dell'applicativo QMOVE e altri file di servizio.
“Mass storage external device” gestita attraverso un filesystem standard, è utile per il caricamento dell'applicativo QMOVE, al caricamento/salvataggio dei dati, all'aggiornamento firmware oppure per la memorizzazione di informazioni attraverso il device DATASTORE.
La CPU ha vari stati di funzionamento. Nella seguente figura vengono illustrati i principali cambi di stato a partire dall'accensione strumento.
Gli stati principali di funzionamento sono RESET, READY, RUN e STOP.
Gli eventi della CPU che determinano la transizione da uno stato all'altro sono principalmente legati all'invio di comandi da parte dell'ambiente di sviluppo: Run, Reset, Stop e Restart.
Download application rappresenta la procedura dell'ambiente di sviluppo che permette di trasferire l'applicativo QMOVE alla CPU.
The BOOT state can be used to access the firmware updating functions.
In fase di accensione, dopo aver eseguito la scansione dei leds di sistema, lo strumento esegue una serie di operazioni di autodiagnosi. Quando vengono rilevate anomalie o quando è necessario informare l'operatore di una particolare situazione, la procedura di autodiagnosi viene momentaneamente interrotta, segnalando ciò che è avvenuto.
La segnalazione dell'anomalia avviene attraverso i led L1, L2 e un messaggio sul display (per gli stumenti che ne sono dotati).
n. | Led ON | Messaggio di sistema (strumenti dotati di display) | Descrizione | Tipo |
---|---|---|---|---|
1 | L1 | System Data WRITE ERROR | Indica che è avvenuto un errore di scrittura durante la memorizzazione dei dati di configurazione. | B |
2 | L2 | System Data IS RESTORED FROM DEFAULT | Indica che i dati di configurazione sono stati ripristinati ai valori di default. | C |
3 | L1 L2 | System Data is updated Please verify new data | Indica che i dati di configurazione sono stati convertiti in un nuovo formato. Verificare che le precedenti impostazioni siano mantenute. | C |
4 | L3 | Firmware is updated | Indica che è avvenuto un aggiornamento firmware. | C |
Quando la condizione rilevata permette il proseguo della fase di avvio (tipo C), lo strumento, se dotato di display, visualizza il messaggio “Press FUNC or F1 to continue” ed attende la pressione del pulsante FUNC o del tasto F1 per proseguire la procedura di booting.
Se non dotato di display, lo strumento attende un tempo di 5 secondi prima di proseguire con la fase di avvio, senza attendere la pressione di alcun tasto.
Quando invece la situazione non permette il proseguo della fase di avvio (tipo B), lo strumento, se dotato di display, visualizza il messaggio “PLEASE TURN OFF AND TURN ON THE SYSTEM”
e rimane in questo stato fino allo spegnimento. Nel caso di strumento senza display il led err lampeggia continuamente.
Lo stato FUNZIONI DI SISTEMA permette di accedere alle omonime FUNZIONI DI SISTEMA, che sono particolari procedure, che permettono all'utente di eseguire varie operazioni. Per la descrizione vedere il capitolo Funzioni di sistema.
Stato led | pow run |
Causa stato | Mancanza dell'applicativo in memoria. |
Condizioni che possono portare la CPU in questo stato | Comando di RESET. |
Da questa condizione si può passare solamente ad uno stato di READY eseguendo un download dell'applicativo utilizzando l'ambiente di sviluppo Qview6.
Stato led | pow run |
Causa stato | Applicativo valido ed è nell'attesa di esecuzione. |
Condizioni che possono portare la CPU in questo stato | Download applicativo. |
Da questa condizione si può passare agli stati di RUN o RESET.
Stato led | pow run |
Causa stato | Esecuzione applicativo. |
Condizioni che possono portare la CPU in questo stato | Comando RUN. |
Da questa condizione si può passare a tutti gli altri stati della CPU.
Stato led | pow stop » run |
Causa stato | Arresto l'esecuzione dell'applicativo. |
Condizioni che possono portare la CPU in questo stato | Nell'interpretazione del codice applicativo si è incontrato un breakpoint. |
Da questa condizione si può passare a tutti gli altri stati della CPU.
ATTENZIONE: L'utilizzo di tali procedure è potenzialmente pericoloso (vedi ad esempio la cancellazione dell'applicazione) ed è perciò preferibile che sia effettuato da personale esperto o sotto la supervisione dello stesso. |
---|
Le funzioni di sistema sono particolari procedure che permettono all'utente di eseguire varie operazioni come ad esempio la configurazione/taratura delle periferiche, il salvataggio/ripristino dei dati e dell'applicazione su/da dispositivi rimovibili, la cancellazione dell'applicazione e la gestione delle memorie di massa.
Di seguito sono elencate tutte le funzioni di sistema.
DEVICE indica un supporto di memorizzazione esterna. MMC/SD oppure USB per gli hardware che dispongono della relativa porta.
Funzioni di sistema
n. | Led ON | Funzione di sistema | Descrizione |
---|---|---|---|
1 | L1 | 01 - Reset Error Checksum | Reset errore checksum. N.B.: se è presente l'errore checksum, il led L1 lampeggia. |
2 | L2 | 02 - Copy all files DEVICE → NAND | Copia tutti i files da DEVICE a NAND Flash. |
3 | L1 L2 | 03 - Copy all files NAND → DEVICE | Copia tutti i files da NAND Flash a DEVICE. |
4 | L3 | 04 - Application delete | Cancella l'applicazione. |
5 | L1 L3 | 05 - Application upload from DEVICE | Carica l'applicazione da DEVICE. |
6 | L2 L3 | 06 - System Settings | Non implementata per questo hardware |
7 | L1 L2 L3 | 07 - Downl. retentive data to DEVICE | Salva i dati ritentivi su DEVICE. |
8 | L4 | 08 - Set NEW Password | Non implementata per questo hardware |
9 | L1 L4 | 09 - Remove all files from NAND Flash | Elimina tutti i files presenti sulla NAND Flash. |
10 | L2 L4 | 10 - Show NAND Flash files | Non implementata per questo hardware |
11 | L1 L2 L4 | 11 - Touch Calibration | Non implementata per questo hardware |
12 | L3 L4 | 12 - Set Ethernet communic. parameter | Non implementata per questo hardware |
13 | L1 L3 L4 | 13 - Backup to NAND | Esegue il backup dell'applicativo QCL, dei dati e dell'applicativo QTP in NAND. |
14 | L2 L3 L4 | 14 - Restore from NAND | Esegue il restore dell'applicativo QCL, dei dati e dell'applicativo QTP dalla NAND. |
15 | L1 L2 L3 L4 | 15 - Firmware Upgrade | Esegue un aggiornamento del firmware da DEVICE. Presente solo su alcuni hardware. |
Nota: Per uscire dalle funzioni di sistema mantenere premuto il pulsante FUNC per almeno due secondi.
Per accedere alle Funzioni di sistema, accendere lo strumento con il pulsante FUNC premuto. |
---|
L'applicativo QMOVE, se presente, non viene eseguito ed il led L1 si accende.
Utilizzando il pulsante FUNC è possibile scorrere le funzioni disponibili. La funzione selezionata viene indicata dalla combinazione dei led accesi di L1-L2-L3-L4 |
---|
La tabella “Funzioni di sistema” riporta le liste delle funzioni di sistema e le relative combinazioni di leds.
Premendo il pulsante BOOT per 2 secondi la funzione selezionata viene eseguita. Il led POW inizia a lampeggiare ad indicare che la funzione selezionata è in esecuzione. |
---|
Quando l'esecuzione della funzione termina il led POW smette di lampeggiare.
Premendo il pulsante FUNC lo strumento si riavvia. |
---|
Se l'esecuzione della funzione non va a buon fine si spegne il led POW e inizia a lampeggiare il led ERR.
Il numero di lampeggi indica il tipo di errore avvenuto come riportato nella tabella Messaggi di errore delle Funzioni di sistema.
Quando una funzione di sistema termina con errore, il numero di lampeggi del led err indica il tipo di errore avvenuto.
Se è presente il display, viene visualizzato anche un messaggio che descrive la causa dell'errore.
Errore/Numero lampeggi led ERR | Messaggio |
---|---|
1 | Generic error |
2 | Open/Exist/Create file error |
3 | Read file error |
4 | Write file error |
5 | Out of Memory error |
6 | QMos Version error |
7 | Checksum Error |
8 | Symbols checksum No Match |
9 | Configuration / Symbols error |
10 | File format error |
11 | Format error |
12 | Device not present or unformatted |
13 | Application not present error |
14 | Touch calibration failure |
15 | File compression type not support |
16 | Target don't match project ! |
17 | Fw version don't match project ! |
18 | File copy error |
19 | File size error |
20 | Crypt operation error |
21 | Invalid Product Serial Number |
22 | Function is locked |
23 | Function not enabled |
Le variabili ritentive sono sottoposte dal sistema ad un controllo di integrità mediante applicazione di un CRC alla memoria dati non volatile. Ciò permette di rilevarne l'eventuale corruzione ed impedire l'avvio dell'applicazione segnalando la situazione con il lampeggio del led err come riportatosu Segnalazioni del led err.
Per poter far funzionare nuovamente l'applicazione è necessario eseguire un nuovo download dell'applicazione con l'ambiente di sviluppo, oppure eseguire la funzione di sistema “Reset Error Checksum”. Queste operazioni cancellano lo stato di errore ed azzera tutte le variabili ritentive.
La procedura esegue le seguenti fasi:
“Clear power down data…”
fino al termine della procedura.Questa procedura permette di copiare tutti i files presenti nella root e nella directory “DS” della memoria di massa esterna removibile MMC/SD o USB nella memoria di massa interna NAND.
La seguente tabella riporta la sequenza delle operazioni eseguite e gli eventuali possibili errori:
Messaggio | Descrizione | Possibili errori |
---|---|---|
Check DEVICE presence | Controllo presenza dispositivo memoria di massa esterno Su DEVICE compare MMC o USB, a seconda di cosa è stato selezionato | Device not present or unformatted |
Mounting device… | Caricamento del dispositivo di memoria di massa esterna | Device not present or unformatted |
Searching files… | Ricerca file in corso | No Files Found |
Copy <filename>…. | Esegue la copia dei files indicando il nome di quello attualmente in copia |
Questa procedura permette di copiare tutti i files presenti nella root e nella directory “DS” della memoria di massa interna NAND nella memoria di massa esterna removibile MMC/SD o USB.
La seguente tabella riporta la sequenza delle operazioni eseguite e gli eventuali possibili errori:
Messaggio | Descrizione | Possibili errori |
---|---|---|
Check DEVICE presence | Controllo presenza dispositivo memoria di massa esterno Su DEVICE compare MMC o USB, a seconda di cosa è stato selezionato | Device not present or unformatted |
Mounting device… | Caricamento del dispositivo di memoria di massa esterna | Device not present or unformatted |
Searching files… | Ricerca file in corso | No Files Found |
Copy <filename>…. | Esegue la copia dei files indicando il nome di quello attualmente in copia |
Esegue la cancellazione dell'applicazione azzerando la memoria dati non volatile, cancellando il programma QCL e, ove presente, cancellando il programma HMI.
La seguente tabella riporta la sequenza delle operazioni eseguite e gli eventuali possibili errori:
Messaggio | Descrizione | Possibili errori |
---|---|---|
Reset retentive data | Azzera la memoria dati non volatile | Write file error |
Delete QCL application | Cancella il programma QCL | Write file error |
Delete HMI application | Cancella il programma HMI (se presente il display) | Write file error |
Esegue il caricamento di un'applicazione dal dispositivo di memoria di massa esterno MMC/SD o USB, alla memoria non volatile .
E' possibile caricare il programma QCL, il programma HMI ed i dati non volatili, uno solo di questi, due o tutti e tre.
Nel dispositivo di memoria di massa esterno MMC/SD o USB deve essere presente almeno uno dei seguenti files:
Messaggio | Descrizione | Possibili errori |
---|---|---|
Check DEVICE presence | Controllo presenza dispositivo memoria di massa esterno Su DEVICE compare MMC o USB, a seconda di cosa è stato selezionato | Device not present or unformatted |
Mounting device… | Caricamento del dispositivo di memoria di massa esterna | Device not present or unformatted |
Se presente il file applic.bin:
Messaggio | Descrizione | Possibili errori |
---|---|---|
Upload QCL application | Caricamento programma QCL | Open/Exist/Create file error |
Se non presente il file applic.bin, un applicativo deve essere presente nella memoria non volatile altrimenti viene visualizzato il messaggio: “Application not present”.
Se presente il file applic.dat:
Messaggio | Descrizione | Possibili errori |
---|---|---|
Upload retentive data | Caricamento dati ritentivi nella memoria dati non volatile | Open/Exist/Create file error |
La procedura esegue le seguenti fasi:
“Check DEVICE presence”
.“Upload QCL application”
.“Upload retentive data”
.“Upload HMI application”
.
Questa funzione permette di creare un file sulla memoria di massa esterna (MMD/SD o USB) contenente i valori dei dati ritentivi.
Il file risultante, il cui nome è “applic.dat” è uguale a quello ottenuto dalla procedura “Save Data…” dell'ambiente di sviluppo QView.
La funzione si può eseguire solamente se è presente un'applicazione QCL valida sullo strumento.
La procedura esegue le seguenti fasi:
“Check DEVICE presence”
.“Mounting device…”
.“Checking application presence…”
.“Checking retentive data…”
.“Open destination file…”
.“Write headers to destination file”
.“Write data to destination file”
.
Cancella tutti i files presenti nella memoria di massa interna (NAND flash).
A differenza della funzione “Format NAND Flash” agisce a livello di filesystem e quindi può essere eseguita tutte le volte che è necessario.
La procedura esegue le seguenti fasi:
“Searching files…”
.“No Files Found”
e la funzione termina, altrimenti viene visualizzato il messaggio “Delete <filename>”
indicante la cancellazione di ogni file trovato.La procedura di backup permette di creare, sotto forma di files memorizzati nel dispositivo NAND, una copia dell'applicativo QCL in esecuzione e un'immagine dei dati ritentivi. I files creati hanno il nome di:
La procedura esegue le seguenti fasi:
La procedura di restore permette di ripristinare, a partire dai files di backup memorizzati nel dispositivo NAND, l'applicativo QCL e un'immagine dei dati ritentivi.
La procedura esegue le seguenti fasi:
L'utilizzo delle funzioni di sistema Backup to NAND e Restore from NAND permette di salvare (backup) e ripristinare (restore) un applicativo QMOVE.
Per le operazioni di backup e restore viene utilizzato il dispositivo di memoria interno NAND. La procedura di backup crea, sotto forma di file, una copia del programma QCL, del programma HMI (se lo strumento è provvisto di display) e un'immagine dei dati ritentivi.
I files creati sono:
I files sono cifrati e solo lo strumento che li ha generati può eseguire la procedura di Restore in modo da salvaguardare una copia non autorizzata dei dati. La copia dei files di backup in un dispositivo esterno tipo MMC/SD o USB è possibile con l'utilizzo della funzione di sistema Copy all files NAND -> DEVICE. Sarà creata nel dispositivo MMC/SD o USB una cartella (directory) con il nome “QBK” che conterrà i files sopracitati. Allo stesso modo è possibile trasferire nello strumento i files di backup utilizzando la funzione di sistema Copy all files DEVICE -> NAND. In questo caso, nel dispositivo MMC/SD o USB, i files devono essere contenuti sempre nella cartella (directory) “QBK”.
Il backup/restore è una funzione importante, che può essere utilizzata nei seguenti casi:
In questo capitolo sono raccolte tutte le informazioni relative al prodotto necessarie durante la programmazione, ovvero durante lo sviluppo di un applicativo QCL.
Per la programmazione del prodotto è necessario utilizzare gli ambienti QView-6 per la programmazione del codice QCL e se il prodotto è equipaggiato di display grafico, anche l'ambiente QPaint-6 per la progettazione delle pagine grafiche. Ambedue questi software sono contenuti in un pacchetto software che si chiama Qworkbench e che è liberamente scaricabile dal sito Qem (nella sezione “Supporto”).
Lo strumento è equipaggiato fisicamente da 3 slot. Gli slots da 4 a 32 sono comunque dichiarabili e devono venire utilizzati per indirizzare risorse che risiedono nei moduli Canopen.
Per utilizzare il terminale, in un prodotto che dispone di display, è necessario dichiarare nella sezione INTDEVICE il device MMIQ2.
INTDEVICE Hmi MMIQ2 2
Per programmare con l'ambiente di sviluppo QPaint-6 è importante selezionare correttamente il target. Per fare questo all'interno dell'ambiente selezionare Progetto → Configurazione del Target quindi selezionare in accordo con il codice di ordinazione il giusto strumento.
Un esempio di dichiarazione del BUS da utilizzare nella sezione BUS della unit di configurazione è:
BUS 1 1R31F 10 2 . . 3 1MG8F .
Ovviamente la versione firmware deve coincidere ed il nome della scheda di specializzazione allo slot 3 deve essere corretto. Vedere il capitolo dedicato.
In questo paragrafo vedremo come è possibile rilevare una stima dell'utilizzo delle memorie nel prodotto. La memoria non volatile, disponibile per memorizzare il programma QCL, ha una capacità di 512KB.
La quantità di memoria occupata è pari alla dimensione del file .BIN generato dal Qview. La percentuale di memoria occupata è visualizzabile nel pannello CPU del Qview, alla voce “Used CODE memory”, oppure è possibile ottenere questa informazione dal valore del parametro “sizeapp” del device QMOS.
La memoria dati non volatile, disponibile per memorizzare le variabili ritentive, ha una capacità di 819KB.
La percentuale di memoria occupata è visualizzabile nel pannello CPU del Qview, alla voce “Used RETENTIVE”, oppure è possibile ottenere questa informazione dal valore del parametro “sizeret” del device QMOS.
La memoria dati volatile per memorizzare le variabili non ritentive ha una capacità dipendente da vari fattori.
Le seriali PROG PORT e USER PORT implementano il protocollo di comunicazione proprietario QEM chiamato BIN1.
I device SERCOM e MODBUS sono utilizzabili con tutte le seriali di comunicazione compresa la PROG PORT. Il valore numerico da utilizzare durante la dichiarazione del device per selezionare il canale di comunicazione è il seguente:
0 PROG PORT 1 USER PORT 2 AUX1 PORT 3 AUX2 PORT (se disponibile nell'hardware)
Quando i devices SERCOM e MODBUS utilizzano la PROG PORT o la USER PORT essi interessano il canale solo se lo stato di comunicazione del device è aperto (st_opencom = 1). Quando il canale del device viene chiuso (st_opencom = 0) nella seriale ritorna attivo il protocollo BIN1. Se si volesse forzare il protocollo BIN1 sulla porta PROG (ed impedire quindi che il device SERCOM occupi il canale) è necessario attivare il dip 6 di SW1.
Quando si utilizza il protocollo MODBUS RTU sulla porta seriale USER con la configurazione elettrica RS485, bisogna fare attenzione al fatto che quando la seriale è in trasmissione lo strumento mantiene attivo il canale (DE) per un tempo superiore a quello stabilito dalla specifica “MODBUS RTU”. Per questo bisogna considerare un tempo minimo di 5 millisecondi dopo i quali sarà possibile ricevere un nuovo messaggio. Anche il device SERCOM quando termina una trasmissione è soggetto al medesimo tempo in cui viene mantenuto il canale attivo (DE).
La porta di comunicazione Ethernet utilizza il protocollo di trasporto TCP/IP dove i pacchetti del protocollo BIN1 vengono incapsulati all'interno dei pacchetti dati TCP/IP. Sono attive due connessioni identificate da due porte di comunicazione liberamente impostabili nei parametri di comunicazione della porta Ethernet. Se lo strumento dispone di display, questi valori sono visualizzati e modificabili attraverso la funzione di sistema 12 - Set Ethernet communic. parameter. Altre modalità per visualizzare e impostare questi dati sono realizzabili attraverso appositi programmi disponibili all'interno dell'ambiente di sviluppo (QConfigurator-1 e QConfigurator-2).
La porta impostata in “Port nr.1:” rappresenta un canale di comunicazione equivalente alla PROG PORT. La porta impostata in “Port nr.2:” rappresenta un canale equivalente alla USER PORT. Le porte 3 e 4 non sono attualmente utilizzate.
La porta Ethernet può essere inoltre usata per instaurare una comunicazione di tipo Modbus TCP-IP con altri dispositivi in rete. In questo caso il canale che identifica la porta ethernet è impostabile inserendo il numero 43.
mdbs MODBUS 2 43
I 3 canali di comunicazione della porta ethernet (due con protocollo BIN e uno MODBUS TCP/IP) possono essere attivi contemporaneamente.
Durante il download dell'applicativo Qmove l'ambiente di sviluppo QView-6 può visualizzare alcuni errori non descritti nel manuale dell'ambiente di sviluppo. Tali errori sono particolari e la stringa descrittiva visualizzata dal QView-6 viene generata direttamente dal firmware.
Nella seguente tabella sono descritti i possibili messaggi di errore generati dal firmware.
Possibili messaggi d'errore | Descrizione |
---|---|
Error: SYSTEM + ARRSYS + DATAGROUP + INTDEVICE size overflow by 234bytes. | Compare quando le variabili ritentive superano il valore massimo consentito. |
Error: serial port not avaliable in SERCOM or MODBUS device declaration. | Compare quando Il valore numerico utilizzato durante la dichiarazione del device per selezionare il canale di comunicazione è errato. |
Error: CANOPEN device required if you use more than 3 slots. | Nella definizione del BUS si stanno utilizzando più di 3 slots e quindi l'applicazione richiede l'utilizzo di moduli Canopen. Per questa gestione è necessario dichiarare un device CANOPEN. |
Error: incorrect bus fault mode in CANOPEN declaration. | Nella dichiarazione del device CANOPEN si è indicata una modalità di fault (ultimo valore nella dichiarazione) non supportata. |
Error: incorrect canbus speed in CANOPEN declaration. | Nella dichiarazione del device CANOPEN si è indicata una velocità non valida. |
Error: too much CANOPEN device declaration. | Può essere dichiarato un solo device CANOPEN. |
Error: absol. encoder resource num in ABSCNT device declar. is not avail. | Nella dichiarazione del device ABSCNT si è indicata una risorsa che non esiste. |
Error: COUNT in ABSCNT device declaration is not a simulated counter. | L'indirizzo del contatore utilizzato nella dichiarazione del device ABSCNT non è di tipo simulato (es: 1.CNT01). |
QMos version error. Unsupported instructions set. | Una o più istruzioni nel progetto QCL non sono supportate dal firmware. |
Error: compression file type not support. | La compressione del programma QCL compilato non è supportata dal firmware. |
Error: too mutch slots in bus declarations. | Sono stati dichiarati nella sezione BUS più slot di quelli permessi dal tipo di hardware. |
L'ambiente di sviluppo mette a disposizione una serie di variabili predefinite che possono essere utilizzate precedendo al nome la parola chiave “QMOVE.”. Per esempio “QMOVE.is_suspend”, “QMOVE.sys001”, ecc. Lo scopo del presente paragrafo è illustrare le 16 variabili di sistema chiamate sys001÷sys016 il cui significato dipende dal firmware che si sta utilizzando.
Questa variabile a sola lettura indica lo stato dei pulsanti FUNC (bit 0) e BOOT (bit 1). I valori possibili sono dunque:
0 = nessun pulsante premuto.
1 = pulsante FUNC premuto.
2 = pulsante BOOT premuto.
3 = pulsanti FUNC e BOOT premuti.
Questa variabile permette la lettura dell'immagine del dip-switch SW1. L'immagine viene acquisita solo all'accensione del prodotto. Il bit 0 corrisponde al dip 1 e così via.
NB: Alcuni dip non sono collegati al microprocessore e quindi viene letto sempre al livello logico 0.
Questa variabile permette il comando del led L1-L2-L3-L4. Il bit 0 corrisponde a L1, il bit1 a L2 e così via.
Questa variabile permette l'impostazione del filtro anti-glitch ai segnali delle fasi nei contatori bidirezionali. Il valore è espresso in KHz e si riferisce alla frequenza del segnale di una fase. Il range di valori ammesso è 30÷220. Il valore impostato di default é 220KHz. La variabile può essere anche riletta. La modifica del filtro può essere fatta in qualsiasi momento.
Non utilizzata.
Con il termine device si identifica una categoria di dispositivi software atti a svolgere attività di supporto e di controllo, più o meno complesse, per risolvere le problematiche legate all'automazione dei sistemi.
La lista dei devices implementati nel firmware dipende dalla versione firmware. Lo scopo del presente paragrafo è quello di illustrare la lista e le caratteristiche dei devices disponibili.
Il firmware versione 10 implementa i seguenti devices:
Nome device | Tempo di campionamento minimo (msec) | Tempo di campionamento massimo (msec) | Tempo di esecuzione (%) |
---|---|---|---|
ABSCNT | 1 | 250 | 8,31 |
ANINP | 1 | 250 | 14,25 |
CALENDAR | - | - | 0 |
CANOPEN | 1 | 250 | 100 |
COUNTER3 | 1 | 250 | 5,94 |
DAC | - | - | 0 |
DATASTORE | 1 | 20 | 90,5 |
FREQ | 1 | 250 | 4,75 |
MODBUS | 1 | 250 | 32,07 |
QMOS | - | - | 0 |
RECDATA | 1 | 250 | 5,34 |
SERCOM | 1 | 250 | 9,26 |
Il firmware versione 20 implementa anche i seguenti devices:
Nome device | Tempo di campionamento minimo (msec) | Tempo di campionamento massimo (msec) | Tempo di esecuzione (%) |
---|---|---|---|
ANPOS2 | 1 | 250 | 8,31 |
EANPOS | 1 | 250 | 55,94 |
HEAD2 | 1 | 250 | 23,75 |
OOPOS3 | 1 | 250 | 27,91 |
Il firmware versione 30 implementa anche i seguenti devices:
Nome device | Tempo di campionamento minimo (msec) | Tempo di campionamento massimo (msec) | Tempo di esecuzione (%) |
---|---|---|---|
CAMMING3 | 1 | 250 | 55,94 |
INTERP | 1 | 250 | 35,63 |
JOINT1) | 1 | 250 | 95,01 |
In questo paragrafo vengono descritte delle informazioni aggiuntive sui devices. Queste informazioni integrano e completano il manuale di uso del device disponibile nel sito Qem. Sono informzioni relative all'implementazione del device in questo particolare prodotto.
Se nella dichiarazione del device CANOPEN viene indicata la velocità zero allora essa diventa impostabile tramite dip di SW1.
Il primo slot per indirizzare risorse che risiedono all'interno di moduli Canopen è il 4.
Il firmware gestisce la cattura dell'ingresso in interruzione anche se questo è situato in un modulo Canopen.
E' possibile inserire il valore 2 nella dichiarazione del device sul campo relativo alla porta. Questa impostazione rende possibile lo startup dei drive DS402 tramite una richiesta QCL (QDO numero 10). Questa funzionalità si rende necessaria nei casi in cui ci siano dei drive senza ingresso di abilitazione e con l'alimentazione della parte logica in comune con l'alimentazione di potenza. Se la potenza è spenta il drive non comunica in CANOPEN poichè anche la parte logica è spenta.
I files manipolati dal device DATASTORE sono tutti contenuti nella cartella /DS. Se questa cartella non esiste nel dispositivo essa viene creata automaticamente. Il device DATASTORE può operare sia con il dispositivo MMC/SD o USB che con una memoria tipo NAND interna al prodotto (non removibile). Per definire con quale dispositivo operare viene utilizzato il valore del parametro priority (0=MMC/SD, 1=NAND, 2=USB). Se l'applicazione deve frequentemente accedere ai due dispositivi supportati e non è richiesta la rimozione fisica del dispositivo MMC/SD o USB, è possibile utilizzare una particolare impostazione del parametro priority che evita di eseguire continuamente il MOUNT UMOUNT dei dispositivi. In pratica quando si desidera cambiare dispositivo prima di eseguire il comando UMOUNT si imposta “priority = -1”. Questo fa si che internamente al device la fase UMOUNT venga evitata rendendo il successivo comando MOUNT al medesimo dispositivo molto rapido.
Un esempio di codice QCL per cambiare dispositivo potrebbe essere:
SUB SETMMC WAIT NOT data.st_busy IF data.st_mount data.priority = -1 data.UMOUNT WAIT NOT data.st_mount CALL CHECK_ERR_WRN ENDIF data.priority = 0 data.MOUNT WAIT data.st_mount ENDSUB SUB SETNAND WAIT NOT data.st_busy IF data.st_mount data.priority = -1 data.UMOUNT WAIT NOT data.st_mount CALL CHECK_ERR_WRN ENDIF data.priority = 1 data.MOUNT WAIT data.st_mount CALL CHECK_ERR_WRN ENDSUB
Esiste una particolare impostazione dei parametri che permette di verificare l'esistenza di un file nel dispositivo. Si utilizza il parametro “filenum” impostato al valore -1 e con il comando OPENFILE il device invece di aprire il file ricerca il primo file presente nella directory “/DS/” del dispositivo scelto. Quando trovato, il nome di tale file sarà impostato dal device nel parametro “filenum” stesso (ed il tipo nel parametro “filetype”). Impostando nuovamente -1 in “filenum” ed eseguendo il comando OPENFILE verrà cercato il nome del file successivo e così via. Ogniqualvolta verrà effettuata una operazione di OPENFILE con il filenum diverso da -1 il loop di ricerca verrà chiuso. Quando la ricerca sarà terminata e non vi saranno più file presenti, allora il device imposterà come risposta al comando OPENFILE “filenum = -2”. L'avvenuta esecuzione del comando sarà segnalata dal flag st_busy = 0. Se l'estensione del file non è HEX o CSV il file stesso viene ignorato dalla ricerca. Nel caso in cui il nome file non sia compatibile con quelli gestiti dal DATASTORE (numeri da 0 a 9999999) allora “filenum” rimarrà impostato a -1 e verrà segnalato un warning.
I parametri “disksize” e “diskfree” sono rappresentati in KB.
Il device può memorizzare un massimo di 10000 step.
Il parametro “frwuvalue01” contiene il valore numerico del serial number del prodotto.
Per definire l'ingresso associato al device FREQ utilizzare l'apposito campo numerico nella dichiarazione del device. La disponibilità di ingressi in frequenza deve essere verificata con la versione hardware del prodotto. Per ricavare la relazione tra valore numerico e pin del morsetto utilizzare le informazioni contenute nella colonna “Indirizzo” nelle tabelle di illustrazione del morsetto.
I parametri relativi ai settori (CodeQm, CodeQs…) non sono ritentivi. All'accensione essi assumono sempre valore 0.