Vai al contenuto
PLC Forum


I Timer "serie 7"


micheleb

Messaggi consigliati

Salve a tutti,

volevo in qualche maniera sondare i colleghi del forum circa l'utilizzo o meno dei timer "serie 7", cioè quelli che si utilizzavano nel vecchio PL7-3, ora che in PL7 Pro imperversano i nuovi TM.

Io personalmente utilizzo solo i timer vecchia serie per la loro duttilità, la comodità di avere due uscite distinte, e soprattutto l'ingresso di enable per l'arresto momentaneo della temporizzazione.

Continuo a trovarmi talmente bene che dalla configurazione software, molte volte, i timer nuovi li levo proprio riservando la loro memoria per altri utilizzi.

Per tutte le funzioni di temporizzazione tendenzialmente adopero i suddetti timer serie 7, i monostabili e se proprio mi trovo in ristrettezze o situazioni ambigue utilizzo delle word.

Voi? Che fate?

Link al commento
Condividi su altri siti


Claudio Monti

Io non li ho mai usati (quelli della serie 7)...

e solitamente uso poco anche i TM.

Quando devo fare cose un po' particolari (tipo l'arresto momentaneo, ecc...) sono abituato a scrivere un po' di codice per l'incremento di MW o MD (cosi' non sono limitato al valore 9999).

Non so a cosa ti riferisci x le due uscite distinte... qual'e' la loro funzione?

Se devo attivare 2 o piu' stati in base al valore del timer faccio semplicemente una comparazione con il TM.V... cosi' come con i contatori.

Link al commento
Condividi su altri siti

Cristina Fantoni
Io non li ho mai usati (quelli della serie 7)...

e solitamente uso poco anche i TM.

Quando devo fare cose un po' particolari (tipo l'arresto momentaneo, ecc...) sono abituato a scrivere un po' di codice per l'incremento di MW o MD (cosi' non sono limitato al valore 9999).

Idem: limito l'uso dei TM al minimo, utilizzo piu' spesso i merker di clock con qualche riga di codice, compatibilmente con l'applicazione ;)

:wub:

Link al commento
Condividi su altri siti

Chiaro, chiarissimo...

uso anch'io word o double word per effettuare conteggi, chiaramente utilizzando un apposito clock preventivamente implementato.

I timer li utilizzo in determinate parti di programma ma per ragioni varie.

I serie 7, giusto per fare chiarezza, hanno un ingresso di %Tx.E:"enable al conteggio" ed un ingresso di %Tx.C:"controllo conteggio".

Se entrambi gli input sono alti il timer conteggia. Se l'input di controllo va basso, il timer sospende il timing al valore raggiunto. Il reset del conteggio si effettua mandando basso l'input di enable. Le uscite sono, %T.R, attiva durante la temporizzazione, e %T.D attiva al termine della temporizzazione. Particolarità rispetto ai nuovi timer, questi contano all'indietro (da %t.p verso 0).

E' vero che un qualsiasi blocco FB è "sostituibile" con del codice ma ho posto la domanda in quanto, già memore dell'efficacia dei "serie 7", vedevo un po' superflua la "novità" dei %TM. Ma a questo punto penso sia un'uniformità richiesta dalla normativa IEC sui software di programmazione.

Modificato: da micheleb
Link al commento
Condividi su altri siti

Claudio Monti
Ma a questo punto penso sia un'uniformità richiesta dalla normativa IEC sui software di programmazione

Sicuramente, anche le tipologie TON, TOF e TP sono richieste dalla IEC

Link al commento
Condividi su altri siti

Stefano Sormanni

Io ne uso spesso di %TM sia come TON, TOFF, che %TP.... dato che tutti i miei allarmi sono ritardati spesso mi trovo con più di 200 timer utilizzati....

Non setto mai il preset del timer sul PL7, ma direttamente su una Word così ho la possibilità di impostarlo a piacere...

Link al commento
Condividi su altri siti

E' interessante comunque vedere che c'è chi fa uso massiccio degli FB di PL7 e come altri, invece, ne evitino l'impiego.

Personalmente limito l'utilizzo ai soli %T (serie 7) ed al massimo agli %MN qualora avessi bisogno di generare un impulso. Gli altri blocchi (%C, %R, i drums e quant'altro) non li utilizzo...

