drugo66 Report post Posted November 30 Salve a tutti, sto utilizzando una funzione scritta da un collega per rilevare la cadenza di una linea; la funzione utilizza TIME_TCK e, all'avvio del conteggio, salva in una variabile TIME il tempo di avvio; terminato il ciclo effettua una differenza con T_DIFF ottenendo così la cadenza. Ogni tanto la cadenza rimane a zero, nonostante abbia tutte le condizioni per effettuare un conteggio valido; la funzione mi sembra corretta; quello che ho notato è che in quel momento la TIME_TCK ritorna sempre un tempo maggiore al giorno; siamo in cantiere, quindi spesso effettuo modifiche e ricarico dei blocchi (non vorrei dipendesse da questo, anche se non credo); se mando in Stop la CPU e poi la riavvio il tutto torna a funzionare. Stamattina non ho avuto molto tempo per guardarci, ma ho voluto provare a sostituire la T_DIFF con una semplice differenza (operazione -) e funziona ugualmente: la prossima settimana spero di avere più tempo e capirò sicuramente se era quello il problema; purtroppo al momento non ho il codice sottomano, altrimenti l'avrei postato. Volevo sapere se a qualcuno era mai capitata una cosa simile e come aveva rimediato; ripeto, la funzione mi sembra corretta: in fin dei conti si limita a "congelare" un momento specifico e poi effettuare una semplice differenza; siamo anche a fine settimana e, magari, sono cotto come una pera e non ho visto il bug ... Quote Share this post Link to post Share on other sites
batta Report post Posted November 30 Attenzione che TIME_TCK arriva fino a 2147483647 e poi riparte da zero. Ma non so se sia questo il tuo problema. Quote Share this post Link to post Share on other sites
drugo66 Report post Posted December 2 No, non credo, Batta; in quel caso avrei salvato un tempo di avvio altissimo, il risultato della differenza non riuscirei a visualizzarlo sul pannello, ma riuscirei comunque a vederlo dallo stato nel PLC; in ogni caso, al limite, dopo un ciclo si dovrebbe riprendere. Purtroppo anche oggi ho avuto poco tempo per verificare, ma, in compenso, non ha fatto il difetto: domani, se riesco, ne saprò di più ... Quote Share this post Link to post Share on other sites
drugo66 Report post Posted December 4 Dopo aver sostituito la T_DIFF con una semplice differenza, il conteggio non si è più bloccato ... almeno fin'ora. Quote Share this post Link to post Share on other sites