Vai al contenuto
PLC Forum


Sovrascrivere VALORE DI AVVIO di una variabile allo spegnimento del PLC


unknowjuzam

Messaggi consigliati

Salve a tutti,

come da titolo stavo cercando il modo di sovrascrivere il valore di avvio di una variabile (Int ,Real, ecc...) dichiarata dentro una DB al momento dello spegnimento fisico del PLC. Non sto qua a spiegare i motivi, però diciamo che ho una variabile che cambia nel tempo e devo "salvarla" nel valore di avvio al momento dello spegnimento, a prescindere se è o meno a ritenzione. Al momento non so se è fattibile, qualcuno ha qualche idea? 

Grazie mille

Modificato: da unknowjuzam
Link al commento
Condividi su altri siti


Devi intercettare il momento in cui il PLC rileva un abbassamento del livello di tensione di alimentazione del PLC mi sembra ci sia un errore che si genera e devi usare quello per realizzare quello che necessiti

Link al commento
Condividi su altri siti

Per prima necessiti di un rivelatore sull'alternata che riveli che l'alimentazione è sparita. Con questo rivelatore vai ad agire su di un ingresso veloce legato ad un interrupt Hw. La routine di servizio dell'interrupt provvede al salvataggio dei valori.

Poi tutto dipende dal tempo che i condensatori dell'alimentatore riescono a mantenere viva la CPU.

 

Questo se la mancanza di rete è dovuta ad un evento anomalo.

Differente se la sequenza di spegnimento segue l'iter corretto. prima dello spegnimente dovrà essere comandato lo stop e, con questo comando, puoi effettuare la sequenza di memorizzazione.

Link al commento
Condividi su altri siti

  • 3 weeks later...

Buongiorno a tutti.

Se ad ogni scansione del PLC memorizzi la variabile in un DB ritentivo, alla riaccensione, con il bit di sistema First scan vai a sovrascrivere la variabile con il contenuto del DB

Link al commento
Condividi su altri siti

Non mi risulta ci sia una istruzione che scrive un valore di avvio, del resto se la DB è ritentiva quando spegni il plc alla sua accensione il valore di quella DB non è cambiata quindi non ne capisco molto il senso.

Esistono delle istruzioni che posso scrivere e leggere una DB dalla memory card, quindi potresti allo spegnimento scrivere sulla memory e all'avviamento leggere il valore dalla memory card. Secondo me però non è consigliabile perchè se durante lo spegnimento il plc non riesce a scrivere sulla memory rischi di corrompere tutto.

Link al commento
Condividi su altri siti

Il 3/5/2022 alle 15:23 , acquaman ha scritto:

del resto se la DB è ritentiva quando spegni il plc alla sua accensione il valore di quella DB non è cambiata quindi non ne capisco molto il senso.

 In effetti la intendo anche io così...

Link al commento
Condividi su altri siti

Il 3/5/2022 alle 15:23 , acquaman ha scritto:

Non mi risulta ci sia una istruzione che scrive un valore di avvio

C'è l' OB dedicato o se preferiscipuoi dichiarare un merker di first scan , che è appunto a 1 solo il primo scan

Link al commento
Condividi su altri siti

2 ore fa, STEU ha scritto:

C'è l' OB dedicato o se preferiscipuoi dichiarare un merker di first scan , che è appunto a 1 solo il primo scan

Cosa centra quello è il bit di prima scansione, io parlavo di un comando per copiare i valori attuali di una DB nei suoi valori di avvio.

Link al commento
Condividi su altri siti

Quando si salva un blocco dati nella memoria di caricamento con WRIT_DBL, sono quasi sicuro che venga copiato il valore attuale nel valore di avvio.

Ma, come già detto da @acquaman, soprattutto eseguendo l'istruzione in fase di spegnimento della CPU, c'è il rischio di ritrovarsi con dati corrotti.
Si dovrebbe capire perché @unknowjuzam voglia scrivere nei valori di avvio, e non si accontenti della ritenzione.
Ma, in tutta la discussione, pare che il grande assente sia proprio @unknowjuzam.

Che poi, sia dal nikname, sia dalla partecipazione nel forum, l'impressione è che sia un utente "mordi e fuggi".

Link al commento
Condividi su altri siti

Oggi è il 5 maggio, la discussione èstata aperta il 15 aprile.

In 20 giorni l'autore ha scritto solo quel messaggio, sembra proprio che si sia dimenticato della discussione, quindi la chiudo. Se l'autore ha ancora dell'interesse mi mandi un messaggio che la riapro.

Link al commento
Condividi su altri siti

  • Livio Orsini locked this discussione
Ospite
Questa discussione è chiusa alle risposte.
×
×
  • Crea nuovo/a...