Vai al contenuto
PLC Forum


Gestione Rampa Inverter Direttamente Con Uscita Analogica


leotn

Messaggi consigliati

Ciao a tutti, ho un cp1el20 con una scheda di uscite analogica adb21, con questa comando la frequenza di un inverter in 0-10v, questo programma è composto da una miriade di passi che cambiano continuamente la frequenza di comando dell'inverter, mi chiedono il controllo della rampa direttamente da plc, in modo da poter scegliere per ogni passo quanto farla lenta o veloce, quindi ho impostato rampa a 0,1dec sull'inverter e adesso dovrei gestire direttamente l'uscita analogica sul plc , mi spiego meglio:

Durata passi: 10sec l'uno

Passo 1: Vel=30hz Acc=1sec

PAsso2: Vel= 50hz Acc= 5sec

PAsso3: Vel 80hz Acc= 10sec

Quindi nel Passo 1 in 1 secondo deve arrivare a 50hz e i restanti 9 stare a 50hz,

nel passo 2 in 5 secondi arrivare a 50hz e quindi nei restanti 5 rimanere a 50hz e cosi via...

Dovrei quindi di volta in volta aumentare la frequenza gradualmente fino ad arrivare al target nel tempo target, come posso fare??

Grazie a tutti!!!

Link al commento
Condividi su altri siti


Devi:

  1. Stabilire il quanto minimo di tempo possibile, compatibilmente con il tuo PLC, il tuo programma ela rampa più veloce, usando un timer con interrupts se ti serve una buona precisione.
  2. Stabilire per ogni rampa il differenziale di riferimento da dare ad ogni passo.
  3. Ad ogni richiamo di interrupt sommi al valore di riferimento precedente il differenziale stabilito e lo metti in uscita. In questo modo hai realizzato un integratore che poi è la rampa.
Link al commento
Condividi su altri siti

Ciao, grazie per la risposta, non mi serve precisione quindi posso fare a meno dell interrupt, essendo il tempo variabile da 1sec a 10sec e le rampe sempre variabili da 1% a 100% del tempo ciclo, allora posso solo dividere la frequenza da raggiungere per il tempo nel quale raggiungerla (ogni 50 ms) e sommarla ogni volta.. Pensavo ci fosse un istruzione già fatta...

Link al commento
Condividi su altri siti

Non conosco gli omron, ma non credo ci sia un'istruzione pronta per effettuare una rampa; in genere queste sono funzoni facenti parti della libreria personale di un utilizzatore.

50ms mi sembra un diffeenziale di tempo un po' grande rispetto ad 1", è pari al 5% del tempo totale di rampa, dovresti scendere almeno a 20 ms; necessiti comunque di un temporizzatore abbastanza costante altrimenti la rampa non sarà lineare

Link al commento
Condividi su altri siti

Se non erro la serie "E" non supporta i Function Blocks peccato.

Io ho realizzato appunto una applicazione dove acquisivo la variazione di setpoint calcolando appunto un delta, acquisivo il tempo di rampa quindi calcolavo gli steps e li andavo ad incrementare o decrementare al un valore che poi sparavo fuori sulla analog output.

Senza troppe pretese ma fa il suo sporco lavoro...

Link al commento
Condividi su altri siti

Esatto la serie dei PLC compatti CP1E non supporta i function block, ma solo il linguaggio ladder. Ma il plc CP1EL20 come indicato da 'leotn' non esiste.

Esistono i CP1E20 (solo ladder) oppure CP1L20 (ladder + Function Block scritti in testo strutturato) oppure CP1L-EL20 (ladder + Function Block scritti in testo strutturato) che hanno integrata la porta ethernet per la programmazione.

Link al commento
Condividi su altri siti

Ciao a tutti e grazie per le risposte, Claubo hai ragione è un cp1l-el20 che supporta le fb... Alla fine ho fatto come TiBo mi sono calcolato di volta in volta il delta e con il tempo di rampa mi calcolavo gli step con un tempo ciclo di 20ms andavo a sommarli un uscita.... Funziona egregiamente.... Grazie a tutti comunque


Li schifo dei cp1e è che ti obbligano a lavorare con il BCD per i tim e cnt.. È anche vero che costano pochissimo....

Link al commento
Condividi su altri siti

Ciao leotn, dipende però di quale CP1 parli. Il Cp1l-e20 lavora benissimo anche con l'esadecimale, quindi con TIMX, CNTX,...

devi però 'dirglielo' al PLC di lavorare in questa modalità.

Sul CX-programmer fai tasto destro sulla voce 'Nuovo PLC[CP1L-E]non in linea', selezioni 'Prprietà' e abiliti la spunta su 'esegui come temporizzatore contatore binario'; da questo momento in poi lavorerai con timer e counter in esadecimale. Attento che le due differenti modalità non possono coesistere.

La coesistenza c'è solo sulla serie CJ2, cioè PLC modulari.

ciao

Link al commento
Condividi su altri siti

  • 4 weeks later...

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