Jump to content
PLC Forum


ritardare serie di impulsi in ingresso


Humet69
 Share

Recommended Posts

Humet69

Buongiorno a tutti e grazie in anticipo a chiunque mi aiuti a risolvere questo problema. Ho la necessità di ritardare  di 15 secondi circa degli impulsi (24volt 100 ms) che vengono generati in ingresso, in tempi variabili che vanno da 3 sec. a 15 sec. Praticamente me li devo trovare in uscita alla stessa frequenza in cui me li trovo in ingresso solo che ritardati del tempo che io desidero. Ho provato con i vari relè programmabili che esistono in commercio ma purtroppo non è possibile perchè sono in grado di gestire un impulso alla volta. Pensavo di utilizzare il logo8, ma leggendo il manuale mi sembra di riscontrare gli stessi problemi che ho riscontrato nei relè programmabili. Probabilmente mi sbaglio oppure bisogna utilizzare qualcosa di più potente del logo? 

Link to comment
Share on other sites


Dumah Brazorf

Hai un problema e hai trovato una possibile soluzione, epperò è complicata.

Se puoi spiegare il problema forse si arriva ad una soluzione più semplice.

Link to comment
Share on other sites

Humet69

Cercherò di spiegarmi meglio. Arrivano degli impulsi da un plc (di cui è impossibile modificare nulla) che servono ad attivare un'altro plc il quale per aziona un dispositivo elettropneumatico. Purtroppo per permettere a questo dispositivo di azionarsi ogni volta al momento giusto, ho bisogno di ritardare questi impulsi di 15 secondi. Ora se gli impulsi  che arrivano dal primo plc avessero una cadenza superiore ai 15 secondi del mio ritardo, il problema sarebbe risolto facilmente, ma se l'impulso mi arriva prima, la soluzione non è affato semplice, perchè per come sto gestendo io la cosa questo nuovo impulso o andrebbe perso o farebbe ripartire il conteggio del ritardo dei 15 secondi da zero.

Link to comment
Share on other sites

11 minuti fa, Humet69 ha scritto:

Ora se gli impulsi  che arrivano dal primo plc avessero una cadenza superiore ai 15 secondi del mio ritardo, il problema sarebbe risolto facilmente

Quindi non devi solo ritardarli di 15" e mantenere i relativi outputs per il tempo in cui stanno alti? Oggi sono un po' coccio e non capisco questa frase quotata.

Link to comment
Share on other sites

Humet69

Si, appunto devo solo averli in uscita tali e quali all'ingresso con il ritardo di 15 secondi. Forse mi ero espresso male.

Link to comment
Share on other sites

max.bocca

Una cosa del genere l'avevo fatta con dei shift register con campionamento a 50ms, quindi il massimo errore era 50ms sull'attivazione e sulla durata dell'impulso.  Ho utilizzato degli HCF 4057 e un click quarzato. Puoi farlo anche con il plc, dipendedalla precisione altrimenti puoi memorizzare i fronti up e down in una tabella e rileggerli al tempo T+ritardo

Link to comment
Share on other sites

E nell'arco di quei 15" di attesa per alzare gli output gli ingressi possono andare di nuovo alti?

Link to comment
Share on other sites

Humet69

Cerco di spiegarmi ancora meglio: Un lettore ottico legge un cubo nero in un foglio di carta e manda un segnale ad un plc il quale genera questo impulso alto. quindi ad ogni cubo letto un segnale alto. Quindi nella'arco di 5 minuti posso avere 30/40 segnali alti che devo ritardare così come sono e riportarli nel secondo plc. Quindi è chiaro che durante i 15 secondi in cui avviene il ritardo, in ingresso continueranno ad arrivare segnali alti generati dal lettore ottico. 

Link to comment
Share on other sites

Dumah Brazorf

Cosa se ne fa il secondo plc di questi impulsi? Ci sono dei dati in questi impulsi o interessa solo il loro numero? O la distanza tra due impulsi?

Non si potrebbe spostare il lettore ottico in un punto più congeniale o metterne un'altro per il secondo plc?

Link to comment
Share on other sites

La soluzione proposta da @max.bocca è quella che adotterei anch'io. Ti leggi i fronti positivi a cui aggiungi i 15" e quelli negativi per capire quanto tempo tenere alto l'output. Tutto questo deve entrare in una coda che ti memorizza le occorrenze e che si svuota man mano che queste operazioni si completano. Userei un Array a 3 colonne, una per l'input interessato, una per l'orario di partenza e uno per quello di spegnimento.  Non so se c'è la fai con un logo.

Link to comment
Share on other sites

max.bocca

@drn5 direi che con il logo non sia fattibile, fai prima con un 1200... Se lo trovi🤔🤔🤔

Link to comment
Share on other sites

alfio63

Se gli impulsi non arrivano con intervalli inferiore a 3 sec potrebbe funzionare questo, vedi se ho capito cosa ti serviva. I contatori sono impostati da 1 a 6, i timer a 15 sec e l'ultimo timer 100ms.

1652853246965.jpg

Link to comment
Share on other sites

Humet69

Vi ringrazio  tutti per le risposte, ma  purtroppo non sono in grado di fare il programma di Alfio63. A malapena riesco a fare dei semplici programmi con Logo8. Comunque mi avete dato un'altra idea per risolvere il problema. Ho visto che l'espulsore, che dovrebbe essere attivato dopo 15 sec dal segnale del lettore ottico, potrebbe essere attivato esattamente dopo 7 cicli macchina in questione. Parliamo di una macchina che mette il celefon e indirizzi nelle riviste. Quindi pensavo di mettere un sensore induttivo in un qualsiasi punto o camme che gira per prendermi il segnale ciclo macchina e poi utilizzare logo8 come contatore. l'inizio del conteggio me lo darebbe il segnale del lettore ottico e alla fine dei 7 cicli macchina farei uscire un senale alto della durata che voglio da mandare all'espulsore e così via. Qualcuno mi conferma che con Logo8 si può fare? Grazie

Link to comment
Share on other sites

Mircoron

Un sistema ci sarebbe...metti uno spegnimento ritardato di 15 secondi, quando torna a zero attiva un emissione d'impulso che genera l'impulso di uscita.

Ora fai un numero di stadi uguali a tanti quanti sono gli impulsi da memorizzare in 15 secondi (anche 10).

Ogni stadio "blocca" se stesso e "apre" il successivo in questo modo:

l'uscita del primo spegnimento ritardato la usi negata su un and per bloccare l'ingresso dello stadio e dritta per abilitare l'ingresso del secondo stadio uguale al primo.

 

15 sec.png

Link to comment
Share on other sites

max.bocca
10 hours ago, Humet69 said:

 Qualcuno mi conferma che con Logo8 si può fare? Grazie

Si

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...