PLC Logo

© by Vittorio Crapella - i2viu

SOLUZIONE COMANDO ELETTROVALVOLE TEMPORIZZATE

Da un E-Mail : "...... devo comandare 3 elettrovalvole, devono funzionare in sequenza una dopo l'latra per un tempo diverso. Terminata la temporizzazione della terza valvola riparte la prima e così via, ma se una è spenta il programma deve saltarla per passare alla successiva.

... ho un'interruttore che da lo START GENERALE e 3 INTERRUTTORI che fanno ON/OFF per le 3 valvole ....."

POSSIBILE SOLUZIONE:

COME TRASMETTERE 4 MARKER DA UN PLC ALL'ALTRO

Vedi versione migliorata

Qui di seguito viene esposto come programmare due PLC del tipo LOGO! 24 della Siemens per riuscire a inviare da uno all'altro 4 marker (4 bit o livelli logici) utilizzando l'uscita del LOGO! trasmettitore e l'input del LOGO ricevitore, uniti da un doppino telefonico coprendo distanze ammesse come normali segnali I/O del PLC.

SCHEMA A BLOCCHI - TRASMETTITORE

Osservando lo schema a blocchi si deduce che l'uscita Q1 sarà a livello alto se anche uno solo degli ingressi del blocco B01 (o di B02) sono alti. Tali ingressi dipendono dalle uscite degli AND (B05-B08-B11) e dal B14. Vediamo cosa avviene all'accensione del PLC trsmettitore. Sappiamo che il marker M8 ad ogni accensione del PLC parte con un livello alto che dura un ciclo macchina e nel nostro caso serve come start del timer B04 che temporizza per 0,1 secondi portando alto l'ingresso dell'AND B03. Se anche l'ingresso collegato al marker M1 si trova a livello alto, l'uscita di B03 resterà alta per 0,1 sec. come pure l'uscita Q1 (OUT TX). Allo scadere del tempo di B04, B07 riconosce il fronte di discesa di B04 e restituisce un impulso di clock per far partire il secondo timer B06 per altri 0,1 secondi producendo lo stesso effetto di prima sul blocco B05 cosi da avere in uscita Q1 un livello alto se M2 è alto oppure basso per 0,1 sec. La stessa cosa avviene anche per M3 e M4. Il tutto secondo l'andamento temporale rappresentato nel seguente grafico:

Assieme all'ultimo timer B12 parte anche B15 che restituiesce un fronte di salita dopo 0,2 sec. che fa partire a sua volta una temporizzazione di 0,6 sec. di B14 che forzerà l'uscita Q1 sempre alta per lo stesso tempo. Questo impulso lungo di 0,6 sec. servirà in ricezione per sincronizzare l'inizio dei prossimi 4 marker da riconoscere se alti o bassi.

SCHEMA A BLOCCHI - RICEVITORE

In ricezione il blocco B05 inizia la temporizzazione ad ogni fronte di salita ma la sua uscita diventa alta solo se in entrata permane un livello alto almeno di 0,55 sec. Sul fronte di salita di B05 scattano i timer B04, B11, B16, B21. B04 va basso dopoo 0,2 sec. attivando B03 che restituisce uno stato alto per la durata di un ciclo macchina abilitando le porte logiche AND B02 e B06. Su B02 arriva lo stesso stato del segnali di ricezione presente su I1 mentre sul B06 è presente lo stato invertito dal NOT B07. Pertanto se il livello di I1 corrispondente ad M1 è alto avremo livello alto sul Set di B01 e livello basso sul Reset di B01 con conseguente stato alto sull'uscita B01 (M1). Con un 0,3 sec di ritardo va basso B11 e alto B10 producendo lo stesso effetto di prima ma sul B08 impostando M2 di ricezione come M2 di trasmissione. La stessa cosa avviene anche per le altre due catene B16-B15-B14-B17-B13 e B21-B20-B19-B22-B18. Il tutto secondo l'andamento temporale rappresentato nel seguente grafico:

