jake Inserito: 23 agosto 2012 Segnala Inserito: 23 agosto 2012 Ciao a tutti, in questo momento mi trovo ad affrontare la programmazione di un pannello operatore per zona Atex della Pepperl & Fuchs, il sistema in questione è il Termex 230 collegato via Modbus/RTU ad un terminale Sartorius del tipo Combics Pro. Il collegamento fra i due dispositivi funziona bene , ora devo fare in modo che il pannello P&F sia in grado di passare da una pagina all'altra al cambio del valore di una variabile di tipo INT. Tramite l'editor degli script, fornito da P&F, ho scritto degli script che secondo me dovrebbero funzionare , ma quando lancio il runtime del pannello per fare i test, le cose non girano per il verso giusto - o meglio non girano proprio . Qualcuno di voi ha esperienza con questo tipo di pannelli e ha qualche esempio da postarmi? Ho provato a contattare il service support, ma fino a settimana prox non c'è niente da fare. Grazie in anticipo a tutti coloro che sapranno darmi delle informazioni preziose. P.S. quoto un pò di codice per farvi vedere cosa ho fatto: void __task TruckPhase_gotoStatus(){ while(1) { if( TrkPhase > 30 ) { dpy_set_screen(Status); } } } Saluti Good Luck, Jake
jake Inserita: 24 agosto 2012 Autore Segnala Inserita: 24 agosto 2012 Ho risolto di seguito riporto il codice void __task TruckPhase_gotoStatus(){ int PhasePLC = 1; var_receive_from_plc(TrkPhase); while(1) { PhasePLC = var_get_int(TrkPhase); // Read new value if( PhasePLC > 30 ) { dpy_set_screen(Status); } } } in pratica ho dovuto creare una variabile d'appoggio PhasePLC sulla quale copio il valore della variabile ricevuta dal PLC. Questo è dovuto perchè le variabile vengono aggiornate solo quando sono visualizzate a video, nel mio caso,lavariabile che utilizzo per il cambio della pagina - appunto - non è visualizzata, allora bisogna ricorrere alla funzione var_receive_from_plc() per aggiornare la variabile posta all'interno delle parenesi tonde, inoltre a questa funzione bisogna abbinare la funzione var_get_int() che va assolutamente posizionata all'internodi un ciclo while in modo che questa venga aggiornata ciclicamente. Good Luck, Jake
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora