Vai al contenuto
PLC Forum


Ktp 400 Chiamare Pagina Contestuale


paoloixp

Messaggi consigliati

Da poco mi sono cimentato nello sviluppo di un sistema di automazione con la cpu 1212 e un ktp 400, per visualizzare lo stato di un determinato evento dovrei cambiare la pagina sul ktp 400 contestualmente al processo in esecuzione, frugando nel sistema di informazione ho trovato i puntatoriri di area di pagina che però non sono proprio sicuro sia la strada da giusta per risolvere il mio problema

Qualcino mi può dare indicazioni come è possibile cambiare una pagina sul ktp 400 mediante una chiamata da plc?

Link al commento
Condividi su altri siti

  • 2 weeks later...

Ciao,

Anche io di recente ho avuto la necessità di cambiare o meglio richiamare una pagina del KTP 400 mediante una variabile del PLC.

Dopo qualche tentativo, sono approdato a questa soluzione:

Ho creato nel PLC una variabile di tipo INT nel quale muovo quando voglio richiamare la pagina un valore uguale al numero della pagina da richiamare.

Nelle variabili del KTP ho creato una variabile che punta a quella del PLC ed al quale nelle proprietà>eventi ho assegnato la funzione "AttivaPaginaConNumero".

Pertanto ogni volta che nella variabile di richiamo muovo il numero della pagina che voglio visualizzare, sul KTP mi appare la relativa Pagina.

Se non è molto chiaro ciò che ho scritto, ti posto un esempio che è molto più intuitivo.

Modificato: da baltimora
Link al commento
Condividi su altri siti

Grazie mille, appena mi è possibile provo la tua soluzione, in effetti su pannelli operatore ESA con plc rckwell utilizzavo una modalità analoga si assegna una variabile, in quel caso una parola il cui valore numerico corrispondeva alla pagina,, cambiando il valore della variabile si cambiava pagina (molto sinteticamente) .

Mi resta comunque il dubbio se sia possibile utiizzare i puntatori per fare questa operazione.

appena possibile ti faccio sapere

Link al commento
Condividi su altri siti

Ti ringrazio del link ma la la soluzione che mi hai indicato è la più semplice da attuare, oggi ho provato con le indicazioni che mi hai dato e purtroppo la cosa non funziona sicuramente mi è sfuggito qualcosa che ad ora non sono ancora riuscito a capire.

ecco i passaggi :

creato variabile int sulle variabili plc

creato variabil su KTP in una nuova tabella la variabile di tipo int collegata con variabile int creata sul plc

nella cartella eventi ho settato Attiva pagina con numero

alla voce numero di pagina ho inserito la variabile del plc assegnata al numero di pagina

creato due segmenti con contatto del selettore manuale e automatico che a sua volta gestiscono una istruzione move dove carico sulla variabile il valore corrispondente al numero di pagina automatico o manuale.

On line vedo il valore della variabile cambiare ma il KTP non si muove.

Mi è sfuggito qualcosa?

Link al commento
Condividi su altri siti

I passaggi mi sembrano quelli corretti.

Forse facciamo prima con un esempio. Ti inserisco un esempio sia di come richiamare diverse pagine mediante una variabile dal PLC e su una di questa come creare una finestra popup.

Spero che ti siano utili.

Un ringraziamento a Batta

http://www.noviltec....inestre_HMI.rar

Modificato: da baltimora
Link al commento
Condividi su altri siti

Il metodo di richiamare la pagina con la funzione "AttivaPaginaConNumero" programmata come evento "Cambio valore" della variabile stessa, è apparentemente il più semplice ma, perché il sistema funzioni, la variabile contenente il numero di pagina da visualizzare deve essere posta in una pagina attiva.

Questo significa che si potrebbe mettere in una o più pagine modello, se le pagine modello sono utilizzate da tutte le pagine.

Se una o più pagine non utilizzano nessun modello, la variabile deve essere posta anche in queste pagine.

