plfrmcmp83 Inserito: 23 marzo 2021 Segnala Share Inserito: 23 marzo 2021 Buongiorno, quando un programma viene aggiornato per gestire ulteriori I/O in che modo si può prevedere quale sarà il nuovo tempo ciclo? Se il ciclo safety si attesta sui 100 ms, come si comporterà dopo la modifica? Con Tia Selection Tool è possibile simulare il comportamento? Link al commento Condividi su altri siti More sharing options...
walterword Inserita: 24 marzo 2021 Segnala Share Inserita: 24 marzo 2021 il programma safety dovrebbe girare su un task di priorità. Link al commento Condividi su altri siti More sharing options...
Mattia Spoldi Inserita: 24 marzo 2021 Segnala Share Inserita: 24 marzo 2021 (modificato) 19 ore fa, plfrmcmp83 scrisse: quando un programma viene aggiornato per gestire ulteriori I/O in che modo si può prevedere quale sarà il nuovo tempo ciclo? Una volta c'erano dei file excel di siemens che facevano un conto a spanne, adesso non saprei, comunque dipende sempre da quante cose aggiungi e da come le gestisci. Se dovessi aggiungere una scheda 8 DI e la logica per gestirli, non mi preoccuperei troppo, se le schede fossero 20 magari potrei pensare di cambiare taglia alla CPU. 19 ore fa, plfrmcmp83 scrisse: Se il ciclo safety si attesta sui 100 ms, come si comporterà dopo la modifica? 100 ms sono la durata del ciclo?? Secondo me 100ms è ogni quanto il ciclo viene eseguito, il ciclo durerà qualche ms. Se aggiungi poca roba, durerà sempre poco e verrà lanciato ogni 100ms, se ne aggiungi altra, partirà sempre ogni 100ms ma durerà di più. Modificato: 24 marzo 2021 da Mattia Spoldi Link al commento Condividi su altri siti More sharing options...
acquaman Inserita: 24 marzo 2021 Segnala Share Inserita: 24 marzo 2021 Come dice Walterwond la sefety gira in un task a tempo con priorità più alta con un tempo ciclo di 100ms, per tanto grande sia il programma in ob1, ogni 100ms viene interrotto e viene processato il task del safety, poi riparte il programma in ob1 da dove si è interrotto. non ho mai fatta i calcoli, ma secondo me non c'è abbastanza memoria per contenere un programma che gira in più di 100ms su un 1500. Link al commento Condividi su altri siti More sharing options...
walterword Inserita: 25 marzo 2021 Segnala Share Inserita: 25 marzo 2021 si infatti è cosi. tutt'al più il tempo ciclo safety dipende da quanta logica deve processare. Stessa cosa per il programma non safety. Personalmente che mi ritengo un cretino di plc , non capisco a cosa serva fare questo calcolo.Anni fa qualcuno diceva che SCL rallentava il ciclo plc. Io uso ed insegno scl dal 2001 e non ho mai avuto problemi. I problemi li ho avuto con i dementi che per ogni cosa lampadina compresa usavano puntatori che salvavano e ripescavano in ogni FC, che usavano FB con 300 FB annidati. Li ho avuto problemi ed ho buttato tutto nel cesso e rifatto tutto. Tra l'altro molti impianti fatti da questi dementi sono tutt'ora inaccessibili , se provi ad andare online escono 3000 righe rosse e tutte le variabili statiche degli FB senza simbolico .......STAT - STAT - STAT e tempo di ciclo 150 mS ossia STOP DELLA CPU. I problemi che ho avuto in questi ultimi 21 anni sono stati quelli di non sapere cosa dovevo fare quando c'era il collaudatore o i processisti farlokki, Siamo sempre venuti fuori comunque ma senza mai aver avuto problemi legati al ciclo o alla memoria di lavoro-utente. In un paio di casi la memoria utente era difettata ed ho perso un po tempo per capirlo , non ti faceva connettere nemmeno in configurazione PC/PG e no nscaricavi nemmeno L'HW. comunque se vuoi prevedere devi guardare il manuale della tua cpu dove vengono riportati i tempi e quanti clock vengono usati per ogni istruzione. Stai tranquillo che se anche giri a 50 mS va tutto bene, certo è un po troppo e dipende da cosa devi fare. Il calcolo è più utile farlo quando devi richiamare diversi PID in un task di interrupt , li si che potresti sballare l'integrale e l'intera computazione. Puoi sempre usare dei merker come spia,li piazzi nei posti interessanti e fai dei calcoli con il tempo di scansione che trovi in formato LREAL con la funzione Runtime in TIA. Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora