Loop chiuso e aperto

Sezione dedicata all'elettronica di controllo cnc.
Rispondi
tuttorego
Newbie
Newbie
Messaggi: 45
Iscritto il: giovedì 25 gennaio 2007, 21:35
Località: Torino
Contatta:

Loop chiuso e aperto

Messaggio da tuttorego » sabato 30 agosto 2008, 0:22

Ciao a tutti

Ho cercato un pò nelle discussioni ma le idee non sono ancora chiare.

_se c'è gia una discussione in merito o "elettronica cnc" non è ilposto adeguato stroncatemi pure prima di cominciare_

Se non sbaglio serve:

motori brushless (con i pp non si pùò fare o è un casino)
encoder (che non so bene come funziona)
driver
controllo

Ho un pò di dubbi sul fatto che serva:
software adatto?
resolver? (mi avevano spiegato ma mi sono perso qualche pezzo per strada)

in un loop aperto:
(tralasciando per ora il fatto che si usi parallela o usb)
la scheda di controllo manda segnali step e dir al driver
che a sua volta dice al motore in che senso deve girare e di quanto
di conseguenza il motore (dovrebbe visto che non è sempre vero) si muove

ora tocca all'encoder:
ce ne dovrebbero essere di diversi tipi, ma i più comuni sono montati direttamente sui motori (?solo brushless?), che praticamente controlla i motori brushless come se fossero passo passo (+o-) nel senso che il driver intanto fa muovere il motore, e lui (l'encoder) in conseguenza a questo movimento comunica al drive di quanti gradi si sta muovendo (funzionerà  con un sistema di tacche non so ma il concetto mi sembra quello) fermandolo quando ha fatto il numero di "passi" che il controller aveva detto di fare in partenza.

e ora i problemi:
per qualche sconosciuto problema potrebbe non essere così...

e se il motore va oltre il punto di arrivo?
può capitare invece che il motore si fermi prima?

Dovrebbe essere sistemato tutto con un ciclo chiuso così che il sistema rimetta fisicamente tutto a posto.

Ammesso che non abbia detto un mare di cavolate...
le domande:

per chiudere il sistema l'encoder deve comunicare direttamente con la scheda?
in questo caso potrebbero essere usati dei driver meno costosi che non gestiscano l'encoder?
oppure c'è un segnale di uscita dai driver che va mandato alla sheda?
e nel caso che il sistema venga controllato da pc come nel caso di emc2?
quali schede sono adatte al caso?
gli ingressi digitali che si trovano in molte schede possono servire a qualcosa (o per cosa possono essere usati)?
si può prendere in qualche modo una scorciatoia?
come funziona praticamente un encoder?
esiste davvero una cosa chiamata resolver o me la sono inventata?

ziofabrizio
Newbie
Newbie
Messaggi: 18
Iscritto il: mercoledì 14 novembre 2007, 16:26
Località: Baldissero TO

Re: Loop chiuso e aperto

Messaggio da ziofabrizio » domenica 26 ottobre 2008, 20:41

:oops:
ciao, non ho capito nulla :D ,ma ti raconto lo stesso quel poco che so su questo argomento:
allora,vediamo... la partenza di tutto è sicuramente o un PC o un vero controllo numerico ma in questo momento tralasciamo l'argomento, e ragioniamo solo dalle uscite del pc (o controllo).
Da antrambi arriverai ad un certo punto del circuito dove ti troverai ad avere per ogni asse due segnali ovvero "direzione e step (o passo,chiamalo come vuoi)".
da qui in avanti ci sono i driver di potenza,e qui cominciano le differenze.
Supponiamo di parlare di piccole cnc magari autocostruite ma il discorso è valido anche sulle macchine professionali;
qui puoi decidere di affidarti a dei motori stepper o a motori servo (di solito sulle macchine "fai da te" si tratta di motori in corrente continua a spazzole ma esistono anche in versione "brushless".
Se lavori con gli stepper è tutto molto più semplice (ma non sempre più economico) perchè il loop è "APERTO" cioè il tuo circuito non fa altro che gestire i 2 segnali che gli dai e far avanzare o retrocedere il motore dei passi richiesti.
Chiaramente il numero di passi che deve fare il motore per spostare l'asse di 1 millimetro per esempio,sarà  determinato dal rapporto meccanico di trasmissione fra albero motore e vite e naturalmente questo sarà  uno dei parametri da impostare nel programma che utilizzi per gestire la macchina.
Sostanzialmente per i motori stepper il circuito di controllo è terminato.....però l'imprevisto è in AGGUATO! :lol:
Cosa voglio dire... se per un qualsiasi motivo (generalmente troppa accelerazione o atriti vari o sforzi) la scheda di cotrollo del passo passo invia i segnali al motore ma ques'ultimo rimane meccanicamente fermo,il programma di controllo che muove la macchida non si accorge della perdita di passi e procede nella lavorazione come se niente fosse.
Da quel momento lì in avanti la tua quota di lavoro non sarà  più corretta e quindi avrai sicuramente rovinato il pezzo che stai lavorando.
Questo succede perchè con questo tipo di controllo (aperto) non esiste nessun tipo di retroazione che comunica alla macchina l'effettiva posizione degli assi durante la lavorazione.

Se invece utilizzi sei motori servo questo problema in linea di massima non esiste.....perchè:
il circuito driver che legge gli impulsi step e dir è in realtà  un "contatore".(in realtà  sono due contatori)
La "catena servo" è formata da un circuito di controllo degli ingressi di comando e degli ingressi di retroazione dell'encoder.
L'encoder nei sistemi più economici è direttamente piazzato sull'albero del motore ma potrebbe anche essere una RIGA OTTICA lineare.(dopo vediamo le differenze)
Gli ingressi step e dir andranno a comandare il primo contatore che aumenterà  o diminuirà  il conteggio in funzione del comando che riceverà  dal contollo numerico o pc.
Il secondo contatore riceve lo stesso tipo di impulsi ma provenienti dall'encoder.
A questo punto il driver tiene costantemente sotto controllo i due contatori e si accorge se il primo (comando) è maggiore o minore del secondo (encoder),cioè sente se è stato comandato uno spostamento in un qualsiasi verso.
A questo punto tenuto conto di alcuni parametri pre-programmati nel driver, esso decide di spostare il motore nel verso richiesto.
Questo produrrà  un inevitabile conteggio dell'encoder che è meccanicamente ben saldo all'albero motore,fino a quando il secondo contatore (encoder) appunto,non sarà  arrivato ad essere uguale al primo.Ciò determinerà  l'arresto del motore.
Il numero di tacche dell'encoder determinerà  la risoluzione del tuo spostamento.
(esempio:se hai l'encoder sul motore da 300 imp/giro e hai il motore diretto sulla vite con passo 3mm ogni impulso dell'encoder corrisponderà  a 0,01 mm di spostamento).
La catena servo è sempre reattiva.Se a macchina ferma cerchi di torcere l'albero del motore fai eseguire dei conteggi all'encoder,il circuito se ne accorge (loop chiuso) e aziona il motore per ripristinare la quota.
Questo capita anche quando il movimento dell'asse avviene in maniera eccessivamente brusca e si và  oltre la quota (ma solitamente è dovuto solo ad un errata taratura del driver).
La riga ottica funziona come l'encoder ma legge l'effettivo spostamento dell'asse e quindi è il metodo migliore per sapere a che quota sei!

In linea di massima è possibile utilizzare l'encoder anche sui motori passo passo (ne esistono con encoder integrato) ma è abbastanza inutile.Di solito i motori passo si scelgono per la loro facilità  di utilizzo e relativa economicità .

La scelta del tipo di motore da adottare è dettata da tanti fattori:velocità  negli spostamenti,precisione,peso degli assi,ecc ma sopratutto dal portafoglio!.

I servo brushless sono generalmente motori a tre fasi,quindi il circuito che li comanda è abbastanza complesso ma il principio di funzionamento è sempre lo stesso.

I passo passo sono generalmente più economici ma hai basse velocità  e solitamente tante vivrazioni dovute all'avanzamento a scatti.

beh,spero di averti dato qualche indicazione utile.
se hai bisogno chiama!! :)

ciao
ziofabrizio
dai che ho fretta....

tuttorego
Newbie
Newbie
Messaggi: 45
Iscritto il: giovedì 25 gennaio 2007, 21:35
Località: Torino
Contatta:

Re: Loop chiuso e aperto

Messaggio da tuttorego » martedì 8 febbraio 2011, 1:01

Ehm... #-o
sono proprio un a m...
non ho mai risposto e neanche mai ringraziato ziofabrizio che mi ha spiegato tutto per filo e per segno.
Ora è tutto chiaro, aperto e chiuso.
solo una cosa vorrei provare a richiedere esiste qualcosa chiamato anche lontanamente resolver o è un a barzelletta?

ziofabrizio
Newbie
Newbie
Messaggi: 18
Iscritto il: mercoledì 14 novembre 2007, 16:26
Località: Baldissero TO

Re: Loop chiuso e aperto

Messaggio da ziofabrizio » mercoledì 9 febbraio 2011, 21:49

ciao, non preoccuparti... :)

