Home
Esempi applicativi Qpaint 1.0
Contents
1. Batteria WMUVE esaurita Lontattare assistenza continua a funzionare La pagina LOW batt Ter deve essere Attenzione batteria lerminale esaurita Lontattare assistenza continua a funzionare Documentazione tecnica Q Paint 1 0 v 1 2 Pag 86 di 119 Qem panel Controllo comunicazione attiva Nel terminale esiste la possibilit di segnalare una anomalia durante la comunicazione tra il terminale e il sistema Qmove Tale anomalia pu essere di origine hardware mancanza di collegamento disturbi alla linea oppure determinata da situazioni relative al funzionamen to dell applicazione letture non corrette di variabili Qmove ed segnalata dal lampeggio del led status posto nella parte superiore del pannello terminale Quando si verifica un errore di questo tipo opportuno verificare quale stata la causa che lo ha prodotto ci pu essere fatto semplicemente entrando nella Info Page del Setup alla voce Comunic Status E importante sottolineare che l errore e quindi il lampeggio vengono cancellati solamente allo spegnimento del terminale o dopo che si usciti dal Setup per ritornare all applicativo Questa segnalazione pu essere ottenuta anche da programma tramite l uso della variabile di terminale STATUSLED in questo esempio vediamo come realizzare un applicativo in cui il terminale se avviene un errore di status segnala questo all utilizzatore andando in un
2. gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 60 di 119 Cane Qem Stati funzionali visualizzati tramite interfaccia standard Per semplificare l utilizzo di QPaint stato introdotta un interfaccia standard con la quale il programma comunica all utente l ingresso in particolari stati funzionali Gli stati notificati si dividono in 5 gruppi 1 Informazioni Tramite questo tipo di stato il QPaint comunica all utente in formazioni riguardanti l operazione in esecuzione 2 Richiesta dati Tramite questo tipo di stato il QPaint richiede all utente infor mazioni riguardanti l operazione in esecuzione 3 Pericolo Tramite questo tipo di stato il QPaint indica all utente che l ope razione in esecuzione potrebbe portare a risultati non desi derati 4 Errore Tramite questo tipo di stato il QPaint indica all utente che stato riscontrato un errore nell operazione in esecuzione 5 Errore fatale Tramite questo tipo di stato il QPaint indica all utente che stato riscontrato un grave errore funzionale il quale non per mette un corretto funzionamento del programma e ne prece de quindi la conclusione forzata Viene ora descritta l interfaccia standard dei messaggi fornita da QPaint QMove Paint 1 0 Ei m QUESTION M 1 Tipostato Message code 10014 A eenen New setting could change Left eenn ni n i ni n n n TTT Codice messaggio and Top coordinate of the object DE Descrizione mes
3. abFlx1 gbStep 32 Oggetto Value tubazione pompal abFlx2 gbStep 32 Oggetto Value tubazione pompa2 abFlx3 gbStep 32 Oggetto Value tubazione serbatoio abTuboV gbStep 0 Oggetto ValString tubo verticale NEXT abFlx2 5 glSecondi 5 33 imposta quale elemento dell array deve rappresentare la parte di tubo pieno nella tubazione pompa2 abFlx3 5 glSecondi 5 33 imposta quale elemento dell array deve rappresentare la parte di tubo pieno nella tubazione serbatoio Documentazione tecnica Q Paint 1 0 v 1 2 Pag 115 di 119 panel Qem abTuboV 1 glSecondi 8 1 imposta quale elemento dell array deve rappresentare la parte di i tubo pieno nella tubazione verticale abFlx1 4 36 imposta la visualizzazione della valvola nella parte di tubazione ipompal va nell elemento pi a destra ENDIF Infine quando 1 impianto in Stop si resetta tutto STOP IMPIANTO IF gfStop gfStop 0 gfPump010N 0 gfPump020N 0 g fStart02 0 gfStart01 0 abDev 1 32 jal posto del deviatore si scrive uno spazio FOR gbStep 1 gbStep LE 10 1 abFlx1 gbStep 32 abFlx2 gbStep 32 abFlx3 gbStep 32 abTuboV l glSecondi38 0 NEXT abFlx1 4 36 ivalvola alla fine della tubazione ipompal abFlx2 1 36 ivalvola alla fine della tubazione pompa2 abTuboV 1 2 ivalvola nalla parte bassa tubo verticale ENDIF Documentazione tecnica Q Paint 1 0 v 1 2 Pag 116 di
4. e i valori che assegnati alla variabile abDev saranno 39 per la pompa 1 e 38 per la pompa 2 Questi visualizzeranno due caratteri corrispondenti agli opportuni bitmap rappresentanti le due posizioni del deviatore Tubazione verticale per rappresentare questa parte stata utilizzata una serie di oggetti ValString disposti uno sull altro e collegati ciascuno ad un elemento di una variabile QCL di tipo array a byte che si chiama abTubovV Il font usato Flusso il valore 0 rappresenta il carattere tubo vuoto codice 34 mentre il valore 1 rappresenta il carattere tubo pieno codice 35 La scelta di utilizzare un array deriva dal fatto che facilita la gestione dell ani mazione da parte del codice task QCL In tutto si tratta di 7 oggetti ValString per il primo oggetto il pi in basso nel disegno si associa un carattere valvola codice 37 al valore 2 in modo da visualizzare la situazione di impianto in Stop Documentazione tecnica Q Paint 1 0 v 1 2 Pag 111 di 119 Cane Con questo abbiamo creato e impostato tutti gli oggetti responsabili dell animazione Vedia mo ora come usare eventi ed azioni per dare il via all animazione Usiamo i tasti F1 per dare lo start alla pompa1 e posizionare il deviatore F2 per dare lo start alla pompa 2 e posiziona re il deviatore F3 per fermare l impianto Il resto viene lasciato all applicativo QCL Page Events Editor Pg 1 Events and Actions
5. Pag nr 04 Parametrizzazione 2 3 Pag nr 05 Parametrizzazione 3 3 I Pag nr 06 Visualizzazione 3 4 i Pag nr 07 Taratura 1 2 Pag nr 08 Taratura 2 2 Pag nr 09 Visualizzazione 4 4 i gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 70 di 119 Cn Vogliamo che una volta entrati nella pagina nr 03 Parametrizzazione 1 3 i tasti PGDN e PGUP eseguano lo scroll solo tra le pagine di parametrizzazione cio le nr 03 nr 04 e nr 05 Se invece si entra nella pagina nr 07 i tasti PGDN e PGUP devono eseguire lo scroll solo tra le pagine di taratura cio la nr 07 e nr 08 Su questo gruppo di pagine vogliamo inoltre che la successione sia circolare cio che raggiunta l ultima pagina si passi con un ulteriore incre mento alla prima e viceversa Per fare questo sufficiente sovraccaricare il funzionamento dei tasti PGUP e PGDN nelle pagine in cui si intende modificare il funzionamento di default descritto in precedenza In questo caso le pagine in cui si deve modificare il funzionamento sono la pagina nr 03 perch il tasto PGUP non deve eseguire nulla la pagina nr 05 perch tasto PGDN deve essere disabilitato la pagina nr 07 perch il tasto PGUP deve richiamare la nr 08 e la pagina nr 08 perch il tasto PGDN deve richiamare la nr 07 Per sovraccaricare il funzionamento si impo sta nella pagina interessata un evento di pagina di tipo On Key al quale si associa una azione Goto Page alla pagina interessata Per di
6. G rane Q PAINT 1 0 Documentazione tecnica D1 QPaint 1 0 v 1 2 Cane Qem Documentazione tecnica D1 Qpaint 1 0 Versione 1 2 Gennaio 2003 QEM e QMOVE sono marchi registrati Il presente manuale pubblicato dalla QEM srl senza alcun tipo di garanzia e si riserva di apportare modifiche ad errori tipografici imprecisioni nei contenuti e miglioramenti anche ai prodotti cui il presente manuale fa riferimento Le eventuali modifiche saranno comun que inserite nelle edizioni successive di questo manuale Nessuna parte di questo manuale pu essere riprodotta indipendentemente dal formato e dal mezzo senza autorizzazione scritta della QEM srl fatta riserva di tutti i diritti QEM srl S S 11 Km 339 Localit Signolo 36054 Montebello Vic Vicenza Italy Tel 0444 440061 r a Fax 0444 440229 e mail info qem it www gem it Documentazione tecnica Q Paint 1 0 v 1 2 Pag 2 di 119 Sommario Qem Introduzione sisrsrrirrrisrsrts kinin r iner S IREA Ea na 4 Installazione csi a 5 Avvio del programma a 6 Caratteristiche del programma 00 Lecce iii 8 Descrizione del programma L verrei rire 9 Barra dei Menu ia EEE E seria 9 Barra di gestione della pagina o cssscorini ani cice poco cercai ieri tei 45 Barra di impostazione della password di pagina 0 0cc rece rerr erre rice zi eine 46 Barra delle funzioni di progetto
7. Pulsante String Object Con questo pulsante si richiede a QPaint di depositare sulla pagina attiva un oggetto statico di tipo String Tramite l oggetto String possibilie visualizzare un messaggio in lingua Le propriet impostabili sono le seguenti Propriet Descrizione Limiti e condizioni Length Definisce il numero di carat Range 1 numero massimo teri che compone l oggetto caratteri visualizzabili su una comprendendo i caratteri linea Questo valore dipen utilizzati dal segno e dalpun de principalmente dal tipo di to decimale font selezionato e dal valore di Spacing Left Attributo posizione lato sini Range 0 239 pixel stro oggetto Top Attributo posizione lato su Range 0 127 pixel periore oggetto Font Name Nome del font utente o ter minale in uso Spacing Spacing di visualizzazione del Il range di valori dipende dal font font in uso Documentazione tecnica Q Paint 1 0 v 1 2 Pag 54 di 119 Cn Qem Propriet Transparent Mode Reverse Mode Descrizione Flag che se ON abilita la tra sparenza dello sfondo di visualizzazione dell oggetto Flag che se ON inverte il cam po di visualizzazione dell og getto Limiti e condizioni Nella finestra di dialogo String Object Property Editor presente anche il pulsante Unlock o Lock Questo pulsante ha il compito di sbloccare il controllo della lunghezza messaggio in introduzione e porla alla massima dimensione visu
8. Unknown symbol for Base Variable in On Yar event Figura 10 finestra Report Window Condizioni di attivazione nel progetto deve essere stato importato almeno una volta un file simboli Documentazione tecnica Q Paint 1 0 v 1 2 Pag 19 di 119 Cane Project Project Setup Con questa voce di men si richiede a QPaint di aprire la finestra di dialogo Project Setup dalla quale possibile accedere ai parametri di configurazione del progetto in uso La fine stra di dialogo visualizzata sar la seguente Project Setup Project Informations Title Levigatrice modello Ux340 a Cancel Message Languages aes won ose ENE BE Global Scale Values Scale fio Scale B 254 Scale C fo Figura 11 finestra di dialogo Project Setup Ogni progetto ha la possibilit di definire i seguenti parametri di configurazione Title titolo dell applicazione Il titolo dell applicazione composto da una stringa ASCII lunga al massimo 25 caratteri Viene memorizzato nel terminale durante la fase di download ed visualizzabile sullo stesso nella pagina INFO L oggetto Value ha la Scale A Scale B e Scale C valori di scaling globali Tramite la combinazione di tali valori si possibilit di non ottiene un fattore di scala globale che permette la conversione tra diverse unit di misura eseguire nessun va o scaling eseguire l
9. introduzione sufficiente premere il tasto ESC il che comporta il ritorno alla pagina precedente Quando vi sono pi pagine collegate con la stessa password di protezione l utente deve inserire la password solo per il primo accesso poi pu muoversi tra le varie pagine protette senza altre introduzioni di password Tramite la barra di impostazione della password di pagina possibile 1 Abilitare disabilitare la password di pagina 2 Impostare la password della pagina een Figura 45 barra di impostazione della password di pagina Documentazione tecnica Q Paint 1 0 v 1 2 Pag 46 di 119 e Qem Come si pu vedere in fig 45 nella barra di impostazione della password di pagina sono presenti un pulsante ed un campo di introduzione Il pulsante pu assumere due stati stabili Lo stato ON abilita l introduzione e la modifica della password di pagina Quando la password non contiene alcun carattere il terminale non esegue nessuna richiesta di introduzione password Lo stato OFF utilizzato durante lo sviluppo del progetto per agevolare il debug dello stesso Infatti in questo stato il valore della password rimane impostato ma il termina le non ne richiede l introduzione agevolando quindi le operazioni di debug Per default il pulsante in stato di OFF Nella sezione esempi presentate una dimostrazione di come utilizzare la password di pagina Barra delle funzioni di progetto Tramite la barra delle fu
10. Delete appariranno disabilitati importante anche ricordare che la lista di azioni visualizzata quella relativa all evento selezionato nella casella di riepilogo degli eventi e come tale cambia il suo contenuto ogni volta che si cambia l evento selezionato Per definire una nuova azione vi sono due metodi 1 utilizzare il pulsante Add per aggiungere una nuova azione in coda alla lista delle azio ni 2 selezionare nella casella di riepilogo la posizione ove inserire la nuova azione Utilizzare il pulsante Insert per inserire la nuova azione nelle lista delle azioni e alla posizione selezionata Documentazione tecnica Q Paint 1 0 v 1 2 Pag 27 di 119 Cane Alla pressione del pulsante Add o Insert comparir la seguente finestra di selezione Select Action x Next Page Previous Page Begin Data Entry Send Command Set Variable Led On Led Off Led Blink Backup Restore Increment Contrast Decrement Contrast Figura 21 finestra di selezione Select Action Come si pu vedere nella fig 21 la finestra Select Action completamente occupata dalla casella di riepilogo contenente le definizioni delle azioni disponibili a livello globale La selezione avviene come per una normale casella di riepilogo effettuando un doppio clic con il tasto sinistro del mouse sulla voce interessata o selezionandola con i tasti UP amp DOWN seguiti da una conferma con ENTER Una volta confer
11. ELSE PassoExe 1 ENDIF DataEntry DataEntry 1 ENDIF IF DEObj EQ 2 IF PrgExe LT 3 PrgExe PrgExe 1 ELSE PrgExe 1 ENDIF DataEntry DataEntry 1 ENDIF Intro 0 ENDIF Vediamo che tutto il codice condizionato dal valore 1 della variabile Intro e cio dal rilascio da parte dell utente del tasto Enter Notare la riga di istruzioni di incremento variabile DataEntry che serve solamente a scatenare l evento On change Var programmato nel ter minale Questo evento serve per riabilitare il data entry con il programma passo incremen tato Page Events Editor Pg 3 Intro DataGroup Events and Actions Enia E Add E Insent E Delete E E Add Ele Insert E Delete On Page In Dn Yar ifPrg 1 Dn Yar ifPosx 1 On Yar ifPosY 1 On Release ENTER On Change Var DataEntry On Always Attenzione perch il valore 1 alla variabile di terminale SINGLEDE pu non essere adatta per le altre pagine In questo caso deve essere resettata all ingresso di qualsiasi nuova pagina Documentazione tecnica Q Paint 1 0 v 1 2 Pag 84 di 119 Cane Segnalazione di batteria Nel terminale e nel sistema Qmove si trova una batteria tampone per la memorizzazione dei dati ritentivi In caso di esaurimento di tale componente esiste una segnalazione nelle apparecchiature Per il terminale la segnalazione si trova nella pagina Info per il sistema Qmove esiste una spia
12. Il bitmap alla fine apparir cosi D B 23 B no Moi VA S 4 D 9909 De uz Il DZV Om N gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 109 di 119 G anel Qem Abbiamo anche aggiunto sue simboli che ci serviranno in seguito per il deviatore della tuba zione Una volta creato il bitmap occorre includerlo nel progetto QPaint tramite la funzione Graphics New Font From Bitmap File La finestra che appare questa New Font From Bitmap File Bitmap File Name c ABINAQPaint OMFONTS Icon Eile I Terminal Font Name Icon Cancel Char Spacing o Nella casella Bitmap File Name va indicato il nome del file BMP che si vuole usare come nuovo Font Il tasto a destra File permette di selezionarlo tramite la finestra di dialogo di Windows Nella casella Terminal Font Name va invece scritto il nome che vogliamo dare al font e che apparir sempre in questo progetto nella lista dei font disponibili Una volta scelto OK viene fatta la conversione e da questo momento in poi ogni volta che apriremo la finestra Font Properties ci sar in lista anche Icon 24x27s0 che il nome interno dato da QPaint Icon il nome che avevamo digitato in fase di creazione 24x27s0 ci ricorda la dimensione del font e lo spacing impostato Ritornando alla finestra ValString Object Property Editor vista sopra ora facile capire che il font scelto per la stringa proprio il nos
13. associato un numero che dovr essere utilizzato per riferirsi all oggetto interessato Oggetto Value Dec Point tabella 4 Variable con Enable Alpha Mode ON tabella 3 con Enable Alpha Mode OFF tabella 2 Max Variable tabella 5 Min Variable tabella 5 Oggetto ValString Variable tabella 1 Evento OnChangeVar tabella 2 Evento OnVar tabella 1 Azione GotoPage tabella 4 Azione SetVariable Source tabella 6 Destionation tabella 7 Data Types 1 SYSTEM GLOBAL ARRSYS ARRGBL TIMER STATIC INDEX DEVPAR 10 INTERNAL TERMINAL CONST x xT x xT KK KKK K K X lt TI KKKKKK XX XX MX I KK Pa K K X lt o KKKKKK XX XX MX I KK KKK XXXI x lt x lt K K K X xK KKK Data Types 4 SYSTEM GLOBAL ARRSYS ARRGBL TIMER STATIC INDEX DEVPAR I0 INTERNAL TERMINAL x xT x xT x xT KKKKK KXXX XXX KXXX KKK KKN balla da Pa da XXK XI baia Pa ada XXX XI balla Pa Pa Pa XXX XXX IE bada dada Dada XK ad bada aa aa ba aaa aa XxXxX ba aa aaa a aa ad pi x Xx XXX KU baia Dada XXX XT x x CONST Documentazione tecnica Q Paint 1 0 v 1 2 Pag 59 di 119 Data Types 7 SYSTEM GLOBAL ARRSYS ARRGBL TIMER STATIC INDEX DEVPAR 10 INTERNAL TERMINAL CONST x x xT x x m x x DI x xig x x x lt lt Pala Pa X x lt x lt Xx XIT XXX xK XXN MX KXK XK X KKKKKK KXXX x lt lt Pala K X
14. assume il valore da noi specificato e questo vuol dire allo stesso giorno di ogni mese Cosi dicasi se vogliamo degli eventi giornalieri dobbiamo lascia re non selezionata la propriet Day e lavorare invece su Hour e Minute in modo che alla stessa ora di ogni giorno si verifichi l evento Vediamo gli altri eventi il passaggio alla pagina di salvataggio dati viene fatto come si vede ogni volta che la var H Hour assume il valore 17 e la var M Minute il valore 30 ci vuol dire che ogni giorno alle ore 17 30 apparir l avviso di salvare i dati di lavoro Le altre impostazioni invece riguardano l avviso di pulizia filtri che avviene ogni 3 mesi come si vede dalle impostazioni della variabile MM Month l evento viene generato quando la var Month assume i valori 1 4 7 e 10 E da ricordare inoltre che l evento generato nel momento del passaggio ai valori impostati per cui se non si rileva questo passaggio es il terminale spento l evento non sar pi rilevabile Nell esempio poi ad ogni passaggio pagina viene fatto lampeggiare un led diverso che servira nelle pagine di avviso per indicare quale tasto funzione premere dopo aver eseguito l opera zione e tornare nella pagina di macchina in funzione Vediamo come si presenta una pagi na di avviso le altre Documentazione tecnica Q Paint 1 0 v 1 2 Pag 97 di 119 Qun Qen sono analoghe e non verranno descritte in dettaglio Attenzione
15. la dimensione in pixel del carattere definita tramite il para metro CharWidth migliore la qualit dello stesso Importante anche il tipo di font True Type utilizzato in quanto maggiore la presenza di piccoli dettagli grafici nel font minore la qualit del font utente ottenibile Alla pressione del pulsante OK il QPaint effettuer una serie di controlli sui dati introdotti Tali controlli verificheranno la bont dei dati nei campi di introduzione In caso vengano riscontrate irregolarit QPaint visualizzer un box di dialogo con le indicazioni del caso Graphics Image Manager Con questa voce di men si richiede a QPaint di aprire il gestore immagini Nel terminale stato implementato un oggetto grafico chiamato Image con il quale possibile visualizza re su di una pagina immagini monocromatiche Le immagini visualizzate possono avere qualsiasi dimensione entro la grandezza del display in uso Al fine di ridurre la quantit di memoria utilizzata dal terminale per mantenere i dati delle immagini si pensato di adot tare un architettura a libreria di immagini Con questo si intende che invece di memorizza re i dati dell immagine direttamente nell oggetto Image essi verranno inseriti nella libreria e ad ogni immagine verr assegnato un nome identificativo composto da una stringa ASCII di lunghezza massima 16 caratteri Tale nome sar utilizzato dall oggetto Image per definire quale immagine dell
16. questo errore dovuto al tentativo di scrivere un file protetto in scrittura o dall accesso ad un di sco non disponibile o in modalit a sola lettura gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 63 di 119 Codice stato 10005 10006 10008 10009 10013 Tipo stato ERROR INFORMATION INFORMATION FATAL ERROR QUESTION Cane Descrizione stato Errore nell apertura del file Si entra in questo stato quando QPaint non riesce a leggere il file di progetto Nella maggior parte dei casi questo errore dovuto al tentativo di leggere un progetto inesistente o dall accesso ad un disco non disponibile File di progetto non valido Il progetto non verr caricato Si entra in questo stato quando QPaint rileva che il file di progetto in lettura non valido Versione file di progetto non compatibile Il progetto non verr caricato Si entra in questo stato quando QPaint rileva che la versione del file di progetto in lettura non compati bile Errore durante il caricamento dei font terminale Prova a reinstallare QPaint Il programma verr terminato Si entra in questo stato quanto QPaint durante la pro cedura di avvio rileva la mancanza dei file font ter minale nella directory Fonts In questo caso si consi glia di reinstallare QPaint nella stessa directory in cui era stato precedentemente installato Le nuove impostazioni potrebbero troncare il testo in ecces
17. ta in fondo alla lista immagini di progetto e le verr assegnato un nome di default Nella dialog Add Bitmap File non possibile selezionare pi di un immagine da aggiungere alla volta Questo comunque non un problema poich sufficente ripetere l operazione con il pulsante Add quante volte si desidera Image Manager x Generals Preview Delete IN Rename i width 32 Height 32 OK Cancel Figura 37 finestra di dialogo Image Manager di un progetto con tre immagini Come si pu vedere nella fig 37 abbiamo un esempio in cui sono state inserite tre immagini nella lista immagini di progetto Image Manager ha impostato per default il loro nome in Picture1 Picture2 e Picture3 Per semplificare l identificazione di una specifica immagine Image Manager rende possibile modificarne il nome tramite il pulsante Rename La pressione del pulsante Rename far comparire la seguente finestra di dialogo Insert New Name x Name Fircture1 Cancel Figura 38 finestra di dialogo Insert New Name Documentazione tecnica Q Paint 1 0 v 1 2 Pag 41 di 119 Qem G anel Tramite la dialog Insert New Name possibile introdurre un nuovo nome per l immagine selezionata Vi sono per alcune regole da rispettare Il nome deve avere una lunghezza compresa tra 1 e 16 caratteri ASCII Le lettere minuscole sono considerate differenti da quelle maiuscole Non vi possono
18. HOUR MIN SEC per l ora La pagina delle propriet di una di queste appare cosi Yalue Object Property Editor xi Generals Coordinates and Fonts Second Index Base First Index Dein f MOO TO vaie mona S Max Variable foci nnn IL Min Variable pooo poo IL Scaling Mode None Global Local IC Enable Alpha Mode IC Enable Modify Mode val E Length 2 Max 40 Chars IV Enable Lead Zero Blank Mode O Enable Sian Mode OK Cancel E stata abilitata la modalit Enable Lead Zero Blank in modo da far precedere i numeri con una cifra dallo zero In questo modo la data viene rappresentata ad es 15 07 al posto di 15 7 come sarebbe invece se tale modo non fosse stato abilitato Analogamente si procede per le altre variabili Questa indicazione ci serve per poi testare il funzionamento del termi nale e verificare se quanto abbiamo programmato viene effettivamente eseguito Il passaggio alle varie pagine di avviso viene impostato usando eventi globali questo perch potrebbero esserci pi pagine che descrivono il normale funzionamento della nostra macchi na e noi vogliamo essere sicuri che gli eventi temporali vengano segnalati sempre in qualsi asi punto ci troviamo Vediamo come si presenta la finestra degli eventi globali gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 96 di 119 panel Qem Global E vents Editor Events and ctions ENE Hu Add H Insert E D
19. MANFBW AsseX START AsseX E PRESET CNTUNLOCK Assex C MANFFW Assex C START AsseY E MANFFW CNTUNLOCK Asse MANFW Asset E STOP AsseX E MANFBW CNTUNLOCK Assez C MANSBW Assex C STOP AsseY E MANSFW C DELCNT AsseX C MANSFW AsseX E MANSBW DI Figura 25 finestra di dialogo Symbol Object Selection Come si pu vedere nella fig 25 la dialog Symbol Object Selection divisa in due aree distinte Quella di sinistra raggruppa in una struttura ad albero i vari device disponibili nella sezione INTDEVICE EXTDEVICE del file simboli importato Quella di destra invece occupa ta dalla lista completa di tutti i comandi disponibili Per confermare un comando sufficien te eseguire un doppio clic con il tasto sinistro del mouse o premere il tasto ENTER sulla voce desiderata Set Variable Tramite l azione Set Variable si richiede al terminale di copiare il valore della variabile di riferimento Source nella variabile di riferimento Destination First Index Second Index Source H DUR Destination s0 re Base Figura 26 pannello impostazioni azione Set Variable Documentazione tecnica Q Paint 1 0 v 1 2 Pag 31 di 119 panel Come si pu vedere nella fig 26 l azione Set Variable stata programmata affinch copi il contenuto della variabile terminale HOUR nella variabile del QMove slOre Nel documento presente il capitolo Impostazione variabili di riferimento nel quale
20. Paint 1 0 v 1 2 Pag 34 di 119 Qem G anel Come si pu vedere in fig 30 l editor eventi di pagina esattamente lo stesso utlizzato per gli eventi globali e differisce solamente per il testo visualizzato nel titolo della finestra di dialogo Transfer Download Con questa voce di men si richiede a QPaint di effettuare il download del progetto nel terminale La procedura di download si divide in cinque fasi Il controllo del progetto La connessione seriale con il terminale La compilazione del progetto La cancellazione della memoria nel terminale Il download del progetto nel terminale O one e Sy Lo start del progetto scaricato nel terminale Il controllo del progetto Durante questa fase il QPaint esegue un controllo del progetto per verificare che lo stesso sia coerente con le regole fissate Ci permette di evitare che vengano effettuati trasferimenti nel terminale di progetti non corretti impedendo quindi malfunzionamenti e comportamen ti indesiderati La procedura seguita la stessa utilizzata per la voce di men Project Check Project a cui si rimanda per ulteriori informazioni Unica differenza tra il controllo di progetto effettuato durante il download e quanto fatto durante il Check Project di Project Check Project che durante il download la finestra di dialogo Report Window non viene visualizzata automaticamente ma la si potr richiamare manualmente una volta usciti dalla dialog del do
21. Provvedere alle operazioni di lngrassagglo Motore previste operazione esequitis premere Gli eventi di pagina vengono cosi impostati Events and Actions Events Bu Add E Inser E gt Delete POTRA E Add E nsen E gt Dette On Press PG UP LedOff F1 On Press PG DW Premendo il tasti F1 il cui led lampeggia si torna alla pagina di funzionamento e si spegne il led F1 Inoltre dato che questa una pagina di avviso a cui vi si arriva solo a scadenze fissate sono stati sovrascritti i tasti PGUP e PGDN in modo che l unico modo per uscire sia quello di usare il tasto funzione Lo stesso succede per le altre pagine di avviso di cui vediamo la rappresentazione seguire pulizia e manutenzione seguire operazioni dl litri e lIubrificare Ingranaggi backup Qat di lavoro Hd operazione eseguita premere mu ic operazione eseguita premere Documentazione tecnica Q Paint 1 0 v 1 2 Pag 98 di 119 panel Qem Pagina di presentazione Con questo esempio vediamo come realizzare una pagina iniziale di presentazione temporizzata ad es con un logo in modo che l avvio del programma su terminale e quello su QMove si sincronizzino Ci che vogliamo ottenere che la partenza dei due programmi sia contempo ranea indipendentemente dall ordine di accensione di terminale o QMove Vediamo intan to la nostra pagina con il logo essa potrebbe essere Vogliamo che all accensione appaia ques
22. QPaint Ogni elemento di questa suddivisione rappre senta un carattere Inoltre dobbiamo ricordarci che il bitmap deve essere monocromatico bianco e nero Ad esempio se volessimo costruire un font con caratteri di dimensione 12 x 15 pixel dovremmo creare un bitmap di larghezza 12 16 n colonne 192 e di altezza 15 x 14 n righe 210 Documentazione tecnica Q Paint 1 0 v 1 2 Pag 108 di 119 Cane Il bitmap rappresentante i Large Font che utilizzeremo per creare i caratteri visti sopra appare cos 265 0 DE l ONN ogni carattere di dimensione 24x27 pixel WA O NNN TOHIDHK COCMUN C AC TN 9 HEO0 TON XI XION DC MM QIENCH HWV CD CM 0 UKUN NU ODOMYAVAAEFMA altezza del bitmap Pi vVIuUuZ I I lt y 9 01 sii 20h ZDIT DO O 0O DNaRa O DWN IBiQHI CC NIAR ZA U eX A lot 23 DZ Gn lt a mw YD o lp lt BIO Mar DIE K Oo mN O Di Q O fu O D O l 9 C larghezza del bitmap C infine da dire che i caratteri sono disposti nel bitmap in ordine di codice a partire dal codice 32 che corrisponde allo spazio bianco fino al codice 255 che corrisponde a y Questo codice ci sar utile in seguito Creiamo il nostro font personalizzato partendo da questo bitmap Ne facciamo una copia e lo chiamiamo Icon Font bmp ora lo editiamo e disegnamo al posto dei caratteri e i nostri nuovi simboli
23. Qem View Report Window Con questa voce di men si richiede a QPaint di visualizzare la finestra di Report che una finestra di tool e quindi come tale presenta alcune caratteristiche intrinseche ha una barra del titolo ridotta non pu essere ridotta ad icona o ingrandita a tutto schermo sempre sovrapposta alla finestra principale del programma e condivide con essa il flusso di input della tastiera e del mouse All avvio di QPaint sempre invisibile e presenta posizione e dimensioni di default Pu quindi essere visualizzata spostata ridimensionata e nascosta Alla sua riattivazione la posizione e le dimensioni precedenti verranno ripristinate Alla chiu sura di un progetto viene sempre ripulita del suo contenuto e nascosta La posizione e le dimensioni non vengono memorizzate nel file del progetto e nelle impostazioni del program ma In essa sono rappresentati i risultati ottenuti dalla procedura di controllo del progetto Ulteriori informazioni inerenti ai contenuti della Report Window sono disponibili nella sezio ne dedicata al Check Project Project Symbol Reference Con questa voce di men si richiede a QPaint di aprire la finestra di dialogo Symbol Reference dalla quale possibile importare nel progetto un nuovo file simboli o visualizzare le informa zioni di quello attualmente caricato Nella Symbol Reference possibile visualizzare i valori di checksum e l originaria posizione con nome del file simboli importato
24. ValString vengono continuamente rinfrescati e quindi alternando il valore tra 0 e 1 della variabile sfPump010N si visualizzano alternativamente i due testi relativi ai due valori Questo continuo refresh rende l animazione Documentazione tecnica Q Paint 1 0 v 1 2 Pag 107 di 119 Cn Qem YalString Object Property Editor E3 Messages Variables Coordinates and Fonts First Message fo Length fi Max 10 Chars Max Messages 2 Active Language Nameless Unlock Message Language Message Text Locked Length ON OK Cancel Come detto sopra per far s che al posto di un carattere appaia un simbolo grafico occorre usare un font personalizzato derivato da un file bitmap e nel quale si modificano alcuni caratteri Per la pompa 1 sono stati sovrascritti i caratteri e mentre per la pompa 2 i caratteri e Tutto qui Vediamo come creare un font personalizzato innanzitutto partiamo da un file bitmap Utilizziamo la copia di uno di quelli che si trovano nella directory Fonts di QPaint10 e scegliamo QEM System Large Font bmp che visualizza dei caratteri di dimensione 24 x 27 pixel Se volessimo utilizzare un altro bitmap con dimensione dei carat teri diversa e magari di nostra ideazione possiamo farlo a patto di suddividere il bitmap in 14 righe e 16 colonne perch questo il formato richiesto dalla funzione di men Graphics New Font From presente in
25. almeno 2 pagine Page Toggle Lock Page Con questa voce di men si richiede a QPaint di abilitare o disabilitare l impostazione del controllo della password relativo alla pagina attiva Ulteriori informazioni sono disponibili sulla sezione riguardante la barra di impostazione della password di pagina Page Page Events Editor Con questa voce di men si richiede a QPaint di aprire la finestra di dialogo Page Events Editor dalla quale possibile visualizzare ed introdurre gli eventi relativi alla pagina di progetto attiva Sostanzialmente gli eventi di pagina sono eguali a quelli globali per cui quanto descritto nella sezione Project Global Events Editor valido anche per la sezione Page Page Events Editor Tra i due editor esistono per alcune differenze nel titolo della finestra di dialogo compare il numero ed eventualmente anche il nome della pagina interessata negli eventi On Key On Press e On Release possibile creare una lista di azioni anche per i tasti INS PG DN e PG UP La finestra di dialogo visualizzata sar la seguente Page Events Editor Pg 1 Setup Axe Blade Events and Actions l Events E Add E Insert E gt Delete actions Bu Add E Insert E gt Delete Goto Page Setup AB 2 On Page In Send Command STOP Blade On Change Var HOUR Set Variable Blade posit 0 Led On F3 Figura 30 finestra di dialogo Page Events Editor Documentazione tecnica Q
26. appe na introdotto vuoto Nome gia utilizzato da un altra variabile in terna Introduci un nome nuovo Si entra in questo stato quando QPaint rile va che il nome della variabile interna appe na introdotto gi presente nella lista dei nomi variabili interne Vuoi salvare le modifiche del progetto Si entra in questo stato quando QPaint rile va che si sta scaricando un progetto modifi cato e richiede all utente se desidera salva re le modifiche apportate gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 67 di 119 Codice stato 10036 10037 10038 10039 10040 Tipo stato INFORMATION INFORMATION INFORMATION INFORMATION ERROR Cane Descrizione stato Impossibile accedere ai dati di una pagina rimossa Esegui la procedura di Check Project per aggiornare la Report Window Si entra in questo stato quando si seleziona un item della report Window riferito ad una pagina che sta ta rimossa Impossibile accedere ai dati di un evento rimosso Esegui la procedura di Check Project per aggiornare la Report Window Si entra in questo stato quando si seleziona un item della report Window riferito ad un evento che stato rimosso Impossibile accedere ai dati di un azione rimossa Esegui la procedura di Check Project per aggiornare la Report Window Si entra in questo stato quando si seleziona un item della report Window riferito ad un azione che stata ri
27. c cerreercere recare rese case cee zine eeni iieii 47 Barra delle funzioni di disegno ce ce ecererceere crescere cere cenee rece reeecenicenene 48 Barra degli strumenti di disegno 0ceeececeecerer cere nece eee ee ee ee ree riesce ezenene 48 font del terminale iiara nea 57 Le variabili di riferimento r aa 58 Appendice csrscsrpo isrtri srn eos Porr ENESTE ra 59 Tabelle riassuntive regole variabile di riferimento etere 59 Stati funzionali visualizzati tramite interfaccia standard 0000ce 61 Esempi applicativi Qpaint 1 0 0 c ceci 70 Scroll personalizzato pagine di visualizzazione 0ce eee rire rici nizenene 70 Scelta d ll lingua sscssssna asi nera a iaia 74 Cambio pagina forzato da QCL vsiiiianii iii Si aN 76 Introduzione con diverse unit di misura ss ssesssssesssssseesrersessrersssessrseseereese 77 Introduzione dati guidata srissiianii sia niuniazzaie eine 79 Segnalazione di batteria nine nari aiar 85 Controllo comunicazione attiva ssssisri riesca anita 87 Introduzione alfanumerica re ace ine 90 Gestione eventi temporali ssurasiia iniziai ie 95 Pagina di presentazione ira nia 99 Animazione susino ene cea 106 Backupre RESstore civici era 117 Documentazione tecnica Q Paint 1 0 v 1 2 Pag 3 di 119 panel Introduzione QEM QPaint 1 0 un ambiente
28. con la precisione del decimo di millimetro e quindi per questa unit di misura si visualizzano i valori con un punto decima le Per ottenere la visualizzazione metrica bisogna impostare nel terminale i seguenti valori SSCALEA 1 SSCALEB 1 SCALEC 0 PPDec 1 Per la rappresentazione anglosassone SCALEA 393700 SSCALEB 100000 SSCALEC 0 PPDec 3 Con questa impostazione si intende visualizzare il millesimo di pollice che corrisponde a 0 0393700 mm e quindi mantiene la precisione del decimo di milimetro Per convertire da decimo di millimetro a millesimo di pollice si deve moltiplicare per dda E 3 93700 valore_in_millesimi_di_ pollice siccome la variabile SCALEA di dimensione LONG pu contenere solamente valori interi Allora si moltiplica il valore per 100000 per renderlo intero e si programma SCALEB Documentazione tecnica Q Paint 1 0 v 1 2 Pag 77 di 119 Qun Qen Ora sar sufficiente realizzare una pagina di scelta unit di misura come in figura Page Events Editor Pg 6 MM POLLICI Events and Actions Eventi E Add E Inser E Delete Azione Bu Add Inser E Delete Set Variable SCALEA 1 Set Variable SCALEB 1 Set Variable PPDec 1 Goto Page VISUALIZ PRINCIPALE On Key 2 Page Events Editor Pg 6 MM POLLICI Events and Actions Rois B Add B Inser E gt Delete ro E Add B Insert Er Delete OnKkey 1
29. di sviluppo grafico per la programmazione del terminale 1MMIQ In questo documento sono riportate le caratteristiche principali del programma QPaint Esso stato progettato per lavorare in stretta relazione con un sistema QMove e per questo motivo durante la descrizione del prodotto si faranno molti riferimenti ai concetti della programma zione in QCL Il terminale un dispositivo in grado di comunicare con sistemi QMove configurati con appli cativi diversi Per questo esso deve conoscere le informazioni relative a ciascuna delle varia bili dell applicativo QMove con il quale dovr colloquiare Tali informazioni si trovano in un particolare file con estensione SYM generato dalla compilazione dell applicativo QMove utilizzando l ambiente di sviluppo Qview QPaint utilizza queste informazioni che una volta trasferite al terminale rendono possibile la connessione con il sistema QMove I cablaggi e collegamenti dell apparecchiatura descritta nel presente manuale devono ri spettare la Normativa Europea EN60204 1 QVi ew SISTEMA QMOVE Applicativo QCL Compilatore P File SYM e QPai nt TERMINALE 1MMIQ Progetto QPaint Con i termini oggetto ed oggetto grafico ci si riferisce alla stessa cosa Con il termine font si intende font terminale e o font utente Con il termine font terminale o font interno si intende il font memorizzato nella ROM del termi
30. essere due immagine con lo stesso nome Image Manager si occuper di controllare che quanto introdotto sia corretto attivando un opportuno box di messaggio nel caso non si rispetti quanto appena descritto Image Manager x Generals Valvola flusso Motore DC Trasformatore Delete IN Rename i width 32 Height 32 OK Cancel Figura 39 finestra di dialogo Image Manager di un progetto con tre immagini Come si pu vedere nella fig 39 i nomi delle tre immagini Picture1 Picture2 e Picture3 sono stati modificati in Valvola flusso Motore DC e Trasformatore In questo modo diventer pi semplice identificarli quando usati nell oggetto Image Quando si esce da Image Manager tramite il pulsante OK viene verificato se le modifiche apportate comporteranno il riallineamento di alcuni oggetti Image presenti nel progetto In questo caso comparir un box di messaggio con la scritta The acceptance of the changes will involve the realignment of some objects image of the project Are you sure of to want to continue e i bottoni Yes e No Se si conferma l operazione con Yes gli oggetti Image verranno riallineati e tutte le impostazioni fatte con Image Manager confermate mentre No terminer la procedura di uscita dalla dialog Documentazione tecnica Q Paint 1 0 v 1 2 Pag 42 di 119 G anel L utilizzo della COM3 o della COMA rich
31. in questo stato quando QPaint rileva che il nome del font utente appena introdotto gi presen te nella lista dei nomi font utente File BMP non valido L immagine non verr aggiunta Si entra in questo stato quando QPaint rileva che il file grafico in lettura non di tipo bitmap BMP gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 65 di 119 Codice stato 10024 10025 10026 10027 10028 Tipo stato ERROR ERROR WARNING WARNING QUESTION Cane Descrizione stato Dimensione file BMP non valida L immagine non verr aggiunta Si entra in questo stato quando QPaint rileva che le dimensioni in altezza e o larghezza del file grafico in lettura superano le misure dell area di disegno La larghezza e l altezza massima sono fissate rispettiva mente a 240 x 128 pixel Il file BMP pu essere solamente di tipo monocromatico L immagine non verr aggiunta Si entra in questo stato quando QPaint rileva che il file grafico in lettura non di tipo monocromatico Nome per l immagine non valido poich vuoto Introduci un nome valido Si entra in questo stato quando QPaint rileva che il nome dell immagine appena introdotto vuoto Nome gia utilizzato da un altra immagine Introduci un nome nuovo Si entra in questo stato quando QPaint rileva che il nome dell immagine appena introdotto gi presen te nella lista dei nomi immagine L accettazione delle mo
32. pi bottoni per le scelte dell utente Nella tabella a seguire sono riportati e dettagliatamente descritti tutti i messaggi visualizzati da QPaint tramite il box di dialogo gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 62 di 119 Codice stato 10000 10001 10002 10003 10004 Tipo stato QUESTION WARNING QUESTION FATAL ERROR ERROR panel Descrizione stato Vuoi veramente modificare il nome della pagina atti va Si entra in questo stato quando l utente introduce un nuovo nome per la pagina attiva Nome pagina introdotto invalido poich gia utilizzato da un altra pagina Introdurre un nuovo nome Si entra in questo stato quando l utente introduce un nuovo nome per la pagina attiva e questo risulta esse re gi stato utilizzato da un altra pagina La pagina attiva verr persa Sei sicuro di volere continuare Si entra in questo stato quando l utente esegue la procedura per la rimozione della pagina attiva Errore interno fatale e non recuperabile Il programma verr terminato Si entra in questo stato quando in QPaint si verifica un errore non gestibile e che comporta una inevitabi le conclusione dello stesso Tutte le modifiche appor tate al progetto successive all ultimo salvataggio ver ranno perse Errore nella creazione del file Si entra in questo stato quando QPaint non riesce a salvare il file di progetto Nella maggior parte dei casi
33. quella attualmente visualizzata A cambio pagina avvenuto nessun oggetto comparir selezionato nell area di disegno Condizioni di attivazione numero della pagina attuale inferiore al numero totale pagine Documentazione tecnica Q Paint 1 0 v 1 2 Pag 12 di 119 panel Qem View Background Mode Con questa voce di men si richiede a QPaint di cambiare il colore di sfondo utilizzato nell area di disegno Il terminale utilizza il bianco come colore di sfondo ed il nero per i testi rettangoli ed altro Per migliorare le operazioni di composizione delle pagine QPaint permette di scegliere il colore di sfondo utilizzabile tra bianco e verde Quando il colore di sfondo selezionato il bianco la pagina visualizzata da QPaint rispecchier fedelmente ci che apparir sul terminale Quando il colore di sfondo verde si potranno individuare pi facilmente gli oggetti depositati sulla pagina Il colore di sfondo utilizzato nell area di dise gno non influenzer in alcun modo quanto inviato al terminale Il colore di default all avvio di QPaint il verde Questa informazione non viene memorizzata nel file del progetto e nelle impostazioni del programma Vediamo ora un esempio di Background Mode Funzionalit generali lt 1 99 99 99 Funzionalit erali lt 1 Il terminale QEM e uno strumento erminale QEM e uno strumento appositamente studiato e realizza appositamente studiato e realizza to per facilitare
34. utilizzato per creare il font qem system medium font fnt font di Windows per QPaint qem system medium font qtf font terminale per QPaint qem system small font bmp file bitmap sorgente utilizzato per creare il font qem system small font fnt font di Windows per QPaint qem system small font qtf font terminale per QPaint L associazione dell estensione QTP al programma QPaint10 EXE permetter di avviare un progetto tramite il doppio clic sull icona dello stesso direttamente dalla finestra di Explorer Gestione Risorse nella versione italiana gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 5 di 119 Cane Avvio del programma Qen L avvio del programma QPaint avviene come per qualsiasi altro programma Windows in uno dei seguenti modi 1 tramite clic sull icona QPaint 1 0 con Avvio gt Programmi gt QPaint 1 0 2 tramite doppio clic sull icona QPaint10 exe con Explorer in C Programmi QPaint10 3 tramite linea di comando in una sessione MS DOS o in Avvio gt Esegui Quando si avvia QPaint tramite linea di comando possibile specificare le seguenti opzioni nosplash Disabilita la visualizzazione della finestra di Logo splash screen lt nome_file_QTP gt Nome del file di progetto QTP da caricare Esso composto da percorso nome file progetto estensione QTP Esempio da sessione MS DOS C gt Programmi QPaint10 QPaint10 exe nosplash C Lavori Marmo LevigatriceModUTC27A QTP Una volta av
35. 1 2 Pag 22 di 119 Cane QEM Premendo il pulsante Add viene visualizzata la dialog di fig 14 In essa sono disponibili 5 bottoni con i quali selezionare il tipo di dato desiderato F flag B byte W word L long e S single tipi di dati sono gli stessi presenti nel QMove In Name possibile impostare il nome della variabile Il prefisso non rimuovibile poich obbligatorio per ogni varia bile interna Nel caso in cui si tenti di dichiarare una variabile interna con un nome gi usato comparir un box di messaggio con la scritta Name var_name already used by another Internal Variable Premendo il tasto OK si ritorner alla dialog di figura 14 Project Global Events Editor Con questa voce di men si richiede a QPaint di aprire la finestra di dialogo Global Events Editor dalla quale possibile visualizzare ed introdurre gli eventi attivi a livello globale Un evento una particolare condizione che si verifica nel tempo e che viene rilevata dal terminale come ad esempio la pressione di un tasto o il cambiamento del valore di una variabile nella CPU del QMove Ad un determinato evento possibile associare una lista di azioni che il terminale andr a svolgere quando l evento viene rilevato Gli eventi si possono dividere in due gruppi di appartenenza eventi globali ed eventi di pagina Gli eventi globali vengono sempre elaborati prima di quelli di pagina Un evento definito sia ne
36. 110 di 119 Cane Qem Yalue Object Property Editor x Generals l Coordinates and Fonts Base First Index Second Index Deckai D e e Variable fi Max Warable i Es Rimvaranie PST doo o_o i U To Enable Lead zero Blank Mode p Scaling Mode Miene Stam Mbae E None 0 Global e loca V Enable Alpha Mode Pas i T I Enable Modify Mode l E Length E Max 30 Chars OK Cancel Per visualizzare la tubazione come gi detto si crea un oggetto Value e lo si collega ad una variabile QCL di tipo Array Byte in questo caso abFlx1 e si imposta la propriet Alpha Mode Il font prescelto Flusso e la lunghezza dell oggetto di 4 caratteri Per la tubazione in uscita dalla pompa 2 si user in maniera analoga un altro oggetto Value legato alla variabile abFlx2 dell applicativo QCL Anche in questo caso l animazione con trollata dal codice task QCL che analizzeremo tra breve Infine anche la tubazione orizzon tale che confluisce nel serbatoio fatta nello stesso modo utilizzando la variabile abFlx3 Deviatore dato che nel vostro esempio le due pompe lavorano in alternativa c bisogno di rappresentare un raccordo che colleghi la pompa che sta funzionando alla tubazione vertica le In questo caso si ottiene con un oggetto Value con la modalit Alpha Mode di dimensione 1 e che collegato alla variabile QCL abDev che un Array Byte Il font utilizzato Icon
37. 119 Qen Qun Backup e Restore In questo esempio vediamo come realizzare una semplice pagina in cui poter eseguire le operazioni di Backup e Restore dei dati ritentivi di QMove L unica cosa da ricordare che l operazione di Restore pu essere fatta solo dopo aver effettuato l operazione di backup e fino a che non si effettua un nuovo download dell applicativo dopo di che il Restore provoca un errore Questo viene segnalato dal terminale con il lampeggio del led status e con l informazione Restore error nella Info Page alla voce Comunic status L impossibilit di poter fare il Restore dopo un download deriva dal fatto che potremmo aver scaricato un applicativo diverso da quello cui si riferiscono i dati salvati con il Backup che quindi potreb bero non avere pi senso con la nuova situazione Detto questo costruiamo una semplice pagina con alcuni oggetti VALUE che servono per verificare la correttezza delle operazioni Backup amp Restore n SISI n Cn Fra 10 IFITTIFTIT 1 3 oggetti VALUE hanno tutti la propriet Enable Modify Mode abilitata in modo da poterli modificare da terminale esaminiamo in particolare solo la variabile asARRS 2 perch si tratta di un array di tipo Single in cui vediamo come visualizzare variabili con decimali Documentazione tecnica Q Paint 1 0 v 1 2 Pag 117 di 119 Qem Cn Yalue Object Property Editor x Generals Coordinates and Fonts Ba
38. 8 di 119 Qem G anel Come si pu vedere nella fig 34 la dialog composta dai seguenti oggetti la casella di riepilogo Windows Font Name con la quale possibile selezionare il font True Type dal quale derivare il nuovo font utente la casella Terminal Font Name nella quale si definisce il nome del font utente in creazione es Display 7 segmenti la casella Char Width nella quale si definisce la larghezza in pixel dei caratteri nel font in creazione e la casella Char Spacing nella quale si imposta il valore di spacing carattere desiderato Tramite il pulsante OK si avvia l operazione di creazione del font mentre Cancel abortisce linte ra procedura presente inoltre il pulsante Export BMP con il quale possibile creare un file Bitmap monocromatico con il font risultante dalle impostazioni effettuate Quest ul tima operazione risulta utile quando si intende generare la Bitmap di un font partendo da un font True Type di Windows modificare tale Bitmap con un editor grafico quale il PaintBrush di Windows e creare il nuovo font utente con la Bitmap modificata tramite la voce di men Graphics New Font From New Font From Bitmap File Attenzione La qualit del font utente creato tramite la dialog New Font From True Type Font dipende da molti aspetti tecnici che di solito non sono visibili ad un normale utente Di regola si pu per assumere che maggiore
39. EM L applicativo deve eseguire operazioni diverse a seconda del campo di introduzione che l utente ha abilitato Ad esempio una introduzione di Velocit deve incrementare il pro gramma in introduzione una introduzione di Pos X deve incrementare il passo Ci signi fica che l applicativo deve conoscere sempre il numero del campo in introduzione per svol gere l operazione corretta Per questo bisogna definire la variabile QCL DEObj di tipo GLOBAL e dimensione Word L evento On Always si occupa di copiare il valore della varia bile terminale nella variabile QCL come in figura Page Events Editor Pg 3 Intro DataGroup Events and Actions Evente E Add E Inser Er Delete TE E Add EB Insert E Delete On Page In Set Variable DEObj On Var ifPrg 1 Dn Yar ifPosx 1 Dn Yar ifPosY 1 On Release ENTER On Change Var DataEntr Alla attivazione dei tre ingressi si deve scegliere l oggetto in data entry e abilitare il data entry come in figura Page Events Editor Pg 3 Intro DataGroup Events and Actions Evan E Add Be Inser Br Dette E Hu Add M Insert E Delete Set Variable DEOBJ 2 Begin Data Entry Dn Yar ifPosx 1 On Yar ifPosY 1 On Release ENTER On Change Var DataEntry On Always L utente imposta il valore ed al termine deve indicare all applicativo di incrementare il passo programma in introduzione A que
40. Everi E Add Be Insent E Delete icone E Add H Insent E Delete Set Variable gfStart01 1 On Press F2 Set Variable abDey 1 39 On Press F3 Page Events Editor Pg 1 Events and Actions Events EL Add Be Inser Er Delete Actions E Add B Inser E Delete On Press F1 Set Variable gfStart02 1 Set Variable abDev 1 38 On Press F3 Page Events Editor Pg 1 Events and Actions Events E Add E nsen Er Delete Actions E Add E mser Er Delete On Press F1 Set Variable gfStop 1 On Press F2 Come si vede vengono impostate 3 variabili QCL per lo Start delle 2 pompe e per lo Stop dell impianto Vediamo ora come il codice QCL si occupa di gestire l animazione Innanzitutto occorre definire le variabili necessarie nel file CNF gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 112 di 119 GLOBAL gfPump010N F Gestisce l animazione della pompa 1 gfPump020N F Gestisce l animazione della pompa 2 gfStartOl F Pompa 1 in funzione gfStart02 F Pompa 2 in funzione gfStop F Stop impianto gbStep B Var ausiliaria per cicli FOR glSecondi L Var per temporizzazione ARRGBL abDev B 5 Deviatore abFlx1 B 10 Tubo in mandata pompa 1 abFlx2 B 10 Tubo in mandata pompa 2 abFlx3 B 10 Tubo collettore serbatoio abTuboV B 10 Tubo verticale tmSecondi Timer secondi Sono stati usati degli array di dimensione maggiore a quella uti
41. GDI32 DLL KERNEL32 DLL MFC42 DLL MPR DLL MSVCRT DLL OLE32 DLL OLEAUT32 DLL OLEDLG DLL USER3Z DLL VERSION DLL WINMM DLL BORLNDMM DLL CP3240MT DLL 4 71 118 0 4 72 3110 1 Dynamic Link Libraries WINSPOOL DPRV 4 0 0 950 C USR BB30 QPAINT1O C PROGRAMMI BORLAND CBUILDER3 data not found data not found C WINDOWSYSYSTEM C WINDOWS SYSTEM C PROGRAMMI BORLAND CBUILDER3 C WINDOWSYSYSTEM C WINDOWSYSYSTEM C WINDOWS SYSTEM C WINDOWS SYSTEM C WINDOWSY SYSTEM C WINDOWSYSYSTEM C WINDOWSYSYSTEM C WINDOWSYSYSTEM C WINDOWSYSYSTEM C NWINDOWSYSYSTEM C WINDOWSY SYSTEM C X WINDOWSY SYSTEM C WINDOWS SYSTEM C WINDOWS SYSTEM C WINDOWS SYSTEM C WINDOWS SYSTEM C WINDOWSYSYSTEM olx Print di Figura 42 finestra di dialogo Technical Info Documentazione tecnica Q Paint 1 0 v 1 2 Pag 44 di 119 Qem Cne Come si pu vedere in fig 42 nella dialog presente il pulsante Print con il quale si potranno stampare le informazioni tecniche visualizzate Prima di avviare la procedura di stampa assicurarsi che in Windows vi sia installata almeno una stampante Help Technical Info Con questa voce di men si richiede a QPaint di visualizzare la finestra di About In essa sono presenti le informazioni inerenti il prodotto la QEM srl e gli indirizzi internet disponibili all utente La casella info qem it pu essere utilizzata per richiedere inform
42. Invece per la tubazione che confluisce nel serbatoio il fluido deve viaggiare da destra verso sinistra e quindi l indice degli array deve decrescere ecco che per abTuboV la sequenza di aggiornamento sar 5 4 3 2 1 Anche in questo caso l elemento 5 non compreso nella visualizzazione La stessa cosa accade per il tubo vertica le qui occorre avere un ciclo di lunghezza 8 dato che il tubo composto da 7 oggetti ValString Si noti che non si imposta il codice del carattere ma il valore che la variabile deve assumere 0 tubo vuoto 1 tubo pieno L uso dell array d la possibilit di gestire corret tamente l animazione Infine per visualizzare la valvola nel tratto di tubo collegato alla pompa 2 e non utilizzato si imposta il codice 36 che corrisponde appunto al carattere valvola nel primo elemento dell array visualizzato come il pi a sinistra Analogamente per il funzionamento della pompa2 ANIMAZIONE POMPA 2 IF gfStart02 AND abDev 1 EQ 38 se la pompa2 ON e possiede il deviatore gfPump010N 0 gfPump020N glSecondi 2 Animazione pompa2 alternativamente imposta il valore di gfPump020N a 70 e 1 con ciclo di 1 secondo Questo porta al refresh dell oggetto ValString rappresentante la pompa2 ogni volta con i 2 caratteri diversi iquesto ciclo fa in modo che gli array rappresentanti le tubazioni assumano valori corrispondenti a caratteri tubo vuoto FOR gbStep 1 gbStep LE 10 1
43. Mode Flag che se ON inverte il campo di visualizzazione Blink dell oggetto Flag che se ON abilita il lampeggio del campo di visualizzazione dell ogget to Nella finestra di dialogo ValString Object Property Editor sono presenti i pulsanti Message e Language con i quali possibile scegliere due modalit di introduzione dei messaggi Facendo click sul primo si abilita l introduzione con priorit sui messaggi Ci sta a significa re che nella griglia di introduzione messaggi vi sono tutti i messaggi disponibili per la lingua selezionata nella casella di riepilogo Active Language In questo modo si hanno sotto con trollo tutti i messaggi disponibili per la lingua attiva Quando si crea un oggetto nuovo questa la modalit di introduzione impostata di default Premendo il pulsante Language si abilit l introduzione messaggi in modalit lingua percui nella griglia verr visualizzato un messaggio alla volta ma in tutte le lingue disponibili In cooperazione con i pulsanti appena citati sulla dialog compaiono alternativamente i campi Active Language e Active Message Nella dialog presente anche il pulsante Unlock o Lock Questo pulsante ha il compito di sbloccare il controllo della lunghezza messaggio in introduzione e porla alla massima dimensione visualizzabile In questo modo possibile introdurre dei messaggi senza preoccu parsi anticipatamente della lunghezza in caratteri che occuperanno
44. Set Yariable SCALEB 100000 Set Variable SCALEA 393700 Set Variable PPDec 3 Goto Page VISUALIZ PRINCIPALE Fare attenzione perch le variabili interne all accensione del terminale hanno valore zero mentre le variabili SSCALEA SCALEB e SCALEC hanno il valore fissato nell introduzione Global Scale Values nella finestra nella finestra richiamata dal men Project Setup di QPaint Documentazione tecnica Q Paint 1 0 v 1 2 Pag 78 di 119 Cn Qem Introduzione dati guidata Si vuole in questo esempio creare una pagina di introduzione dati contenuti in un datagroup L introduzione viene definita guidata per due motivi 1 perch essa viene abilitata non dalla pressione del tasto INS ma dall attivazione di una serie di ingressi sul sistema 2 perch l incremento del passo o programma in introduzione viene eseguito automaticamente dopo ogni conferma del dato Le operazioni vengono svolte sia dal terminale che dall applicativo come mostrato in figura Attivazione Attivazione Attivazione DE ingresso ingresso ingresso nr 1 nr 2 nr 3 Y Y Y abilita abilita abilita introduzione introduzione introduzione su campo A su campo B su campo C terminale rilasciato ENTER segnala all applicativo l avvenuta introduzione incrementa passo o prg in introduzione vy applicativo QCL segnala al terminale incremento ese
45. X e ifPosY se attivati abilitano l introduzione nei rispettivi campi Velocit Pos X e Pos Y Introdotto il valore il data entry rimane sullo stesso cam po ma visualizza il valore del programma o passo successivo Se viene raggiunto l ultimo passo o programma l introduzione ritorna sul primo valore Queste operazioni vengono ese guite parte sul terminale e parte sull applicativo Pi precisamente il terminale si occupa di fornire le informazioni all applicativo il quale avendo un linguaggio di programmazione riesce ad eseguire tutte le computazioni e a rendere disponibili al terminale i risultati Procediamo per passi Bisogna utilizzare ed inizializzare due variabili QCL di appoggio per contenere il numero di passo e programma in introduzione Poi dobbiamo impostare ad 1 la variabile di terminale SINGLEDE per disabilitare dopo l introduzione di un valore il passaggio automatico al campo successivo Per questo definiamo un evento di pagina OnPageln con la seguente lista di azioni Page Events Editor Pg 3 Intro DataGroup Events and Actions Evente E Add E Insert E gt Delete actions El Add E Insert E gt Delete Set Variable PassoExe On Var ifPrg 1 Set Variable PrgExe 1 On Var ifPosx 1 Set Variable SINGLEDE 1 On Yar ifPost 1 On Release ENTER On Change Var DataEntry On Always Documentazione tecnica Q Paint 1 0 v 1 2 Pag 81 di 119 Cn Q
46. a pagina dedicata Il nostro esempio ha 4 pagine la pagina iniziale in cui non vi alcuna comunicazione con il Qmove ma si visualizza una variabile di terminale due pagine in cui si vanno a fare delle operazioni di lettura di variabili Qmove e infine la pagina di allarme Ci che vogliamo ottenere dall applicativo andare alla pagina di allarme ogni volta che si verifica un qualsi asi errore di comunicazione tra terminale e Qmove La cosa pi semplice quella di definire un evento globale OnVar sulla variabile di terminale STATUSLED verificando quando questa assume il valore 1 che indica l errore di comunica zione ed effettuando il salto alla pagina di allarme Questo per ha un inconveniente infatti quando si arriva alla pagina di allarme l evento OnVar essendo globale e agendo sulla var STATUSLED ancora attivo e quindi il salto alla pagina di allarme si effettua sempre Questo implica il continuo rinfresco della pagina di allarme e questo produce uno sfarfallio fastidioso e non esattamente quello che si voleva Bisogna procedere in altro modo definiamo una variabile interna errcomm che utilizzere mo per il salto pagina e solo quando c un cambiamento nel suo valore in modo da non saltare nuovamente alla pagina di allarme una volta avvenuto l errore Quando la var STATUSLED assume il valore 1 allora anche la var errcomm verr impostata ad 1 Quindi si crea un evento OnChangeVar sul cambio di valor
47. a fig 9 la Report Window composta da una lista a scorrimento verticale contenente gli errori rilevati dal controllo del progetto Ad ogni linea corrisponde un errore Ogni oggetto pu avere pi errori e quindi pi linee In ogni caso gli errori di un determinato oggetto sono sempre raggruppati Una linea della lista composta delle se guenti parti lt causa gt lt collocazione gt lt codice errore gt lt descrizione gt causa Definisce il motivo della linea di rapporto In questo caso Error sta per errore nel progetto collocazione Definisce la collocazione dell errore Pu valere Event in global events Action in global events Event on page Action on page Object on page Evento globale Azione glovale Evento sulla pagina dove il numero della pagina Azione sulla pagina dove il numero della pagina Oggetto grafico sulla pagina dove il numero della pagina Documentazione tecnica Q Paint 1 0 v 1 2 Pag 17 di 119 Cane codice errore Codice identificativo dell errore Pu valere 12001 12002 12003 12004 12005 12006 12007 12008 12009 12010 12011 12012 12013 12014 12015 12016 12017 12018 12019 12020 12021 12022 12023 12024 12025 12026 Nell evento On Key non stato definito il tasto di attivazione Nell evento On Press non stato definito il tasto di attivazione Nell evento On Release non stato definito il tasto di a
48. a libreria si vuole visualizzare Se si pensa che normalmente un immagi ne appare in pi pagine si capisce immediatamente l enorme risparmio di memoria ottenuto con questo sistema Inoltre durante la procedura di download verranno trasferite nel termi nale solo le immagini utilizzate dagli oggetti Image La libreria immagini del terminale viene creata per mezzo del gestore di immagini Image Manager Con esso l utente gestisce la libreria inserendo rimuovendo e rinominando le immagini in formato BMP che verranno incorporate nel progetto Il fatto di incorporare le immagini direttamente nel file del pro getto permette di eliminare ogni collegamento con i file BMP originali facilitando le opera zioni di trasporto dello stesso su altri computer o media di archiviazione Documentazione tecnica Q Paint 1 0 v 1 2 Pag 39 di 119 nane Nel caso in cui nel progetto non siano mai state inserite immagini comparir la seguente finestra Image Manager Widths Nons Height None x cono Figura 35 finestra di dialogo Image Manager di un progetto senza immagini Come si pu vedere in fig 35 nella finestra di dialogo Image Manager abbiamo una casella di riepilogo in cui vengono visualizzati i nomi delle immagini presenti in libreria il box Preview in cui viene visualizzata l immagine selezionata nella casella di riepilogo com prensiva dei campi Width e Height per le dimensioni in pixel della stessa pi i bot
49. alizzabile In questo modo possibile introdurre dei messaggi senza preoccuparsi anticipatamente della lunghezza in caratteri che occuperanno Pulsante Image Object Con questo pulsante si richiede a QPaint di depositare sulla pagina attiva un oggetto statico di tipo Image Tramite l oggetto Image possibilie visualizzare una immagine bitmap monocromatica Le propriet impostabili sono le seguenti Propriet Image Name Left Top Descrizione Definisce l immagine da vi sualizzare specificando il nome di una immagine pre sente nella libreria immagi ni del progetto creata con la voce di men Graphics Image Manager Attributo posizione lato sini stro oggetto Attributo posizione lato su periore oggetto Limiti e condizioni Se il nome dell immagine specifica non presente nel la libreria immagini verr visualizzata un immagine di default Range 0 239 Width im magine Range 0 127 Height im magine Documentazione tecnica Q Paint 1 0 v 1 2 Pag 55 di 119 Cane Qem Pulsante Box Object Con questo pulsante si richiede a QPaint di depositare sulla pagina attiva un oggetto statico di tipo Box Tramite l oggetto Box possibilie visualizzare una serie di rettangoli Le propriet impostabili sono le seguenti Propriet Left Top Width Height Back Color Color Style Descrizione Attributo posizione lato sini stro oggetto Attribu
50. anager Generals Preview Delete Rename En fessi width 140 Height 127 OK Cancel Come si vede a sinistra appare la lista delle immagini presenti ad ogni immagine viene dato un nome di default Picturennn dove nnn un numero relativo alla prima posizione libera nella lista che possibile modificare usando il pulsante Rename Al centro appare il Preview dell immagine appena inserita in lista con le sue dimensioni Sulla destra i tasti con le funzioni possibili abbiamo gi visto Add e Rename Delete effettua la rimozione dalla lista dell immagine selezionata Con OK si conferma l inserimento della nuova immagine nella lista Una volta fatto questo per poter effettivamente aggiungere l immagine nella pagina prescelta occorre selezionare un Image Object e posizionare l oggetto stesso facendo click nel punto desiderato della pagina Appare quindi questa finestra Documentazione tecnica Q Paint 1 0 v 1 2 Pag 100 di 119 nane Image Object Property Editor Picture2 Picture3 Picture4 in cui possibile selezionare dalla lista di immagini costruita con Image Manager quella che ci interessa E possibile anche impostare la posizione indicando il valore di Left e Top che corrispondono alle coordinate dell angolo superiore a sinistra dell immagine Quindi abbiamo completato la nostra pagina aggiungendo un box per lo sfondo e un paio di oggetti String per te
51. ariabile gbTerPage di tipo GLOBAL e dimensione BYTE Si definisce nel terminale un evento globale di tipo OnChangeVar associato alla variabile di terminale PAGE A tale evento si definisce l azione Set Var con associata la variabile PAGE come source e sbTerPage come destination Cosi facendo ad ogni variazione della variabile PAGE corrisponder la scrittura del nuovo valore nella variabile dell applica tivo gbTerPage N B Se l applicativo formato da pi di 127 pagine le variabili definite in QCL dovranno essere di dimensione WORD anzich BYTE Documentazione tecnica Q Paint 1 0 v 1 2 Pag 76 di 119 Cn QEM Introduzione con diverse unit di misura In alcune applicazioni esiste la necessit di visualizzare i valori numerici in diverse unit di misura Ad esempio in una pagina di terminale il cliente potrebbe scegliere se utilizzare la rappresentazione in millimetri oppure in pollici oppure in metri anzich decimetri Tutte le rappresentazioni numeriche del progetto dovrebbero cos commutare i valori ed adeguarsi alla nuova scelta Il terminale mette a disposizione una serie di strumenti per permettere questa possibilit Come premessa bisogna dire che esistono molti modi per realizzare la conversione il terminale implementa questa caratteristica mantenendo invariato il valore originale del dato e introducendo un fattore di scala tale da eseguire la conversione dell unit di misura Supponiamo di vol
52. asto funzione F4 Backup Tramite l azione Backup si richiede alla CPU del QMove di avviare la procedura di backup dei dati Durante l esecuzione dell azione la CPU passa in stato READY e vi rimane anche al completamento dell operazione Restore Tramite l azione Restore si richiede alla CPU del QMove di avviare la procedura di restore dei dati Durante l esecuzione dell azione la CPU passa in stato READY e vi rimane anche al completamento dell operazione Increment Contrast Tramite l azione Increment Contrast si richiede al terminale di incrementare il contrasto di visualizzazione del display LCD Nella condizione di temperatura ottimale vedere caratteristiche terminale il tempo di warm up del display dell ordine di 5 10 secondi Si consiglia comunque di attendere almeno 5 minuti dall accensione a freddo del terminale prima di procedere alla modifica del contrasto Decrement Contrast Tramite l azione Decrement Contrast si richiede al terminale di decrementare il contrasto di visualizzazione del display LCD Nella condizione di temperatura ottimale vedere caratteristiche terminale il tempo di warm up del display dell ordine di 5 10 secondi Si consiglia comunque di attendere almeno 5 minuti dall accensione a freddo del terminale prima di procedere alla modifica del contrasto Attenzione Quando il terminale in modalit introduzione dati sono disabilitati gli eventi On Press On Key e On Relea
53. azioni riguardo ai font e la loro impementazione nel sistema QPaint Terminale sono disponibili nella sezione dedicata Qem Il download del progetto nel terminale Durante questa fase il QPaint effettua il download del progetto compilato nella memoria del terminale A questo punto nella dialog Download Project comparir un indicatore che visualizzer la progressione dei dati trasferiti istante per istante Se durante questa fase viene riscontrato un errore la procedura di download termina sar possibile uscire dalla dialog Download Project tramite il pulsante OK Le operazioni effettuate nel terminale non verranno annullate Lo start del progetto scaricato nel terminale Durante questa fase il QPaint invia al terminale il comando di start progetto Tramite questo comando il terminale avvier il progetto scaricato uscendo dalla modalit Download Configuration Se durante questa fase viene riscontrato un errore la procedura di download termina sar possibile uscire dalla dialog Download Project tramite il pulsante OK Le operazioni effettuate nel terminale non verranno annullate Graphics Font Report Con questa voce di men si richiede a QPaint di aprire la finestra di dialogo Font Report dalla quale possibile visualizzare e stampare un rapporto dettagliato sui font disponibili inclusa l indicazione di quali sono in uso nel corrente progetto La finestra di dialogo visualizzata sar la seguente QEM System Sma
54. azioni generali e commerciali sui prodotti QEM La casella soft qem it pu essere utilizzata per richiedere informazioni ed assistenza al supporto tecnico QEM About QPaint QPaint 1 0 QEM srd 5 5 11 km 339 e m Localit Signolo 36054 Montebello Vic Vicenza Italy Tel 0444 440061 Fax 0444 440229 www gemit Info info qem it Support soft gem it Figura 43 finestra di dialogo About OPaint Barra di gestione della pagina Tramite la barra di gestione della pagina possibile 1 Scegliere la pagina da attivare specificandone il numero 2 Scegliere la pagina da attivare scegliendola dalla lista pagine di progetto 3 Modificare il nome associato alla pagina attiva Pg fio Adjust Inertia Figura 44 barra di gestione della pagina Documentazione tecnica Q Paint 1 0 v 1 2 Pag 45 di 119 Qem G anel Come si pu vedere in fig 44 nella barra di gestione della pagina sono presenti un campo di introduzione numerico ed una casella combinata Nel campo di introduzione viene visualizzato il numero della pagina attiva mentre nella casella combinata compare il nome ad essa associato Nel campo di introduzione possibile specificare il numero della pagina che si desidera attivare Se viene introdotto un valore inferiore a 1 o maggiore del numero com plessivo delle pagine verr attivata l ultima pagina del progetto Tramite la casella combina ta possibile indicare il nome della pagina
55. cessarie per definire una variabile di riferimen to Qem Cane Set Time Time Properties TT Month V Day 3 TT Hour IV Minute fio Figura 18 pannello impostazioni evento OnTime Nell esempio di fig 18 si impostato l evento OnTime per venir generato al decimo minuto di ogni ora del giorno 3 di ogni mese Come si pu vedere possibile definire il mese giorno ora e minuto di occorrenza dell evento Una casella di controllo posta davanti al campo di introduzione di mese giorno ora e minuto ne abilita o disabilita la comparazione Se tale casella disabilitata si intente che l evento viene generato per tutti i valori possibili del campo in esame Almeno un campo deve essere impostato per assicurare la correttezza dell introduzione OnChangeVar L evento OnChangeVar viene generato ogni qual volta la variabile di riferimento definita nel pannello delle impostazioni cambia il proprio valore Base First Index Second Index Variable PAGE Figura 19 pannello impostazioni evento OnChangeVar Nell esempio di fig 19 si impostato che l evento OnChangeVar venga generato ad ogni variazione della variabile di terminale PAGE OnVar L evento OnVar viene generato ogni qual volta il valore della variabile di riferimento corri sponde ai parametri di comparazione impostati Tali parametri sono composti da due campi 1 Compare Mode la modalit di comparazione 2 Compare Value il valore
56. che non immediata per l utente finale Una soluzione pi elegante e funzionale quella di definire un oggetto VALSTRING con propriet Enable Modify Mode attiva dove i messaggi corrispondono ai nomi assegnati alla lingua In questo modo l utilizzatore sceglie la lingua mediante lo scroll di tutti i nomi delle lingue mediante il tasto Next Char e quando conferma viene scritto il nuovo valore sulla variabile di termi nale Documentazione tecnica Q Paint 1 0 v 1 2 Pag 74 di 119 Vediamo un esempio YalString Object Property Editor YalString Object Property Editor ENGLISH ENGLISH ITALIAN GERMAN importante introdurre i testi per tutte le lingue esistenti nel progetto magari con le appropriate traduzioni gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 75 di 119 panel Qem Cambio pagina forzato da QCL In molte applicazioni consueto che una determinata condizione verificatasi nell applicati vo QCL debba segnalare un informazione all operatore tramite terminale Solitamente si riserva una determinata pagina per segnalare all operatore questa situazione e bisogna for zare il cambio pagina in corrispondenza di tale condizione Per fare questo il QCL deve poter modificare la pagina corrente nel terminale Facciamo un esempio un determinato ingresso del sistema segnala la mancanza olio nella macchina In tale condizione il ciclo di lavoro si arresta ed
57. che si vuole attivare scegliendola dalla lista dei nomi pagine di progetto Con essa si pu inoltre modificare il nome associato alla pagina attiva N B Ulteriori informazioni riguardo la gestione delle pagine sono reperibili nella sezione dedi cata all evento Goto Page Barra di impostazione della password di pagina Quando si realizza un interfaccia verso una macchina utensile vi sono alcune parametrizzazioni come la velocit massima di lavoro attrezzo o le impostazioni degli assi di movimento il cui accesso deve essere consentito solo a determinati operatori tecnico manutenzione installatore ecc in modo da evitare che un inserimento di dati errati possa portare ad alterazioni delle caratteristiche di funzionamento o influire sulla sicurezza stessa della mac china Per la protezione dei dati critici il terminale rende possibile attivare una password che impedisca l accesso a determinate pagine del progetto da parte di utenti non autorizza ti Tale password composta da una stringa di lunghezza massima 8 caratteri compresi nel set alfanumerico 0 9 e A Z Ogni pagina del progetto ha la possibilit di richiedere una propria password Quando l utente richiama una pagina protetta il terminale visualizza al suo posto una speciale pagina di richiesta della password Se l utente introduce la password corretta il terminale visualizza la pagina protetta altrimenti resta nella pagina speciale di richiesta password Per uscire dall
58. con il pulsante sinistro del mouse sul pulsante rappresen tante tale tasto nel pannello impostazioni UONDEO HEC HOCE HOGG HOB OB Select Key faf NODO Figura 17 pannello impostazioni evento OnKey Documentazione tecnica Q Paint 1 0 v 1 2 Pag 24 di 119 Qem G nel Se un tasto del terminale gi stato utilizzato o non disponibile poich gi definito dal sistema il suo pulsante rappresentante visualizzato nel pannello impostazioni comparir disabilitato OnPress L evento OnPress viene generato alla pressione di un tasto del terminale Per l evento OnPress valgono le stesse procedure di impostazione descritte nell evento Onkey L evento OnPress a livello globale non associabile ai tasti PGUP PGDN e INS per cui i corrispettivi bottoni sul pannello impostazioni risulteranno sempre disabilitati OnRelease L evento OnRelease viene generato al rilascio di un tasto del terminale Per l evento OnRelease valgono le stesse procedure di impostazione descritte nell evento Onkey L evento OnRelease a livello globale non associabile ai tasti PGUP PGDN e INS per cui i corrispettivi bottoni sul pannello impostazioni risulteranno sempre disabilitati OnAlways L evento OnAlways viene generato fintanto che si nella sua area di competenza In questo caso trattandosi di eventi di livello globale verr generato in continuazione Il tempo di ripetizione dell evento dipende dalla complessit de
59. del terminale Premere h Der Inserire o moglticare FI F2 FS Fa Vediamo pi in particolare l oggetto che rappresenta il testo Come detto un VALUE con queste propriet Yalue Object Property Editor x Generals Coordinates and Fonts First Index Second Index Dectomt Variable MerWeranie Mmweranie O Enable Lead Zero Blank Mode Meroe StamMode ione 9 Global Local IV Enable Alpha Mode I Enable Modify Mode i meal Length 20 Max 40 Chars Scaling Mode Documentazione tecnica Q Paint 1 0 v 1 2 Pag 91 di 119 Cane E stata usata la variabile QCL abARRS in quanto l uso dei Value alfanumerici possibile solo con array a byte l indice di inizio lettura del valore dato dalla variabile swWord e quindi tale indice di inizio modificabile dall applicativo QCL e sono state abilitate le propriet Alpha Mode per poter trattare i valori dei singoli elementi dell array come caratteri e il Modify Mode che ci consente di poter introdurre il testo direttamente dalla pagina di termi nale Infine nel campo Length abbiamo specificato che la lunghezza dell oggetto Value di 20 caratteri Per la visualizzazione della posizione si usato un oggetto VALUE con variabile gbPosStr che rappresenta il numero d ordine del testo all interno della nostra lista Vediamo anche come sono stati definiti i tasti funzione e come sono stati usati Eventi e Azioni Page Events Ed
60. di posizionamento asse Y Si costruisce la seguente pagina di terminale Premi ingresso per abilitare 1 datatcentry Documentazione tecnica Q Paint 1 0 v 1 2 Pag 80 di 119 G anel Qem Le variabili Programma e Passo visualizzano solo il numero del programma passo in introduzione Non possibile modificare il valore Le variabili Velocit Pos X e Pos Y invece rappresentano il valore del datagroup e sono modificabili Normalmente in una pagi na realizzata in questo modo alla pressione del tasto INS si abilita il data entry sul primo oggetto modificabile ed alla conferma di un valore il data entry si abilita sul campo succes sivo in maniera ciclica tra Velocit Pos X e Pos Y Nel nostro caso invece l abilita zione comandata da QCL in corrispondenza dell attivazione di un ingresso Inoltre alla conferma di un valore non si deve abilitare il campo successivo ma si deve uscire dal data entry Prima di tutto bisogna sapere che ogni oggetto dinamico VALUE o VALSTRING identificato da un numero che viene segnalato durante il data entry dalla variabile terminale DEOBJ Per conoscere il numero identificativo dell oggetto bisogna visualizzare il valore di DEOBJ durante il data entry Nel nostro esempio i valori sono visualizzati nella figura precedente Vogliamo realizzare un introduzione con le seguenti caratteristiche Abbiamo tre ingressi del sistema ifPrg ifPos
61. difiche effettuate potrebbe comportare il riallineamento di alcuni oggetti imma gine presenti nel progetto Sei sicuro di volere continuare la procedura Si entra in questo stato quando QPaint rileva che la modifica di una o pi immagini nella finestra di dialo go Image Manager potrebbe comportare la necessit di spostare uno o pi immagini presenti nel progetto gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 66 di 119 Cane Codice stato Tipo stato 10029 QUESTION 10030 INFORMATION 10031 ERROR 10032 WARNING 10033 WARNING 10034 QUESTION Descrizione stato Vuoi veramente modificare la password del la pagina attiva Si entra in questo stato quando l utente in troduce una nuova password per la pagina attiva Correntemente per l esecuzione di questo programma sono necessari almeno 256 colo ri di sistema Il programma verr terminato Si entra in questo stato quanto QPaint du rante la procedura di avvio rileva che la con figurazione video di Windows impostata a meno di 256 colori di sistema File di progetto non trovato Si entra in questo stato quando QPaint du rante la procedura di avvio rileva che il nome del file di progetto impostato nella linea di comando non corrisponde ad un file realmen te esistente Nome variabile interna non valido poich vuoto Introduci un nome valido Si entra in questo stato quando QPaint rile va che il nome della variabile interna
62. e 1 900 sfdown F Tasto di scorrimento lista 1 gt 45 ipremuto da terminale sfup F Tasto di scorrimento lista 45 gt 1 ipremuto da terminale GLOBAL gbStep B Indice relativo al testo selezionato nella lista 0 44 gbPosStr B Indice relativo al testo e visualizzato z in terminale 1 45 ARRSYS abARRS B 900 Contiene i caratteri dei testi da igestire Mentre nel codice task MOD abbiamo gestisce l avanzamento in avanti verificando la fine S F1 1 significa premuto Fl o F3 IF sfFl EQ 1 AND gbPosStr LT 45 gbStep gbStep 1 swWord gbStep 20 1 calcola l indice all interno idell array ENDIF Documentazione tecnica Q Paint 1 0 v 1 2 Pag 93 di 119 Cane igestisce l avanzamento all indietro verificando l inizio S F2 1 significa premuto F2 o F4 IF sfF2 EQ 1 AND gbPosStr GT 1 gbStep gbStep 1 swWord gbStep 20 1 calcola l indice all interno idell array ENDIF resetta i tasti sfF1 0 sfF2 0 aggiorna la posizione del testo selezionato gbPosStr gbStep 1 Si vede come la cosa venga fatta semplicemente la variabile gbStep contiene il valore dell indice del testo nella lista partendo per da valore zero cui corrisponde il carattere di inizio swWord pari a 1 swWord contiene l indice del carattere di inizio dei vari testi quindi assume solo i valori 1 21 41 61 881 La pressione dei tasti funzione modifica il valore di sbStep e q
63. e Image Oggetto Valstring Per ottenere un animazione sono utilizzabili pi oggetti diversi procediamo con ordine Pompa stato utilizzato un oggetto Valstring che si ricorda un oggetto dinamico che ha la possibilit di visualizzare stringhe di testo diverse in funzione del valore posseduto dalla variabile collegata all oggetto stesso In questo caso viene visualizzato un solo carattere Rispettivamente le variabili associate ai due oggetti ValString rappresentanti le pompe si chiamano gfPump010N e sfPump020N sono di tipo Flag e dovranno essere definite nell ap plicativo QCL Per ottenere il movimento della pompa si associano 2 caratteri diversi ai 2 valori che decidiamo potr assumere la variabile collegata e in fase di esecuzione si assegna no alternativamete questi due valori Come si vede per questi 2 caratteri sono in realt due simboli grafici Come fare per ottenere ci Occorre definire un proprio font personalizzato dove al posto dei soliti caratteri alfanumerici di tastiera possiamo sostituire dei disegni come appunto in questo caso La posizione in cui saranno introdotti nel font determiner quale carattere della tastiera premere affinch siano visualizzati Vediamo intanto la finestra delle propriet dell oggetto ValString per la pompa 1 assoluta mente identico per la pompa 2 a parte la variabile collegata con il carattere per il valore 0 e per il valore 1 Durante l esecuzione gli og getti
64. e della variabile errcomm con azione collegata Goto Page Error Communication E conveniente usare il nome della pagina piut tosto che il suo numero perch questo ci rende completamente indipendenti da eventuali modifiche nella posizione della pagina di allarme Quindi la pagina degli Eventi Globali appare cos Documentazione tecnica Q Paint 1 0 v 1 2 Pag 87 di 119 Qen Cn Global Events Editor Events and Actions Eventi He Add E Inser E gt Delete Actions E Add E Insent E Delete I STATUSLED 1 On Change Var ercomm ariable ercomm 1 Global Events Editor Events and Actions ES Event Be Add E Insert E gt Delete Actione ERA E Insert l E gt Delete On Var STATUSLED 1 Goto Page Error Communication On Change Var ercomm Per far si che una volta verificato l errore si torni ad una sotuazione normale in cui si ancora sensibili ad un nuovo errore di comunicazione si deve resettare il valore di errcom nella pagina iniziale in quanto una volta usciti dalla Info di Setup Page si entra in questa pagina Allora si definisce un evento di pagina OnPageln in questo modo Page Events Editor Pg 1 init page Events and Actions Events B Add E Insert amp Delete Actions El Add g Insert E Delete Set Variable ercomm 0 Infine per fare in modo di non accedere direttamente alla pagina di alla
65. e di No terminer il programma senza salvare niente mentre Cancel abortir l intera operazione Documentazione tecnica Q Paint 1 0 v 1 2 Pag 11 di 119 panel QEM Edit Delete Object Con questa voce di men si richiede a QPaint di cancellare l oggetto selezionato nell area di disegno A termine della cancellazione se vi sono ancora oggetti a disposizione verr auto maticamente selezionato l oggetto successivo Condizioni di attivazione un oggetto selezionato nell area di disegno Edit Property Object Con questa voce di men si richiede a QPaint di visualizzare l editor delle propriet dell og getto selezionato nell area di disegno Ulteriori informazioni sugli oggetti e i relativi editor delle propriet sono disponibili nella sezione dedicata Condizioni di attivazione un oggetto selezionato nell area di disegno Edit Bring Up Object Con questa voce di men si richiede a QPaint di portare ad un livello superiore di vista l oggetto selezionato nell area di disegno Ulteriori informazioni sugli oggetti e le loro carat teristiche di disegno sono disponibili nella sezione dedicata Condizioni di attivazione un oggetto selezionato nell area di disegno di livello superiore a 1 n ed almeno due oggetti nella pagina Edit Bring Down Object Con questa voce di men si richiede a QPaint di portare ad un livello inferiore di vista l oggetto selezionato nell area di d
66. ede alcuni passi che descriveremo in dettaglio uno per uno Ci che si vuole ottenere un semplice sinottico che visualizza il funzionamento di 2 pompe che alternativamente sono collegate ad un serbatoio di raccol ta L animazione consiste nel visualizzare le pompe in funzione il flusso di liquido attraverso le tubazioni l impianto in riposo con le tubazioni chiuse da valvole Ecco subito come risulta l effetto finale e poi vediamo come realizzarlo Impianto in condizioni di STOP Pump 2 start Impianto con pompa 1 in funzione In evidenza le parti che si vedranno in stop movimento nel pannello termi nale start Pump i Pumpo2z Start Impianto con pompa 2 in funzione In evidenza le parti che si vedranno in movimento nel pannello termi nale start Pump i Pumpo2 Start La realizzazione dell animazione fatta nell applicativo QCL che descriveremo in seguito mentre in QPaint c soltanto la gestione dei tasti F1 F2 e F3 insieme ovviamente all uti lizzo dei vari oggetti sia statici che dinamici che compongono questa pagina Vediamo ora come appare la pagina nel progetto QPaint indicando quali oggetti sono stati utilizzati per creare l effetto finale come si nota appare leggermente diversa da quella che si vede in fase di esecuzione gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 106 di 119 Qen Fz PE Oggetto Oggetto Imag
67. elete PAR amp Add Ele Insert E Delete On Time DD 15 H 12 Goto Page Motore Led Blink F1 Set Time Time Properties TT Month V Day js V Hour j2 P Minute OK Sancel Vediamo che ci sono solo eventi di tipo OnTime nella figura rappresentato l evento che attiva la pagina Motore ogni giorno 15 alle ore 12 Analizziamo le propriet dell evento OnTime esse sono Month Day Hour e Minute Se nessuna di queste selezionata l evento non viene mai generato come se non esistesse Se invece selezionato qualcosa l evento accade quando la propriet in esame assume per la prima volta il valore impostato Se vi sono pi propriet selezionate l evento generato quando si verifica la combinazione dei valori delle propriet stesse In questo esempio quando Day assume il valore 15 e quando Hour assume il valore 12 l evento viene generato e come azioni conseguenti si passa alla pagina Motore e si fa lampeggiare il led F1 Combinando opportunamente le quattro propriet possiamo gestire una qualsiasi temporizzazione con la precisione del minuto Una cosa da ribadire che il valore della propriet che determina la generazione dell evento quindi se vogliamo generare degli eventi che cadono mensilmente non dobbiamo lavorare sulla propriet Month come potrebbe sembrare a prima vista ma su Day in quanto l evento si verificher ogni volta che tale propriet
68. embed any fonts where embedding is not permitted font license may give only read write permission to be intalled in one PC or read only permission Whenever an application distribuites a font in any format the proprietary rights of the omer of the font must be acknowledged ATTENTION please check your font s license before embedding a font Copyrights sui font VERSIONE ITALIANA possibile importare i Font True Type di Windows in applicazione QPaint attraverso il programma di conversione Il font viene importato e diviene EMBEDDED nell applicazione Continue gt gt Figura 33 finestra di dialogo Rights to True Type Font Conversion Come si pu vedere nella fig 33 prima di poter creare un nuovo font utente a partire da un font True Type di Windows necessario leggere attentamente le istruzioni per i diritti di autore inerenti l utilizzo il trasporto e la modifica dei font True Type installati nel compu ter piena responsabilit dell utente far si che quanto ivi descritto venga rispettato La pressione del pulsante Continue gt gt permetter la creazione del nuovo font mentre Cancel abortira l intera procedura New Font From True Type Font x windows Font Name Algerian Terminal Font Name Cancel Char Width 9 Char Spacing jo Export BMP Figura 34 finestra di dialogo New Font From True Type Font Documentazione tecnica Q Paint 1 0 v 1 2 Pag 3
69. en ti Propriet First Message Max Messages Active Language Active Message Length Variable Enable Modify Mode Left Top Font Name Spacing Descrizione Definisce l indice associato al primo messaggio nell array messaggi in lingua Definisce il numero di mes saggi presenti nell array messaggi in lingua Definisce la lingua messaggi in uso nella griglia di intro duzione messaggi Definisce l indice del mes saggio in uso nella griglia in troduzione messaggi Definisce il numero di carat teri che compone l oggetto comprendendo i caratteri utilizzati dal segno e dal pun to decimale VR per la variabile CPU QMove o terminale da visua lizzare introdurre Flag che se ON abilita la mo difica del valore indirizzato dalla propriet Variable Attributo posizione lato sini stro oggetto Attributo posizione lato su periore oggetto Nome del font utente o ter minale in uso Spacing di visualizzazione del font Limiti e condizioni Range 2 23 MaxMessages Range 1 999 Range 1 numero massimo caratteri visualizzabili su una linea Questo valore dipen de principalmente dal tipo di font selezionato e dal valore di Spacing Range 0 239 pixel Range 0 127 pixel Il range di valori dipende dal font in uso Documentazione tecnica Q Paint 1 0 v 1 2 Pag 53 di 119 panel Qem Propriet Descrizione Limiti e condizioni Reverse
70. ende la reale esecuzione del comando inviato Infatti il QMove si limiter a bufferizzarlo per poi eseguirlo nel momento pi opportuno Il tempo di ritardo nell escuzione del comando sar compreso tra 0 e il tempo di campionamento del device Documentazione tecnica Q Paint 1 0 v 1 2 Pag 30 di 119 Cn Device Command START AsseX Figura 24 pannello impostazioni azione Send Command Come si pu vedere nella fig 24 l azione Send Command stata programmata per inviare il comando START al device AsseX Per semplificare le operazioni di impostazione dei parame tri dell azione stata introdotta una finestra di dialogo chiamata Symbol Object Selection La dialog pu essere richiamata premendo il tasto F5 quando il fuoco sul campo di introdu zione Device Command Symbol Object Selection Ioj x Qem c INTDEVICE amp EXTDEVICE C CALOFF Assey C DELCNT AsseY C OUTDIR AsseK Asse CALON Asse C DELCNT AsseZ E OUTREY Assek H Assek CNTDIR AsseX EMRG AsseY C PRESET AsseX H Assez C CNTDIR AsseY E INIT AsseX C PRESET AsseY B Assex CNTDIR AsseZ C INIT Assey C REGOFF AsseX ina CNTLOCK AsseX INTDSBL AsseZ C REGOFF Asse CNTLOCK Assev C INTENBL AsseZ C REGON Assex E CNTLOCK CNTLOCK Assez C LOOPOFF AsseY REGON Asse E CNTUNLOCK CNTREV AsseX C LOOPON Assey C RESUME AsseY E CNTREV CNTREV sseY MANBW AsseY E RSCAPTURE s E CNTDIR CNTREV AsseZ
71. engano eliminati durante lo sviluppo stesso del progetto Bene in qualsiasi momento possibile eseguire un controllo su quanto scritto e verificare che tutto sia coerente con le regole fissate Tramite Check Project viene effettua to un controllo su tutti gli oggetti di un progetto e creata nella Report Window una lista con la descrizione dettagliata degli eventuali errori incontrati Ogni linea identifica un errore rilevato in un determinato oggetto Lo stesso oggetto pu presentare pi linee di errore consecutive Ma questo non tutto Per semplificare le operazioni di correzione degli errori la linea selezionata sulla lista della Report Window sensibile alla pressione del tasto Enter o al doppio clic sul tasto sinistro del mouse di modo che venga aperto l editor di propriet dell oggetto interessato con il fuoco posto automaticamente sulla causa dell errore Inoltre sulla barra di stato del programma compare un estratto esplicativo dell errore in correzione Alla richiesta di controllo del progetto la Report Window viene posta automaticamente in visualizzazione Il controllo del progetto viene automaticamente eseguito anche durante la fase di download Ulteriori informazioni a riguardo sono disponibili nella sezione dedicata al download del progetto Nel caso in cui il controllo del progetto non riscontri alcun errore comparir la seguente finestra Documentazione tecnica Q Paint 1 0 v 1 2 Pag 16 di 119 Qem Rep
72. er sviluppare un progetto terminale dove alcune visualizzazioni introdu zioni possono essere effettuate sia in valori metrici che in valori anglosassone Supponiamo che la parametrizzazione della macchina sia stata effettuata per rappresentare il decimo di millimetro e che si voglia visualizzare un punto decimale per facilitare la lettura del valore Consideriamo anche che per la rappresentazione in unit anglosassone bisogna rappresenta re il valore in pollici senza per perdere precisione Cosi necessario modificare la posizione del punto decimale ad esempio 100 4mm permette una precisione del decimo di mm ma 4 6inch significa una precisione di 2 54mm Procediamo per passi tutte le introduzioni numeriche dove vogliamo ottenere due rappre sentazioni fanno capo ad oggetti VALUE in cui bisogna abilitare la voce Global nel campo Scaling Mode In questo modo il dato prima di essere visualizzato sar convertito per il fattore di scala composto dai valori ScaleA ScaleB e ScaleC presenti nella finestra richiamata dal men Project Setup Questi valori sono modificabili durante l esecuzione dell applica zione tramite la scrittura nelle variabili di terminale SCALEA SCALEB e SCALEC Inoltre definiamo la variabile interna PPDec di dimensione BYTE Tutti gli oggetti VALUE sopra indicati devono avere associata la variabile PPDec nel campo Dec Point Supponiamo che la parametrizzazione sia stata eseguita perch l applicativo lavori
73. erminato la presentazione Codice task sincronizzato con il terminale ENDIF WAIT 1 JUMP MAIN END Durante la fase di inizializzazione l applicativo QCL attende che il terminale sia nella pagina di presentazione verificando il valore di gfTerminale Vedremo che il valore di questa varia bile viene impostato a 1 da un evento OnAlways sulla pagina iniziale quindi si imposta la variabile TIMER tmLogo con valore di 5000 5 sec che quello che abbiamo scelto prima di passare alla pagina successiva Nel programma principale poi avviene il controllo sia sullo scadere del timeout sia sullo stato dell applicativo in modo da non ripetere pi tale control lo se gi stato fatto una volta All inizio la variabile gfRun essendo GLOBAL a zero quindi dato che il controllo fatto sul suo valore negato l istruzione IF dipende solo dal valore di tmLogo che diventa 1 solo quando il timeout scaduto cio dopo 5 sec dall accen sione del terminale Una volta scaduto il timeout viene impostata a 1 la variabile gfQMove che determina il cambio pagina nel terminale e anche la var gfRun in modo che al ciclo successivo non si entri pi in questo ramo dell IF e in modo da indicare all applicativo che il terminale non sia pi in pagina di presentazionione Poi si deve sempre impostare tmLogo finch gfRun a 1 in modo da essere pronti nel caso in cui si faccia il Restart dell applicativo e si spenga il terminale Nota non pos
74. fanumerico in una variabile di riferimento Le propriet impostabili sono le seguenti Documentazione tecnica Q Paint 1 0 v 1 2 Pag 49 di 119 QEM Propriet Dec Point Decimal Point Variable Max Variable Min Variable Enable Lead Zero Blank Mode Enable Sign Mode Enable Alpha Mode Cn Descrizione VR per la posizione del pun to decimale VR per la variabile CPU QMove o terminale da visua lizzare introdurre VR per il controllo del limite superiore in introduzione VR per il controllo del limite inferiore di introduzione Flag che se ON sostituisce tutti i caratteri spazio non rappresentativi presenti in testa alla visualizzazione col carattere 0 Flag che se ON abilita l in troduzione del segno Flag che se ON abilita log getto a trattare dati in modalit alfanumerica Limiti e condizioni Se non definita disabilita la funzionalit di punto decima le Se viene selezionata una va riabile del gruppo DEVPAR a sola lettura la propriet Enable Modify Mode dovr essere OFF Se non definita non viene effettuato alcun controllo sul limite superiore Se non definita non viene effettuato alcun controllo sul limite inferiore Se il flag ON vengono disabilitate le seguenti propriet Max Variable Min Variable Scale Type Scale A B C Enable Sign Mode Enable Lead Zero Blank Mode La propriet Variable potr selezionare solamente sim boli de
75. gina Per semplificare le operazioni di identificazione di una pagina c la possibilit di associare ad essa anche un nome che la rappresenti in modo univoco per tutto il progetto Il nome di una pagina una stringa ASCII da 1 20 caratteri in cui le lettere maiuscole sono ritenute diverse dalle minuscole Una pagina ha sempre un numero ma pu non avere un nome Questo avviene quando il nome della pagina compo sto da soli caratteri spazio Quando si usa il nome per identificare una pagina questo render valida la sua identificazione per tutta la durata dello sviluppo senza dover mai riaggiornare gli oggetti che la usano L azione Goto Page permette di specificare la pagina a cui eseguire il salto sia con una variabile di riferimento che con un nome scelto dalla lista dei nomi delle pagine disponibili Nel primo caso la variabile potrebbe contenere una costante per il nume ro della pagina o una variabile QMove o di terminale in cui sia contenuto il numero della pagina desiderata Questo rende possibile decidere la pagina a cui saltare direttamente da linguaggio QCL sulla CPU del QMove collegato al terminale Nel secondo caso sar utilizzato il nome stesso della pagina desiderata scelto dalla lista dei nomi pagina rilevati nel progetto Base First Index Second Index Page Number fsbPage mooo C Page Name ooo Figura 22 pannello impostazioni azione Goto Page Come si pu vedere nella fig 22 selezionando il pulsa
76. gli eventi globali che negli eventi di pagina vedr eseguite prima le azioni relative all evento globale e poi quelle relative all evento di pagina La finestra di dialogo visualizzata sar la seguente Global Events Editor x Events and Actions Events E Add Es Insert Actions Figura 15 finestra di dialogo Global Events Editor Documentazione tecnica Q Paint 1 0 v 1 2 Pag 23 di 119 In un progetto possono essere creati tanti eventi quanta la memoria disponibile nel terminale L evento Onkey a livello globale non associabile ai tasti PGUP PGDN e INS per cui i corrispettivi bottoni sul pannello impostazioni risulte ranno sempre disabilitati Qem G anel Come si pu vedere nella fig 15 la dialog divisa in tre aree principali 1 la zona di sinistra dedicata alla gestione degli eventi 2 la zona di destra dedicata alla gestione delle azioni associate agli eventi 3 l area sottostrante le due riservata all introduzione dei parametri specifici della prima o della seconda in questo caso risulta vuota Tale area viene anche chiamata pannel lo impostazioni Definizione di un nuovo evento Nella zona di sinistra dedicata alle operazioni sugli eventi sono presenti i bottoni Add Insert Delete ed una casella di riepilogo contenente la lista degli eventi gi definiti Per definire un nuovo evento vi sono due metodi 1 utilizzare il pulsante Add pe
77. guito abilita introduzione terminale su nuovo passo o prg Documentazione tecnica Q Paint 1 0 v 1 2 Pag 79 di 119 G anel Qen Questo esempio pu comunque essere preso come spunto per realizzare altri tipi di introdu zioni Si sfruttano per questo esempio le variabili terminale SINGLEDE e OBJDE Queste variabili nascono per modificare la normale introduzione dati del terminale In dettaglio la varibile SSINGLEDE Single data entry se viene impostata a uno il terminale alla conferma di un valore non abilita il campo di introduzione successivo ma esce dal data entry Si comporta come se nella pagina fosse presente solamente un valore in introduzione La variabile OBJDE rappresenta il numero dell oggetto dinamico al quale il data entry fa riferimento Infatti nel terminale gli oggetti dinamici VALUE e VALSTRING sono identificati con un numero progres sivo Questa variabile avendo accesso in scrittura e lettura pu essere utilizzata con il dupli ce scopo di far conoscere all applicativo in quele oggetto l utente sta introducendo un valo re e per imporre il data entry del terminale su un determinato campo Per maggiori dettagli su queste variabili vedere la sezione dedicata Supponiamo di voler introdurre i dati sul seguente datagroup definito nel file CNF DATAGROUP Sequenza DATAPROGRAM 0003 dplVeloc L STEP 0005 dslOPosX L Quota di posizionamento asse X dslOPosY L Quota
78. iabile gfTerminale Poi allo scadere dei 5 sec la variabile gfRun viene impostata e l applicazinie utente inizia ad essere eseguita Accensione del terminale prima del sistema Qmove In questo caso il terminale non poten do comunicare con il sistema continua a tentare la connessione Non appena il sistema viene acceso il terminale trovando la connessione attiva esegue la scrittura della variabile gfTerminale e poi il funzionamento rimane quello descritto precedentemente Durante il normale funzionamento il sistema viene spento e riacceso In questo caso il terminale torna nella pagina di presentazione perch la variabile gfQMove si trova ad assu mete il valore zero Pio il comportamento rimane il medesimo Durante il normale funzionamento il terminale viene spento e riacceso Alla riaccensione del terminale la variabile gfRun viene posta a zero interrompendo ogni operazione nell ap plicativo o segnalando all applicativo che il terminale stato riattivato Dopo 5 sec il terminale si porta nella pagina di funzionamento Documentazione tecnica Q Paint 1 0 v 1 2 Pag 105 di 119 panel Animazione Con questo esempio vediamo come realizzare una semplice animazione sfruttando gli og getti VALSTRING e VALUE con Array a Byte e nuovi font creati appositamente ottenuti a partire da copie dei file bitmap contenenti i font di sistema esistenti Inoltre sfrutteremo alcune immagini bitmap create ad hoc L esempio richi
79. identifica l ordine di disegno dello stesso Un oggetto con livello 3 viene sempre visualizzato sotto ad un oggetto di livello 4 Gli oggetti dinamici invece sono sempre prioritari rispetto a quelli statici percui verranno sempre visualizzati ad un livello superiore Nel QPaint sono presenti due voci di men che permettono di modificare il livello di disegno di un oggetto statico e pi precisamente Bring Up Object e Bring Down Object Inoltre quando sull area di disegno selezionato un oggetto statico sar presente nella Status Bar l indicazione del livello di disegno ad esso associato Come si pu vedere in fig 1 la barra degli strumenti di disegno composta dai seguenti pulsanti R Pulsante Pointer Object Pulsante Value Object Pulsante ValString Object Pulsante String Object Pulsante Image Object Faj Pulsante Box Object Pulsante Pointer Object Questo l unico pulsante delle barra strumenti di disegno che non viene utilizzato per inserire un nuovo oggetto nella pagina attiva ma bens utilizzato per la selezione di un oggetto gi presente nella pagina L oggetto oltre che essere selezionato pu essere sposta to ridimensionato modificato nelle propriet e cos via Pulsante Value Object Con questo pulsante si richiede a QPaint di depositare sulla pagina attiva un oggetto dinami co di tipo Value Tramite l oggetto Value possibilie visualizzare e o introdurre un valore numerico o al
80. iede che per essa non vengano utilizzati gli stessi IRQ impegnati da altri dispositivi hardware come mouse COM1 COM2 etc Qen Options Communication Con questa voce di men si richiede a QPaint di visualizzare la finestra di impostazione dei parametri di comunicazione seriale Il QPaint utilizza la comunicazione seriale durante la procedura di download per trasferire il progetto al terminale utilizzando il ponte fornito dal QMove Ulteriori informazioni inerenti i collegamenti e le configurazioni hardware sono di sponibili nel manuale tecnico del terminale e del QMove Tramite la finestra di dialogo Serial Port Settings possibile effettuare tutte le impostazioni necessarie ad ottenere il collega mento seriale con il terminale Serial Port Settings Figura 40 finestra di dialogo Serial Port Settings Come si pu vedere nella fig 40 la finestra di dialogo presenta due pagine di impostazione Communication e Timeout Con la prima si definiscono la porta di comunicazione seriale e la velocit di trasferimento dei dati Con seconda si definiscono i tempi di timeout per le varie fasi del download Serial Port Settings Figura 41 finestra di dialogo Serial Port Settings Documentazione tecnica Q Paint 1 0 v 1 2 Pag 43 di 119 QEM panel Come si pu vedere in fig 41 nella pagina Timeout sono presenti due gruppi di tempi timeout Il gruppo Times1 da utilizzarsi quando si effettua un collegamento di
81. iguardo le ani mazioni effettuate tramite font utente sono disponibili negli esempi allegati I font utente disponibili sono presenti sotto forma di file QTF e FNT nella directory Fonts del QPaint Quando si trasporta un progetto che utilizza font utente in un altro PC neces sario copiare nella directory Fonts di tale PC i file QTF ed FNT dei font utilizzati dal progetto Una volta copiato il progetto e i file QTF e FNT dei font utente richiesti necessa rio uscire da Windows e riavviare il computer per rendere attive le nuove impostazioni La rimozione di un font utente una operazione che deve essere fatta solo in caso di reale necessit Le operazioni da eseguire sono le seguenti Chiudere tutte le applicazioni avviate Con il Gestore risorse eliminare i file QTF e FNT del font da rimuovere Uscire da Windows A w Nae Riavviare il computer Documentazione tecnica Q Paint 1 0 v 1 2 Pag 57 di 119 Cane Le variabili di riferimento Qem Tramite le variabili di riferimento QPaint permette all utente di accedere ai vari gruppi di variabili disponibili nella CPU del QMove e nel terminale Una variabile di riferimento composta da tre campi introduzione il campo Base il campo First Index ed il campo Second Index Il campo Base ha lo scopo di definire il nome stesso della variabile a cui si vuole accedere Il campo First Index ha lo scopo di definire il primo indice mentre Second Index defini
82. il terminale visualizza la pagina numero 25 di avviso controllo olio Vediamo come implementare questo si definisce in QCL la variabile gbNewPage di tipo GLOBAL e dimensio ne BYTE Si definisce nel terminale un evento globale di tipo OnChangeVar associato alla variabile sbNewPage A tale evento si definisce l azione GoToPage associata al valore della stessa variabile sbNewPage Cosi facendo ad ogni variazione della variabile gbNewPage corrisponder il salto alla pagina definita dal valore della variabile stessa In altre parole per il QCL baster scrivere il nuovo valore nella variabile ed il terminale cambier pagina automaticamente senza dover separare i comandi di cambio pagina e numero nuova pagina In QCL si dovr implementare il seguente codice IF ioMancaOlio sbStopCiclo 1 Arresto del ciclo automatico gbNewPage 25 Terminale in pagina nr 25 ENDIF dove ioMancaOlio la variabile di tipo INPUT che rappresenta il valore dell ingresso Questa programmazione non modifica il comportamento dei tasti PGUP e PGDN In altre applicazioni invece necessario il trasferimento opposto e ci si verifica quando l applicativo per come stato progettato deve eseguire operazioni diverse a seconda della pagina che il terminale sta visualizzando Per fare questo il terminale che ad ogni cambio pagina deve aggiornare l applicativo sul nuovo valore della pagina in esecuzione Vediamo come fare questo si definisce in QCL la v
83. ime Questo utile per avvisare l operatore sulla necessit di effettuare determinati interventi ad esempio di manutenzione o di controllo che devono essere ese guiti a scadenze o a date fisse Supponiamo per semplificare le cose di avere una sola pagina del terminale che descrive il funzionamento in corso e di avere invece 3 pagine di avviso su operazioni da compiere queste pagine saranno attivate in determinati momenti Una pagina 1 indica di provvedere ad operazioni di ingrassaggio motore una 2 indica di eseguire operazioni di manutenzione e pulizia filtri la 3 ricorda di effettuare un backup dei dati di lavoro della macchina Vogliamo che queste pagine vengano attivate rispettivamente per la pagina 1 ogni mese al giorno 15 alle ore 12 per la pagina 2 ogni mese 1 4 7 e 10 operazioni trimestrali per la pagina 3 ogni giorno alle ore 17 30 Tutte le operazioni che coinvolgono l evento OnTime fanno riferimento al timer del terminale che possibile impostare nella pagina Info ed possibile leggere usando le variabili terminale YEAR SMONTH DAY HOUR MIN SEC Vediamo come poter fare tutto questo La pagina di lavoro cosi strutturata Documentazione tecnica Q Paint 1 0 v 1 2 Pag 95 di 119 nane Macchina in funzione Per visualizzare la data e l ora abbiamo usato 5 oggetti di tipo VALUE in cui come Base si sono definite rispettivamente le variabili terminale DAY MONTH per la data e
84. in comprazione Documentazione tecnica Q Paint 1 0 v 1 2 Pag 26 di 119 In un progetto possono essere create tante azioni quanta la memoria disponibile nel terminale Qem G anel Compare Mode pu avere i seguenti valori 1 lt less than minore di 2 gt greater than maggiore di 3 lt less or equal minore o uguale a 4 gt greater or equal maggiore o uguale a 5 equal uguale a Compare Value pu contenere solamente valori interi compresi tra 2147483648 e 2147483647 Base First Index Second Index Variable sPAGE Comp Mode equal v Comp Y alue fi 0 Figura 20 pannello impostazioni evento OnVar Nell esempio di fig 20 si impostato che l evento OnVar venga generato quando la variabile di terminale PAGE assume il valore 10 Definizione di una nuova azione Nella zona di destra della finestra di dialogo Global Events Editor dedicata alle operazioni sulle azioni sono presenti i bottoni Add Insert Delete ed una casella di riepilogo contenente la lista delle azioni gi definite Ogni evento rappresentato nella casella di riepilogo a sinistra collegato ad una lista di azioni che verranno eseguite quanto l evento stesso viene generato Non vi pu essere una lista di azioni senza che vi sia un evento colle gato Per questo motivo quando non vi sono eventi definiti non sar possibile definire alcuna azione e i bottoni Add Insert e
85. ire la finestra di dialogo Internal Variables dalla quale possibile aggiungere rimuovere e visualizzare le variabili interne Durante lo sviluppo di un progetto per il terminale sono disponibili tre diversi insiemi di variabili le variabili QMove le variabili interne e le variabili di terminale Le variabili QMove sono quelle messe a disposizione del terminale tramite l importazione di un file simboli Esse risiedono nella CPU del QMove a cui collegato il terminale e vi si accede tramite la comunicazione seriale Le variabili interne sono variabili definite dall utente a livello di progetto terminale Vengono ricreate nel terminale durante la fase di download e risultano disponibili nello stesso per tutta la vita del progetto Infine le variabili di terminale sono variabili messe a disposizione dal costruttore e rendono disponibili all utente informazioni specifiche del ter minale come stato dei tasti e timers di esecuzione Ulteriori informazioni sui gruppi di varia bili e sulla loro collocazione nei vari dispositivi hardware e software sono disponibili nell ap posita sezione Documentazione tecnica Q Paint 1 0 v 1 2 Pag 21 di 119 Qem G anel In un progetto possono essere create tante variabili interne quanta la memoria disponibile nel terminale Sono definibili solo i tipi di dati semplici flag byte word long e single Vengono automaticamente azzerate ad ogni avvio del progetto Non vi possono essere due va
86. isegno Ulteriori informazioni sugli oggetti e le loro carat teristiche di disegno sono disponibili nella sezione dedicata Condizioni di attivazione un oggetto selezionato nell area di disegno di livello inferiore a n n ed almeno due oggetti nella pagina View Zoom In Con questa voce di men si richiede a QPaint di incrementare il fattore di zoom utilizzato per la visualizzazione dell area di disegno fattori disponibili sono X1 X2 X3 e X4 Se l area di disegno risultasse essere pi grande dell area visualizzabile sar possibile agire solo sulla parte visualizzata Condizioni di attivazione fattore di zoom attuale inferiore a 4 View Zoom Out Con questa voce di men si richiede a QPaint di decrementare il fattore di zoom utilizzato per la visualizzazione dell area di disegno fattori disponibili sono X1 X2 X3 e X4 Se l area di disegno risultasse essere pi grande dell area visualizzabile sar possibile agire solo sulla parte visualizzata Condizioni di attivazione fattore di zoom attuale maggiore di uno View Previous Page Con questa voce di men si richiede a QPaint di visualizzare la pagina precedente a quella attualmente visualizzata A cambio pagina avvenuto nessun oggetto comparir selezionato nell area di disegno Condizioni di attivazione numero della pagina attuale maggiore di 1 View Next Page Con questa voce di men si richiede a QPaint di visualizzare la pagina successiva a
87. istere Lo stesso vale se un oggetto con uno o pi errori o la pagina in cui contenuto vengono rimossi A questo punto la Report Window si limita a segnalare che l uno o l altro oggetto non sono pi disponibili e che quindi sarebbe buona cosa ripetere il controllo del progetto per lavorare con una lista errori aggior nata Vedere la lista messaggi all utente per una descrizione dettagliata delle segnalazioni generate Durante le operazioni di scaricamento del progetto attivo la Report Window verr automaticamente nascosta e tutti i dati in essa contenuta cancellati Nel caso in cui la larghezza della Report Window risulti essere insufficiente per la visualizzazione completa dei messaggi presenti sulla lista nella parte inferiore della finestra apparir la barra di scorrimento orizzontale Error Event in global events 12001 Undefined key in On Key event Error Event in global events 12002 Undefined key in On Press event Error Event in global events 12003 Undefined key in On Release event Error Event in global events 12004 Undefined time in On Time event Error Event in global events 12013 Unknown symbol for Base ariable in On Change Var event Error Event in global events 12021 Not required symbol for First Index Yariable in On Change Var even Error Event in global events 12026 Not required symbol for Second Index Variable in On Change Var e Error Event in global events 12013
88. itor Pg 1 Events and Actions ana E Add Ele Insert E Delete IE amp Add Ele Insert E Delete Set Variable sfF1 1 Set Variable sfF2 0 On Key F2 On Press F3 On Press F4 Page Events Editor Pg 1 Events and Actions En E Add H Insert E Delete Arion E Add H Insert E gt Delete Set Variable sfF2 1 Set Variable sfF1 0 On Press F3 On Press F4 L evento Onkey viene generato fino a quando il tasto relativo resta premuto questo ci serve per poter implementare lo scorrimento veloce della lista verso l alto e verso il basso Per questo usiamo i due tasti F1 e F2 che semplicemente impostano le due variabili di tipo Flag sfF1 e sfF2 che poi verranno gestite dall applicativo QCL tasti F3 e F4 operano nella stessa maniera nel senso che impostano analogamente le due variabili sfF1 e sfF2 solo che l even to OnPress che viene generato una sola volta alla pressione del tasto e affinch sia generato di nuovo necessario che il tasto venga rilasciato per poi essere ripremuto E questo proprio ci che ci serve per scorrere la lista passo passo spostandoci di un elemento per volta Questo tutto per quanto riguarda il terminale Vediamo ora invece come inter viene il codice QCL Nel file CNF dobbiamo definire gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 92 di 119 Qem swWord W variabile utilizzata come indice caratter
89. iversamente la casella combinata del pannello impostazioni apparir vuota e scomparir ogni riferimento alla pagina Available Chars Next Page Tramite l azione Next Page si richiede al terminale l attivazione della pagina successiva a quella attualmente attiva Nel caso in cui la pagina attiva sia l ultima della lista pagine di progetto l azione non effettuer alcun cambio di pagina Previous Page Tramite l azione Previous Page si richiede al terminale l attivazione della pagina precedente a quella attualmente attiva Nel caso in cui la pagina attiva sia la prima della lista pagine di progetto l azione non effettuer alcun cambio di pagina Begin Data Entry Tramite l azione Begin Data Entry si richiede al terminale di passare in modalit introduzione dati Tale modalit si abiliter solamente se sono presenti nella pagina attiva oggetti grafici di tipo Value o ValString con la propriet Enable Modify Mode abilitata Send Command Tramite l azione Send Command si richiede al terminale di inviare un comando ad un device presente nella CPU del QMove In questo caso le fasi eseguite sono recupero informazioni azione invio comando al QMove tramite comunicazione seriale verifica corretta ricezione comando con eventuali ritentativi bufferizzazione del comando ricevuto nel QMove e infine analisi prossima azione presente nella lista azioni del terminale Da quanto appena visto si capisce che il terminale non att
90. izzazione 4 4 gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 72 di 119 Qem Cn importante ricordare che nella definizione dell azione Goto Page possibile utilizzare anche il nome della pagine anzich il numero in modo da non dover modificare l azione in caso di inserimento o rimozione di una pagina Nel caso in cui si voglia controllare l accesso al gruppo di pagine di parametrizzazione e taratura con password bisogna procedere nel seguente modo per tutte le pagine apparteneti al gruppo nr 03 04 e 05 per la parametrizzazione bisogna abilitare e introdurre lo stesso valore di password nell apposito campo Questo perch una volta introdotta la password essa rimane valida per tutte le pagine in cui la password uguale Vediamo come dovrebbe essere programmato il campo password per il nostro esempio Pag nr 09 Visualizzazione 4 4 Password Lista pagine Nome pagina Visualizzazione 1 4 Visualizzazione 2 4 1234 Parametrizzazione 1 3 1234 Parametrizzazione 2 3 1234 Parametrizzazione 3 3 Visualizzazione 3 4 TARO1 Taratura 1 2 TARO1 Taratura 2 2 Documentazione tecnica Q Paint 1 0 v 1 2 Pag 73 di 119 Cn QEM Scelta della lingua Quando un progetto viene realizzato utilizzando pi lingue esistono vari modi per eseguire la scelta sul terminale Il modo pi semplice e immediato quello di entrare nelle pagine di set up del terminale e
91. l interfaccia to per facilitare interfaccia operatore con il sistema QMOVE operatore con il sistema BMOVE Esso esegue un applicazione compo sso esegue un applicazione compo sta da oggetti eventi e azioni sta da oggetti eventi e azioni conseguenti onseguenti 1 Oggetti 2 Eventi i Uqgettifi 2 Eventi 3 Azioni 4 Variabili 4 Variabili QPaint con Background bianco QPaint con Background verde Download progetto Funzionalit generali 1 Il terminale QEM e uno strumento appositamente studiato e realizza to per facilitare l interfaccia operatore con il sistema QMOVE Esso esegue un applicazione compo sta da oggetti eventi e azioni conseguenti 1 i Eventi 3 ioni Variabili Visualizzazione terminale Figura 4 esempio Background Mode con risultato nel terminale dopo il download Come si pu vedere nella fig 4 quando il Background Mode verde risulta molto pi facile individuare il campo di competenza area di ogni singolo oggetto In questo modo si possono selezionare pi agevolmente gli oggetti trascinarli ed evitare sovrapposizioni indesiderate Impostando il Background Mode su bianco si ha invece la rappresentazione di come apparir la pagina quando sar visualizzata sul terminale Si pu inoltre notare che indipendentemen te dal Background mode utilizzato il risultato sul terminale sar lo stesso Documentazione tecnica Q Paint 1 0 v 1 2 Pag 13 di 119 panel
92. l gruppo ARRSYS e ARRGBL di tipo BYTE Documentazione tecnica Q Paint 1 0 v 1 2 Pag 50 di 119 Cane Qem Propriet Enable Modify Mode Length Scaling Mode Scale A Descrizione Flag che se ON abilita la mo difica del valore indirizzato dalla propriet Variable Definisce il numero di carat teri che compone l oggetto comprendendo i caratteri utilizzati dal segno e dal pun to decimale Definisce il tipo di scaling uti lizzato dall oggetto Valore di scale A Limiti e condizioni Se il flag ON la propriet Enable Sign Mode viene abi litata Range 1 numero massimo caratteri visualizzabili su una linea Questo valore dipen de principalmente dal tipo di font selezionato e dal valore di Spacing La propriet Scaling puo as sumere i seguenti valori None In questo caso il valore di Variable non soggetto a nessuna correzione di scaling campi di Scale A B C sottostanti sono automa ticamente disabilitati Global In questo caso il valore di Variable soggetto alla cor rezione con lo scaling globa le definito nella voce di men Project Project Setup campi sottostanti di Scale A B C sono automaticamente disabilitati ma visualizzano i valori di scaling globale Local In questo caso il valore di Variable soggetto alla cor rezione con lo scaling defi nito nelle propriet di Scale A B C sottostanti La correzione di scaling vie
93. lizzata dagli oggetti QPaint questo non provoca alcuna conseguenza nel loro uso Nel task vengono anche utilizzate due variabili tmSecondi e glSecondi per realizzare un contatore dei secondi di esecuzione dell applicativo gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 113 di 119 panel Nel task MOD avremo invece ANIMAZIONE POMPA 1 IF gfStart01 AND abDev 1 EQ 39 se la pompal ON e possiede il deviatore gfPump020N 0 gfPump010N glSecondi 2 Animazione pompa alternativamente imposta il valore di gfPumpOl0N a 0 e 1 con ciclo di 1 secondo Questo iporta al refresh dell oggetto ValString rappresentante la pompal ogni volta con 2 caratteri diversi questo ciclo fa in modo che gli array rappresentanti le tubazioni assumano valori corrispondenti a caratteri tubo vuoto FOR gbStep 1 gbStep LE 10 1 abFlx1 gbStep 32 Oggetto Value tubazione pompal abFlx2 gbStep 32 Oggetto Value tubazione pompa2 abFlx3 gbStep 32 Oggetto Value tubazione serbatoio abTuboV gbStep 0 Oggetto ValString tubo verticale NEXT abFlx1 1l glSecondi35 33 imposta quale elemento dell array deve rappre sentare la parte di tubo pieno nella tubazione pompal abFlx3 5 glSecondi35 33 imposta quale elemento dell array deve rappresentare la parte di tubo pieno nella tubazione serbatoio abTuboV l glSecondi 8 1 imposta quale elemento dell array deve rappresen
94. ll Font Yes Terminal Font Print QEM System Medium Font Yes Terminal Font QEM System Large Font Yes Terminal Font Tahoma 9x21s0 5292 Byte Andale Mono 9x22s0 Yes 5544 Byte Courier New 9x21s0 5292 Byte Arial 9x19s0 4788 Byte Arial 6x16s0 2688 Byte Footlight MT Light 15x32s0 13440 Byte Figura 31 finestra di dialogo Font Report Come si pu vedere nella fig 31 per ogni font viene visualizzato il nome lo stato di utilizzo nel corrente progetto e la quantit di memoria terminale che impegner se utilizzato font con il campo Size impostato a Terminal Font sono residenti nella ROM interna del termi nale per cui non vengono scaricati durante la fase di download e sono sempre disponibili in qualsiasi progetto Documentazione tecnica Q Paint 1 0 v 1 2 Pag 36 di 119 Cn Qem Graphics New Font From Bitmap File Con questa voce di men si richiede a QPaint di creare un nuovo font utente a partire da un file Bitmap monocromatico La finestra di dialogo visualizzata sar la seguente New Font From Bitmap File x Bitmap File Name Eile OK Terminal Font Name Cancel Char Spacing fo Figura 32 finestra di dialogo New Font From Bitmap File Come si pu vedere nella fig 32 nella dialog sono presenti tre campi di introduzione dati e rispettivamente la casella Bitmap File Name nella quale si specifica il nome del file Bitmap comprensivo di percorso ed estensione es C Pr
95. lla pagina attiva Pi sono le variabili della CPU QMove visualizzate pi lungo il tempo tra la generazione di un evento e l altro L evento non ha campi di impostazione e ne pu essere definito solo uno a livello globale ed uno per ogni pagina A questo scopo QPaint far si che l evento se gi in uso scompaia dalla finestra di selezione Select Event OnPageln L evento OnPageln viene generato al primo ingresso in una nuova pagina L evento non ha campi di impostazione e ne pu essere definito solo uno a livello globale ed uno per ogni pagina A questo scopo QPaint far si che il nome dell evento se gi in uso scompaia dalla finestra di selezione Select Event OnTime L evento OnTime viene generato quando il calendario del terminale coincide con i valori di comparazione impostati L evento viene generato solamente una volta Perch venga gene rato l evento il terminale dovr prima trovare dei valori non corrispondenti seguiti da dei valori corrispondenti Ci significa inoltre che se il terminale viene spento quando l evento OnTime soddisfatto alla successiva riaccensione esso non verr rigenerato Se al momento in cui l evento diventa valido il terminale si trova spento esso verr perso Documentazione tecnica Q Paint 1 0 v 1 2 Pag 25 di 119 Nel documento presente il capitolo Impostazione variabili di riferimento nel quale sono descritte in dettaglio tutte le operazioni ne
96. luminosa sul frontalino In molti casi per questa segnalazione non pu essere sufficiente perch non direttamente accessibile all utilizzatore ad esempio il sistema Qmove si trova all interno di un quadro elettrico o nel terminale non viene mai richiamata la pagina di set up Per questi motivi utile segnalare l esaurimento delle batte rie sulla pagina di terminale in modo che l utilizzatore si accorga e possa prendere i provve dimenti necessari Esistono due variabili di terminale SLOWBATTTERM e LOWBATTOMOVE rispettivamente che rappresentano la batteria esaurita nel terminale e nel Qmove In questo esempio vediamo come realizzare un applicativo in cui il terminale se una batteria esaurita segnala all utilizzatore questo stato con una pagina dedicata Nella prima pagina di terminale inseriamo i seguenti eventi di pagina Page Events Editor Pg 1 Prima pagina Events and Actions Eu E Add Ele Insert E Delete E Hu Add Ele Insert E Delete n Yar LOWBATTOMOYE 1 On Yar LOWBATTTERM 1 Goto Page LOW batt QMOVE Page Events Editor Pg 1 Prima pagina Events and Actions l Events Hu Add E Insert E Delete Ae E Add H Insert Er Delete On Var LOWBATTOMOYE 1 Goto Page LOW batt TER OnVar LOWBATTTERM 1 gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 85 di 119 Qun Qen La pagina LOW batt QMOVE deve essere Attenzione
97. mata l azione sul pannello impostazio ni compariranno i campi di impostazione dei parametri dell azione gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 28 di 119 Qem G anel Goto Page Tramite l azione Goto Page si richiede al terminale l attivazione della pagina specificata In QPaint vi sono due modi per identificare univocamente una pagina tramite il suo numero ordinale e tramite il nome Tutte le pagine hanno un numero che le identifica all interno del progetto Questo significa che se nel progetto vi sono 54 pagine avremo che la prima pagina della lista avr il numero 1 la seconda il 2 e cosi via fino all ultima che avr il 54 Quando si aggiunge una pagina questa verr creata in fondo alla lista ed acquisir il numero successivo all ultima pagina presente Quando si inserisce una pagina per esempio in dodicesima posi zione tutte le pagine dalla 12 all ultima incrementeranno il loro numero di una unit e la nuova pagina prender il numero 12 Da questo si capisce che riferirsi ad una determinata pagina tramite il numero pu risultare pericoloso Se inizialmente alla pagina 32 abbiamo le visualizzazioni di produzione non detto che in futuro dopo inserimenti o rimozioni di altre pagine prima di quella interessata tale pagina sia ancora la dodicesima nella lista delle pagine Ci comporterebbe quindi un continuo riaggiustamento delle azioni che utilizzano il numero 12 per identificare la pa
98. mata la finestra di dialogo Save Project As File Save Project As Con questa voce di men si richiede a QPaint di salvare il progetto attualmente in uso Per far ci viene richiesto di segnalare la posizione ed il nome del progetto tramite l utilizzo della finestra di dialogo standard di Windows per il salvataggio di files Sul display comparir la seguente finestra di dialogo Documentazione tecnica Q Paint 1 0 v 1 2 Pag 10 di 119 QEM Save Project As Salva in 3 Otp Levigatrice UxX340 a Palettizzatore M24 Salva come 0EM terminal project qtp Annulla Figura 3 finestra di dialogo Save Project As Le funzionalit espletate dalla finestra di dialogo sono quelle standard normalmente fornite dallo stesso sistema operativo Windows In Nome file comparir il nome del progetto attualmente in uso A conferma dell operazione con il tasto Salva il progetto specificato verr salvato File Recent Files 1 2 3 e 4 QPaint mantiene traccia degli ultimi quattro progetti aperti mettendo il loro nome comple to di percorso nella barra dei men subito sotto alla voce File Save Project As Tale operazione chiamata gestione dei Recent Files e segue le stesse modalit di funziona mento adottate da tutti i programmi Windows che la implementano Selezionando e confer mando con il mouse o la tastiera un recent file si richiede a QPaint di riaprire il p
99. mossa Impossibile accedere ai dati di un oggetto rimosso Esegui la procedura di Check Project per aggiornare la Report Window Si entra in questo stato quando si seleziona un item della report Window riferito ad un oggetto che sta to rimosso Il programma QPaint ha rilevato che nel progetto in caricamento sono utilizzati font non disponibili in que sto computer font richiesti hanno i seguenti type name Si entra in questo stato quando QPaint rileva che il progetto in lettura necessita di uno o pi font utente non disponibili nel computer Nella dialog vengono ri portate le caratteristiche di ogni font mancante com prensive di nome font altezza larghezza e spacing carattere gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 68 di 119 Qem Cn Codice stato Tipo stato Descrizione stato 10042 ERROR Il file bitmap del font non stato trovato Seleziona un nome file valido Si entra in questo stato quando QPaint non riesce a trovare il file bitmap specificato 10043 ERROR Il file bitmap per il font non valido La bitmap deve essere monocromatica Si entra in questo stato quando QPaint rileva che il file bitmap in lettura non monocromatico 10044 ERROR La dimensione del file bitmap per il font non vali da Il range di valori validi per la larghezza della bitmap va da 96 a 512 pixel Il range di valori validi per l altezza della bitmap va da 84 a 784 pixel Si entra in questo stato qua
100. nale Con il termine font uten te si intende il font creato dall utente e memorizzato nei file QTF e FNT Con il termine font file si intendono i file QTF e FNT in cui sono memorizzate le immagini dei font termi nale ed utente Documentazione tecnica Q Paint 1 0 v 1 2 Pag 4 di 119 Cane Installazione L installazione come per tutti i recenti prodotti QEM stata affidata al programma InstallShield 5 0 Essa si occupa di creare una directory in cui depositare i files del program ma creare una cartella in cui porre le varie icone di collegamento preparare le operazioni per la disinstallazione del pacchetto e associare il programma QPaint10 EXE ai file con esten sione QTP Informazioni pi dettagliate inerenti l installazione sono fornite nel file README TXT presente nel primo floppy disk del pacchetto A fine installazione avremo per default in C Programmi la directory QPaint10 cos formata C Programmi QPaint10 qpaint10 exe eseguibile readme txt documento uninst isu informazioni per disinstallazione C Programmi QPaint10 Help lt directory lasciata volutamente vuota gt C Programmi QPaint10 Examples tutorial qtp progetto esempio uso QPaint C Programmi QPaint10 Fonts qem system large font bmp file bitmap sorgente utilizzato per creare il font qem system large font fnt font di Windows per QPaint qem system large font qtf font terminale per QPaint qem system medium font bmp file bitmap sorgente
101. nce x Actual Checksums Configuration 14DEB Code 3740F Cancel Symbol B68143230 Source 37E0CE36 Loaded Symbol File Leviga SYM ui Figura 6 finestra di dialog Symbol Reference di un progetto con file simboli La pressione del pulsante Import New far comparire la seguente finestra di dialogo Import Symbol Reference 2f x Cerca in a Otp c E a Leviga SYM Tipo file QMove symbol file sym Annulla Figura 7 finestra di dialogo Import Symbol Reference gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 15 di 119 Se si modificano solamente i moduli task MOD non necessaria nessuna operazione di sincro nizzazione Qem G anel Le funzionalit espletate dalla finestra di dialogo sono quelle standard normalmente fornite dallo stesso sistema operativo Windows Se nel progetto gi stato importato un file simbo li la dialog tenter di riposizionare il percorso ed il nome del file ai valori originari A conferma dell operazione con il tasto Apri il nuovo file simboli verr importato e ne ver ranno visualizzate le nuove informazioni nella dialog Symbol Reference A questo punto il pulsante Cancel verr rinominato con OK e focalizzato Il file simboli contiene tutte le informazioni necessarie per poter eseguire le operazioni di interfacciamento con l applicativo QMove presente nella CPU collegata al terminale Esso
102. ndo QPaint rileva che la dimensione del file bitmap in lettura non entro i limiti consentiti 10045 INFORMATION Il file bitmap per il font stato salvato Si entra in questo stato quando QPaint termina la cre azione del file bitmap per il font Documentazione tecnica Q Paint 1 0 v 1 2 Pag 69 di 119 Cane Esempi applicativi Qpaint 1 0 In questo documento sono riportati alcuni esempi applicativi Scroll personalizzato pagine di visualizzazione Per default il terminale utilizza i tasti PGUP e PGDN per cambiare la pagina di visualizzazione Se il progetto prevede molte pagine questi tasti forniscono uno scroll sequenziale e ordinato di tutte le pagine appartenenti al progetto Molte volte esiste la necessit di vincolare lo scroll all interno di solo determinate pagine ad esempio le pagine di parametrizzazione e le pagine di taratura Inoltre in alcuni casi si deve proteggere l accesso a queste pagine con una password Vedremo in questo esempio come realizzare tutto questo Supponiamo di avere un progetto composto da 4 pagine di visualizzazione normale 3 pagine di parametrizzazione e 2 pagine di taratura Supponiamo inoltre che la posizione delle pagi ne di parametrizzazione e taratura non coincida con l inizio o la fine della lista pagine Se eseguiamo un esploso del progetto risulta Lista pagine Nome pagina Pag nr 01 Visualizzazione 1 4 Pag nr 02 Visualizzazione 2 4 Pag nr 03 Parametrizzazione 1 3
103. ne ottenuta con la seguente formula Y Scale A Scale B X Scale C Range 23 231 1 Documentazione tecnica Q Paint 1 0 v 1 2 Pag 51 di 119 Qem Scale B Scale C Left Top Font Name Spacing Reverse Mode Blink Cn Valore di scale B Valore di scale C Attributo posizione lato sini stro oggetto Attributo posizione lato su periore oggetto Nome del font utente o ter minale in uso Spacing di visualizzazione del font Flag che se ON inverte il cam po di visualizzazione dell og getto Flag che se ON abilita il lampeggio del campo di visualizzazione dell oggetto N B VR sta a significare variabile di riferimento La correzione di scaling vie ne ottenuta con la seguente formula Y Scale A Scale B X Scale C Range 231 231 1 La correzione di scaling vie ne ottenuta con la seguente formula Y Scale A Scale B X Scale C Range 2 231 1 Range 0 239 pixel Range 0 127 pixel Il range di valori dipende dal font in uso Documentazione tecnica Q Paint 1 0 v 1 2 Pag 52 di 119 Cna Qem Pulsante ValString Object Con questo pulsante si richiede a QPaint di depositare sulla pagina attiva un oggetto dinami co di tipo ValString Tramite l oggetto ValString possibilie visualizzare un array di messaggi in lingua indicizzati da una variabile di riferimento Le propriet impostabili sono le segu
104. ne richiesto di segnalare la posizione ed il nome del progetto tramite l utilizzo della finestra di dialogo standard di Windows per l apertura dei files Sul display comparir la seguente finestra di dialogo Documentazione tecnica Q Paint 1 0 v 1 2 Pag 9 di 119 Qem Open Project Cerca in DI Qtp Levigatrice Ux340 a Palettizzatore M24 Tipo file QEM terminal project qtp Annulla Figura 2 finestra di dialogo Open Project Le funzionalit espletate dalla finestra di dialogo sono quelle standard normalmente fornite dallo stesso sistema operativo Windows In Nome file comparir il nome del progetto attualmente in uso A conferma dell operazione con il tasto Apri verr caricato il progetto specificato Se durante il caricamento del progetto si riscontra che quello precedente stato modificato verr visualizzata una finestra di dialogo con il testo Save changes to nome file e i bottoni Yes No e Cancel Se si conferma l operazione con Yes verr automaticamente richiamata la finestra di dialogo Save Project o Save Project As La pressione di No far proseguire l operazione senza salvare niente mentre Cancel abortir l intera operazione File Save Project Con questa voce di men si richiede a QPaint di salvare il progetto attualmente in uso Se il progetto non era mai stato salvato verr automaticamente richia
105. nte di opzione Page Number si abilita l azione Goto Page ed eseguire il salto sulla pagina specificata da una variabile di riferimen to In questo caso si tratta di una variabile QCL di nome sbPage presente nella CPU del QMove collegato al terminale Nel documento presente il capitolo Impostazione variabili di riferimento nel quale sono descritte in dettaglio tutte le operazioni necessarie per definire una variabile di riferimento Documentazione tecnica Q Paint 1 0 v 1 2 Pag 29 di 119 Qem Cn Base First Index Second Index Page Number Page Name Available Chars Figura 23 pannello impostazioni azione Goto Page Come si pu vedere nella fig 23 selezionando il pulsante di opzione Page Name si abilita l azione Goto Page ad eseguire il salto alla pagina specificata dal nome presente nella casel la combinata contenente la lista dei nomi delle pagine del progetto Nel caso in cui una pagina con nome venga rimossa per esempio Available Chars e vi siano una o pi azioni Goto Page che la indirizzavano tramite il campo Page Name accadr che nella casella di riepilogo della zona di destra dedicata alle operazioni sulle azioni comparir la linea Goto Page Available Chars Sebbene Available Chars non esista pi per agevolare le operazioni di correzione dell azione nella casella di riepilogo verr mantenuto il nome della pagina in cui veniva richiesto il salto D
106. nzioni di progetto possibile 1 Salvare il progetto aperto 2 Richiamare la finestra di dialogo Global Events Editor per la getione degli eventi azioni globali 3 Richiamare la finestra di dialogo Page Events Editor per la gestione degli eventi azioni di pagina 4 Avviare la procedura di download del progetto nel terminale Di 40 fi Figura 46 barra delle funzioni di progetto m Questo pulsante la scorciatoia alla voce di men File File Save o File File Save As 14 Questo pulsante la scorciatoia alla voce di men Project Global Events Editor G Questo pulsante la scorciatoia alla voce di men Project Page Events Editor ca Questo pulsante la scorciatoia alla voce di men Transfer Download Documentazione tecnica Q Paint 1 0 v 1 2 Pag 47 di 119 panel Qem Barra delle funzioni di disegno Tramite la barra delle funzioni di disegno possibile Aumentare il fattore di zoom dell area di disegno Diminuire il fattore di zoom dell area di disegno Portare ad un livello superiore di vista l oggetto selezionato nell area di disegno Portare ad un livello inferiore di vista l oggetto selezionato nell area di disegno U Aa WIN Cambiare il colore di sfondo utilizzato nell area di disegno ag tir Figura 47 barra delle funzioni di disegno Questo pulsante la scorciatoia alla voce di men View Zoom In Que
107. o come ad esempio millimetri e pollici Il fattore di scala risultante pu essere applicato scaling globale o all oggetto grafico Value Value ha il compito di interfacciare un campo di introduzione definire un proprio fattore di scaling visualizzazione del terminale con le variabili interne del QMove La regola applicata la Vedere la documenta seguente zione sull oggetto Value per maggiori informazioni Y y nina ScaleA ScaleC ScaleB dove X il contenuto della memoria CPU QMove indirizzata dall oggetto Value Y il valore risultante visualizzato sul terminale gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 20 di 119 Qem G anel Nell esempio di fig 11 si vede come ponendo Scale A a 10 Scale B a 254 e Scale C a 0 si ottenga il fattore di scala necessario per visualizzare un dato originario in mm nel suo corri spondente in pollici Message Languages lingue messaggi Tramite i bottoni Add Insert Remove e la griglia di edit sottostante possibile definire fino a 10 diverse lingue messaggi per tutti i testi che compariranno sul terminale Per ogni lingua possibile definire un nome identificativo lungo al massimo 12 caratteri Nomi uguali per pi lingue sono ammessi Gli oggetti interes sati dalle lingue messaggi sono gli oggetti grafici String e ValString Nel progetto vi deve essere sempre almeno una lingua attiva perci il pulsante Remove si disabilite
108. ogetti Terminale Bitmap per Font Display 7 sesmenti BMP la casella Terminal Font Name nella quale si definisce il nome del font utente in creazione es Display 7 segmenti e la casella Char Spacing nella quale si imposta il valore di spacing carattere desiderato Tramite il pulsante OK si avvia l operazione di creazione del font mentre Cancel abortisce l intera operazione presente inoltre il pulsante File con il quale possibile selezionare il file Bitmap utiliz zando la finestra di dialog standard di Windows per la selezione delle immagini Alla pressione del pulsante OK il QPaint effettuer una serie di controlli sui dati introdotti Tali controlli verificheranno la bont dei dati nei campi di introduzione e le caratteristiche del file Bitmap specificato In caso vengano riscontrate irregolarit QPaint visualizzer un box di dialogo con le indicazioni del caso Documentazione tecnica Q Paint 1 0 v 1 2 Pag 37 di 119 G anel Qem Graphics New Font From True Type Font Con questa voce di men si richiede a QPaint di creare un nuovo font utente a partire da un font True Type di Windows La finestra di dialogo visualizzata sar la seguente Rights to True Type Font Conversion Font s copyright ENGLISH VERSION True Type Windows font nay be embedded in QPaint applications It may be a violation of a vendor s proprietary rights or user license agreement to
109. onenti Barra dei men Barra di gestione della pagina Barra di impostazione della password di pagina Barra delle funzioni di progetto Barra delle funzioni di disegno Barra degli strumenti di disegno Barra di stato 0 Nou a wWN Area di disegno rappresentante il display del terminale Barra dei men Tramite la barra dei men possibile accedere a gran parte delle operazioni disponibili in QPaint Segue ora una descrizione dettagliata delle funzionalit fornite dalle voci presenti nei vari men File New Project Con questa voce di men si richiede a QPaint di abbandonare il progetto eventualmente attivo per crearne uno di nuovo Se durante la creazione del nuovo progetto si riscontra che quello precedente stato modificato verr visualizzata una finestra di dialogo con il testo Save changes to nome file e i bottoni Yes No e Cancel Se si conferma l opera zione con Yes verr automaticamente richiamata la finestra di dialogo Save Project o Save Project As La pressione di No far proseguire l operazione senza salvare niente mentre Cancel abortir l intera operazione Il nuovo progetto avr per default il nome Untitled QTP ed il suo percorso di memorizzazione sar quello della directory corrente File Open Project Con questa voce di men si richiede a QPaint di aprire un progetto precedentemente salva to Per far ci vie
110. ort Window x 0k Check project complete No error found Figura 8 finestra Report Window Come si pu vedere in fig 8 nulla lista della Report Window compare una sola linea che notifica il buon esito del controllo sul progetto La pressione del tasto Enter o il doppio clic sul tasto sinistro del mouse su questa linea non comporter alcun effetto Nel caso in cui il controllo del progetto riscontri degli errori comparir la seguente finestra Error Action on page 9 12013 Unknown symbol for Base Destination in Set Variable action Error Action on page 9 12013 Unknown symbol for Base Destination in Set Variable action Error Action on page 9 12013 Unknown symbol for Base Destination in Set Variable action Error Event on page 11 12001 Undefined key in On Key event Error Object on page 6 12013 Unknown symbol for Base Variable in Value object Error Object on page 6 12013 Unknown symbol for Base Variable in Value object Error Object on page 6 12013 Unknown symbol for Base Variable in Value object Error Object on page 6 12013 Unknown symbol for Base Variable in Value object Error Object on page 6 12013 Unknown symbol for Base Variable in Value object Error Object on page 6 12013 Unknown symbol for Base Variable in Yalue object x Figura 9 finestra Report Window Come si pu vedere nell
111. ostato anche se non richie sto Nella variabile di riferimento il campo Second Index non stato definito Nella variabile di riferimento il campo Second Index contiene un simbolo sconosciu to Nella variabile di riferimento il campo Second Index contiene un simbolo di un gruppo dati non valido Nella variabile di riferimento il campo Second Index contiene un simbolo di un tipo dati non valido Nella variabile di riferimento il campo Second Index impostato anche se non richiesto descrizione Descrive in modo dettagliato l errore riscontrato Vedere descrizione del campo codice errore per una migliore comprensione dell errore gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 18 di 119 Qem G anel Quando la Report Window attiva possibile tramite i tasti cursore eseguire lo scroll dell intera lista e utilizzare il tasto Enter per attivare l editor propriet dell oggetto descrit to nella linea selezionata Tramite il mouse si possono ottenere gli stessi risultati anche se pi agevolmente Una volta attivato l editor propriet dell oggetto posizioner automati camente il fuoco sul campo dati che ha generato l errore Questo semplifica notevolmente le operazioni di correzione dello stesso La Report Window modifica il contenuto della lista errori solo sulla richiesta di un controllo del progetto per cui anche quando un errore viene corretto la relativa linea di descrizione continuer ad es
112. ostiamo dei valori nelle 3 variabili pre mendo INS per entrare in Data Entry il valore relativo a swWord lampeggia e ci indica che possibile modificarlo Con il tasto ENTER si conferma l introduzione e si passa al campo successivo e cosi fino all ultimo Da qui con ENTER si ripassa al primo campo e cosi via in maniera ciclica E possibile spostarsi tra i vari campi di inserimento anche con i tasti cursore in questo caso per i dati inseriti vengono persi Una volta completata l impostazione delle variabili possiamo salvarli effettuando un Backup con il tasto F1 Quindi li modifichiamo nuovamente impostando dei nuovi valori a questo punto premendo il tasto F2 viene ese guito il Restore e i dati ritorneranno quelli impostati in precedenza Sia per l operazione di backup sia per quella di restore la mancata esecuzione del comando viene segnalata dal terminale con il lampeggio del led status e con l informazione ripettivamente Backup error e Restore error nella Info Page alla voce Comunic status Il comando di restore trova la sua giusta utilit in caso di sprogrammazione dati nel sistema QMove In questa situazione infatti il comando restore permette di ripristinare il normale funzionamento del sistema se ovviamente era stato fatto preventivamente il bakup Documentazione tecnica Q Paint 1 0 v 1 2 Pag 119 di 119
113. pratutto le convenzioni e gli standards dettati dai pi diffusi programmi per Windows Un analisi approfondita di prodotti Windows di largo consumo e l uso attento degli oggetti di costruzione standard ha reso il QPaint un programma dall interfaccia utente immediata ed intuitiva 4 Il programma dovr rappresentare con la maggior corrispondenza possibile il risultato finale nel terminale In questo caso si potrebbe parlare di What You See is What You Get ci che vedi ci che ottieni L uso delle capacit grafiche fornite da Windows combinate con gli algoritmi utilizzati nel terminale ha fatto si che quanto visualizzato sul monitor sia perfettamente corrispondente a quello che apparir nel display del termi nale Funzionalit grafiche aggiuntive come zoom dell immagine e cambio del colore di sfondo permettono inoltre di semplificare le operazioni di gestione del progetto 5 La funzionalit del programma non dovr essere vincolata dalle dimensioni dell attuale display terminale Attualmente il terminale utilizza un display grafico monocromatico da 240x128 pixel In futuro vi potrebbero essere nuove versioni con altri modelli di display Il programma dovr poter essere facilmente modificato per lavorare con ognuno di essi gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 8 di 119 Cane Descrizione del programma Qem Come si pu vedere nella fig 1 il desktop di QPaint composto dalle seguenti comp
114. precedentemente Nel caso di un progetto nuovo o di un progetto in cui non mai stato importato un file simboli la dialog visualizzata sar la seguente Symbol Reference x Actual Checksums Configuration 0 Code 0 Cancel Symbol Source ee I Loaded Symbol File Not loaded file b Path Figura 5 finestra di dialog Symbol Reference di un progetto senza file simboli Documentazione tecnica Q Paint 1 0 v 1 2 Pag 14 di 119 Cane Come si pu vedere nella fig 5 nel gruppo Actual Checksums compaiono rispettivamente i checksum registrati nel file simboli importato ed inerenti al progetto QView che lo ha generato Queste informazioni sono utili per verificare la validit del file simboli Nel gruppo Loaded Symbol File compaiono il nome del file simboli e il percorso da cui stato preleva to Per visualizzare il percorso bisogna portare e mantenere il puntatore mouse sopra all og getto Path Dopo alcuni istanti comparir la finestra di tool tip con il percorso originario del file simboli La tool tip rimarr visibile per circa un secondo In questo caso non essendo mai stato importato un file simboli i checksum avranno tutti valore zero mentre Not loaded file verr visualizzata sia nel nome che nel percorso dello stesso Nel caso di un progetto in cui gi stato importato un file simboli la dialog visualizzata sar la seguente Symbol Refere
115. r quando si arriver ad avere una sola lingua Le lingue consentite sono al massimo 10 per cui i bottoni Add ed Insert si disabiliteranno quando si raggiunger tale valore Durante la fase di download verranno memorizzati nel terminale oltre a tutti i messaggi in lingua anche le loro descrizioni In questo modo tramite la pagina CONFIGURATION del terminale sar possibile scorrere la lista lingue disponibili e scegliere quale rendere attiva sul display Quando si rimuove una lingua esistente tramite il pulsante Remove tutti i messaggi associati a quella lingua in tutti gli oggetti String e ValString presenti nel progetto verranno automatica mente rimossi In QPaint possible definire quale lingua messaggi usare per le varie visualizzazioni nell area di disegno Ci si ottiene effettuando un clic con il tasto sinistro del mouse sul numero posto a sinistra del nome identificativo della lingua interessata Una freccia rossa far da segnaposto alla lingua selezionata Il pulsante Cancel non ha alcun effetto sulle modifiche apportate alle lingue messaggi per cui tutte le impostazioni effettuate non potranno essere annullate In questa sezione si parlato delle pagine di terminale INFO e CONFIGURATION senza per descriverne la modalit di utilizzo Tutte le informazioni a riguardo sono disponibili nel ma nuale tecnico del terminale Project Internal Variables Con questa voce di men si richiede a QPaint di apr
116. r aggiungere un nuovo evento in coda alla lista degli eventi 2 selezionare nella casella di riepilogo la posizione ove inserire il nuovo evento Utilizzare il pulsante Insert per inserire un nuovo evento nella lista degli eventi e alla posizione selezionata Alla pressione del pulsante Add o Insert comparir la seguente finestra di selezione Select Event x On Press On Release On Always On Page In On Time On Change Var On Yar Figura 16 finestra di selezione Select Event Come si pu vedere nella fig 16 la finestra Select Event completamente occupata dalla casella di riepilogo contenente le definizioni degli eventi disponibili a livello globale La selezione avviene come per una normale casella di riepilogo effettuando un doppio clic con il tasto sinistro del mouse sulla voce interessata o selezionandola con i tasti UP amp DOWN seguiti da una conferma con ENTER Una volta confermato l evento sul pannello impostazio ni compariranno i campi di impostazione dei parametri dell evento OnKey L evento OnKey viene generato ad ogni scansione di pagina fintanto che il tasto del termi nale associato risulta premuto Il tempo di ripetizione dell evento dipende dalla complessit della pagina attiva Pi sono gli oggetti dinamici visualizzati pi lungo il tempo tra la generazione di un evento e l altro Per associare la generazione di un evento OnKey ad un tasto del terminale basta fare clic
117. retto tra PC QMove e terminale Il gruppo Times2 da utilizzarsi quando si effettua un collegamento remotato tra PC modem con QModem QMove e terminale Nel secondo caso sono necessari tempi di timeout maggiori dovuti ai ritardi di trasferimento introdotti dalla comunicazione con modem La possibilt di modificare i tempi di timeout permette all utente di adattare il trasferi mento dei dati alle proprie condizioni di utilizzo Segue ora una breve descrizione dei para metri di timeout CPU Answer timeout sulla risposta del terminale Char timeout fra carattere e carattere Com Ok timeout sulla verifica di connessione seriale Flush timeout su invio richiesta al terminale Download timeout su conclusione procedura download al terminale Pack Ok timeout ricezione pacchetto informazioni Help Technical Info Con questa voce di men si richiede a QPaint di visualizzare la finestra delle informazioni tecniche In essa sono elencati tutti gli oggetti OLE librerie dinamiche e drivers utilizzati dal QPaint per il proprio funzionamento Pu essere utilizzata su richiesta della QEM srl nell eventualit di un supporto tecnico al prodotto Technical Info Executable Programs QPAINTI1O EXE ActiveX Controls TRMPRIOL OCK QMVPRIOL OCK SERBINOl O0CKX Dynamic Packages VCL35 BPL VCLX35 BPL VCLQOEMOL BPL 1 0 0 460 3 0 3 3 0 3 1 0 0 Dynamic Link Libraries ADVAPI32 DLL COMCTL32 DLL CONDLG32 DLL
118. riabili con lo stesso nome Ogni nome variabile composto dal prefisso seguito da una stringa di 1 11 caratteri ASCII in cui viene rilevata la differenza tra caratteri minuscoli e maiuscoli Editing Internal Yariables Editing Internal Yariables M Intemal Yarables 7 m Internal Yariables 7 OK OK sa DEE E Add E gt Delete E ActivePage W amp ElapsedTime E abs_real E direct_inv E S nge_x x Figura 12 finestra di dialog Internal Variables Figura 13 finestra di dialog Internal Variables Nella fig 12 possibile vedere lo stato della finestra di dialogo Internal Variables quando nessuna variabile interna stata definita Il pulsante Add abilitato indicando che possibile definire una nuova variabile mentre il pulsante Delete disabilitato poich non vi nessuna variabile da rimuovere Nella fig 13 invece raffigurata la stessa dialog in cui sono state definite svariate variabili interne di pi tipi di dato Si pu notare che il pulsante Delete risulta ora abilitato comparsa una barra a scorrimento verticale con la quale visualizzare tutte le variabili ed presente una linea di selezione per identificare la linea soggetta all azione del tasto Delete Add Internal Yariable x Data Type ta wj 1 aj Name var_namd Cancel Figura 14 finestra di dialog Add Internal Variable Documentazione tecnica Q Paint 1 0 v
119. rme con l uso dei tasti PGUP o PGDN occorre sovraccaricare il tasto PGDN nella pagina precedente e sovracca ricare il tasto PGUP nella pagina successiva Nel nostro caso la pagina di allarme l ultima e quindi si lavora solo sulla pagina precedente Documentazione tecnica Q Paint 1 0 v 1 2 Pag 88 di 119 Cane Qen Page Events Editor Pg 3 Comm2 Events and Actions ant E Add E Insert E gt Delete action Be Add B Insent Ri eee Select Key E ocg Hoz nonce aaaea AAS NARREN NS OK angel La pagina di allarme che abbiamo chiamato Error Communication potrebbe essere cos disegnata Attenzione Sl Verificato Un errore di omunicazione tra terminale e HAOL Per Uscire andare nella finestra Into della pagina dl Setup e Verificare a cCaluzaz ge errore dl Comunicazione Anche nella pagina di allarme occorre sovraccaricare i tasti PGUP e PGDN per fare in modo che l uscita avvenga solo dalla pagina di Setup Info in modo anche da verificare il tipo di errore che si verificato Documentazione tecnica Q Paint 1 0 v 1 2 Pag 89 di 119 Cane Page Events Editor Pg 4 Error Communication Events and Actions Events E Add E Insert Er Delete Actions On Press PG DW EB Add E Insert Introduzione alfanumerica In questo esempio vediamo come poter trattare dati alfanumerici in maniera dinamica usan do una variabile QCL A
120. rminale alla pagina successiva Quando invece si entra nella pagina logo si resettano i valori di sfQMove e gfRun in modo da verificare lo scadere del timeout e poter far scattare il cambio pagina con il cambio di valore di gfQMove Infine l evento OnAlways imposta la var gfTerminale sempre a 1 quando ci si trova nella pagina iniziale questo d il segnale all appli cativo QCL che il terminale OK e si pu far partire il timeout Nella pagina di lavoro e in tutte le pagine da cui si vuole uscire per tornare alla pagina logo ogni volta che si fa il restart della CPU occorre verificare il cambio valore della variabile gfQMove e associare un salto pagina alla pagina logo Infine per impedire il passaggio dalla pagina di lavoro alla pagina di logo con il tasto PgUp basta sovrascrivere la pressione del tasto PGUP non associan do alcuna azione Cosi l unico modo per arrivare alla pagina di logo o all accensione o ad ogni restart della CPU gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 104 di 119 Qem Page Events Editor Pg 2 initpage Events and Actions Enia E Add H Insert g gt Delete PIRANO E Add H Insert g Delete On Press PG UP On Change Var aQ Move Vediamo ora il comportamento in alcune condizioni Accensione del sistema Qmove prima del terminale In questo caso il task rimane in attesa dell accensione del terminale per l istruzione di WAIT sulla var
121. rogetto associato recent files sono utili per velocizzare le operazioni di apertura dei progetti usati pi frequentemente o ancora in fase di sviluppo Nel caso si tenti di aprire un recent file che non esiste pi o che memorizzato su un disco non disponibile apparir il messaggio Error in opening file nome file e i bottoni OK e Cancel Alla pressione di OK QPaint ritenter l apertura del file mentre Cancel abortir l intera operazione Prima di aprire il recent file selezionato se si riscontra che il progetto attualmente in uso stato modificato verr visualizzata una finestra di dialogo con il testo Save changes to nome file e i bottoni Yes No e Cancel Se si conferma l operazione con Yes verr automatica mente richiamata la finestra di dialogo Save Project o Save Project As La pressione di No far proseguire il programma senza salvare niente mentre Cancel abortir l intera operazione File Exit Con questa voce di men si richiede a QPaint di concludere la propria esecuzione Se si riscontra che il progetto attualmente in uso stato modificato verr visualizzata una fine stra di dialogo con il testo Save changes to nome file e i bottoni Yes No e Cancel Se si conferma l operazione con Yes verr automaticamente richiamata la finestra di dialogo Save Project o Save Project As La pression
122. rray di tipo byte In particolare simuleremo un piccolo archivio di testi 45 stringhe di 20 caratteri ciascuna usando un array di 900 elementi Vedremo come poter selezionare uno qualsiasi di questi testi modificarlo ecc Il modo in cui vogliamo gestire l array byte variabile abARRS in QCL raffigurato nel disegno seguente Array abARRS 1 20 21 40 Lo li T T T Primo testo Secondo testo Creiamo un oggetto VALUE in cui definiamo come variabile associata proprio la abARRS e in cui usiamo come First Index una variabile QCL nel nostro esempio swWord che una varia bile SYSTEM di tipo WORD questo per poterlo modificare da QMove cosi ci possiamo spo stare lungo l array e selezionare quella parte che ci interessa Poi definiamo degli eventi su tasti funzione in modo da poter scorrere la lista dei testi contenuti nell array vi saranno due tasti di scorrimento rapido e due tasti che si spostano di un testo alla volta E da sottoline are che la suddivisione dell array in singole stringhe puramente logica in quanto in realt i caratteri si susseguono uno dopo l altro tuttavia quando si esegue il programma nel termi nale l idea che ci si fa quella di stare trattando realmente un archivio di stringhe perfet tamente separate tra di loro Ed ci che vogliamo ottenere con questo esempio gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 90 di 119 Ca Qen Vediamo come organizzata la pagina
123. sabilitare il funzionalmento invece basta definire l evento di pagina senza associare nessuna azione La programmazione degli eventi diventa cosi Eventi di pagina Lista pagine Nome pagina Pag nr 01 Visualizzazione 1 4 Pag nr 02 Visualizzazione 2 4 On Key PGUP y Pag nr 03 Parametrizzazione 1 3 PGUP Pag nr 04 Parametrizzazione 2 3 On Key PGDN Oo PGDN Pag nr 05 Parametrizzazione 3 3 Pag nr 06 Visualizzazione 3 4 Li P 07 GoTo Page 8 ag nr Taratura 1 2 GoTo Page 7 P 08 GoTo Page 7 ag nr Taratura 2 2 Pag nr 09 Visualizzazione 4 4 gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 71 di 119 panel Per uscire dalle pagine di parametrizzazione o taratura bisogna programmare un tasto appo sito che esegua un salto alle pagine di visualizzazione Se si vuole mantenere una sequenza ordinata di scroll tra le pagine di visualizzazione che invece non hanno una disposizione ordinata bisogna sovraccaricare il funzionamento dei tasti PGUP e PGDN nel seguente modo Eventi di pagina Lista pagine Nome pagina Pag nr 01 Visualizzazione 1 4 CS PONE Bei Pag nr 02 Visualizzazione 2 4 oTo Page r Pag nr 03 Parametrizzazione 1 3 Pag nr 04 Parametrizzazione 2 3 Pag nr 05 Parametrizzazione 3 3 On Key PGUP On Key PGDN P 06 isuali i GoTo Page2 GoTo Page 9 ag nr Visualizzazione 3 4 d Pag nr 07 Taratura 1 2 Pag nr 08 Taratura 2 2 On Key PGUP GoTo Page 6 Pag nr 09 Visual
124. saggio Do you confirm this operation 74 ___No u__r Figura xx interfaccia standard messaggi Azione intrapresa Come si pu vedere nella fig xx l interfaccia standard dei messaggi altro non che un box di dialogo di Windows opportunatamente organizzato Vi sono 4 campi di testo che servono per la descrizione delle varie informazioni pi una serie di bottoni per le operazioni che l utente pu effettuare Vediamo ora in dettaglio il significato di quanto presente 1 Tipo stato Descrive il tipo di stato in cui entrato QPaint Pu valere III INFORMATION 1 per un stato informazione I QUESTION per un stato di richiesta dati III WARNING per un stato di pericolo III ERROR per un stato d errore III FATAL ERROR per un stato d errore fatale 2 Codice messaggio Contiene il numero identificativo del messaggio intervenuto Tramite questo numero possibile accedere alla documenta zione approfondita dello stato presente in questa appendice Documentazione tecnica Q Paint 1 0 v 1 2 Pag 61 di 119 panel 3 Descrizione messaggio Descrive in modo sintetico lo stato intervenuto 4 Azione intrapresa Viene descritta l azione intrapresa di risposta allo stato in cui si trova QPaint Pu contenere anche una estensione alla de scrizione messaggio o una richiesta specifica all utente Que sto campo non disponibile in tutti gli stati 5 Operazioni possibili Sono disponibili uno o
125. sce il secondo Avremo quindi che Data Types Base First Index Second Index SYSTEM variabile CPU QMove GLOBAL variabile CPU QMove ARRSYS array CPU QMove indice elemento array ARRGBL array CPU QMove indice elemento array TIMER timer CPU QMove STATIC datagroup CPU QMove indice programma INDEX datagroup CPU QMove indice programma indice passo di pro gramma DEVPAR parametri device CPU QMove IO input output CPU QMove INTERNAL variabile interne TERMINAL variabile terminale CONST valore costante I campi introduzione per variabili di riferimento sono presenti in molti oggetti come Value e ValString eventi ed azioni valori introducibili per tali oggetti sono regolati da apposite tabelle specificate in dettaglio nell appendice A di questo documento Per semplificare le operazioni di introduzione dei campi Base First Index e Second Index QPaint mette a dispo sizione un apposita dialog di selezione dei simboli richiamabile tramite la pressione del tasto F5 quando l introduzione attiva su uno dei tre campi di una variabile di riferimento Base First Index Second Index sable Qi I GL Figura 48 campi introduzione variabile di riferiemento Documentazione tecnica Q Paint 1 0 v 1 2 Pag 58 di 119 panel Appendice Qem Tabelle riassuntive regole variabile di riferimento In queste tabelle sono riportate le regole da applicare per la costruzione delle variabili di riferimento Ad ogni tabella
126. scegliere il nome della lingua utilizzata Questa procedura in genere consigliata per l installatore del terminale visto che nelle pagine di set up sono disponibili anche altre configurazioni che se erroneamente toccate vedi velocit seriale possono interrompere il normale funzionamento del sistema e richiedere l intervento di personale specializzato La lingua per selezionabile anche direttamente nella normale applicazione utente Esiste la variabile terminale SLANGUAGE il cui valore rappresenta il numero della lingua attualmente selezionata Si consideri il seguente progetto di esempio che stato sviluppato con 3 lingue Project Setup x Project Informations 3 OK Title PANTOBAZ Cancel Message Languages at ist pese TNE I Language Name ENGLISH anannasannnnnansannnsannnnsnnsnnannnnnnnnnnnnnnnnsnnnnsannannanansanannnnnsnnansannnnannannadi Global Scale Values Scale fi Scale B fi Scale C fo per la lingua ENGLISH la variabile SLANGUAGE assume valore 1 per la lingua ITALIANO assume valore 2 per la lingua TEDESCO assume valore 3 Per realizzare la scelta della lingua da applicazione senza utilizzare le pagine di Set up basta creare un oggetto VALUE assegnando la variabile SLANGUAGE con limiti di introduzione minimo 1 e massimo 3 Per questa soluzione si deve in qualche modo per indicare la relazio ne tra nome lingua e valore numerico
127. se First Index Second Index Dec Point E I SL gui varate Rs P I Max Variable poo 8 poo Min Variable poo I TT Enable Lead Zero Blank Mode p Scaling Mode IV Enable Sign Mode None Global Local TT Enable lpha Mode V Enable Modify Mode r xa II Length fi 2 Max 40 Chars OK Cancel Come si vede stato impostato il valore relativo al decimal point che rappresenta il numero di cifre decimali che vogliamo visualizzare per la variabile E stato abilitato il segno e come gia anticipato la possibilit di poter modificare il valore Ora dobbiamo associare opportu namente le azioni di Backup e Restore a due tasti funzione La cosa veramente semplice nella finestra relativa agli eventi locali creiamo degli eventi OnPress sui tasti F1 e F2 ed associamo rispettivamente le azioni di Backup e Restore Il passaggio alla fase di Data Entry con il tasto INS invece di default e quindi non serve alcun evento collegato a tale tasto Page Events Editor Pg 1 Events and Actions Evente E Add Ele Insert Zi Delete ARTI E Add E Insert gt Delete On Press F2 Page Events Editor Pg 1 Events and Actions EVES B Add E Insert E Delete eno Bi Add E Insert E Delete On Press F1 Documentazione tecnica Q Paint 1 0 v 1 2 Pag 118 di 119 Qem G anel Una volta scaricata l applicazione su terminale imp
128. se sia a livello globale che di pagina Inoltre sono disabilitate anche le azioni Goto Page Next Page e Previous Page Nel caso in cui si volesse realizzare un campo introdu zione che permetta di impostare il numero della pagina in cui saltare cosigliato l uso dell evento On Change Var abbinato all azione Goto Page Page Insert Page Con questa voce di men si richiede a QPaint di inserire una nuova pagina nel progetto In un progetto vi possono essere al massimo 999 pagine per cui una volta raggiunto tale limite la voce verr disabilitata Condizioni di attivazione nel progetto vi devono essere meno di 999 pagine Page Add Page Con questa voce di men si richiede a QPaint di aggiungere una nuova pagina nel progetto In un progetto vi possono essere al massimo 999 pagine per cui una volta raggiunto tale limite la voce verr disabilitata Condizioni di attivazione nel progetto vi devono essere meno di 999 pagine Documentazione tecnica Q Paint 1 0 v 1 2 Pag 33 di 119 Qem Gran Page Delete Page Con questa voce di men si richiede a QPaint di rimuovere la pagina attiva dal progetto Prima di effettuare la rimozione verr visualizzata una finestra di dialogo con il testo Page will be lost Are you sure of to want to continue Se si conferma l operazione con Yes la pagina verr rimossa mentre No abortir l intera operazione Condizioni di attivazione nel progetto vi devono essere
129. sibile impostare una variabile TIMER da QPaint per questo lo abbiamo fatto qui Vediamo ora come il terminale gestisce queste variabili Le condizioni che si verificano sono gfQMove 0 quando il terminale si trova nella pagina logo sfQMove 1 quando il termina le si trova in un altra pagina Quando la var gfQMove passa a zero e questo vuol dire che la CPU stata reinizializzata si vuole che il terminale si riporti alla pagina logo parta il timeout e si ricominci Documentazione tecnica Q Paint 1 0 v 1 2 Pag 103 di 119 Cane Nella pagina logo avremo pertanto questi eventi di pagina con le relative azioni Page Events Editor Pg 1 logo Events and Actions Evente E Add Ele Insert E gt Delete ine E Add H Insert E Delete On Change Var gfOMove On Always Page Events Editor Pg 1 logo Events and Actions Evente E Add Ele Insert E Delete PIE amp Add Ele Insert E Delete Set Variable gfOMove 0 Set Variable gfRun 0 On Change Var Page Events Editor Pg 1 logo Events and Actions ZE E Add E Insert E Delete PAR Ho Add H Insert E Delete On Change Yar gfQMove Set Variable gfTerminale 1 On Page In All accensione il valore di gfQMove zero e il suo passaggio a 1 avviene quando scaduto il timeout e l applicativo QCL ne assegna il valore questo cambio di valore fa passare il te
130. so di alcuni messaggi in lingua Vuoi confermare questa operazione Si entra in questo stato quando QPaint rileva la necessit di troncare il testo in eccesso di alcuni mes saggi in lingua Tale condizione si verifica durante la modifica della lunghezza testo o delle propriet font degli oggetti String e ValString gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 64 di 119 Codice stato 10014 10019 10020 10021 10023 Tipo stato QUESTION WARNING WARNING WARNING ERROR Cane Descrizione stato Le nuove impostazioni potrebbero modificare le propriet Left e Top dell oggetto Vuoi confermare questa operazione Si entra in questo stato quando QPaint rileva la necessit di modificare le propriet Left e Top del l oggetto attivo affinch rimanga entro la dimensione disponibile nell area di disegno Nome del font utente non valido Valore vuoto o presenti i seguenti caratteri non validi lt gt Introduci un nome valido Si entra in questo stato quando QPaint rileva che il nome del font utente appena introdotto vuoto o presenta uno o pi caratteri non validi Nome del font utente gi utilizzato da un font di Windows Introduci un nome nuovo Si entra in questo stato quando QPaint rileva che il nome del font utente appena introdotto gi utiliz zato da un font di Windows Nome del font utente gi utilizzato Introduci un nome nuovo Si entra
131. sono descritte in dettaglio tutte le operazioni necessarie per definire una variabile di riferimento Led On Tramite l azione Led On si richiede al terminale di attivare uno dei led associati ai tasti funzione disponibili nella tastiera dello stesso Select Led CHE CE NE CE CH CO CE Figura 27 pannello impostazioni azione Led On Come si pu vedere nella fig 27 l azione Led On stata impostata affich attivi il led associato al tasto funzione F4 Led Off Tramite l azione Led Off si richiede al terminale di disattivare uno dei led associati ai tasti funzione disponibili nella tastiera dello stesso Select Led CHCECo CENE CE CH CO CE Figura 28 pannello impostazioni azione Led Off Come si pu vedere nella fig 28 l azione Led Off stata impostata affich disattivi il led associato al tasto funzione F4 Led Blink Tramite l azione Led Blink si richiede al terminale di attivare in modalit di blink uno dei led associati ai tasti funzione disponibili nella tastiera dello stesso Select Led aree arfon oslosfonlan mrj arn Figura 29 pannello impostazioni azione Led Blink gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 32 di 119 panel L azione Restore viene eseguita solo se in precedenza stata effetuata almeno una procedura di Backup Qem Come si pu vedere nella fig 29 lazione Led Blink stata impostata affich attivi in modalit di blink il led associato al t
132. sta di argomenti 1 Eventuali nuove versioni del programma dovranno assicurare la piena compatibilit dei progetti sviluppati con le versioni precedenti Per ottenere ci si adottato un nuovo standard di memorizzazione delle informazioni in protocollo binario con cui risulta mol to semplice gestire la compatibilit di versione 2 Per rendere portabile e facilmente mantenibile un progetto non vi dovranno essere collegamenti a file esterni Lo standard di memorizzazione adottato permette di archiviare nello stesso file dati di qualsiasi formato come ad esempio testi immagini grafiche data base etc Il programma QPaint memorizza nel file di progetto QTP tutto ci di cui abbisogna In questo modo per archiviare trasportare su floppy o distribuire un pro getto sar sufficiente operare con il solo file QTP Per limitare significativamente la dimensione dei file di progetto si ritenuto utile non inserire nello stesso tutte le informazioni dei font utilizzati perci bisogna assicurarsi che nella directory C Programmi QPaint10 Fonts del proprio PC siano presenti tutti i font file QTP richiesti tre font distribuiti con il programma QPaint QEM System Small Medium e Large Font corrispondono ai font interni del terminale per cui sono sempre disponibili ed utilizzabili Ulteriori informazioni sui font sono disponibili nella sezione dedicata 3 L interfacciamento grafico all utente dovr essere semplice ed intuitivo rispettando so
133. sti Per ottenere la sincronizzazione del funzionamento di terminale e Qmove dobbiamo avere alcune variabili che contengano lo stato in cui si trovano i due dispositivi Vediamo come va scritto l applicativo QCL che ci permette questo Usiamo variabili GLOBAL in modo che ad ogni restart dell applicativo o riaccensione di Qmove vengano inizializzate a zero gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 101 di 119 Qem gfTerminale F Verifica la presenza del terminale gfRun F Indica che il terminale non nella ipagina di presentazione gfQMove F Utilizzata per l uscita dalla pagina iniziale di logo tmLogo Timer per tempo pagina di ipresentazione E viene anche definita una variabile TIMER tmLogo che ci servir per impostare il timeout di cambio pagina Nel codice task avremo le seguenti istruzioni WAIT gfTerminale Verifica la presenza del terminale tmLogo 5000 imposta la temporizzazione della ipagina MAIN IF tmLogo AND NOT gfRun iverifica il timeout gfQMove 1 serve per il cambio pagina in QPaint gfRun 1 evita di rientrare in questa parte dopo il tempo tmLogo ENDIF IF gfRun EQ 1 una volta scaduto il timeout tmLogo 5000 serve per tenere tmLogo a zero e poter effettivamente vedere il ricambio di gfQMove ENDIF IF gfRun EQ 1 Condizione per stabilisce se il terminale Documentazione tecnica Q Paint 1 0 v 1 2 Pag 102 di 119 Qem G anel ha t
134. sto compito pensa l evento On Release associato al tasto ENTER che imposta un valore su una nuova variabile QCL Intro Vediamo in figura Documentazione tecnica Q Paint 1 0 v 1 2 Pag 82 di 119 Qem Page Events Editor Pg 3 Intro DataGroup Events and Actions Evente Hu Add Be Inser E Dette AR E Add E Insert E Delete On Page In On Var ifPrg 1 On Yar ifPosx 1 On Yar ifPosy 1 MEGEN On Change Var DataEntry On Always Set Variable Intro 1 A questo punto l applicativo deve riconoscere l introduzione dato ed eseguire l incremento Deve essere utilizzata una ulteriore variabile QCL che chiameremo DataEntry che indica al terminale che l applicativo ha eseguito l incremento In totale tutte le variabili da definire in QCL sono GLOBAL PassoExe B iNumero del passo in introduzione nel terminale PrgExe B Numero del programma in introduzione nel terminale Intro B Segnalazione per l applicativo di introduzione avvenuta DataEntry B Segnalazione per il terminale di incremento avvenuto DEObj W Copia valore variabile OBJDE Documentazione tecnica Q Paint 1 0 v 1 2 Pag 83 di 119 Qem G anel Su di un task bisogna introdurre il seguente codice rIntroduzione dati guidata 7 20000 0000222 IF Intro EQ 1 IF DEObj EQ 4 OR DEObj EQ 5 IF PassoExe LT 5 PassoEBxe PassoExe 1
135. sto pulsante la scorciatoia alla voce di men View Zoom Out Questo pulsante la scorciatoia alla voce di men Edit Bring Up Object Questo pulsante la scorciatoia alla voce di men Edit Bring Down Object Nes p Questo pulsante la scorciatoia alla voce di men View Background Mode Barra degli strumenti di disegno La barra degli strumenti di disegno utilizzata dall utente per creare la parte grafica delle pagine di un progetto Con essa possibile depositare nell area di disegno rappresentante il contenuto della pagina attiva oggetti quali campi di visualizzazione introduzione dati alfanumerici messaggi in lingua rettangoli ed immagini L inserimento di un nuovo oggetto nella pagina attiva un operazione molto semplice Per prima cosa bisogna selezionare sulla barra degli strumenti di disegno facendo click con il tasto sinistro del mouse il tipo di oggetto che si intende aggiungere Poi basta fare di nuovo click con il mouse sull area di disegno nella zona dove si intende depositare il nuovo oggetto A questo punto alcuni oggetti visualizzano automaticamente la pagina delle loro propriet mentre altri come i rettangoli non richiedono alcun dato aggiuntivo Appena aggiunto il nuovo oggetto sulla pagina il pul sante precedentemente attivo sulla barra degli strumenti di disegno ritorna in posizione di disattivazione e viene selezionato il Pointer Object Questo non propriamente un ogge
136. ta pagina che resti visualizzata per 5 secondi e poi passi alla pagina successiva dove inizia il normale funzionamento del nostro applicativo terminale nel nostro esempio vi sar solo una pagina che non fa niente appare solo un testo ma la cosa assolutamente ininfluente sul funzionamento della pagina temporizzata Intanto vediamo come inserire un immagine BMP in una pagina di terminale Per ogni progetto QTP c la possibilit di creare una galleria di immagini che possono essere utiliz zate nel progetto stesso e che vengono scaricate nel terminale durante la fase di download Per costruire questa raccolta occorre utilizzare la funzionalit offerta dal menu Graphics Image Manager di QPaint che fa apparire questa finestra Image Manager x Generals _ Preview Widh None Height None Documentazione tecnica Q Paint 1 0 v 1 2 Pag 99 di 119 Qem G anel Image Manager come dice il nome stesso permette di gestire la libreria di immagini legate al progetto QTP in esame Inizialmente tale libreria vuota ed abilitato il solo pulsante Add che permette di aggiungere una immagine BMP alla lista tale immagine deve essere monocromatica altrimenti QPaint lo segnala con un errore Usando la funzione Add appare una dialog box in cui si pu scegliere un file BMP una volta selezionato il file la dialog box si chiude e la finestra Image Manager appare cos modificata Image M
137. tare la parte di tubo pieno nella tubazione verticale abFlx2 1 36 imposta la visualizzazione della valvola nella parte di tubazione pompa2 ENDIF GESTIONE DI UN CONTASECONDI IF tmSecondi Timer da 1 Sec terminato tmSecondi 1000 Reload timer IF glSecondi LT 59 Controllo secondi glSecondi glSecondi 1 Incremento secondi ELSE glSecondi 0 ENDIF ENDIF gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 114 di 119 G anel Qem Per simulare lo scorrere del liquido nella tubazione occorre impostare in maniera sequenziale e ciclica in questo caso ogni secondo un elemento diverso dell array in modo che visualizzi il carattere tubo pieno mentre il resto dell array deve rappresentare il tubo vuoto Quindi prima si effettua un ciclo FOR che serve per pulire le tubazioni e poi si passa ad impostare il solo elemento che contiene il carattere di tubo pieno Con l espressione 1 glSecondi 5 usata come indice di abFlx1 ad esempio ad ogni secondo si incrementa di 1 il valore dell indice con la sequenza 1 2 3 4 5 Nel nostro caso l elemento 5 non visualizzato e questo fa si che una volta che il fluido arrivato alla destra del tubo non riparta subito da sinistra ma attenda un altro secondo Questo rende migliore l animazione Dato che il fluido di questo tratto di tubo deve andare da sinistra verso destra l indice dell array deve essere incrementato
138. to posizione lato su periore oggetto Attributo larghezza oggetto Attributo altezza oggetto Attributo colore sfondo og getto Attributo colore disegno bor do oggetto Attributo modalit disegno bordo oggetto Limiti e condizioni Range 0 239 Width Range 0 127 Height Range 5 240 Range 5 128 Documentazione tecnica Q Paint 1 0 v 1 2 Pag 56 di 119 panel I font del terminale Qem Il terminale stato progettato per lavorare con due gruppi di font i font di sistema e i font utente font di sistema risiedono nella ROM del terminale e sono sempre disponibili font utente risiedono nella directory Fonts del QPaint sotto forma di file QTF ed FNT e vengo no trasferiti nel terminale durante la procedura di download Anche i font di sistema hanno i loro file QTF e FNT nella directory Fonts del QPaint ma questi vengono utilizzati solo per le operazioni interne di visualizzazione ed introduzione dati L utente pu facilmente creare nuovi tipi di font partendo da file Bitmap o derivandone di nuovi direttamente dai font TTF di Windows La possibilit di creare un font utente prelevando le informazioni direttamente da un file Bitmap espande notevolmente le possibilit grafiche del terminale stesso Infatti possibile realizzare delle animazioni realizzando un font in cui i caratteri sono in realt le varie parti dell animazione che si vuole visualizzare Ulteriori informazioni r
139. toni Add per l aggiunta di una nuova immagine Delete per la rimozione dell immagine selezionata e Rename per la modifica del nome dell immagine selezionata bottoni Delete e Rename sono abilitati solo quando esiste almeno un immagine nella lista immagini di progetto La pressione del pulsante Add far comparire la seguente finestra di dialogo Add Bitmap File Blur Cmpr Cnvr Ei Dtwr Gxim B Fum B Rid femmas Com S ae Figura 36 finestra di dialogo Add Bitmap File gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 40 di 119 panel Qem Le funzionalit espletate dalla finestra di dialogo sono quelle standard normalmente fornite dallo stesso sistema operativo Windows A conferma dell operazione con il tasto Apri Image Manager analizzer le caratteristiche del file bitmap BMP selezionato Nel caso in cui venga rilevata una bitmap non monocromatica comparir un box di messaggio con la scritta The BMP can be only monochrome Premendo il tasto OK l intera procedura di aggiunta immagine verr abortita Nel caso in cui venga rilevata una bitmap di dimensioni non compa tibili con il display in uso comparir un box di messaggio con la scritta Invalid BMP size Premendo il tasto OK l intera procedura di aggiunta immagine verr abortita Una volta verificato che le caratteristiche dell immagine selezionata sono corrette essa verr aggiun
140. tro Icon e che la stringa scritta per il valore 0 il carattere di tastiera e per il valore 1 il carattere Tubazione in mandata delle pompe per ottenere l animazione di questa parte che consi ste nel visualizzare il fluido che si sposta utilizziamo invece un oggetto Value con una variabile Array byte con propriet Alpha Mode attiva Questo ci permette di visualizzare una stringa di caratteri variabile durante l esecuzione e in cui possibile modificare runtime anche un solo carattere Trattandosi di una var array il valore del singolo elemento rappre senta il carattere che sar visualizzato Ad esempio il valore 32 visualizzer uno spazio il valore 48 il carattere 0 e cos via Per rappresentare questi caratteri creiamo un nuovo font partendo dal bitmap QEM System Small Font bmp e seguiamo la stessa procedura vista sopra Il bitmap del nuovo font sar questo stato ingrandito per maggiore chiarezza I Mi SET PE oladri BEST GHISELANO emi TILILILI Si vede che i primi caratteri sono stati sostituiti da quelli che ci serviranno per realizzare l animazione delle tubazioni e le valvole I codici che visualizzano tali simboli sono quelli da 32 a 37 compresi Creiamo il nuovo font partendo da questo bitmap nel modo gi visto e lo chiamiamo Flusso il nome completo che QPaint assegna a questo font pertanto Flusso 8x9s0 Documentazione tecnica Q Paint 1 0 v 1 2 Pag
141. ttivazione Nell evento On Time non stato definito il tempo di attivazione Nell azione Goto Page non stata definita la pagina a cui saltare Nell azione Goto Page stato impostato il nome di una pagina inesistente Nell azione Send Command non stato definito il comando da eseguire Nell azione Send Command stato definito un comando non riconosciuto Nell azione Led On non stato definito il led interessato all operazione Nell azione Led Off non stato definito il led interessato all operazione Nell azione Led Blink non stato definito il led interessato all operazione Nella variabile di riferimento il campo Base non stato definito Nella variabile di riferimento il campo Base contiene un simbolo sconosciuto Nella variabile di riferimento il campo Base contiene un simbolo di un gruppo dati non valido Nella variabile di riferimento il campo Base contiene un simbolo di un tipo dati non valido Nella variabile di riferimento il campo Base contiene un simbolo con accesso a sola lettura Nella variabile di riferimento il campo First Index non stato definito Nella variabile di riferimento il campo First Index contiene un simbolo sconosciuto Nella variabile di riferimento il campo First Index contiene un simbolo di un gruppo dati non valido Nella variabile di riferimento il campo First Index contiene un simbolo di un tipo dati non valido Nella variabile di riferimento il campo First Index imp
142. tto di disegno bensi un strumento di manipolazione degli oggetti gi presenti sulla pagina Con esso infatti possibile spostare ridimensionare selezionare e deselezionare etc un ogget to sull area di disegno Per depositare pi di un oggetto dello stesso tipo sulla pagina senza dover riselezionare ogni volta il corrispondente pulsante sufficiente mantenere premuto il tasto SHIFT sinistro della tastiera In questo modo al termine dell operazione di inserimento oggetto nella pagina non verr attivato il Pointer Object ma rimmar attivo il pulsante precedentemente selezionato Documentazione tecnica Q Paint 1 0 v 1 2 Pag 48 di 119 panel Qem In una pagina vi sono due tipi di oggetti depositabili gli oggetti statici e gli oggetti dinamici Per oggetti statici si intendono tutti quegli oggetti che vengono disegnati sul display sola mente una volta al cambio della pagina attiva Per oggetti dinamici si intendono tutti quegli oggetti che sono in continuo aggiornamento sul display Oltre alla modalit di aggiornamento tra gli oggetti statici e dinamici esiste un altra importante differenza Ogni oggetto occupa per la propria visualizzazione una area grafica ben definita Quando due oggetti statici sovrappongono le loro aree di ingombro anche se parzialmente avviene che uno sempre visualizzato sopra all altro Questo dovuto al fatto che gli oggetti statici possegono ciascu no una propriet detta livello che
143. uindi di swWord infine viene impostata anche gbPosStr che rappresenta la posizio ne del testo nelle lista in modo naturale cio partendo da indice 1 Come detto il testo selezionato pu essere modificato dal terminale questo dovuto al fatto che abbiamo selezionato Modify Mode nell oggetto VALUE Per inserire o modificare il testo dalla pagina terminale sufficiente premere il tasto INS e confermare l inserimento con il tasto ENTER che fa uscire dalla fase di Data Entry Vediamo come si presenta il terminale durante il funzionamento testo ULTIMO ELE_ posizione 49 Premere INS per inserire o modificare Fi F2 F3 F4 Scorri Scorri t Step Step t gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 94 di 119 Cane Qem Se andiamo a verificare i valori dell array abARRS ad es con QView noteremo che DETSE E da qui parte l ultimo testo della lista 85 il codice ASCII della lettera U Questo significa che anche da QCL potremmo modificare quanto appare nel terminale Se ad esempio scriviamo il valore 49 nell elemento abARRS 886 il testo che appare nel terminale ULTIMI ELE in cui il carattere O stata sostituita dal carattere 1 Questo dimostra ta la grande flessibilit e interoperabilit tra terminale e QMove Gestione eventi temporali Vediamo con questo esempio come generare degli eventi a scadenze prefissate facendo uso dell evento OnT
144. viato OPaint sullo schermo apparira la seguente finestra _ QMove Paint Untitled QTP ioj x File Edit View Project Page Transfer Graphics Options Help eE JIN ugavana Barra funzioni di disegno Barra funzioni di progetto Barra impostazione password pagina Barra dei men Barra gestione pagina Barra strumenti di disegno Re Barra di stato Area disegno rappresentante display terminale Figura 1 desktop di QPaint Documentazione tecnica Q Paint 1 0 v 1 2 Pag 6 di 119 G anel La finestra di Logo comunemente chiamata splash screen ha lo scopo di intrattenere l uti lizzatore durante le operazioni di avvio del programma Il tempo di permanenza va da un minimo fisso di 3 secondi ad un massimo che varia in fuzione delle caratteristiche hardware del PC utilizzato e dal numero di font da caricare Inoltre se viene specificato nella linea di comando anche il nome di un progetto al normale tempo di avvio viene aggiunto anche il tempo di caricamento del progetto stesso gem Documentazione tecnica Q Paint 1 0 v 1 2 Pag 7 di 119 G anel Caratteristiche del programma Nella fase di stesura delle specifiche di programma si cercato di delineare quali fossero le caratteristiche funzionali indispensabili per rendere il QPaint un prodotto valido ed efficien te Grazie all esperienza accumulata nel tempo per mezzo di prodotti come QView si giunti a definire la seguente li
145. viene creato da QView nella fase di compilazione Ogni compilazione comporta un aggiorna mento di tale file per cui necessario effettuare un aggiornamento dei simboli ogni qual volta si sono apportate delle modifiche al file di configurazione CNF dell applicativo La sequenza corretta per essere sempre sincronizzati tra QView QMove e QPaint la seguente QView modificare il file di configurazione CNF dell applicativo QView compilare l applicativo QView effettuare il download dell applilcativo nella CPU del QMove QView salvare l applicativo U Aa WIN QPaint con Project Symbol Reference importare dalla directory dell applicativo il nuovo file simboli SYM creato da QView durante la compilazione Project Check Project Con questa voce di men si richiede a QPaint di eseguire il controllo del progetto Vediamo ora cosa si intende per controllo del progetto e perch sia necessaria questa operazione QPaint stato progettato per lasciare ampia libert nell impostazione delle propriet dei vari oggetti presenti in un progetto come eventi azioni ed oggetti grafici Ci a beneficio di una maggiore flessibilit nella realizzazione dello stesso infatti possibile impostare gli oggetti con simboli ancora da definire con immagini ancora da importare o creare ed altro ancora Pu anche accadere che simboli presenti inizialmente nel file simboli importato cambino di tipo gruppo di appartenenza o v
146. wnload Se durante questa fase viene riscontrato un errore la procedura di download termina sar possibile uscire dalla dialog Download Project tramite il pulsante OK La connessione seriale con il terminale Durante questa fase il QPaint verifica la comunicazione seriale con il terminale che deve trovarsi in modalit Download Configuration parametri di comunicazione sono quelli impostati in Options Communication e a cui si rimanda per ulteriori informazioni Se durante questa fase viene riscontrato un errore la procedura di download termina e sar possibile uscire dalla dialog Download Project tramite il pulsante OK La compilazione del progetto Durante questa fase il QPaint effettua la compilazione del progetto e crea il file da trasferire al terminale Se durante questa fase viene riscontrato un errore la procedura di download termina sar possibile uscire dalla dialog Download Project tramite il pulsante OK La cancellazione della memoria nel terminale Durante questa fase il QPaint effettua l azzeramento della memoria del terminale in cui verr memorizzato il progetto compilato Se durante questa fase viene riscontrato un errore la procedura di download termina sar possibile uscire dalla dialog Download Project tra mite il pulsante OK Le operazioni effettuate nel terminale non verranno annullate Documentazione tecnica Q Paint 1 0 v 1 2 Pag 35 di 119 G anel Ulteriori inform
Download Pdf Manuals
Related Search
Related Contents
太陽電池セル・モジュール測定申込書 記載例 mensuel - Ville de Rezé Samsung DV100 Керівництво користувача EasyMatch User Manual Untitled - Lidl Service Website RECEPTOR ÓPTICO OPTICAL RECEIVER CPP - eNews Copyright © All rights reserved.
Failed to retrieve file