Vai al contenuto
PLC Forum


Dubbio su KOP


Cip77

Messaggi consigliati

Buongiorno a tutti ragazzacci, scusate la genericità del titolo, ma non ho trovato un titolo migliore.

 

Ho una vergognosa lacuna: 

image.png.22a610d2cd55b3f6e3d92af92d94eb5c.png

 

image.thumb.png.d678b5cce5d35de522cdf927d2590327.png

 

I due segmenti che ho postato sopra (sono il solito modificato), funzionano entrambi per quanto riguarda la valorizzazione di "Appoggi".TempoPassato (si ho notato l'errore, dopo lo modifico ;) ) di tipo TIME, ma non funzionano le due istruzioni dopo, infatti M500.1 non viene mai settato.

 

Per farlo funzionare devo metterlo esterno al fronte di salita, allora funziona.

 

image.png.f4ba3da4c5bfd32d6366b9226bdefba1.png

 

Però non capisco il perché.

Grazie per l'eventuali info.

 

Claudio.

Link al commento
Condividi su altri siti


Ciao, 

 

la prima prova che farei io se fossi al tuo posto sarebbe quella di provare a levare per un attimo quel fronte di M0.1 mettendo solo il contatto NO.

In seguito poi all'elaborazione di T_DIFF, oltre al SET di M500.1 metterei il RESET di M0.1. Cosi almeno sapresti se il problema è dovuto alla mancata alzata di ENO di T_DIFF in una scansione (a prima vista sembrerebbe proprio cosi). 

Link al commento
Condividi su altri siti

1 ora fa, step-80 ha scritto:

Ciao, 

 

la prima prova che farei io se fossi al tuo posto sarebbe quella di provare a levare per un attimo quel fronte di M0.1 mettendo solo il contatto NO.

In seguito poi all'elaborazione di T_DIFF, oltre al SET di M500.1 metterei il RESET di M0.1. Cosi almeno sapresti se il problema è dovuto alla mancata alzata di ENO di T_DIFF in una scansione (a prima vista sembrerebbe proprio cosi). 

Ma nella prima prova, sul fronte di salita di M0.1 RD_SYS_T e T_DIFF vengono elaborati correttamente. Solo l'operatore > ed il set vengono ignorati, come se nel frattempo il fronte si fosse resettato.

Claudio.

Link al commento
Condividi su altri siti

Quote

Ma nella prima prova, sul fronte di salita di M0.1 RD_SYS_T e T_DIFF vengono elaborati correttamente

 

Questo può essere, ma non hai la certezza che ENO si alzi, anzi è sicuro perchè le istruzioni dopo non vengono eseguite. Ricordo che non è la prima volta che esce questa questione di EN e ENO su Funzioni elaborate con fronti. Fai questa prova, non costa nulla, e poi facci sapere

Link al commento
Condividi su altri siti

4 ore fa, Cip77 ha scritto:

come se nel frattempo il fronte si fosse resettato.

questo mi sa al quanto di impossibile.

se il fronte avviene, rimane tale per tutta la scansione.

io farei la seguente prova:

metti un istruzione move prima del confronto se tempo passato > 3s, e lo copi in una tag di timo time qualsiasi

con il move fatto un solo ciclo vedi che valore ha assunto la tua tag, secondo me non è > di 3S

Link al commento
Condividi su altri siti

@alessandropadavamo tutti per scontato che il valore di Appoggi.TempoPassato fosse >3s altrimenti @Cip77è caduto in un banale errore di distrazione. 

 

Però la questione è un'altra: lui afferma che mettendo il confronto fuori da ENO la variabile M0.1 viene settata, per questo ho dato per scontato che il tempo fosse >3s.

Link al commento
Condividi su altri siti

16 minuti fa, step-80 ha scritto:

Però la questione è un'altra: lui afferma che mettendo il confronto fuori da ENO la variabile M0.1 viene settata, per questo ho dato per scontato che il tempo fosse >3s

certo, ma non sai quando il confronto è verificato, potrebbe essere un ciclo dopo rispetto al fronte.

mettendolo fuori dal fronte, si puo verificare in qualsiasi momento.

proprio per questo io metterei un move dentro il fronte per capire in quel preciso ciclo che valore assume

Link al commento
Condividi su altri siti

@alessandropascusa ma se nella prima immagine si vede chiaramente che M500.1 viene settato se Fronte ON e tempo>3s. Se fai un move vedrai un tempo >3 secondi, se lo fosse una scansione dopo non succederebbe nulla. Il problema secondo me sta nella salita di ENO. Quello si che potrebbe alzarsi dopo(ed in tutta probabilità lo fa). Siamo sicuri che l'istruzione venga eseguita correttamente? 

Link al commento
Condividi su altri siti

11 ore fa, Cip77 ha scritto:

I due segmenti che ho postato sopra (sono il solito modificato), funzionano entrambi per quanto riguarda la valorizzazione di "Appoggi".TempoPassato (si ho notato l'errore, dopo lo modifico ;) ) di tipo TIME, ma non funzionano le due istruzioni dopo, infatti M500.1 non viene mai settato.

 

Per farlo funzionare devo metterlo esterno al fronte di salita, allora funziona.

No lui dice che nei primi due segmenti non va!!!!! Sia che lo metta dopo l'eno sia che lo metta in un ramo sotto.

 

Poi dice, per farlo funzionare devo metterlo esterno......

 

Per me è il confronto che non è verificato 

Link al commento
Condividi su altri siti

3 ore fa, step-80 ha scritto:

@alessandropascusa ma se nella prima immagine si vede chiaramente che M500.1 viene settato se Fronte ON e tempo>3s. Se fai un move vedrai un tempo >3 secondi

Inoltre, scusa ma come vedi tutto questo da una foto offline?

 

Link al commento
Condividi su altri siti

Scusate, non ho molto tempo per fare prove, appena posso le faccio.

Penso anche io che sia come dice Alessandro. Al momento del fronte, la variabile non ha ancora preso il valore. L'unica soluzione che mi viene in mente è quella che ho adottato: mettere il test fuori per farlo ad ogni scansione.

 

Comunque appena posso, faccio qualche test.

 

Claudio.

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