Vai al contenuto
PLC Forum


Rilevare durata Impulso


mazzinga

Messaggi consigliati

Eccomi di nuovo a chiedere aiuto a voi,non scendo troppo nei particolari a descrivere la parte meccanica della macchina.L'obbiettivo è quello di rilevare la durata di un'impulso.In pratica ho un motore che fa girare una frizione idraulica,all'interno di questa frizione c'è un sensore che mi da 5 impulsi ad ogni giro motore,devo calcolare la lunghezza di questo impulso ed il tempo che intercorre tra un impulso e l'altro.Tutto questo mi serve per andare ad eseguire una correzione all'interno della frizione mediante delle valvole proporzionali.Il motore esegue circa 17000 giri minuto,con una frequenza di circa 1,4Khz sul sensore

 

Per calcolare il tempo trascorso avrei pensato di gestire il processo su due interupt ad evento,uno sul fronte di salita e latro sul fronte di discesa del sensore,rilevando il tempo che è trascorso tra i due eventi potrei rilevare il tempo che rimane coperto il sensore,stessa cosa tra i due eventi sul fronte di salita potrei rilevare il tempo che intercorre tra due impulsi

Per l'hardware avrei pensato all'uso di una cpu CP1L,visto che parliamo di una frequenza di lettura di soli 1,4Khz,quello che vorrei chiedervi è un consiglio sul'applicazione,il mio timore sta su come si puo comportare la cpu visto che l'ingresso ed i due interput dovranno essere gestiti da programma PLC,la precisione del rilievo ed la ripetibilità.

 

Ogni consiglio e ben accettato

 

Link al commento
Condividi su altri siti


Hai 705µs tra il fronte di salita di un impulso ed il fronte di salita del successivo.

Ammesso che l''ingresso ad interrupt non introduca un ritardo con variazioni significative, per avere una precisione decente dovresti avere una risoluzione del timer >= 2µs.

Io non conosco Omron quindi non conosco le sue caratteristiche, però sicuramente nel manuale le specifiche di latenza all'interrupt le trovi, così come trovi il minimo intervallo di clock per misurare il tempo.

Da ultimo, ma non ultimo,. Hai circa 700 µs di intervallo per elaborare l'interrupt ed eseguire parte del programma del PLC. Quante istruzioni può mediamente fare la tua CPU in questo intervello di tempo?

Link al commento
Condividi su altri siti

Grazie livio

Nel mio primo post,avevo i tuoi stessi dubbi

Infatti ho deciso di chiedere a chi ne sa piu di me.

Non ti nego che metto in discussione l'uso del plc per questa applicazione.

Qui vado contro le regole di questa sessione del forum,ma la domanda nasce spontanea. Secondo la tua esperienza con quale altro sistema riesco ad avere una precisione ed ripetibilita accettabile.per esempio l'uso di un PC con schede dedicate?

Link al commento
Condividi su altri siti

Potrebbe anche andare bene il PLC se dispone di una scheda di conteggio veloce che è in grado di lavorare da periodimetro, come alcune Siemens se ben ricordo.

Altrimenti lascerei perdere i PC e opterei per una scheda micro embedded; molto dipende da cosa devi fare. Se ti limiti a misurare il periodo ed a visulazzarlo è un conto se, come presumo, devi usarlo per un controllo allora bisognerebbe esaminare un po' tutto il sistema, magari non è strettamente necessario misurare con precisione il periodo,

Se la correzione la realizzi come fosse una camma è una cosa, se invece devi dare una correzione proporzionale al ritardo o all'anticipo tutto cambia.

Link al commento
Condividi su altri siti

Con una scheda tipo arduino ti ritroveresti con problemi simili, a parte tutte le problematiche di interfacciamento dei segnali.

Però, ripeto, per valutare bene le potenzialità richieste al controllore bisogna conoscere meglio il tipo di controllo che devi fare.

Se, ad esempio, tu dovessi controllare l'apertura di 5 valvole in funzione dell'intervallo di tempo tra un impulso e l'altro, avresti necessità di avere un processore tipo DSP o un 32 bits.

mentre invece se sitrattasse di un on-off basterebbe anche un PLC con scheda di conteggio con misura di intervalo di tempo.

Link al commento
Condividi su altri siti

Se mi posso permettere

perché non contare il tempo necessario a ricevere diciamo 10 impulsi sul HSC della CP1L anziché tentare di valutare ogni impulso ?

Si aumenterebbe il tempo di campionamento a circa 7ms ( circa 150 campionamenti al secondo ) .

Come dice il Sig. Orsini 700 microsecondi sono pochini per una CP1L.

Link al commento
Condividi su altri siti

Tutto dipende da cosa serve la misura del periodo. L'autore parla di regolazione di valvole, ma questo è troppo generico per poter stabilire una strategia.

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