AlbertoHT Inserito: 29 aprile 2024 Segnala Inserito: 29 aprile 2024 Ciao a tutti, sono alle prime armi e son nuovo nel forum. Ho necessità utilizzando il software eco struxure di schneider con CPU 340-20 di creare un ciclo pausa / lavoro. In poche parole tramite un pulsante voglio abilitare il un ciclo automatico. Con start abilito un timer di "lavoro" di xx tempo e poi allo scadere del tempo preimpostato deve iniziare un secondo timer di "pausa" e così via via in automatico fino a quando non viene premuto il pulsante di stop. Spero di essermi spiegato e che possiate aiutarmi. Grazie mille a tutti 🙂
max.bocca Inserita: 29 aprile 2024 Segnala Inserita: 29 aprile 2024 Non conosco il modello specifico, Comunque basta che metti due timer in cascata di cui il secondo resetta entrambi Puoi l'uscita T1 sarà ingresso abilitazione T1 & T1.q negato, mentre T2 sarà T1.q Spero che sono stato chiaro
batta Inserita: 29 aprile 2024 Segnala Inserita: 29 aprile 2024 Io di solito utilizzo un solo timer, al quale passo il preset di pausa o di lavoro, a seconda dello stato dell'uscita. Allo scadere del tempo cambio stato all'uscita e riavvio il timer.
AlbertoHT Inserita: 30 aprile 2024 Autore Segnala Inserita: 30 aprile 2024 12 ore fa, max.bocca ha scritto: Non conosco il modello specifico, Comunque basta che metti due timer in cascata di cui il secondo resetta entrambi Puoi l'uscita T1 sarà ingresso abilitazione T1 & T1.q negato, mentre T2 sarà T1.q Spero che sono stato chiaro Ciao, di seguito come ho scritto io il programma. Ti va di darci un occhio? Spero di esser stato chiaro. Grazie mille
AlbertoHT Inserita: 30 aprile 2024 Autore Segnala Inserita: 30 aprile 2024 11 ore fa, batta ha scritto: Io di solito utilizzo un solo timer, al quale passo il preset di pausa o di lavoro, a seconda dello stato dell'uscita. Allo scadere del tempo cambio stato all'uscita e riavvio il timer. Grazie mille
AlbertoHT Inserita: 30 aprile 2024 Autore Segnala Inserita: 30 aprile 2024 52 minuti fa, dina_supertramp ha scritto: Grazie della risposta, come l ho fatto io credi che non vada bene? scusa ma il tuo metodo non mi è molto chiaro. mea culpa!!
dina_supertramp Inserita: 30 aprile 2024 Segnala Inserita: 30 aprile 2024 (modificato) Ciao, Se hai "memoria start" parte il loop di timer. Se non hai "memoria start" i timer si arrestano e vengono resettati (indipendentemente da quale stia contando e a che punto del conteggio sia). Ho usato apposta i contatti dei TON per alimentare le bobine di Lavoro e Pausa, di modo che online hai una chiara interpretazione delle uscite .Q dei timer. Se non hai esperienza devi vederlo online, con tempi lunghi (5-10s), cosi ti si chiarisce il concetto di come lavorano le uscite dei timer IEC. Modificato: 30 aprile 2024 da dina_supertramp
AlbertoHT Inserita: 30 aprile 2024 Autore Segnala Inserita: 30 aprile 2024 2 minuti fa, dina_supertramp ha scritto: Ciao, Se hai "memoria start" parte il loop di timer. Se non hai "memoria start" il loop di timer si arresta all'istante e resetta i timer. Ho usato apposta i contatti dei TON per alimentare le bobine di Lavoro e Pausa, di modo che online hai una chiara interpretazione delle uscite .Q dei timer Se non hai esperienza devi vederlo online, con tempi lunghi (5-10s), cosi ti si chiarisce il concetto di come lavorano le uscite dei timer IEC. Se il tuo va bene o no? Ad occhio si, richiami due TOF in base alle condizioni da te scelte, poi come lavorano quelle condizioni e di conseguenza i timer che alimentano lo puoi sapere solo tu... Grazie mille!!!!!! Giovedì sarò dal cliente e provo. Speriamo in bene 🙂
max.bocca Inserita: 30 aprile 2024 Segnala Inserita: 30 aprile 2024 Come ti dicevo @dina_supertramp ha inteso bene, timer Ton ecc ecc. Questa è una delle possibili soluzioni.
max.bocca Inserita: 30 aprile 2024 Segnala Inserita: 30 aprile 2024 2 hours ago, dina_supertramp said: Io contatto Ton Pausa, si potrebbe non mettere... Non si aprirà mai
batta Inserita: 30 aprile 2024 Segnala Inserita: 30 aprile 2024 Qui sotto c'è il sorgente di una FB in testo strutturato. È stata sviluppata per Siemens ma, con qualche ritocco, dovrebbe essere facilmente trasportabile su qualsiasi PLC. Sì può anche impostare il modo di avvio: FALSE = partenza con pausa; TRUE = partenza con lavoro. Viene utilizzato un solo timer. FUNCTION_BLOCK "FB_PausaLavoro" { S7_Optimized_Access := 'TRUE' } VERSION : 0.1 VAR_INPUT Enable : Bool; END_VAR VAR_INPUT RETAIN StartMode : Bool; // 0=avvio con Pausa; =Avvio con Lavoro Prst_ON : Time; Prst_OFF : Time; END_VAR VAR_OUTPUT Out : Bool; END_VAR VAR xOut : Bool; xosEnable : Bool; osEnable : Bool; CambioStato : Bool; T_OnOff {InstructionName := 'TON_TIME'; LibVersion := '1.0'} : TON_TIME; END_VAR VAR_TEMP prst : Time; END_VAR BEGIN // Pausa/Lavoro IF NOT #Enable THEN #Out := #xOut := FALSE; #xosEnable := FALSE; #T_OnOff.IN := FALSE; RETURN; END_IF; // Rilevo fronte salita comando #osEnable := #Enable AND NOT #xosEnable; #xosEnable := TRUE; // Se è impostato modo start con lavoro, con fronte salita abilitazione // attivare comando IF #osEnable AND #StartMode THEN #xOut := TRUE; END_IF; // Imposta preset timer IF #xOut THEN #prst := #Prst_ON; ELSE #prst := #Prst_OFF; END_IF; #T_OnOff(IN := NOT #CambioStato, PT := #prst, Q => #CambioStato); // Cambio stato IF #CambioStato THEN #xOut := NOT #xOut; END_IF; // Scrivi stato uscita #Out := #xOut; END_FUNCTION_BLOCK
dina_supertramp Inserita: 30 aprile 2024 Segnala Inserita: 30 aprile 2024 (modificato) @max.bocca...scritto al volo su un pezzo di carta...passamelo... fatto bene avrei fatto finire i timer di contare invece di ucciderli al mancare delle condizioni a monte Modificato: 30 aprile 2024 da dina_supertramp
AlbertoHT Inserita: 30 aprile 2024 Autore Segnala Inserita: 30 aprile 2024 22 minuti fa, max.bocca ha scritto: Come ti dicevo @dina_supertramp ha inteso bene, timer Ton ecc ecc. Questa è una delle possibili soluzioni. perche' Timer TON e non TOF?
dina_supertramp Inserita: 30 aprile 2024 Segnala Inserita: 30 aprile 2024 (modificato) Perché preferisco usare solo Ton (anni fa mi insegnarono così)... Come si comporta .Q di un TON, in breve: Se IN = FALSE allora Q = FALSE, indipendentemente dallo scorrere del tempo ET (non conta) Se IN = TRUE e ET < PT allora Q = FALSE (sta contando) Se IN = TRUE e ET >= PT allora Q = TRUE (ha contato) Come lavora una cascata di Ton? Se tieni sempre alimentato l'ingresso del primo TON con "memoria start" e poi ci butti n-mila Ton in cascata, vedrai accendersi le uscite (.Q) dei timer in sequenza, una dopo l'altra. Ora non ti resta che mettere in fila i contatti delle uscite .Q per crearti delle memorie come ho fatto io che ti dicono a quale punto della sequenz di conteggio sei --| / |-----| / |-----| / |--- = sta contando il primo --| |-----| / |-----| / |--- = il primo ha contato, sta contando il secondo --| |-----| |-----| / |--- = il primo e il secondo hanno contato, sta contando il terzo --| |-----| |-----| |--- = tutti e 3 hanno contato Come riparte la cascata di timer in automatico? Dopo "memoria start" c'è il contatto negato di Ton "Pausa" perché serve a far ripartire in modo automatico il primo Ton "Lavoro". Se non ci fosse quel contatto negato, non avresti il loop e finito di contare pausa il tutto si arresterebbe. Prima del primo Ton ci va il contatto negato dell'uscita dell'ultimo Ton, per far ripartire la cascata di Tonin modo automatico dopo che l'ultimo Ton della cascata ha finito di contare. Modificato: 30 aprile 2024 da dina_supertramp
dina_supertramp Inserita: 30 aprile 2024 Segnala Inserita: 30 aprile 2024 Scusa per l'ultima frase dove spiego il concetto della "ripartenza automatica"....è un po' ingarbugliata...
AlbertoHT Inserita: 30 aprile 2024 Autore Segnala Inserita: 30 aprile 2024 1 ora fa, dina_supertramp ha scritto: Scusa per l'ultima frase dove spiego il concetto della "ripartenza automatica"....è un po' ingarbugliata... sono io che son stupido e non capisco... 🙂
AlbertoHT Inserita: 2 maggio 2024 Autore Segnala Inserita: 2 maggio 2024 Il 29/4/2024 alle 16:21 , AlbertoHT ha scritto: Ciao a tutti, sono alle prime armi e son nuovo nel forum. Ho necessità utilizzando il software eco struxure di schneider con CPU 340-20 di creare un ciclo pausa / lavoro. In poche parole tramite un pulsante voglio abilitare il un ciclo automatico. Con start abilito un timer di "lavoro" di xx tempo e poi allo scadere del tempo preimpostato deve iniziare un secondo timer di "pausa" e così via via in automatico fino a quando non viene premuto il pulsante di stop. Spero di essermi spiegato e che possiate aiutarmi. Grazie mille a tutti 🙂 Grazie a mille a tutti, il programma funziona così come lo avevo pensato..Grazie del supporto!!!!
batta Inserita: 2 maggio 2024 Segnala Inserita: 2 maggio 2024 Felice che tu abbia risolto, ma un blocco che fa tutto da solo e che puoi riutilizzare, proprio non ti interessava?
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