Vai al contenuto
PLC Forum


Posizionatore Manuale-automatico Variatore Tensione


roberto8303

Messaggi consigliati

Devo automatizzare un variatore di tensione.questo apparecchio ha un rotore che si sposta da 0 a 180° ed eroga da 0volt a 700volt.

per muoverlo ci sara un motore con riduttori, il rapporto di riduzione è abbastanza elevato, il motore è un 6 poli.

Vorrei fare due controlli con selettore.

- Manuale: tramite joistick comando il motore che mi sposta il rotore della macchina e aumento o diminuisco la tensione in uscita.mi fermo liberamente al valore di volt desiderato.

-Automatico con pannello hmi: scrivo il valore di tensione nel pannello, e il rotore si posizione all angolo meccanico corrispondente alla relativa tensione di uscita.

Volendo fare un posizionatore, quindi con encoder e plc inverter, dove conviene mettere l encoder? sul motore da 900rpm o sul rotore della macchina (corsa 180°)

Poi vorrei fare tre rampe di accelerazione, cioe Scrivo 400volt e raggiungo da 0 a 400volt con velocita A B o C. In manuale non ho problemi, perche posso usare le multivelocita dell invert, chiudendo i relativi contatti sulla morsettiera inverter.

Ma con il posizionatore, come posso integrare da pannello la velocita con cui la rampa deve essere effetuata? sul guadagno dell errore

posizione richiesta - posizione effettiva?

Aggiungo che ogni volt come si puo gia stabilire corrisponde a 700volt diviso 180°= 3,88° circa.

la mia risoluzione desiderata è propio +/- 1°.

Accetto volentieri anche soluzioni diverse da queste. ;)

Link al commento
Condividi su altri siti


  • Risposte 53
  • Created
  • Ultima risposta

Top Posters In This Topic

  • roberto8303

    32

  • Livio Orsini

    18

  • busanela

    2

  • ASMO

    2

Ciao Roberto :)

Scusa sai, ma non mi convince molto il principio di retroazione che hai intenzione di usare.....un encoder ?

Ma, poni che (ed io questo ancora non lo so) si stia parlando di un Variac, se come grandezza di retroazione io valuto la posizione angolare del sistema, che succede se un giorno io ho in linea una tensione un po' più bassa od un po' più alta ???? Che ieri a gradi 130° avevo 494 Volt, magari oggi ne ho 500 (oppure 490).....Non è meglio utilizzare invece come retroazione proprio il segnale in tensione che esce dall'apparato, fregandosene della posizione angolare del sistema ?

Oh poi magari adesso Livio mi tira una tegola in testa, :) ma io Ti ho esternato come farei (forse sbagliando) se accadesse a me una siffatta commissione.

Ciao

ASMO

Link al commento
Condividi su altri siti

Mmmmm è anche vera una cosa però.... <_< io non so che razza di carico Tu poi andrai ad inserire a valle di questo variatore, quindi accadrebbe che se la tensione flette troppo, e magari con irregolarità, ti ritrovi (col mio metodo) un sistema che poi se non sufficientemente sovrasmorzato, andrà continuamente a caccia del valore giusto, invece col Tuo encoder, è peraltro vero che una volta cacciatosi in posizione teoricamente esatta, che fletta la tensione anche di 20 Volt (si fa per dire) ma lui se ne sta lì bello fermo.....in sostanza, dipende (come sempre) da quello che devi farci.

Ri-Ciao !

Link al commento
Condividi su altri siti

Per essere piu chiaro, Asmo, ti posto il link dove puoi vedere la macchina in questione, non cè nulla di elettronico. Per il fatto della tensione ballerina, si possono mettere dei limiti minimi e massimi in cui entro un certo campo il posizionatore risulta posizionato.

il fatto di usare la tensione come riferimento, pero, penso non sia possibile, :( perche dovrei avere: Il valore di tensione 0-700volt convertito in un segnale 0-10volt poi misurare sempre il valore di tensione in uscita e convertirlo sempre in un segnale 0-10volt , cosi in questo modo , per conoscere l errore, e in base a quest ultimo effettuare il posizionamento.insomma senza retroazione non posso fare un controllo.

http://www.isgev.it/ita/images/gamma/schedeprodotto/22.pdf

Link al commento
Condividi su altri siti

Se la variabile da controllare è la tensione viene automatico misurarla ed utilizzarla per la regolazione, però....c'è sempre un però. :) Tensione max 700Vca, lettura analogica PLC 10Vcc. Quindi trasformatore di misura, o partitore, rettificatore e filtro. Molto improbabile ottenere +/- 1V su 700, immaginiamoci quando la tensione da ottenere abbia un valore di 100v, p,e.

Tutto sommato meglio un bell'encoder assoluto sull'albero lento. Perchè assoluto? Perchè far fare il ciclo di zero alla macchina mi sembra un'idea un po' bislacca. :)

Per le rampe impostabili, niente di più facile con un PLC. Basta scrivere nel pannello, velocità da raggiungere ed il tempo previsto per la transizione. Poi il PLC eseguirà il semplice calcolo e genererà il riferimento di velocità in accordo con quanto impostato.

O forse il tuo dubbio è su come calcolare le rampe? Bhe anche in questo caso, con un poco di pazienza, l'ostacolo è facilmente superabile.

Modificato: da Livio Orsini
Link al commento
Condividi su altri siti

Gli ostacoli mi piacciono

O forse il tuo dubbio è su come calcolare le rampe?

Devo forse aumentare il differenziale di incremento.. :)

Pero per quanto riguarda l encoder assoluto, sulla s7 200 posso montarlo senza altre interfaccie?

