Vai al contenuto
PLC Forum


Posizionatore Con "retroazione" Analogica - utilizzare una retroazione analogica anziche' l'encoder


Cesare Nicola

Messaggi consigliati

Ciao a tutti,

Scusate, ma ripropongo una mia richiesta che forse non era nella sezione giusta del forum.

dobbiamo realizzare una macchina che si muove lungo dei binari, per circa 10 mt (in futuro anche più'): ci piacerebbe adottare, per rilevare la posizione della macchina, un misuratore di distanza laser con uscita analogica, per ragioni di semplicità' di montaggio. Non sto parlando di encoder laser, perché' (credo) costino una cifra non proponibile su un impianto del genere, ma solo di un semplice misuratore. Quali alternative ho per realizzare un posizionatore che accetti una "retroazione" analogica anziché' encoder? A me viene in mente soltanto che posso leggere l'ingresso analogico e, con dei confronti su quel valore, stabilire quando rallentare, fermarmi, ecc. Ho già' esperienza con simili applicazioni e ne conosco quindi i limiti (tanti) ed i vantaggi (forse solo l'economicità'). Avete altre idee da suggerirmi? Esiste un altro modo o un modulo per S7-300 che realizzi qualcosa del genere? Inoltre, mi preoccupa una cosa: su una lunga distanza, se devo muovermi di 1mt, supponiamo, la variazione dell'ingresso analogico sarà' molto ridotta e, di conseguenza, la precisione del posizionamento, gia' non eccezionale visto il sistema ad anello aperto, sarà' ulteriormente diminuita. O no?

Grazie, ciao

Cesare

Link al commento
Condividi su altri siti


Ciao,

posizionamenti con analogica io ne faccio a bizzeffe e ti dirò che non presentano particolari problemi salvo, come puoi immaginare, la precisione.

Supponiamo ad es. che tu utilizzi il lettore laser più preciso del mondo e privo di errori "suoi" (o potenziometro a filo, o barra potenziometrica, o magnetostrittivo o qualsiasi altra diavoleria che ti svincola dal motore ed esce con un segnale analogico...).

Questo oggetto avrà un FONDO SCALA, cioè un dato fisico che corrisponde al 100% dell'uscita analogica, diciamo ai 10VDC.

Supponiamo che questo fondo scala sia = 10 metri.

A questo punto devi considerare la RISOLUZIONE del tuo ingresso analogico, cioè il numero di BIT del convertitore A/D, ad esempio negli ingressi analogici Siemens "standard" è 12 bit.

2^12=2048, quindi il tuo segnale avrà al massimo 2048 divisioni, se fai 10metri diviso 2048 = 5 mm.

5 millimetri è la risoluzione del tuo sistema, non potrai intrinsecamente andare OLTRE questa precisione.

MA SE tu usassi degli ingressi analogici a 16 bit potresti essere molto più preciso, avresti una risoluzione migliore del millimetro...

In aggiunta a ciò devi preoccuparti dei possibili DISTURBI elettrici che potrebbero alterare il tuo segnale e generarti errore: usa cavi schermati o magari una analogica 4-20 mA se disponibile.

Insomma, il riassunto è: posizionamento con analogica è OK se non hai bisogno di grande precisione E/O la corsa è breve...

(tralascio la spiegazione del programma sw per realizzare il tutto, mi sembra piuttosto banale...)

Ciao, Emanuele

P.S. SE la risoluzione della analogica non è sufficiente, nulla ti vieta di utilizzare un oggetto analogo con uscita ad es. PROFIBUS, in questo caso i problemi della risoluzione analogica non li hai più...

Modificato: da emanuele.croci
Link al commento
Condividi su altri siti

Grazie Emanuele,

l'esempio che fai calza a pennello, perche' la lunghezza della macchina e' circa 10mt e gli ingressi analogici che pensavo di adottare erano proprio gli standard Siemens. La precisione che volevamo ottenere e' circa +/- 1 mm quindi mi sembra di capire che non ci siamo, come intuivo già' prima. Dal punto di vista dell'azionamento, usi un V/F vettoriale con un motore asincrono, in applicazioni simili, giusto?

Grazie,

Cesare

Link al commento
Condividi su altri siti

a lunghezza della macchina e' circa 10mt e gli ingressi analogici che pensavo di adottare erano proprio gli standard Siemens. La precisione che volevamo ottenere e' circa +/- 1 mm

Su distanze simili e simili precisoni di arresto , l'encoder incrementale resta un buon alleato , anche usato con una FM 350 , senza particolari FM di posizionamento, e' molto ben gestibile.

Dal suo contro rimane l'accoppiamento meccanico nella misura , per questo devi vedere tu se e' fattibile e come.

Ciao

Ivan

Link al commento
Condividi su altri siti

Ciao Cesare,

cito me stesso da una discussione dei giorni scorsi...

Un suggerimento: se disponi di un motore elettrico per eseguire il movimento, è in genere molto meglio usare un ENCODER INCREMENTALE: è più preciso ed economico del LASER....

Cioè, se hai già il motore elettrico che fa muovere il tutto, non vedo quale è il problema a montare un encoder incrementale che costa meno ed è più preciso.

L'analogica (potenziometro a filo, laser,ecc....) la usiamo in quelle situazioni in cui non si dispone del motore elettrico (ad es. movimentazioni idrauliche/pneumatiche) o in cui il cinematismo è tale che il movimento del motore non si traduce con una legge semplice in spostamento dell'oggetto o in cui l'applicazione è "difficile" (il motore fa girare una ruota che può slittare, il motore è montato su un carrello mobile, ecc...)

Ciao, Emanuele

Link al commento
Condividi su altri siti

L'analogica (potenziometro a filo, laser,ecc....) la usiamo in quelle situazioni in cui non si dispone del motore elettrico (ad es. movimentazioni idrauliche/pneumatiche) o in cui il cinematismo è tale che il movimento del motore non si traduce con una legge semplice in spostamento dell'oggetto o in cui l'applicazione è "difficile" (il motore fa girare una ruota che può slittare, il motore è montato su un carrello mobile, ecc...)

E' proprio cosi' come dici tu, Emanuele, la scelta di un laser o simile e' proprio perché' le ruote possono slittare sui pattini, abbiamo già' esperienza su una macchina precedente. Meccanicamente non possiamo montare cremagliere o simili, quindi o ci teniamo una buona imprecisione col sistema "analogico" e ad anello aperto o usiamo un encoder montato su una ruota esterna alla macchina o a filo. Il produttore degli azionamenti con posizionatore integrato, che utilizziamo normalmente e che utilizzeremmo anche questa volta, mi ha appena sconsigliato questa seconda ipotesi, perche' in quel caso avremmo una chiusura dell'anello di velocita' sul motore, tramite resolver, e quella di spazio da un encoder esterno, con conseguenti problemi di taratura dei guadagni e cose del genere. Cosa ne pensate? E' davvero cosi' difficile trovare una soluzione senza utilizzare una cremagliera anziche' delle rotaie che, mi sembra, taglierebbe la testa al toro?

Grazie

Ciao

Link al commento
Condividi su altri siti

Il produttore degli azionamenti con posizionatore integrato, che utilizziamo normalmente e che utilizzeremmo anche questa volta

SE usi un posizionatore integrato nell'azionamento, è evidente che devi fornirgli un'interfaccia compatibile con lo stesso (e sicuramente non sarà un'analogica 0-10VDC). Devi sapere A PRIORI cosa puoi collegargli e cosa non puoi, inutile discutere ulteriormente.

SE invece realizzi tu il posizionatore nel PLC, allora puoi collegare praticamente quel che vuoi.

Se non ti va bene la risoluzione analogica puoi usare altre strade, ad esempio PROFIBUS: noi usiamo encoder assoluti a filo della SICK con uscita profibus e funzionano ottimamente.

Oppure, come dice Tode, lettori di banda magnetica che ti danno in uscita un segnale tipo encoder incrementale: sono ottimi e per 10 metri puoi spendere all'incirca 400-500 euro, con risoluzione centesimale! (necessitano però di precisioni sull'allineamento migliori di quelle dell'encoder a filo o del laser, tipicamente tra la testina e la banda magnetica devi avere max 2mm)

Ciao, Emanuele

Link al commento
Condividi su altri siti

Prima di tutto confermo quanto già detto: con segnali analogici non puoi ottenere la precisione di +/- 1mm su 10 metri.

Detto questo, io proporrei un encoder (incrementale o, meglio, assoluto) a filo.

Al posto del raggio laser c'è un filo, e costa sicuramente meno.

Tempo fa ne ho usato uno (fornito direttamente dal cliente e di cui non ricordo marca e modello) collegato in Profibus. Se non ricordo male, mi dava la quota assoluta in decimi di millimetro su una distanza totale di 30 m. Inoltre era possibile leggere direttamente dall'encoder anche la velocità di traslazione.

Link al commento
Condividi su altri siti

(necessitano però di precisioni sull'allineamento migliori di quelle dell'encoder a filo o del laser, tipicamente tra la testina e la banda magnetica devi avere max 2mm)

esistono sistemi con distanza massima 10 mm, risoluzione 0,25 mm, classe di accuratezza +/- 1 mm

Link al commento
Condividi su altri siti

Innanzitutto grazie a tutti per le risposte.

Conosco i sistemi a banda magnetica, ma non intendiamo utilizzarli perché' ci viene difficile montarli con l'adeguata precisione di allineamento che giustamente fa notare Emanuele Croci. Mi rendo conto solo ora e me ne scuso,di avere dato un'informazione scorretta: la precisione di +/- 1mm e' richiesta su ogni singolo posizionamento della macchina, che e' al massimo di 1200mm circa e non su tutti i 10mt. Su 10mt vorremmo avere un errore di circa 10mm. Questo cambia parecchio le cose? Torna in ballo la soluzione analogica/inverter vettoriale/motore asincrono e posizionatore "fai da te" nel PLC? E' davvero cosi' problematico montare un encoder esterno, come mi dice il tecnico degli azionamenti/posizionatori, che citavo nel mio precedente post?

l produttore degli azionamenti con posizionatore integrato, che utilizziamo normalmente e che utilizzeremmo anche questa volta, mi ha appena sconsigliato questa seconda ipotesi, perche' in quel caso avremmo una chiusura dell'anello di velocita' sul motore, tramite resolver, e quella di spazio da un encoder esterno, con conseguenti problemi di taratura dei guadagni e cose del genere

Grazie ancora,

ciao

Link al commento
Condividi su altri siti

Prima di tutto confermo quanto già detto: con segnali analogici non puoi ottenere la precisione di +/- 1mm su 10 metri

scusa , ma se hai gia' un sistema pronto e il tuo unico problema e' la risoluzione che con gli ingressi standard non riesci a ottenere ,

perche' non monti gli ingressi appropriati ??? Ci sono gli ingressi ANA a 12 / 14 /16 bit , fai due conti e usa quello che ti serve.

Ciao

Luca

Link al commento
Condividi su altri siti

Quello che ti dice il tecnico degli azionamenti (chiusura anello di spazio su encoder esterno) ha un senso, tuttavia è un problema tecnico FACILMENTE superabile.

Te lo dico per 2 motivi:

- l'ho fatto io stesso un bel po' di volte

- questo sistema è usato abitualmente in un TOT di macchine per recuperare i giochi della meccanica, tanto che molti azionamenti prevedono il doppio ingresso (resolver motore + encoder sulla meccanica)

Certo che se il TUO azionamento non lo prevede, non andranno a cambiare l'elettronica per far contento te.... gli compri 1000 pz/anno per caso? :(

Una cosa che non hai spiegato per la risoluzione del tuo problema è comunque la DINAMICA del tuo asse: vuoi un errore sulla posizione di +/- 1mm, ma a che VELOCITA' MASSIMA e con quale DECELERAZIONE? Perché anche questo conta molto nella scelta di un sistema o di un altro...

Ciao, Emanuele

Link al commento
Condividi su altri siti

No, Emanuele, purtroppo non gli comperiamo 1000p pz/anno! Gli azionamenti comunque hanno un ingresso encoder separato, e' solo che il tecnico mi ha parlato di difficoltà' (non impossibilita') nella taratura, perche' gli anelli di spazio e di velocita' non si comportano allo stesso modo: esempio, la ruota che muove la macchina slitta ma la ruota su cui e' fissato l'encoder, no. Ma, a questo punto mi chiedo, l'avere un encoder esterno non serve proprio per problematiche simili? Per quel che riguarda la dinamica, so che la velocità' e' al massimo di 15mt/min, le accelerazioni e decelerazioni al momento non so. Eventualmente, se e' concesso, posso dire la marca di azionamenti/posizionatori, magari qualcuno di voi li conosce.

Ciao

Link al commento
Condividi su altri siti

Allora, se l'azionamento NON ha ingresso analogico o profibus per la trasduzione di posizione, i casi possibili sono :

- o rinunci

- o ti fai tu il posizionatore nel PLC

- o cambi azionamento

- o ti adatti all'encoder (che comunque per me funziona....)

Cosa pensi di fare?

Ciao, Emanuele

Link al commento
Condividi su altri siti

Penso di usare l'encoder esterno: anche secondo me funziona, mi ha solo spaventato un po' l'affermazione del tecnico degli azionamenti. Personalmente non ho mai lavorato su applicazioni con resolver ed encoder separati o, meglio, quando e' capitato il "legame" tra resolver ed encoder era piu' affidabile, tipo encoder montato sulla vite che muove l'asse, senza possibilita' di slittamenti : per questo non sono molto preparato su questa applicazione.

Grazie mille e scusate il disturbo.

Ciao

Link al commento
Condividi su altri siti

In realtà può bastare quanto segue:

- abbassare un po' il guadagno dell'anello di posizione (ciò potrebbe anche essere superfluo)

- e soprattutto porre dei limiti massimi all'uscita PID del regolatore di posizione, per evitare che in caso di slittamento l'asse ti possa improvvisamente partire a razzo

- eventualmente togliere o ridurre la parte integrale per evitare che nella fase di slittamento l'errore si accumuli e segua poi una partenza brusca

Non vedo altre peculiarità....

Ciao, Emanuele

P.S. Tra l'altro, se non ti interessa che la funzione spostamento(tempo) f=x(t) sia esattamente precisa, per me è inutile in questi casi l'utilizzo di un PID control nella regolazione di posizione, anzi spesso è più il danno dell'utile. Però in genere è sempre presente e non puoi "sganciarlo". Io i miei posizionatori li realizzo da me, quindi questi problemi li bypasso allegramente...

Link al commento
Condividi su altri siti

OK, grazie ancora. Ultimissima cosa, poi prometto di chiudere. Il tecnico degli azionamenti/posizionatori, mi suggerisce anche di usare un encoder assoluto EnDat, di modo che tramite l'azionamento si possa configurare qualcosa che... non ricordo, devo richiamarlo! Non li ho mai usati gli EnDat, che differenza c'e' esattamente con un TTL (a parte il costo!)? Premetto che non e' un problema eseguire la ricerca zero, quindi non e' il caso di usare un encoder assoluto, ma perche' potrebbe aiutarmi un EnDat?

Ciao

Cesare

Link al commento
Condividi su altri siti

Se non hai problemi ad eseguire la ricerca zero ad ogni accensione della macchina vai tranquillo con l'incrementale che costa meno, è più semplice e più intercambiabile.

L'unico vantaggio che vedo nel EnDat è che è assoluto e non devi fare lo zero...

Ciao, Emanuele

Link al commento
Condividi su altri siti

Ciao Nicola, se posso dirti la mia...

1- Sono d’accordo sul fatto di non usare un encoder per ovvi problemi di slittamenti sulle rotaie.

2- Penso che il laser sia una buona soluzione. Tieni presente però che per quanto ne so io esiste solamente un laser che di da un errore di lettura < 10mm ed è il DME della SICK.

3- Tieni presente che altri costruttori dichiarano un errore di lettura di 5mm ma tralasciano il fatto che la lettura varia al variare della temperatura e dopo ogni accensione il laser da sempre misure leggermente diverse.

4- Il DME della SICK ha l’interfaccia profibus quindi non hai nessun problema di risoluzione dell’analogica (problema che ho avuto anch’io).

Io farei (faccio) cosi:

- Posizionamento con PLC

- Retroazione laser DME della SICK con lettura della posizione in profibus

- Comando velocità di un qualsiasi inverter con analogica

Con questo sistema hai un precisione nel posizionamento di +/-2mm (limite di un posizionatore con PLC).

P.S.: Il DME della SICK ovviamente costà più degli altri laser ma se ti serve precisione nel tuo posizionamento….. non pensarci.

Link al commento
Condividi su altri siti

Con questo sistema hai un precisione nel posizionamento di +/-2mm (limite di un posizionatore con PLC).

Se mi permetti questo è tutto da dimostrare (....2 gg fa provavo a posizionare una fresa con plc: avevo un errore di +/- 0.02mm.... solo la testa della fresa pesa almeno una tonnellata...)

Ciao, Emanuele

Link al commento
Condividi su altri siti

Ciao a tutti,

discussione interessante che solo oggi ho notato.

Non sono riuscito a capire se l'applicazione potrebbe implementare un sensore sonar che però richiede superfici riflettenti (muri, divisori, etc.).

Riguardo la precisione dell'encoder, nell'azienda presso cui opero, abbiamo installato una navetta che percorre circa 200 metri, preleva e deposita materiali con precisione direi millimetrica, con l'uso del confronto tra la posizione di un'encoder ed una testa captatrice di sensori a trasponder posti ad una distanza fissa tra loro: in questo modo la posizione è continuamente verificata lungo tutto il tragitto. ;)

Link al commento
Condividi su altri siti

Caspita, avevo gia' optato per l'encoder ( a filo) ma adesso mi fate quasi cambiare idea! Eddy, hai un'idea di massima del costo del laser DME della Sick? Noi ne avevamo trovato uno del quale dichiaravano una precisione di +/- 1,5 mm ma non ricordo su che distanza (1 mt o 1 km?!!) e costava circa 1000 euro: sto cercando di rintracciarlo su internet ma non ricordo il nome e non l'avevo memorizzato :( (era una ditta svizzera, ricordo). Credo che il Sick costi di più', giusto? In ogni caso, nella mia scelta entra anche un fattore "esterno" e cioè' che il software di quella macchina sarà' interamente nuovo, il tempo a disposizione come al solito non e' moltissimo e quindi se uso un posizionatore anziché' crearmelo io, mi tolgo una parte di lavoro o, comunque, posso avere un aiuto dai tecnici del posizionatore e rimanere concentrato sugli altri problemi. In ogni caso ci penso su ancora.

Ciao

Cesare

Link al commento
Condividi su altri siti

Ciao a tutti:

Per Emanuele:

Se mi permetti questo è tutto da dimostrare (....2 gg fa provavo a posizionare una fresa con plc: avevo un errore di +/- 0.02mm.... solo la testa della fresa pesa almeno una tonnellata...)

Non puoi dire di aver realizzato un posizionatore su PLC il quale ha un errore massimo di 0,02 mm senza dichiarare la velocità di posizionamento e la relativa accelerazione. La massa che sposti di per se non dice niente. <_<

Sarei curioso di sapere anche con quale PLC hai realizzato tale posizionatore. <_<

Tornando a Nicola:

1- Il DME della Sick costa tanti soldini, non voglio dare numeri perchè di preciso non lo so, ma sicuramente più di 1000 euro.

2- Non esistono sul mercato altri costruttori che offrono un laser con simili prestazioni. La sick lo ha fatto e brevettato.

3- Fidati per costruirti un posizonatore ci metti 1 ora, cerca anche nel Forum...

4-

Caspita, avevo gia' optato per l'encoder ( a filo) ma adesso mi fate quasi cambiare idea!
.

No per carità! Se devo dirti la verità nelle prossime applicazioni voglio provare anch’io a realizzare questo tipo di applicazioni con un encoder a filo. Infatti l’applicazione risulterebbe meno costosa anche se mi preoccupa il fatto di avere un filo di 20-30-50 mt che si arrotola e srotola.

Fammi saper a che risultati arrivi. ;)

Ciao buon lavoro.

Link al commento
Condividi su altri siti

mah....

anche se sono di parte vorrei ricordarvi ancora una volta che esistono in commercio sistemi di misura su banda magnetica con distanza di lettura 10 mm...

Se non si riesce a mantenere questo parallelismo (1÷10 mm) tra sensore e banda magnetica, significa che la meccanica non è adatta ad eseguire posizionementi con la precisione del ± 1 mm.

Sono sistemi nuovo ancora poco diffusi e sconosciuti alla gran massa.

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