per resolver sicuramente intendevano indicare l'encoder.

gli encoder magnetici di solito si chiamano resolver.

dai un'occhiata su wikipedia.
ciao
ziofabrizio
dai che ho fretta....

zzz
Junior
Junior
Messaggi: 50
Iscritto il: sabato 14 gennaio 2017, 17:15

Re: Loop chiuso e aperto

Messaggio da zzz » lunedì 24 aprile 2017, 19:53

buongiorno a tutti, provo a chiedere qui nonostante la discussione sia un po "vecchia" :mrgreen:
io ho una scheda db25-1205, e collegato a questa ho 3 drive, vorrei sapere fisicamente come devo effettuare i collegamenti per questi encoder e come li configuro poi su mach3, e chiaro il funzionamento spiegato da ziofabrizio, in poche parole il "circuito" controlla tramite l'encoder dove effettivamente si trova l'utensile rispetto a cio che gli e stato richiesto dal programma (mach3)
io vorrei mettere 2 encoder su asse x e y ad esempio
credo si faccia cosi, correggietemi vi prego se sbaglio:
l' encoder lo collego all'albero del mio motore (passo passo)
alimento il mio encoder
gli altri 2 fili dell'encoder li collego su due pin liberi della db25? giusto?
poi configuro il mach3 su port and pins /encoder mpg's, su encoder1 port a e port b metto 1 e 1 e su pin a e pin b imposto i pin che ho usato, poi il valore counts unit del mio encoder? e idem per l'altro asse con altri 2 pin
nel caso si muova contrario inverto questi pin?
ma.. come fa mach3 a sapere che quel pin e relativo all'asse x per esempio? e non e y? visto che in una lavorazione si muovono tutti e due?
ci sono altre impostazioni da fare?
e ultima cosa, e tutto qui? ce altro da fare? scusate le mille domande ma voglio capire meglio prima di acquistare se poi so installare il tutto..
l'encoder che vorrei prendere e questo: http://www.ebay.it/itm/322482609505?_tr ... EBIDX%3AIT

ancora un ultima domanda, ce qualche particolare accorgimento da fare se sull asse x (ipotesi) uso 2 motori di sui uno slave?
naturalmente qui metterei l'encoder sull asse e non su uno dei 2 motori.
grazie mille e scusate il casino

Rispondi

Torna a “Elettronica CNC”