Se memorizzo hco in un vd a ritenzione? cosi quando accendo so dove è l encoder...si puo fare? :(

Link al commento
Condividi su altri siti

Se memorizzo hco in un vd a ritenzione? cosi quando accendo so dove è l encoder...si puo fare?

Se ti garantiscono che non si muove niente a PLC spento si. Puoi anche montare un resolver ed usare due ingressi analogici per sinx e cosinx; per l'assoluto, se usi un 10 bits, 1024 passi per 180 gradi, ti bastano 10 ingressi. C'è solo da verificare la massima velocità di variazione dell'encoder.

Link al commento
Condividi su altri siti

Se ti garantiscono che non si muove niente a PLC spento si

dato il rapporto cosi elevato di riduzione, l albero sara abbastanza ''duro'' da spostare, e poi ho dei fine corsa gia installati, di 0 e max corsa, piu altri due piu avanti nel caso non funzionano i primi.

Questo per chiedere, se posso sfruttare i loro contatti per fare lo zero del sistema? ed eventualmente come sfruttarli?

Link al commento
Condividi su altri siti

C'è solo da verificare la massima velocità di variazione dell'encoder.

mmm in effetti non ho ancora pensato alla risoluzione encoder, devo calcolare un po tutto, so solo che il motorino pilota da 6 poli, a 50hz impiega una 40 di secondi (ma non ho ancora verificato con esattezza) per fare tutta la rampa di tensione.quindi 180°, e poi devo decidere se fermarmi a 600volt, perche gran parte della strumentazione arriva a misurare propio 600volt e non di piu.. :(

pero facendo due calcoli al volo, visto che il movimento del rotore è lentissimo, 180° in 40secondi, sono un giro encoder in 80 secondi, se avesse una risoluzione di 7200imp/giro sono 7200/80sec= 90impulsi al secondo correggimi se sbaglio circa 4,5khz? quindi la cpu arriva a 20khz ci sono.

Link al commento
Condividi su altri siti

AQuesto per chiedere, se posso sfruttare i loro contatti per fare lo zero del sistema? ed eventualmente come sfruttarli?

In questo caso direi di si.

Taratura iniziale.

Ti porti, in manuale, ad impegnare il fine corsa di zero. Poi ti sposti in avanti sino a misurare un piccolo valore di tensione abbastanza stabile, diciamo 10v p.e.. A questo punto ruoti l'encoder a mano sino a che incontri la tacca di zero; blocchi meccanicamente il giunto dell'encoder. Riporti in manuale ad impegnare il fine corsa di zero. Sempre in manuale dai marcia avanti sino ad incontrare la tacca di zero e misuri il valore di tensione. Ripeti la procedura alcune volte per acquisire un valore abbastanza sicuro di tensione; i valori che misurerai varieranno un poco attorno ad un valore medio. Questo valore è il tuo vlaore di riferimento. Quando avrai bisogno di ricontrollare la taratura, ripeti la procedura in automatico o in manuale per una volta o più e memorizzi il valore letto.

Però se c'è uno zero meccanico, cioè se l'apparato non può andare oltre una certa posizione, puoi fare lo zero per battuta. Vai a fondo corsa e li ti fermi e azzeri il conteggio.

I due fine corsa di max e allarme max ti servono per fermare e, eventualmente, dare un allarme.

Link al commento
Condividi su altri siti

Il fatto è che non vorrei ogni volta fare l homing, ad esempio ogni mattina ad accensione macchina , se era rimasta il giorno priama a es 300volt , poi aspettare che vada a 0 e poi portarsi di nuovo al valore di 300volt, magari perche la sera prima non si era finito di lavorare con quella tensione...

quindi memorizzare hco direttamente in vd penso sia la giusta soluzione, solo che, non è che per caso il posizionatore deve per forza leggere direttamente da hco?? e non nel vd trasferita?? in caso andasse bene, hco deve essere caricata in una vd a ritenzione, nel programma principale main? oppure il ciclo di scansione della cpu puo sfalsare il valore reale di hco rispetto a vd registrata? non so se riesco a farmi capire, il tempo che eseguo il mov da hco nella vd, puo influenzare il posizionatore che dovrebbe leggere il riferimento direttamente da hco?? :(

Link al commento
Condividi su altri siti

Domanda: l'albero lento del riduttore di regolazione compie più di 1 giro completo nella sua regolazione della tensione? Mi pare di capire di no, altrimenti non avrebbero senso i finecorsa di min e di max di cui parli: tutto ciò per proporre, se possibile, l'inserimento di un potenziometro rotativo come trasduttore di posizione e quindi di tensione. Sai, io sono sempre quello delle cose semplici. ;)

Link al commento
Condividi su altri siti

Sai, io sono sempre quello delle cose semplici.

mmm quello che puo essere semplice per te puo essere difficile o impensabile per un altro :) scherzo!

l idea è piu che buona busanela, sopratutto per il costo del potenziometro rispetto all encoder, pero non ho mai fatto un posizionatore con potenziometro, anche se penso sia la stessa cosa... dovrei vedere il segnale che mi vien fuori...mmm che tipo di potenziometro hai in mente?

Link al commento
Condividi su altri siti

non ho mai fatto un posizionatore con potenziometro, anche se penso sia la stessa cosa...

Il principio non è proprio lo stesso, ma ha il vantaggio di assomigliare ad un encoder assoluto, nel senso che non ha bisogno di un'azzeramento dopo la taratura iniziale.

dovrei vedere il segnale che mi vien fuori...

Il segnale, essendo nient'altro che una resistenza variabile, è di tipo analogico (tensione/corrente).

che tipo di potenziometro hai in mente?

Questo.

Link al commento
Condividi su altri siti

I potenziometri che cita Busanela sono ottimi come affidabilità, specie quello a plastica conduttiva.

L'uso di potenziometri come trasduttori di posizione per servi monogiro o multigiro è tipico della robotica e della modellistica, addirittura si vendono servi con motore e potenziometro integrato.

Nella tua applicazione vedo solo il limite dovuto alla precisione e ripetibilità.

Intando, se non ho capito nale, l'escursione completa della tensione è su di un angolo di 180 gradi, quindi sfrutteresti meno dei due terzi della rotazione del potenziometro, che è di circa 270 gradi.

Poi avresti che tutti i 270 gradi della rotazione li suddividi sui 2047 kivelli del convertitore A/D, anche se il 200 ti da 32.000 livelli, la lettura è fatta con un A/D da 12 bit, quindi +/- 2047 valori; la presentazione è stato solo shiftata a sx.

Con questa risoluzione, più gli inevitabili disturbi che andaranno a sovrapporsi, non credo tu possa raggiungere la precisione che richiedi.

Dovessi scegliere io, avendo la sicurezza dell'impossibilità di rotazione dell'albero a PLC spento, adotterei la soluzione di encoder incrementale e memorizzazione della posizione in area di memoria ritentiva.

Il ciclo di homing lo eseguirei solo su richiesta specifica, in caso di dubbi sull'affidabilità della misura o dopo altri eventi che possono compromettere la taratura.

Link al commento
Condividi su altri siti

l'escursione completa della tensione è su di un angolo di 180 gradi, quindi sfrutteresti meno dei due terzi della rotazione del potenziometro, che è di circa 270 gradi.

veramente lo sfrutto150° = 600volt e anche meno...quindi andrei a tagliare gran parte della scala potenziometro 270° perdendo risoluzione...

a questo punto se non cè un potenziometro con corsa 180° o max 200° con segnale 0-10volt, ma se Livio dici che sono 270° è inutile che cerco altrove...mi sa che cconviene propio un encoder incrementale...

c è solo da vedere come fare il cambio da manuale ad automatico, nel senso che, sono in manuale:

Escludo il posizionatore, vado avanti indietro inviando il segnale all inverter con i pulsanti aumenta diminuisci, da pannello scelgo la rampa, cioe fisso il valore dell analogica inverter 0-10volt(rif frequenza) a tre livelli(rampa)

I fine corsa meccanici li uso per fermare i pulsanti aumenta diminuisci corsa max e min.

Poi viene il bello, Esempio, sto fermo a 200volt, vado in automatico, il posizionatore aspetta che scrivo la quota da raggiungere nel pannello, scrivo 400volt e si posiziona, se nel pannello hmi avevo tre riferimenti per la rampa fissi a munuale,ES.( Aqw0=1000 = vel bassa) (aqw0-2000= vel media) (aqw0-3000= vel alta)

ora come posso fare nel pannello hmi quando sono in automatico a dire fai la rampa 1 2 o 3?? devo fare un altra pagina??oppure come posso sfruttare sempre i tre ''tasti'' rampa, che ho per il ciclo manuale?modificarli da pannello o da plc? :(

Link al commento
Condividi su altri siti

Anzi, chiedo scusa, quando inizio a pensare vado sempre oltre il dovuto.. :lol:

In automatico non serve avere una rampa modificabile, serve averla solo in manuale!!

quindi faro cosi, in automatico faro il posizionatore che raggiunge la posizione il piu veloce possibile, max corsa da 0 a 600volt, max riferimento all inverter 10volt.

in manuale nel pannello, faccio una finestra, immissione valore velocita rampa, con campo predefinito per es. scrivi da 0 a 10. e riporto i diversi riferimenti all inverter. piu semplice di quanto stavo pensando..come al solito :rolleyes:

Link al commento
Condividi su altri siti

Escludo il posizionatore, ....

Attenzione! Puoi escludere il posizionatore nel senso che non attivi la funzione di posizionamento. Però il conteggio e salvataggio della posizione deve essere fatto sempre, sia che tu lavori in manuale o in automatico. Se non lo fai, lavorando in manuale perdi il riferimento di posizione e poi sei obbligato ad eseguire la funzione di homing.

Anzi potresti comunque visualizzare sempre la posizione e la tensione presunta, in questo modo avresti un comodo ed automatico strumento di diagnosi.

ES.( Aqw0=1000 = vel bassa) (aqw0-2000= vel media) (aqw0-3000= vel alta)...

In manuale hai 3 riferimenti di velocità, stando a quanto scrivi, ed un'unica rampa di accelerazione: quella che hai impostata nell'inverter.

In automatico, se lasci la rampa nell'inverter, puoi solo cambiare le velocità. Però tieni presente tutto il discorso fatto per il posizionamento dell'antenna, che è molto simile. Quandos i fa un posizionamento in automatico è necessario eseguire tutta una serie di controlli per verificare se e qaunto è possibile posizioanre con la velocità impostata e con la rampa scelta.

Modificato: da Livio Orsini
Link al commento
Condividi su altri siti

In manuale hai 3 riferimenti di velocità, stando a quanto scrivi, ed un'unica rampa di accelerazione: quella che hai impostata nell'inverter.

In automatico, se lasci la rampa nell'inverter, puoi solo cambiare le velocità. Però tieni presente tutto il discorso fatto per il posizionamento dell'antenna, che è molto

In manuale, devo scrivere io il riferimento per mandare nell inverter, non utilizzero piu i tre riferimenti fissi impostati nell inverter, ho la possibilita di generare 0-10volt, e quindi in manuale faro un campo immissione valore, per la rampa.

in automatico, mi serve solo una velocita e solo una rampa. cerco di mettere uno schizzo di algoritmo che avevo fatto giorni fa, magari esce qualche consiglio, devo ancora affinarlo per bene in modo da avere un percorso di programma il piu funzionale possibile.

Ah la scelta delle tensioni, si riferisce a tre contattori, uno eroga 600VAC 70amp, un altro 600vdc 70amp, e un altro 60vdc 220Amp, solo uno di loro puo andare ad on, il posizionatore è unico comanda sempre il regolatore ad induzione.

Link al commento
Condividi su altri siti

n automatico, mi serve solo una velocita e solo una rampa.

Puoi ripetere pari pari il posizionatore dell'antenna.

Link al commento
Condividi su altri siti

Livio mi consigli come posso fare il controllo automatico e manuale? ripartiamo da questo punto

posizionatore finito con la quota da raggiungere scritta nella Vw10

ora vorrei fare in modo da avere sempre attivo il controllo con joistyck in manuale aumenta e diminuisci, ovviamente escluso solo quando il posizionatore deve posizionarsi per raggiungere la quota desiderata.

io ho pensato di fare cosi, scrivo la quota da raggiungere da pannello es 300volt=1800imp encoder, il posizionatore parte da 0 alla massima velocita raggiunge in rampa la quota, dopo essersi posizionato nel margine dell errore stabilito, alzo un flag che mi abilita il comando del joistyck porto in avanti il motore con un rif di tensione stabilito (velocita rampa) e nello stesso tempo visualizzo hco che si sposta e memorizzo il valore nella VW10, cosi quando lascio la leva del joistyck il valore desiderato in vw10 sara uguale alla posizione del hco, quindi errore 0 e sistema posizionato! puo funzionare cosi?

Link al commento
Condividi su altri siti

  • 1 month later...

Finalmente è arrivato il regolatore, e mi manca solo il posizionatore, i dati che vi ho fornito nei post precedenti sono ben diversi :(

il regolatore ha l albero grande dove fissero l encoder che da 0 a 400volt fa un escursione di soli 40° circa, il problema è che come lo si sposta di un decimo di mm varia gia qualche volt! invece da 0 a 90° varia da 0 a 800volt!

Poi cosa dire piu, altro fatto molto importante, la posizione da 0 a 90° non è lineare con la variazione di tensione 0-800volt, precisamente, fino a 400volt abbiamo appunto 39,5- 40°, quindi un escursione bassa per raggiungere 400volt, e da 400volt in su fino ad 800v un escursione piu ampia.

Questo è del tutto normale, come mi è stato spiegato dal ingegnere che ha progettato la macchina in grosso modo che ci sono due vettori che rappresentano due tensioni che ruotano lungo una circonferenza, hanno lunghezze diverse e compiono un escursione diversa... :(

A me serve una tensione da 0-600volt ,allora cosa penso di fare, due sono le cose: faccio un posizionatore con differenziale di posizione fisso fino a 400volt dove lo spostamento angolare è lineare con il valore Volt, dopo i 400volt dove lo spostamento angolare per avere la stessa varizione di volt aumenta, io di conseguenza passo al plc un differenziale di posizione un piu alto, cosi da compensare il tutto. Questa soluzione pero, mi porta a pensare anche che non avro mai una precisione buona tra posizione e tensione... quindi manco il tempo di digerirla, e decido di fare il posizionatore in automatico solo da 0 a 400volt che poi sono le tensioni piu utilizzate per tutto, per arrivare a 600volt ho il controllo in manuale e lo faro cosi.

Ora una domandina a Livio, con tutti i dati sto calcolando il differenziale di posizione, posizionamento desiderato da 0-400volt = 0-40° = 1600imp (ho utilizzato un encoder 3600imp conteggio *4)

tempo desiderato per il posizionamento 10secondi , alla massima velocita avro 1600imp/10sec=160imp/sec = 16impulsi ogni 100ms, quindi 16 sara il mio differenziale di posizione, ho calcolato la massima velocita su 1600imp e non su tutti i 14400imp=360° è giusto?

ogni 1° avro 40 impulsi. ogni 1° avro circa 9,8volt di variazione l errore sara +/- 10imp cioe +/- 2,45volt

il rapporto meccanico è di 1:3000, cioe il motore pilota è un 900rpm e sposta con 202 giri circa da 0 a 40° l albero grande.

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