Vai al contenuto
PLC Forum


Fermare programma in esecuzione


foscolippo

Messaggi consigliati

Buon giorno, premetto che non sono esperto di Plc, avrei bisogno a fronte di una temporizzazione scaduta  di fermare il programma in esecuzione , come posso fare.

Ringrazio tutti per l'eventuale aiuto.

Link al commento
Condividi su altri siti


GRAZIE per la risposta, il modello è cj1m, in pratica il plc in questione gestisce un presepe di una parrocchia, ad una certa fase mi serve stoppare il programma a fronte di un timer che scade, per evitare che alcuni meccanismi che non si siano fermati nei dovuti modi si rompano, il presepe non deve ripartire se non dopo l'intervento di un operatore

grazie

Link al commento
Condividi su altri siti

Ciao,

Non devi fermare il programma, ma piuttosto tagliare le uscite del plc (oppure togliere alimentazione al plc) mettendo un timer orario giornaliero esterno al plc.

 

P.s. se metti in stop la CPU, poi ti serve un PC con cx programmer per rimetterlo in run.

 

Ciao

Link al commento
Condividi su altri siti

12 ore fa, foscolippo ha scritto:

il presepe non deve ripartire se non dopo l'intervento di un operatore

grazie

 

Fai partire il timer alla scadenza cicli su di un loop in attesa che venga dato il comando manuale, ovvero leggi l'ingresso del comando, se l'ingresso è attivo prosegui altrimenti torni a leggere l'ingresso.

Link al commento
Condividi su altri siti

5 ore fa, Livio Orsini ha scritto:

Fai partire il timer alla scadenza cicli su di un loop in attesa che venga dato il comando manuale

È un PLC, in questo modo fai intervenire il watch dog e ti va in stop.

 

Basta fare come suggerito da @sonnyb: con il tempo scaduto si disattivano le uscite. Con l'intervento dell'operatore si resetta il timer.
Chi ha sviluppato il programma che gestisce tutti i movimenti del presepe, sa benissimo come fare.
Se il programma deve essere ancora sviluppato e se ne deve occupare chi ha posto la domanda, la vedo dura, perché ci sono cose ben più complicate della gestione di un timer, soprattutto se alcuni movimenti devono essere arrestati in una posizione ben precisa e se ci sono dei cicli.

Se si tratta solo di abilitare/disabilitare dei comandi allo scadere di un tempo, non serve nemmeno un PLC.

Per evitare che i movimenti rimangano attivi inutilmente, basta un sensore di movimento (tipo quelli degli impianti d'allarme) o una fotocellula per rilevare la presenza di persone. Se non c'è nessuno, dopo un minuto si spegne tutto. Quando arriva qualcuno, si fa ripartire.

Link al commento
Condividi su altri siti

3 ore fa, batta ha scritto:

È un PLC, in questo modo fai intervenire il watch dog e ti va in stop.

 

Basta farlo nell'equivalente dell'OB1, all'inizio del blocco fai il test dell'ingresso, se è falso salti alla fine del blocco così che ricicla; il watch dog viene resettato e non interviene.

Link al commento
Condividi su altri siti

7 ore fa, Livio Orsini ha scritto:

il watch dog viene resettato e non interviene.

Non interviene il watch dog, ma non elabori più tutto quello che c'è in mezzo. Se un'uscita è alta, rimane alta.

Link al commento
Condividi su altri siti

7 ore fa, batta ha scritto:

ma non elabori più tutto quello che c'è in mezzo. Se un'uscita è alta, rimane alta.

 

Le condizioni di come devono essere le uscite le stabilisci al momento della scadenza del timer. Non ho nessuna intenzione di entrare nei particolari anche perchè, come hai già evidenziato tu, non conosciamo i dettagli di quello che dovrebbe fare l'automaione.

Però i casi in cui l'elaborazione del programma deve fermarsi in attesa di un evento esterno, non sono poi così rari anche se, personalmente, preferisco evitarli.

Link al commento
Condividi su altri siti

Il 20/12/2023 alle 07:25 , Livio Orsini ha scritto:

 

Le condizioni di come devono essere le uscite le stabilisci al momento della scadenza del timer. Non ho nessuna intenzione di entrare nei particolari anche perchè, come hai già evidenziato tu, non conosciamo i dettagli di quello che dovrebbe fare l'automaione.

Però i casi in cui l'elaborazione del programma deve fermarsi in attesa di un evento esterno, non sono poi così rari anche se, personalmente, preferisco evitarli.

grazie

Il 19/12/2023 alle 23:40 , batta ha scritto:

Non interviene il watch dog, ma non elabori più tutto quello che c'è in mezzo. Se un'uscita è alta, rimane alta.

grazie

Link al commento
Condividi su altri siti

Non seguire questa strada, segui i consigli di @sonnyb.

Nei PLC i salti si usano, ma non è questo il modo migliore per il tuo caso.
Per ora devi fare solo questo, ed anche il salto potrebbe andare bene.
E se domani devi aggiungere un'altra condizione, dove la metti?
Non dentro al salto, perché non verrebbe elaborata.
Fai un'altra routine separata? E se devi agire ancora nella routine che hai scritto ma avessi bisogno di intervenire su alcune uscite sì e su altre no?

I salti servono per altre cose.
 

Link al commento
Condividi su altri siti

  • 2 weeks later...

Secondo me mettere in Stop il programma è il modo migliore per far sentire ai protagonisti del presepio cose che non dovrebbero mai sentire 🤣🤣

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