COME TRASMETTERE DA UN PLC ALL'ALTRO ver. 2 VERSIONE MIGLIORATA

Qui di seguito viene esposto come programmare due PLC del tipo LOGO! 24 della Siemens per riuscire a inviare da uno all'altro 4 dati (4 bit o livelli logici, marcker) utilizzando l'uscita del LOGO! trasmettitore e l'input del LOGO ricevitore, uniti da un doppino telefonico coprendo distanze ammesse come normali segnali I/O del PLC. Questa versione è sostanzialemnte simile alla precedente ma ottimizza il sistema utilizzando due blocchi in meno in trasmissione e velocizza la trasmissione del 10% (0,85 sec. rispetto ai 1,2 sec.)

SCHEMA A BLOCCHI - TRASMETTITORE


Osservando lo schema a blocchi si deduce che l'uscita Q1 sarà a livello alto se anche uno solo degli ingressi del blocco B01 o di B02 sono alti. Tali ingressi dipendono dalle uscite degli AND (B05-B07-B10-B13) e da B03. Ad ogni accensione del PLC parte B04 con una temporizzazione di 0,2 sec a livello basso avendo INV=HI che tiene inibito B03; terminati i 0,2 sec. B04 manda la sua uscita alta per 0,65 sec. liberando B03 che genera degli inpulsi con TH=0.05 sec. e TL=0,10 sec. Q1 indipendentemente dagli AND avrà sempre un livello alto pari al tempo TH di B03. Nello stesso istante che B04 va alto parte B06 tenendo alto un ingresso di B05 per 0,15 sec. così sull'uscita di B05 si avrà livello alto per 0,15 sec se anche D1 è a livello alto altrimenti rimarrà sempre a livello basso. Allo scadere del tempo di B06, B09 riconosce il fronte di discesa di B06 e restituisce un impulso di clock per far partire il secondo timer B08 per altri 0,15 secondi producendo lo stesso effetto di prima sul blocco B07 cosi da avere in uscita Q1 un livello alto i 0,15 sec. se D2 è alto oppure alto per solo 0,05 sec. e basso per 0,1 sec. se D2 e basso. La stessa cosa avviene anche per D3 e D4. Il tutto secondo l'andamento temporale rappresentato nel seguente grafico:

SCHEMA A BLOCCHI - RICEVITORE:




Il blocco B03 viene inibito da B04 al termine di TL=0,65 sec mandando bassa la sua uscita per un tempo TH=0,2 sec.;l'uscita Q1 rimane bassa per lo stesso tempo. Questo impulso lungo di 0,2 sec. servirà in ricezione per sincronizzare l'inizio dei prossimi 4 dati da riconoscere se alti o bassi.

SCHEMA A BLOCCHI - RICEVITORE


In ricezione il blocco B05 inizia la temporizzazione ad ogni fronte di salita di B06 ma la sua uscita diventa alta solo se in entrata IN permane un livello basso almeno di 0,15 sec. Sul fronte di salita di B05 scattano i timer B04, B11, B16, B21. B04 va basso dopoo 0,15 sec. attivando B03 che restituisce uno stato alto per la durata di un ciclo macchina abilitando le porte logiche AND B02 e B07. Su B02 arriva lo stesso stato del segnali di ricezione presente su IN mentre sul B06 è presente lo stato invertito dal NOT B06. Pertanto se il livello di IN corrispondente a D1 è alto avremo livello alto sul Set di B01 e livello basso sul Reset di B01 con conseguente stato alto sull'uscita B01 (U1). Con un 0,3 sec di ritardo va basso B11 e alto B10 producendo lo stesso effetto di prima ma sul B08 impostando U2 di ricezione come D2 di trasmissione. La stessa cosa avviene anche per le altre due catene B16-B15-B14-B17-B13 e B21-B20-B19-B22-B18. Il tutto secondo l'andamento temporale rappresentato nel seguente grafico: