emc, motori servo e anello chiuso con encoder

Sezione dedicata a Linuxcnc
Rispondi
billielliot
Senior
Senior
Messaggi: 1748
Iscritto il: martedì 16 ottobre 2007, 23:23
Località: Trezzo sull'Adda

Re: emc, motori servo e anello chiuso con encoder

Messaggio da billielliot » mercoledì 19 maggio 2010, 9:43

Ciao timmy70,

non ho esperienza diretta di azionamenti di questo tipo, per cui quanto scrivo prendilo con le pinze e come linea di massima da seguire.

Se l'azionamento sei gia' riuscito a farlo funzionare anche con "semplice" treno di impulsi (e da quanto scrivi riesci gia' a muovere i motori in questo modo), io fossi in te' non impazzirei a cercare di muovere i motori con PWM.

E' molto probabile che la scheda in tuo possesso sia "evoluta" al punto da offrirti la possibilita' di convertire al suo interno il segnale, trasformando un treno di impulsi in equivalente segnale PWM.

Avendo a disposizione il tuo hardware, mi concentrerei sul come chiudere l'anello, cosi' da lasciare ad EMC il compito di compensare in automatico eventuali "derive" in fase di lavorazione.

Potresti trovarti nella stessa situazione in cui ti sei trovato con il Gcode: e' stato sufficiente darlo in pasto a EMC che lo ha digerito senza grossi problemi :-) (escludendo la parte in cui hai dovuto aggiungere le necessarie informazioni circa la configurazione degli assi).

Dalle due pagine di manuale che hai allegato:
Nella sezione 8.5.7 pagina 8-45 vengono definiti i morsetti di uscita dei segnali in quadratura (A, Anegato, B, Bnegato, C, Cnegato).

Mi pare di capire che C non ci serva per il momento (ci informa quando il disco dell'encoder passa da un punto di riferimento che puo' esser usato come zero).

Semplificando al massimo penso che tu possa concentrarti (a scelta) sulla coppia A-B oppure Anegato-Bnegato.

Se i segnali fosero "capovolti" (da un punto di vista elettrico), potrai riconfigurarli (sempre a scelta):
-a livello software nel file hal di EMC
-a livello hardware usando l'altra coppia di segnali (se usavi A-B li sostituirai con Anegato-Bnegato)

Per le configurazione del file HAL di EMC, ti suggerisco di confrontare il tuo file hal con quello postato da Dino nel topic https://www.cncitalia.net/forum/viewtopi ... it=encoder per vedere le differenze e decidere a quali pin della parallela connettere i fili che arrivano dall'encoder.

Leggendo il file di Dino sembrerebbe che lui abbia connesso almeno due motori/encoder.

Questa parte puoi farla solo tu perche' hai l'installazione pronta e puoi fare le prove pratiche del caso.

Nello specifico spero tu abbia installato sul tuo PC una seconda porta parallela. Se si dovesse bruciare la porta parallela sulla scheda madre, nella peggiore delle ipotesi potresti trovarti con un PC non funzionante.

Meglio ancora sarebbe avere una porta parallela aggiuntiva su BUS PCI e un optoisolatore per connetterla al driver del motore.

Dalla sezione 6.2.2 pagina 6-8 dei manuali da te postati, sembrerebbe che le alimentazioni in gioco (e i segnali) siano tutte a 5 volt (TTL compatibili e quindi adatte anche alla parallela del PC).

In linea molto teorica dovresti poter collegare i fili direttamente al PC senza problemi ma non mi sento di consigliari di farlo.

Resta sempre il dubbio che a causa di qualche massa sbagliata o un errato collegamento, si possa bruciare la paralela del PC (il driver NON e' alimentato dal PC ma ha una sua linea indipendente e non ci sono informazioni in merito).

Ciao :-)

Mauro
Amat victoria curam

timmy70
Newbie
Newbie
Messaggi: 30
Iscritto il: domenica 10 gennaio 2010, 22:45
Località: nord milano

Re: emc, motori servo e anello chiuso con encoder

Messaggio da timmy70 » sabato 22 maggio 2010, 15:27

Ho chiesto un pò in giro ai vari tecnici e progettisti delle macchine che utilizzo e che montano motorizzazioni yaskawa, partendo dal presupposto che tutti e dico tutti le controllano con il Vref ossia il controllo della velocità  perchè sembra che con il treno di impulsi yaskawa garantisca solo il posizionamento finale degli assi e non la velocità  di movimento durante il moto per cui come dicevo io si rischia che invece di una linea interpolando x e y a 45 gradi per esempio si ottenga una parabola,vorrei provare con un asse a cambiare il tipo di controllo e qui ho bisogno di voi. Francesco parlava di una scheda con fpga tipo la Pluto P giusto o sto già  dicendo una castroneria? Se si ora avrei bisogno immane di una anima pia che in linguaggio paleolitico mi spieghi come funziona il tutto, ho visto i datasheet ma non ci ho capitoun granchè sembra che una volta alimentata funzioni più o meno come una normale scheda per stepper come concetto sbaglio? Se funziona penso possa interessare molto anche a Gianfra ce la date una mano per me questa del controllo dal punto di vista elettrico è veramente la parte più ostica.
Ringrazio anticipatamente.

Avatar utente
gianfra
Member
Member
Messaggi: 338
Iscritto il: domenica 16 dicembre 2007, 20:06
Località: REGGIO EMILIA

Re: emc, motori servo e anello chiuso con encoder

Messaggio da gianfra » sabato 22 maggio 2010, 16:10

per --- timmy70
per usare yaskawa in analogica devi cambiare dei parametri e collegamenti
penso gia lo sai
per la pluto non ne ho' idea (ma vorrei capirne di piu')
pero'
so anchio che nelle macchine professionali usano sempre analogiche
sinceramente non conosco i vantaggi
so che sono piu complesse da gestire (come cnc )
ma posso garantirti che yaskawa a treno di inpulsi
non ha problemi di interpolazione
anche perche' credo cio' dipenda dal cnc non dal servo
e mi verrebbe da pensare a motori dc se vogliamo una certa linea precisa
poi entra in gioco anche la precisione meccanica
gianff

Avatar utente
fabpri
Senior
Senior
Messaggi: 2140
Iscritto il: lunedì 4 dicembre 2006, 18:10
Località: AN

Re: emc, motori servo e anello chiuso con encoder

Messaggio da fabpri » sabato 22 maggio 2010, 20:02

credo che i controlli professionali tipo selca e fanuc abbiano le uscite a 0-10v per questo li pilotano così
meglio un sedere gelato che un gelato nel sedere!

billielliot
Senior
Senior
Messaggi: 1748
Iscritto il: martedì 16 ottobre 2007, 23:23
Località: Trezzo sull'Adda

Re: emc, motori servo e anello chiuso con encoder

Messaggio da billielliot » lunedì 24 maggio 2010, 14:42

Ciao,

rispondo alla richiesta di aiuto di timmy70 per quanto riguarda la scheda Pluto.

Stringendo ai minimi termini, questa scheda (similmente ai controlli profesisonali) non fa' altro che spostare la potenza di calcolo dal processore del PC a un processore dedicato che si trova sulla scheda stessa.

Queste schede sono generalmente in grado di pilotare tre o piu' assi. Il PC si limita a scaricare il Gcode (o codice proprietario) e lascia alla scheda tutto il lavoro di gestione degli assi.

In poche parole: stai togliendo il controllo della macchina a EMC e lo stai dando a un componente esterno.

Non e' un caso che il vostro sistema sia gestito da un pentium 233. Dopo aver scaricato il codice sul controller, il computer puo' "dormire" mentre il controller lavora. Avere un PC con potenza di calcolo enorme non servirebbe a nulla.

Per contro, usare una scheda come la Pluto per gestire un solo asse sarebbe difficile oltre che uno spreco di risorse (dovresti lavorare contemporaneamente in sincrono e in parallelo con EMC e useresti la scheda solo in minima parte rispetto alle sue potenzialita').

Per ottenere una Vref che piloti la velocita' dei motori conviene cercare un circuito che converta il treno di impulsi (in uscita sulla parallela gestita da EMC) in una equivalente tensione continua. Ricordo che da qualche parte sul forum si era gia' accennato a questa possibilita'/soluzione.

Ciao :-)

Mauro
Amat victoria curam

Fabietto
Senior
Senior
Messaggi: 881
Iscritto il: mercoledì 21 novembre 2007, 17:43
Località: Prov. Ve

Re: emc, motori servo e anello chiuso con encoder

Messaggio da Fabietto » lunedì 24 maggio 2010, 21:53

YAPSC 10 V.
questo come documentazione oppure questo o ancora con il codice ha anche un sito commerciale dove vende le schedine poi valuta se fà  al caso tuo.
Ciao

timmy70
Newbie
Newbie
Messaggi: 30
Iscritto il: domenica 10 gennaio 2010, 22:45
Località: nord milano

Re: emc, motori servo e anello chiuso con encoder

Messaggio da timmy70 » lunedì 24 maggio 2010, 23:16

x fabietto
sembrerebbe interessante ma non ho trovato dove le vende
forse è meglio che vado a nanna sono veramente fuso.

Fabietto
Senior
Senior
Messaggi: 881
Iscritto il: mercoledì 21 novembre 2007, 17:43
Località: Prov. Ve

Re: emc, motori servo e anello chiuso con encoder

Messaggio da Fabietto » martedì 25 maggio 2010, 14:00

Non conosco esattamente le caratteristiche a me interessavano i driver per i motori dc, spero vi serva, per la parte commerciale mi pare ne faccia menzione su cnc zone.
Ciao

franceso
Senior
Senior
Messaggi: 1341
Iscritto il: martedì 22 aprile 2008, 16:37
Località: BZ

Re: emc, motori servo e anello chiuso con encoder

Messaggio da franceso » martedì 25 maggio 2010, 14:12

E´ solo una scheda, che permette di commandare gli motori servon con segnali step-dir, quello che il servodriver
riesce gia a fare. Molti servodriver non lo sanno fare, oppure sono solo dei servoamplificatori (open loop) e quindi
quella scheda gli pilota con step-dir.

Fabietto
Senior
Senior
Messaggi: 881
Iscritto il: mercoledì 21 novembre 2007, 17:43
Località: Prov. Ve

Re: emc, motori servo e anello chiuso con encoder

Messaggio da Fabietto » martedì 25 maggio 2010, 21:31

Mi sembrava di aver letto o visto che faceva anche ritornare i segnali dell'encoder al pc.
E allora non sò vedi le mesa electronics se ti possono servire.
Ciao
P.S. c'era un utente che le vendeva nel mercatino tempo fà  e un thread dove le hanno usate e impostate.
Ciao ancora

billielliot
Senior
Senior
Messaggi: 1748
Iscritto il: martedì 16 ottobre 2007, 23:23
Località: Trezzo sull'Adda

Re: emc, motori servo e anello chiuso con encoder

Messaggio da billielliot » mercoledì 26 maggio 2010, 13:38

Ciao,

rileggendo la discussione dall'inizio mi sento di dire che non c'e' bisogno di una scheda aggiuntiva.

Andando in questa direzione ci complichiamo la vita senza che ce ne sia bisogno :-)

Riporto una parte del messaggio con cui tymmi70 ha aperto questa discussione:

".....sono riuscito a pilotare i miei servo (yaskawa spero che si possa dichiarare la marca senza che si arrabbi nessuno) come se fossero degli stepper ossia con clk e dir però essendo destinati ad una macchina 5 assi avrei bisogno di chiudere l'anello con l'encoder...."

Se lui ha gia mosso i motori, gli rimane solo da chiudere il loop con l'encoder perche' EMC manda i segnali ma non ha un controllo se quanto richiesto e' avvenuto.

Se ha modo, timmy70 dovrebbe ritagliarsi del tempo e cercare di capire quali PIN della parallela ha a disposizione e scrivere le righe di codice adatte nel file HAL di EMC.

Sara' poi compito di EMC pilotare i motori come stepper e leggere la loro reale posizione tramite encoder come si fa' con i servo o i motori DC.

Quello che si creera' sara' una configurazione mista (ammesso che un simile termine sia appropriato). Non mi pare che sia vietato crearla. Al massimo scopriremo che EMC e' molto piu' flessibile di quanto pensassimo.

In merito alla quantita' di assi da gestire(3, 4, 5 o piu'), al massimo sara' necessario aggiungere una paio di porte parallele su BUS PCI per avere a disposzione un sufficiente numero di canali ingresso/uscita.

Ciao :-)

Mauro
Amat victoria curam

billielliot
Senior
Senior
Messaggi: 1748
Iscritto il: martedì 16 ottobre 2007, 23:23
Località: Trezzo sull'Adda

Re: emc, motori servo e anello chiuso con encoder

Messaggio da billielliot » mercoledì 26 maggio 2010, 13:51

A proposito di quanto scritto da timmy70:

"....partendo dal presupposto che tutti e dico tutti le controllano con il Vref ossia il controllo della velocità  perchè sembra che con il treno di impulsi yaskawa garantisca solo il posizionamento finale degli assi e non la velocità  di movimento durante il moto per cui come dicevo io si rischia che invece di una linea interpolando x e y a 45 gradi per esempio si ottenga una parabola...."

Non posso eccepire su quanto scritto se non che Yaskawa garantisce questi risultati se il controllo del motore e' completamente affidato ai loro driver.

