Ottimizzare L'applicazione

Ogni calcolo richiede un certo tempo di calcolo. Questo può causare problemi quando si realizzano progetti molto grandi o operazioni più grandi. Il tempo di ciclo complessivo può essere visualizzato attivando il monitor del sistema in alto a destra.

Prestare attenzione alla coda dei supporti dati. La coda viene utilizzata solo quando i dati non possono più essere letti e scritti contemporaneamente. Questo è particolarmente evidente nei grandi progetti o con l'hardware sbagliato. La coda non dovrebbe mai superare il 1% durante il normale funzionamento.

Funzionamento Dell'applicazione

Per comprendere il test delle prestazioni, è necessario prima spiegare il funzionamento dell'applicazione. Oltre alle basi sul tempo di ciclo, ci sono anche metodi avanzati che sono stati implementati solo nel PLC di Antcas:

  • Se non vengono rilevate modifiche in un elemento, l'intero elemento viene parcheggiato e non calcolato.
  • In caso di modifica dei valori globali, viene eseguito un doppio ciclo. Il PLC attende quindi solo una millisecondo.
  • Vengono impostati i time-out per il calcolo dei valori critici nel tempo.
  • La comunicazione in uscita (invio o salvataggio di valori) avviene in modo asincrono e non dopo il completamento del calcolo.
  • Ogni variabile è remanente e viene salvata prima del parcheggio o al più tardi dopo due secondi.

Analisi Di Un Progetto

Per scoprire quali elementi dell'applicazione richiedono un'elevata potenza di calcolo, può essere utilizzato il test delle prestazioni.

Consigli Per L'ottimizzazione

  • Non utilizzare l'uscita ET di un timer TON, TOF, TP. Invece, è possibile lavorare con UPTIME.
  • L'ingresso SET di VISUSET e VISUDTSET non dovrebbe mai rimanere attivo contemporaneamente su più blocchi funzionali.
  • Eseguire calcoli più grandi o complessi, se possibile, in un elemento separato.
  • Eseguire operazioni matematiche con CALCULATE.
  • Utilizzare logger con intervalli il più grandi possibile. Dieci minuti sono più che sufficienti per una temperatura. L'intervallo può essere impostato anche dinamicamente.
  • Utilizzare intervalli più elevati PT nei blocchi funzionali CTRL_PID, SHUTTER, DIMMER ecc.
  • Quando si modificano le impostazioni temporali dinamiche, assicurarsi che non cambino continuamente. Questo può accadere ad esempio con le sequenze RGB utilizzando il blocco funzionale FADE.
  • Semplificare i compiti più complessi. In particolare, la ricerca nelle stringhe è molto intensiva dal punto di vista del calcolo. Utilizzare il blocco funzionale EXPLODE o PREG_SPLIT invece di FIND e SUBSTR. I valori vengono memorizzati temporaneamente di conseguenza.
  • L'elaborazione delle richieste HTTP può utilizzare molta memoria.
  • Ridurre i telegrammi ricevuti. Ad esempio, quando si regola la luminosità di un valore, a seconda del sistema bus, il feedback può essere ritardato.
  • Aumentare I tempi di ciclo del PLC.