Jump to content
PLC Forum


Sign in to follow this  
emanuele.croci

Moto Interpolato Con Plc

Recommended Posts

emanuele.croci

Grazie Livio, è tutto chiaro.

Ho un oscilloscopio, vedo se riesco a procurarmi anche una tachimetrica (è un componente che forse la mia ditta usava anni fa... quando ero ancora studente... vedo se riesco a trovare un pezzo vecchio in magazzino)

Ciao, Emanuele

Share this post


Link to post
Share on other sites

emanuele.croci

Ciao Igor,

Ho leto con interesse estremo la discussione sulla tua realizzazione di un interpolatore su PLC.

Sarei interessato a comprendere i fondamenti dell'interpolazione, a capire cosa è un feedforward ecc. per poi provare a fare anch'io qualcosa del genere, pensi di potermi aiutare?

Sono tornato oggi da una trasferta e ho letto ora la tua mail, la ho copiata qui sopra: penso che sia più interessante proseguire la discussione sul forum (anche perché non mi ritengo un "guru" e penso che ci sia gente che ti può aiutare come e meglio di me...).

Se ho ben capito vuoi qualche dritta.

In 1° luogo bisogna studiare bene il controllo PID (e quindi potresti leggerti il tutorial di Livio sull'argomento).

Regolatore PID= Sistema che ti permette di regolare una certa grandezza al valore che vuoi tu, agendo su un opportuno pilotaggio

(ad es. -voglio avere acqua a 40°C

- ho acqua a 25 °C

- devo aprire la valvola dell'acqua calda

oppure: - voglio essere alla posizione 200 mm

- sono alla posizione 198 mm

- aumentare la velocità del motore)

In pratica il PID ti permette

- di INSEGUIRE

- il VALORE DESIDERATO (setpoint) di una certa grandezza

- agendo su un PILOTAGGIO

Ciò è alla base di qualsiasi "interpolatore".... perchè se riesco a portare i miei assi "dove voglio" il gioco è fatto.

Struttura base dell'interpolatore:

1- Definisco i setpoint dell'asse X ed Y, tramite equazioni della geometria analitica, ad es: X= 10*T e Y=25*T (T è il tempo). Questa ad es. è la traiettoria di una retta.

2- Tramite il controllore PID, il mio motore deve "inseguire" questa posizione, cioè esservi sempre il più vicino possibile, in tempo reale, per garantire la massima precisione. Lo scostamento tra il setpoint e il valore reale (errore di inseguimento) determina la performance (precisione) del mio sistema.

Più lo vuoi preciso, più dovrai usare software sofisticato ed hardware costoso.

Inizia per ora a studiare bene il PID (*), possibilmente provandolo su applicazioni monoasse. Fammi sapere se hai domande.

Ciao, Emanuele

(*) Ti ri-consiglio allo scopo il tutorial di Livio. Ti sconsiglio testi universitari sui controlli automatici, che spiegano la cosa in termini astrusi e con formule iper complicate.

Share this post


Link to post
Share on other sites
omar

Perche non integrare il tutorial PID con un tutorial sulla tua applicazione?

Saluti

Share this post


Link to post
Share on other sites
Livio Orsini

Omar il mio tutorial sui controlli non è solo PID; c'è un capitolo, il primo, dedicato esclusivamente all'algoritmo PID. Negli altri si discutono le applicazioni e le metodologie di approccio. Nel sesto capitolo sono esaminati, come esempi, alcune applicazioni tipiche: posizionamento, asse elettrico, controlli di temperatura, etc.; viene anche esaminato con particolare attenzione l'uso del feed_forward.

I due assi interpolati realizzati da Emanuele sono un'applicazione particolare. Forse può anche essere (è una mia ipotesi) che, del tutto legittimamente, alcuni particolari realizzativi Emanuele non ci tenga a divulgarli.

L'applicazione è interessante perchè è stata affrontata senza preconcetti. Sarebbe stato molto più facile, apparentemente :rolleyes: , comprarsi un controllo assi interpolato. Però ci sono ancora persone che ragionano e cercano la soluzione più ottimizzata per risolvere il problema.

Se ti interssano gli asi interpolati segui il consiglio di Emanuele: cerca di capire bene come funziona un asse elettrico. Il passaggio ad un interpolatore risulterà molto più semplice e facile.

Share this post


Link to post
Share on other sites
valerio71

innanzitutto i miei complimenti ad Emanuele, oltre ai vantaggi materiali la soddisfazione è altrettanto gratificante e importante.

Tanto per riprendere la parole di Livio, io ho appena finito una fresa in grado di fare lavori con una precisione degna di un orologiaio (parliamo di centesimi di mm), per comandarla ho usato una scheda elaborata da un Signore di Catania che per gestire 3 assi usa un sempice micro ST9, e va che è una favola.

Salvo imprevisti la prossima mia realizzazione sarà una centralina di gestione motore per le elaborazioni corsaiole, anche li la gente mi dice che ci impazzirò per nulla, che i vari grandi dell'automotive fanno già tutto e sono fuori dalla mia portata a causa delle loro centinaia di "menti" mentre io sono solo un povero tapino e per giunta manco laureato, ma io credo che riuscirò comunque a dimostrare che si sbagliavano.

Grazie di nuovo a Livio per il suo supporto con la sua esperienza e cordialità e a tutti colori che non si fanno imbrigliare nella massa e intontire da un marchio famoso appiccicato alla bisogna su un paio di transistor in croce!

Valerio

Share this post


Link to post
Share on other sites
dfrangiosa

Ciao, leggendo il tuo messaggio ho visto affinità con il lavoro svolto per la mia tesi.

Tramite PLC Siemens 313-2DP, due encoder, due motori ad induzione e due Inverter Altivar, oltre al modulo Asi e agli I/O, ho controllato in posizione e velocità due assi X e Z, calcolando, tramite un algoritmo basato sugli inviluppi convessi, sia la curva di riferimento (poi campionata), sia eseguendo il controllo vero e proprio, con P.I.D. riscritto da me. Il tutto in AWL e SCL....e funzionava!! eh eh!!

La curva veniva calcolata in base a dei punti (coordinate X,Z) inseriti dall'utente tramite un pannello ESA (non ricordo il modello, ma era semplice) e veniva tracciata (parametrizzandola) una spezzata congiungente i vertici dell'inviluppo. Nell'intorno di tali vertici venivano sostituite le spezzate (segmenti) con archi di circonferenza calcolati in modo autonomo (Raggio e Centro). Quindi la curva veniva campionata e scritta in un DB di riferimento.

Tramite l'OB35 (tempi fissi), richiamavo function SCL che gestivano il movimento dei due "bracci", inseguendo la curva calcolata, utilizzando una predizione a due passi avanti (al fine di mantenere la velocità media abbastanza sostenuta ed evitare che i motori si "aspettassero"...), implementando il controllo P.I.D.

Se vuoi ulteriori info, contattami pure.

P.S. complimenti a tutti per l'utilità e la correttezza del Forum.

P.P.S.S. La tesi l'ho svolta lo scorso anno, discussa a dicembre.....e da qualche settimanda lavoro presso l'azienda dove l'avevo sviluppata...FIUUUUUUUUUUUUUU

Ing. Daniele Frangiosa

Share this post


Link to post
Share on other sites
Matteo Montanari
Se vuoi ulteriori info, contattami pure.

eventualmente, se hai la possibilità, puoi mettere il tuo progetto a disposizione del forum...

Share this post


Link to post
Share on other sites
dfrangiosa

Devo prparare un articolo di sintesi della tesi per una rivista di settore (credo Automazione$Strumentazione, ma il titolo preciso lo sa il mio relatore), appena viene pubblicato lo comunico...se trovo il tempo di scriverlo!!!

Share this post


Link to post
Share on other sites
Nicola Carlotto

mi congratulo con livio.

nica :)

Share this post


Link to post
Share on other sites
emanuele.croci

Ciao!

Rispolvero questa discussione perché adesso sto lavorando su un vero interpolatore (la fase precedente era una "camma elettronica"... quindi adesso sono un gradino sopra).

Sto scrivendo il software e potrò provare la macchina tra 10 gg circa.

Vediamo il problema:

Nella CAMMA ELETTRONICA la parte matematica è molto semplificata: devo seguire la traiettoria Y=f(X) ma non ho alcun controllo su X, quindi il calcolo del setpoint è abbastanza semplice.

Ad es: voglio seguire la traiettoria Y=2X

- leggo la posizione di X con un encoder

- moltiplico per 2 e ottengo Yset

- l'asse Y (tramite il PID, feedforward e quant'altro...) deve INSEGUIRE Yset

Nel CONTROLLO INTERPOLATO vero e proprio la cosa è un po' più difficile....

Devo ad es. introdurre una velocità e un'accelerazione.

( X=Vt

|....................................(....sistema di 2 equazioni)

( Y=2Vt

però nella fase accelerante....

( X=1/2 at2

|

(Y=at2

se poi il percorso è un cerchio, devo considerare che sia X che Y accelerano e decelerano "circolarmente", cioè "anche in frenata, frenano restando sul cerchio".

Il tutto ovviamente da elaborare col minor numero di calcoli (... plc S7-314) e con la maggior precisione possibile (numeri in virgola mobile con mantissa a 23 bit... non ne ho d'avanzo)

Una volta calcolato bene il setpoint, l'inseguimento del punto dovrebbe essere analogo alla camma elettronica. Anzi, forse ancor più facile visto che nella camma inseguo un master che si muove alla velocità che vuole lui e, nei punti "molto pendenti" della curva, può imporre all'asse Y delle velocità e delle accelerazioni estreme.

Io sto elaborando una soluzione, tra poco la collauderò, la confronterei volentieri con chi ha già risolto con successo questo problema.

Grazie e Ciao,

Emanuele

Edited by emanuele.croci

Share this post


Link to post
Share on other sites
Livio Orsini
Il tutto ovviamente da elaborare col minor numero di calcoli (... plc S7-314) e con la maggior precisione possibile (numeri in virgola mobile con mantissa a 23 bit... non ne ho d'avanzo)

Non ricordo se ne avevamo disccusso in precedenza, però se generi bene il feedforward e, soprattutto, ti generi le posizioni teoriche per gli assi, la funzione accelerazione ti viene praticamente gratis e la generi contemporaneamente per entrambi gli assi

Share this post


Link to post
Share on other sites
emanuele.croci

Forse non ho capito bene la tua risposta....

quando dici:

e, soprattutto, ti generi le posizioni teoriche per gli assi, la funzione accelerazione ti viene praticamente gratis

a me pare che per generare le POSIZIONI TEORICHE degli assi io debba già averle calcolate inserendo anche un valore di accelerazione.

Cioè, se voglio fare un cerchio, il SETPOINT DI POSIZIONE TEORICO si sposta con una legge del moto che comporta in partenza l'accelerazione lungo un profilo circolare, cosa più complessa di quando lui stesso si sposta sul cerchio a velocità costante....

Se calcolo il setpoint teorico accelerandolo in tempo=0, ciò si ripercuoterà sull'errore di inseguimento degli assi (ognuno dei 2 si tira il collo per recuperare, senza preoccuparsi se sono in traiettoria oppure no)

Ciao, Emanuele

Share this post


Link to post
Share on other sites
Livio Orsini

Si in effetti non mi ero espresso compiutamente. La mia affermazione va letta nel seguente modo:

"le posizioni teoriche le puoi calcolare off line, anzi meglio, calcoli i differenziali di velocità (quindi l'accelerazione) e spazio (velocità istantanea) off line; questi differenziali andranno a sommarsi, ad ogni campionatura, agli integrali delle variabili generando il valore di velocità teorica e la quota ideale".

Cosa si guadagna in questo modo? Tempo di CPU perchè non deve fare calcoli complessi durante i posizionamenti.

E' una tecnica che uso da parecchi anni con ottimi risultati.

Share this post


Link to post
Share on other sites
emanuele.croci

Ciao Livio,

aggiorno la discussione dopo un TOT di prove effettuate...

punto 1)

Se ho ben capito, semplificando per chiarire meglio, generi all'istante di campionamento n:

SetpointX (n) = SetpointX(n-1) + DiffX

SetpointY (n) = SetpointY(n-1) + DiffY

dove DiffX (il differenziale di posizione) è proporzionale alla velocità e al tempo di campionamento... dX=Vdt

Questa tecnica l'avevo pensata inizialmente, poi l'ho scartata temendo errori di posizione nel calcolo del setpoint.

Questo in quanto io campiono a 10ms (100 scansioni al secondo) e ho tratti di figura che possono durare anche 100-200 secondi. Se io ogni volta aggiungo un differenziale di posizione [NUMERO=NUMERO PICCOLO CHE DIVENTA GRANDE + NUMERO PICCOLO], ritengo di perdere 1 cifra significativa ogni 10 somme, 2 cifre ogni 100 somme, 3 cifre ogni 1000 somme, 4 cifre ogni 10000 somme (che sono 100 secondi).

Visto che il mio PLC mi dà circa 7 cifre significative, nel formato virgola mobile a 32 bit, ne consegue che dopo un tratto di 100 secondi potrebbero essermene rimaste solamente 3.

Ad es. posizione finale 2456.782 mm potrebbe diventare 2450.000 mm o 2459.999 mm.

Io uso invece una tecnica diversa, che ho chiamato "tempo equivalente" oppure "coordinata curvilinea".

Cioè, ad ogni istante di scansione sommo al tempo totale un valore 1 se sono a regime e <1 (tipo 0.3, 0.89, è un valore calcolato...) se sono in accelerazione/decelerazione.

Dopo di che questo valore di tempo equivalente lo metto nel sistema già citato.

( X=Vt

|....................................(....sistema di 2 equazioni, per gli archi ne ho uno similare))

( Y=2Vt

...e trovo il mio setpoint di posizione.

(il valore di tempo equivalente Teq è resettato al termine di ogni tratto. TRATTO= segmento di retta o arco di cerchio)

In questo modo la perdita di cifre significative la vedo solo sul tempo => potrei avere un errore 0.1% sulla velocità ma ciò è molto meno grave di un errore 0.1% sulla posizione.

Ad esempio ho provato a disegnare un cerchio completo di raggio 700mm, quindi una figura curva lunga più di 4 metri: il setpoint è ritornato precisamente al suo punto di partenza con un errore di pochi micron.

Questa mi sembra un'alternativa interessante e la propongo.

punto 2)

veniamo alle prove pratiche, che sto facendo ora, e documentiamo un po' di risultati.

- Lavorando a 600 mm/min (vel. medio-bassa) sono partito con un errore di 1-3 mm per ogni asse

- Passando al controllo ad anello chiuso (segnale encoder sia al plc che all'inverter) sono passato a 0.3-0.5 mm circa per ogni asse (N.B. : lavoro a Hz molto bassi, tipo 1-5 Hz).

Non avevo mai provato l'inverter ad anello chiuso e mi ha stupito positivamente!!

- Aggiungendo un feedforward nel riferimento di velocità mi sono abbassato a 30-100 micron di errore su ogni asse, direi molto bene

punto 3) VENIAMO ALLE DOMANDE

- Se ho già un buon feedforward, un coefficiente integrale nel pid mi può aiutare? Perché ora uso solo il proporzionale

- Eventualmente potrei metterlo solo nelle rette e non nei cerchi, dove è + importante la risposta dinamica. E' un 'idea sensata?

- Se l'asse va fuori posizione di molto (ad es. perché gli ho indotto un errore di posizione per colpa mia, tipo gli ho spostato istantaneamente il setpoint di parecchio) si mostra nervoso. Può essere utile abbassare il guadagno PID se l'errore di inseguimento supera un certo valore?

Grazie e Ciao,

Emanuele

P.S. grazie per la citazione in altra discussione sul forum, ovviamente concordo nel merito...

Edited by emanuele.croci

Share this post


Link to post
Share on other sites
Livio Orsini
Questa tecnica l'avevo pensata inizialmente, poi l'ho scartata temendo errori di posizione nel calcolo del setpoint.

No se usi valori in reale; poi al momento di usare il valore di posizione teorico fai casting reale-->intero

La tua proposta ha i suoi lati positivi e negativi, come sempre. La soluzione perfetta non esiste. Di volta in volta si usa il miglior compromesso.

- Se ho già un buon feedforward, un coefficiente integrale nel pid mi può aiutare? Perché ora uso solo il proporzionale

- Eventualmente potrei metterlo solo nelle rette e non nei cerchi, dove è + importante la risposta dinamica. E' un 'idea sensata?

Se hai un buon feed forward la correzzione integrale dovrebbe assumere valori nell'intorno dello zero. Io per principo cerco, usando bene feed forward e spingendo al massimo il proprozionale, di avere correzzioni integrali inesistenti.

Io proverei addirittura a toglierlo, con switch soft, in automatico o su comando.

- Se l'asse va fuori posizione di molto (ad es. perché gli ho indotto un errore di posizione per colpa mia, tipo gli ho spostato istantaneamente il setpoint di parecchio) si mostra nervoso. Può essere utile abbassare il guadagno PID se l'errore di inseguimento supera un certo valore?

Io penso che non sia solo utile, ma indispensabile. Sono trascorsi quasi trent'anni da quando, dopo aver implementato il mio primo PI digitale, decisi che era indispensabile modulare il guadagno in funzione dell'ampiezza di errore. Anche in quel caso era una posizione interpolata :)

I PID non lineari o con altri accorgimenti costituiscono capitoli importanti nella letteratura tecnica.

Insisti e aggiornaci. E' un lavoro molto interessante.

Share this post


Link to post
Share on other sites
emanuele.croci

Ciao,

aggiorno la discussione con un po' di risultati sperimentali....

Tempo di esecuzione software plc: usando il sistema suggerito da Livio (impulso di uscita analogica misurato con oscilloscopio) ho provato a misurare il tempo di esecuzione dell'interpolatore completo (lettura encoder - generazione setpoint - doppio pid inseguitore per gli assi X-Y). Sorprendentemente il tempo è abbastanza alto, 2-3 ms quando calcolo una linea e 3-4 ms quando calcolo un arco.

In effetti ho riguardato la tabella con i tempi di esecuzione istruzioni S7314 e sono un po' altini, circa 0.3 ms per una funzione trigonometrica o una radice quadrata. Bastano 7-8 di queste operazioni e si spiegano già questi tempi. Comunque pensavo di fare una prova anche con una CPU Vipa Speed7, che a parità di costo dovrebbe essere 50 volte più veloce....

Ho provato a far ciclare la routine in un tempo di 20ms e la performance si deteriora, il PLC è collo di bottiglia nel sistema di controllo, ritengo importante mantenere il campionamento ogni 10ms.

Ho provato sia il pilotaggio degli inverter da profibus che in analogica: con l'analogica è un po' più pronto, ma col profibus è nettamente più preciso, quindi per ora vado col profibus.

Per quanto riguarda l'asse "nervoso" (era "nervoso" quando gli spostavo istantaneamente il setpoint tipo di mezzo metro...) probabilmente il problema era legato al guadagno integrale NELL'INVERTER (l'aveva messo il tecnico Siemens che era venuto a configurarmi il loop ad anello chiuso). Aveva un TI=50ms... ho un po' ridotto l'effetto mettendolo a 100ms ma qui purtroppo non posso togliere l'integrale in quanto non riesco a gestire un feedforward sostitutivo.

Però ho abbassato il riferimento max di velocità che gli posso dare da plc (prima corrispondeva al 1000% della mia velocità max di lavoro, adesso è il 150% circa) e ha migliorato moltissimo, prima evidentemente si accumulava durante il reucpero di posizione una enormità di errore nell'integrale con conseguente overshooting esagerato.

Insomma... con i guadagni attuali e Tscan=10ms ho un errore di circa 100-150micron max per ogni asse.

Mi sono fatto anche una funzione che mi dice quanto è l'errore sul profilo (che è ciò che effettivamente mi interessa) e il numero è molto migliore, tipicamente 50-70 micron max, è circa la metà dell'errore max per ogni asse. E sto lavorando a una velocità alta di 1.2 m/min.

Quindi finora tutto OK!

Ciao, Emanuele

Share this post


Link to post
Share on other sites
Livio Orsini
Però ho abbassato il riferimento max di velocità che gli posso dare da plc (prima corrispondeva al 1000% della mia velocità max di lavoro, adesso è il 150% circa) e ha migliorato moltissimo..

Forse non ho capito bene, ma sembra una contraddizzione di temini, cioè sembrerebbe che tu hai aumentato l'influenza del PLC. Quello che è chiaro è che le migliori prestazioni si ottencono con integrale di velocità praticamente scarico.

Share this post


Link to post
Share on other sites
emanuele.croci

OK, siamo d'accordo sul discorso dell'integrale.

Segnalo anche che ho provato la CPU Vipa Speed7 (simile ad una S7314 ma molto più veloce) e i risultati sono interessanti: posso far ciclare l'interpolatore a 2 msec visto che la sua esecuzione mi porta via non più di 0.3-0.4 msec.

Avrei potuto anche farlo girare a 1msec, ma non mi sono arrischiato.

Nei fatti non ho migliorato molto, a questi livelli è l'inverter il collo di bottiglia, comunque mi pare che con performance del genere siamo quasi ai livelli di certi controlli numerici.

Ciao, Emanuele

Share this post


Link to post
Share on other sites
Livio Orsini
Nei fatti non ho migliorato molto, a questi livelli è l'inverter il collo di bottiglia, comunque mi pare che con performance del genere siamo quasi ai livelli di certi controlli numerici.

in effetti se piloti l'anello di velocità di un inverter, aggiornare il riferimento ogni 2ms ha poco senso: è una titillazione inutile :P A naso credo che un azionamento in ac, anche vettoriale, faccia "fatica" a seguire una variazione ogni 10ms, dovrebbe avere più di 100Hz di banda passante.

Share this post


Link to post
Share on other sites
Fede

Questo argomento di discussione è molto interessante e soprattutto trattato in modo concreto ed esauriente. vorrei ancora una volta ringraziare Livio per l'apporto di conoscenza e serietà che dà al forum e anche emanuele per l'interessante applicazione che ci ha permesso di seguire (anche se virtualmente....ovviamente).

P.S. nel tuo messaggio del 3/9/2004 ha un link non più valido. Avresti qualche riferimento per quella discussione che non sono riuscito a trovare

Grazie e ciao

Share this post


Link to post
Share on other sites
emanuele.croci

Ciao,

...giusto per dire che a breve tornerò sull'argomento con qualche interessante risvolto (spero)...

Saluti, Emanuele

Share this post


Link to post
Share on other sites
mpazzi

Solo una piccola testimonianza relativamente alle interpolazioni di moto fatte con plc.

Ho assistito ieri alle varie conferenze del convegno motion control MC4 di Bologna, molti relatori hanno parlato proprio delle nuove linee di controller che integrano in un unico ambiente potenzialità tipiche di un PLC , CNC, e schede assi dedicate.

In sintesi un tool unico, un unico linguaggio, ma librerie appartenenti ai 3 mondi. A parte le marche Giapponesi tipo Panasonic che offrono sistemi con setup preconfezionati, ho reputato molto interessanti per chi vuole realizzare applicazioni ultra customizzate (ti scrivi ovviamente tutto il codice da zero appoggiandoti ad API o librerie Standard) la linea B&R e la meno nota tedesca Jetter (avevano anche gli stand più ricchi e completi).

Solo un piccolo fuori tema..carino vedere live la guerra commerciale tra i vari field bus ed industrial ethernet.....

Cordialità

Share this post


Link to post
Share on other sites
emanuele.croci
molti relatori hanno parlato proprio delle nuove linee di controller che integrano in un unico ambiente potenzialità tipiche di un PLC , CNC, e schede assi dedicate.

Interessante quanto dici.

Giusto per curiosità, questi controller hanno anche funzioni tipo interpolazione lineare/circolare/tangenziale oppure si limitano a cose tipo albero elettrico/camma elettronica, ecc...?

(l'unico che sapevo era il plc fp sigma della nais, che faceva interpolazione circolare ma con molte limitazioni)

Avevo pensato di visitare MC4 ma poi non son riuscito... peccato!

Ciao, Emanuele

Share this post


Link to post
Share on other sites
mpazzi

Ti rispondo per quel che riguarda la Jetter con la quale mi sono fermato a chiaccherare più a lungo dal momento che ero alla ricerca di un bus ethernet con il protocollo il più possibile simile al TCP/IP puro per un azienda di famiglia con la quale collaboro, ed ho scoperto che che hanno brevettato un TCP-IP sincrono grazie ad un time stamp embeddato nei pacchetti (e non taroccato in termini di banda come gli altri) in grado di pilotare assi e di collegarsi nativamente senza proxy di scambio protocollo a switch e lan aziendali (ho visto al loro stand che usavano un normalissimo switch della netgear del tipo da supermercato e controllavano 3 motori brushless ed un manipolatore pneumatico). E' un loro brevetto e si chiama jetsync (se sei interessato ai bus ethernet come il sottoscritto puoi trovare loro articoli e referenze sul sito ufficiale dell'industrial ethernet book).

Per quel che riguardo la tua domanda ti posso allegare link ad un loro pdf Inglese e tedesco dove in fondo alla pagine 3 sono sintetizzate le interpolazioni gestite dal sistema. http://www.jetter.de/oscommerce/catalog/re...745ac494765d7e5

L'unico neo è che sono appena arrivati sul mercato italiano (da fine agosto) e non hanno ancora una rete di assistenza tecnica locale.....personalmente visto che sono appena partito con una piccola attività e sono alla ricerca di partner tecnici e commerciali li contatterò ancora, magari salta fuori qualche iniziativa interessante.

Saluti

Share this post


Link to post
Share on other sites
emanuele.croci
in effetti se piloti l'anello di velocità di un inverter, aggiornare il riferimento ogni 2ms ha poco senso: è una titillazione inutile tongue.gif A naso credo che un azionamento in ac, anche vettoriale, faccia "fatica" a seguire una variazione ogni 10ms, dovrebbe avere più di 100Hz di banda passante.

Riprendo questa affermazione (vera) alla luce di nuove prove che ho fatto di recente.

In effetti ciclare l'interpolatore e gli anelli di posizione a 10-20 ms sul plc è già un'ottima performance!

Quello che fa fatica a reggere il confronto è l'inverter.

Ho provato a rimpiazzare i non eccelsi Micromaster con degli inverter molto performanti della Vacon (ovviamente è un paragone che non regge, sono inverter di 2 categorie differenti....)

L'errore di posizione si è ridotto moltissimo, siamo (di norma) a meno di 20 micron per asse, un risultato che ritengo eccezionale!

L'unico picco nell'errore si ha quando cambio bruscamente la velocità del setpoint, ad esempio negli arresti e ripartenze, questo si risolve addolcendo le rampe di accelerazione.

Adesso sto pensando di realizzare addirittura una fresa con questo sistema: sempre più difficile!!

Ciao, Emanuele

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

×
×
  • Create New...