Nel nostro caso (una volta collegato l'encoder) EMC inviera' i segnali DIR e CLOCK e leggera' la posizione reale tramite i segnali di ritorno dall'encoder.

In questo caso il driver non ci mette nulla di suo nel calcolo delle traiettorie e noi usiamo solo la parte di sue potenzialita' che a noi interessa (indipendentemente dalla marca).

Ciao :-)

Mauro
Amat victoria curam

Fabietto
Senior
Senior
Messaggi: 881
Iscritto il: mercoledì 21 novembre 2007, 17:43
Località: Prov. Ve

Re: emc, motori servo e anello chiuso con encoder

Messaggio da Fabietto » mercoledì 26 maggio 2010, 14:10

Io penso che il segnale dell'encoder debba essere dato sia al driver che al computer e quì sta la vera difficoltà  settare i due pid che vadano d'accordo.
Ciao
P.S. Marfron ha realizzato un driver per motori servo dc e ha fatto chiudere l'anello con la pluto (1 parallela+pluto=3 motori e segnali) ma il suo driver viene comandato dal pid del computer.

billielliot
Senior
Senior
Messaggi: 1748
Iscritto il: martedì 16 ottobre 2007, 23:23
Località: Trezzo sull'Adda

Re: emc, motori servo e anello chiuso con encoder

Messaggio da billielliot » mercoledì 26 maggio 2010, 14:47

Ciao Fabietto,

rispetto ogni opinione ma quanto affermi nela prima parte del tuo messaggio mi sembra un po' surreale.

In un sistema CNC e' gia' difficile ottenere una situazione in cui tutto funziona.

Non oso pensare cosa potrebbe succedere se due macchine prettamente ignoranti (il driver e il PC) dovessero mettersi daccordo su chi ha ragione :-)

Il tutto mentre la macchina esegue una lavorazione.

Propongo di rimanere con i piedi in terra e seguire vie conosciute, almeno per far partire il tutto (mi accontenterei di sentire timmy70 gioire per essere riuscito a interpolare due assi).

timmy70 potra' sempre cimentarsi in seguito con soluzioni esotiche (se vorra'), con la sicurezza che la soluzione "semplice e lineare" funziona.

Per quanto riguarda la realizzazione di Marfron non posso che complimentarmi con lui per il risultato ottenuto.

Rimane pero' un problema: partendo dalla realizzazione che hai citato, tu saresti in grado di portare in questa discussione elementi pratici per ralizzare una simile connessione di elementi?

Altrimenti timmy70 si trovera' con un nuovo problema da risolvere.

Ne' piu' ne' meno che se io gli proponessi di studiarsi tutto "l'integrator manual" di EMC.

Ciao :-)

Mauro
Amat victoria curam

Fabietto
Senior
Senior
Messaggi: 881
Iscritto il: mercoledì 21 novembre 2007, 17:43
Località: Prov. Ve

Re: emc, motori servo e anello chiuso con encoder

Messaggio da Fabietto » mercoledì 26 maggio 2010, 22:05

Forse ho sbagliato io a capire ma mi sembrava che la richiesta iniziale fosse quella di far controllare ad emc che il driver faccia esattamente quello che gli viene comandato mediante la chiusura del loop su di lui in modo da correggere eventuali errori se si presentasse la necessità .

Per spiegare quanto scritto nel post precedente faccio questa considerazione:
Il servodriver devono chiudere l'anello con il servomotore e su questo non ci dovrebbero essere dubbi e quindi imposti un pid su di loro obbligatoriamente, poi collegando un encoder esterno, per comodità  di ragionamento, onde evitare problemi di connessione driver/pc mandiamo i due segnali alla parallela del computer per la verifica settandoli oppurtunamente in modo che chiudano l'anello e verifichino il tutto, ma non credo si possano trattare così come sono ed ecco perchè ti dicevo della necessità  di un nuovo pid.
Se ho sbagliato a capire per favore spiegami dove anche perchè mi piace capire.

Nella prima parte del tuo messaggio dici giustamente che è difficile far ragionare due sistemi ignoranti e ti dò perfettamente ragione e aggiungo inoltre che metterli d'accordo attraverso la parallela forse è ancora più complesso visto che è un bell'imbuto.

Alla tua domanda se sono in grado di apportare esperienze utili ti rispondo di nò in quanto mi ero interessato alla realizzazione dell'anello chiuso tipo marfron ma poi ho lasciato perdere, il mio intento forse sbagliando era di dare degli aiuti perlomeno con dei post dove si fossero trattati degli argomenti simili e se ho sbagliato chiedo scusa e credimi te lo dico con la massima tranquillità .

Ciao

Rispondi

Torna a “Linuxcnc”