Vai al contenuto
PLC Forum

Partecipa anche tu alla Live su Youtube martedì 28/01/2025 per festeggiare i 24 anni di PLC Forum

Per ulteriori informazioni leggi questa discussione: https://www.plcforum.it/f/topic/326513-28012025




WINCC Flexible Script: Aggiornamento variabili PLC


Messaggi consigliati

lupusimprobus
Inserito:

Buongiorno a tutti.
Ho realizzato uno script lato pannello operatore (WinCC Flexible TIA TP900 Comfort) che va a leggere un array di interi (circa un migliaio) per scriverli in un file di testo.
Il ciclo funziona nel modo seguente:

 1 ) Nel programma PLC:

   a ) Scrivo i dati nell'array di interi;

   b ) Setto un bit per avviare lo script sul pannello operatore

 2 ) Nel pannello operatore:

   a ) Il bit che avvia lo script è messo in lettura continua (1 s)

   b ) Al cambio di valore del bit avvio lo script

   c ) Nello script valuto che il bit di comando sia true (per evitare che venga ripetuto lo script anche quanto il bit cambia valore per tornare False)

   d ) eseguo lo script che legge il valore degli interi e li scrive nel file di testo.

 

1) Se imposto la variabile Dati : "Array[1..999] of INT" non in lettura continua ovviamente il pannello operatore non andrà mai a leggere i valori dal PLC ed otterrò tutti ZERO.

2) Se la imposto in lettura continua (1 s) devo attendere più di un secondo dopo aver scritto i dati all'interno del DB del PLC prima di settare il bit di avvio dello script, per essere sicuro che il pannello abbia i dati aggiornati da scrivere.

 

Con la versione 2) lo script funziona correttamente ma trovo poco efficiente mantenere sempre attiva la lettura di tutto l'array ogni secondo anche quando il ciclo non lo richiede.

E' possibile aggiornare l'array direttamente dallo script in modo da andare a leggere i dati solo quando serve?

In alternativa potrebbe essere valido settare l'array con aggiornamento "su richiesta" e richiamare la funzione "Aggiorna variabile" solo al cambio di valore del bit che comanda l'avvio dello script?

 

Grazie per ogni suggerimento.

Buona giornata a tutti, Valerio.


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...