Link al commento
Condividi su altri siti

sormanni se hai 200 allarmi ed usi 200 timer immagino che avrai almeno 200 righe d'istruzione... Non credi che sia meglio indicizzare e non usare tutti quei timer??

Link al commento
Condividi su altri siti

  • 1 year later...

Buongiorno.

Inizio oggi a scoprire il mondo plc Schneider: mi aggancio alla discussione per chidervi alcuni chiarimenti:

mentre i timet serie 7 o TM sono limitati (se non sbaglio imposto il numero nella configurazione hardware

del progetto PL7 Pro), i timer realizzati tramite codice sono infiniti o comunque limitati dalla sola memoria

a disposizione? Mi spiego: Claudio Monti dice:

Io non li ho mai usati (quelli della serie 7)... e solitamente uso poco anche i TM.

Quando devo fare cose un po' particolari (tipo l'arresto momentaneo, ecc...) sono abituato a scrivere un po'

di codice per l'incremento di MW o MD (cosi' non sono limitato al valore 9999).

Ma questo come si può fare? Cioè posso crearmi un mio timer in un blocco in linguaggio IL e renderlo parametrico

in modo da poterlo richiamare quante volte voglio? Insomma, come i classici FC della Siemens? Grazie 1000 per

qualsiasi dritta.

Ciao a tutti!

Link al commento
Condividi su altri siti

Claudio Monti
Ma questo come si può fare? Cioè posso crearmi un mio timer in un blocco in linguaggio IL e renderlo parametrico

in modo da poterlo richiamare quante volte voglio?

Si', puoi fare anche cosi'... c'e' sempre la limitazione di memoria da considerare!

Ti crei un DFB con un timer interno (o una routine che ti controlla gli allarmi e prevedi la temporizzazione) e crei tante istanze quante te ne occorrono.

Oppure, come dicevo in precedenza, ti crei un timer sfruttando le Word, es:

%M6:=%S6;  (*Appoggio per clock da 1 secondo*)
IF (tua condizione) AND RE %M6 THEN

Link al commento
Condividi su altri siti

Claudio Monti
Ma questo come si può fare? Cioè posso crearmi un mio timer in un blocco in linguaggio IL e renderlo parametrico

in modo da poterlo richiamare quante volte voglio?

Si', puoi fare anche cosi'... c'e' sempre la limitazione di memoria da considerare!

Ti crei un DFB con un timer interno (o una routine che ti controlla gli allarmi e prevedi la temporizzazione) e crei tante istanze quante te ne occorrono.

Oppure, come dicevo in precedenza, ti crei un timer sfruttando le Word, es:

%M6:=%S6;  (*Appoggio per clock da 1 secondo*)
IF (tua condizione) AND RE %M6 AND %MW0 < valore di riferimento THEN
   INC %MW0;
ELSIF %MW0>= valore di riferimento THEN
   questa e' la condizione "temporizzata", fai cio' che ti pare;
   ricordati di azzerarla al mancare della condizione;
END_IF;

Modificato: da Claudio Monti
Link al commento
Condividi su altri siti

Grazie Claudio per l'esempio: funziona alla perfezione!

Per cortesia, avresti qualche documento (magari .pdf) riguardante

la creazione dei DFB? In Siemens vi erano certe limitazioni e/o

accorgimenti da prestare quando un timer veniva utilizzato

in modo parametrico e presumo che anche Schneider richieda

qualche accortezza all'inizio. Grazie ancora e buon lavoro!

Link al commento
Condividi su altri siti

Claudio Monti

Mi sembra che all'interno dei DBF tu non possa usare i %TM... come i %C, %MN ecc...

Pero' puoi sempre crearti un DFB dove all'interno ti gestisci i timer come ti ho spiegato sopra ;)

Per la documentazione sui DFB c'e' qualcosa sull'. online di PL7pro: cerca "Blocco funzione DFB", l'importante e' mettersi li' a testa bassa, provare e riprovare, fare dei test ed ottimizzare il risultato... buon lavoro!

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