Il concetto è semplice: se la variabile non è presente nella videata, non viene aggiornata e, quindi, il pannello non si accorge se cambia valore.

Perché funzioni, basta che la variabile sia presente. Per esempio, si può essere di dimensioni di un solo pixel, e con colori uguali allo sfondo.

Quindi, a mio avviso, se tutte le pagine utilizzano un modello, questo metodo risulta essere semplice e veloce.

Nel caso di progetti con diversi modelli di pagina e/o con pagine che non utilizzano il modello, piuttosto che preoccuparsi di mettere la variabile ovunque serva, penso sia conveniente passare all'utilizzo dei puntatori area.

L'utilizzo dei puntatori area garantisce il funzionamento senza doversi preoccupare dell'aggiornamento della variabile, e consiste nell'utilizzare il puntatore area "Ordine di controllo".

Per l'utilizzo del puntatore area "Ordine di controllo" si deve procedere come segue:

- creare in un DB una variabile di tipo Array lunga 4 word (o INT)

- compilare il DB

- nella cartella "Collegamenti" dell'HMI, nella scheda "Puntatore di area" abilitare il puntatore "Ordine di controllo" e collegarlo alla variabile del DB

Il puntatore "Ordine di controllo" è composto da 4 variabili (WORD o INT)

La prima variabile contiene il codice dell'ordine

Le altre tre variabili contengono tre parametri.

Per richiamare la pagina desiderata, le quattro variabili del puntatore "Ordine di controllo" devono essere impostate come segue:

Prima variabile (codice ordine): 51

Seconda variabile (parametro 1): Numero della pagina

Terza variabile (parametro 2): non utilizzata con questo comando

Quarta variabile (parametro 3): numero del campo sul quale si vuole impostare il focus (se lasciato a zero, viene attivato il campo 1)

Quindi, se non interessa il campo, una volta configurato il puntatore area "Ordine di controllo", per richiamare una pagina basta impostare 51 nella prima variabile, e il numero di pagina nella seconda variabile.

Le variabili verranno riportate a zero dal sistema.

Il puntatore area "Numero di pagina" non può essere utilizzato (come invece pensavo prima di provare) per richiamare una pagina, ma solo per far sapere al PLC il numero della pagina attiva.

Link al commento
Condividi su altri siti

  • 2 weeks later...

Un ringraziamento A Baltimora e a Batta per la documentazione e per gli approfondimenti chiedo scusa del ritardo ma ero impegnato su altri fronti.

In effetti il percorso che avevo fatto era corretto l'errore che avevo commesso (penso ) è stato quello di non spuntare durante il caricamento la voce "sovrascivi tutto" dopo aver spuntato questa voce ed eseguito il caricamento le chiamate venivano eseguite.

Con riferimento a quanto illustrato da batta nel mio caso la variabile di riferimento numero di pagina si trova nel plc ed è il plc che modifica la variabile in base agli eventi sul campo .

Devo riconoscere che le soluzioni proposte da Batta sono decisamente molto più professionali e mi inchino umilmente alla conoscenza che Batta ha del sistema..

Ora però nel destreggiarmi nella chiamata di pagine e pulsanti touch mi è capitato una cosa piuttosto strana

se in un pulsante touch associato ad un bit del plc(premi -imposta bit con tasto attivato) faccio eseguire un comando sul campo e nello stesso momento nella logica del plc comando la chiamata ad un altra pagina, i comandi vengono eseguiti correttamente ma il bit associato al pulsante mi rimane a livello logico 1 permanentemente e non c'è possibilita di azzerarlo.

Momentaneamente ho superato il problema evitando di chiamare la pagina medianta la pressione del pulsante demandando la chiamata della pagina ad un altro evento.

Probabilmente da neofita del sistema ho commesso qualche trascuratezza?

Link al commento
Condividi su altri siti

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 account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...