Vai al contenuto
PLC Forum


Controllo livello vasca


Messaggi consigliati

Inserito:

Buongiorno a tutti sono nuovo del forum, avrei bisogno di un vostro consiglio , sto programmando un plc logo8 che andrà a gestire il controllo ed il rabbocco di una vasca d'acqua quando si abbassa il livello, per evitare false partenze della pompa di rabbocco vorrei  filtrare il segnale del sensore di minima con un timer di 400ms quale funzione dovrei utilizzare?

grazie.


Inserita:

Nelle SF ci sono diversi timer, dipende cosa vuoi fare ritardare di 400mS la partenza? Se così prendi il timer ritardo all eccitazione.

    _____

__!        !

         ___

_____!   !

 

Questo è il simbolo

 

 

Inserita:

Siccome il liquido ha una leggera increspatura potrebbe far scattare il sensore di minima o potrebbe aver semplicemente dei disturbi che possono causare la partenza della pompa di ripristinolivello ,vorrei che il segnale di questo sensore venga considerato solo se mantenuto per un determinato tempo e quindi con la certezza che il livello sia veramente basso...

Inserita:

Secondo me dovresti usare un merker dato dal limite di soglia analogico.

Il valore di soglia lo imposti tu in base al livello della tua vasca poi il merker ti attiva un timer allo scadere del quale parte la pompa.

Io farei piu di 400ms per evitare start e stop continui.

Per fermare la pompa potresti fare sempre un timer che si diseccita dopo un tempo che manca il merker

Inserita:

Se il controllo di livello è analogico metti una isteresi ossia un livello minimo dove accendi la pompa ed un livello massimo che spegne la pompa cosi eviti lo stacca attacca della pompa.

Inserita:

I sensori sono capacitivi con uscita pnp uno per il minimo ed uno per il massimo uno fa la partenza è uno la fermata vorrei soltanto filtrare le eventuali false letture durante lo svuotamento o riempimento niente di più.

Inserita:

Leggi gli ingressi ad ogni ciclo, verifica che il valore (alto o basso) rimanga identico per n cicli e poi attiva il comando.

 

Per fare questo predisponi un byte come contatore, leggi l'ingresso e memorizzi il suo stato. Al ciclo successivo se lo stato attuale è identico al precedente incrementi il contatore, altrimenti lo azzeri, memorizzi il nuovo valore. Quando il contatore avrà raggiunto la soglia prefisssata, ad esempio 10,

Consideri il livello stabile, esegui il comando, ed azzeri il contatore.

Ci vuole più tempo a descriverlo che a realizzarlo.

Inserita:

Non credo possa funzionare perché potrebbe accadere che ci sia un fronte di salita per qualche ms e questo non lo dovrei considerare o magari un fronte di salita stabile che non mi incrementa alcun contatore 

Inserita:

Ma la distanza tra il livello max e min quant'è se è di parecchi cm non credo ci siano problemi , mentre se tra il min e max ci sono pochi cm sicuro che le onde o crespe possono farti delle false partenze, allora metti una piccola paratia per evitare il problema, anche se con i soli blocchi logici del logo fai tutto, basta solo fare delle prove, bye

Inserita:

Se applichi un piccolo ritardo nella lettura dei capacitivi(sempre difficili da gestire)risolvi il problema delle false letture e se aggiungi un interblocco logico in modo da non far ripartire la pompa fino a quando il livello max non si è scoperto insieme a quello min dovresti avere un funzionamento sicuro.

Esempio.

                                                                Cattura.PNG.65ae0955132e9cd48d2cdd5870a51ba5.PNG

Inserita:

Per sicurezza conviene non comandare mai la pompa direttamente dai contatti del Logo (se monofase),ma utilizzare sempre un relè di potenza o un contattore adeguato ad essa(io sopra i 100W interfaccio sempre).

Inserita:
  Il 30/12/2018 alle 08:09 , Fabio899 ha scritto:

Non credo possa funzionare perché potrebbe accadere che ci sia un fronte di salita per qualche ms e questo non lo dovrei considerare o magari un fronte di salita stabile che non mi incrementa alcun contatore

Expand  

 

E' proprio l'esatto contrario!

Questo che ti ho illustrato è il classico algoritmo di debouncing.

Non devi prendere i fronti ma i livelli.

Se il livello è stabile e costante per "n" cicli sei sicuro che il tuo sensore ha commmutato.

Lo si usa per "pulire" i contatti dai rimbalzi.

Il tempo lo determini in funzione dei cicli e del tempo medio di ciclo.

 

Poi il problema è tuo e quindi lo risolvi come credi meglio.

 

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