Vai al contenuto
PLC Forum

Partecipa anche tu alla Live su Youtube martedì 28/01/2025 per festeggiare i 24 anni di PLC Forum

Per ulteriori informazioni leggi questa discussione: https://www.plcforum.it/f/topic/326513-28012025




Controllo Posizionamento - impulsi/direzione + encoder


Messaggi consigliati

Inserito:

Ho un problema con una vecchia macchina che, se ho ben capito, funziona (funzionava) in questa maniera:

------------------------------------------------------------------

L’utente inserisce alcune quote in un PC

Il PC genera le rampe per il posizionamento tramite 2 uscite:

- Uscita “impulsi” che aumenta gradualmente di frequenza (fino a un massimo stabilito) e poi diminuisce fino a 0.

- Uscita “direzione” che definisce in quale direzione deve muoversi il motore

Scheda di controllo posizione che:

- Riceve i 2 segnali del PC

- Riceve i segnali (A e B) di un normale encoder

- Fornisce una tensione da -10 a +10V per l’azionamento successivo

Azionamento motore DC

- Controlla il motore facendolo ruotare a velocità (e direzione) proporzionale alla tensione in ingresso

------------------------------------------------------------------

Il problema è che la scheda di controllo che sta fra il PC e l’azionamento si è guastata e non si trova.

1) Ho cercato una scheda per realizzare una specie di asse elettrico tra 2 encoder che fornisce in uscita una tensione proporzionale all’errore tra i 2 valori, solo che dovrebbe accettare in ingresso un encoder normale e 1 segnale “impulso/direzione” ... non ho trovato niente!

2) Forse si potrebbe realizzare con un semplice PIC ma non ho alcuna esperienza né attrezzatura per la programmazione

3) Si potrebbe anche usare un PLC ma ho l’impressione che venga a costare troppo.

Avete qualche dritta da darmi ?


Inserita:

Qualcuno sa indicarmi una scheda con 2 ingressi encoder (di cui uno impulsi+direzione) e una uscita analogica in modo da realizzare una sorta di asse elettrico e mantenere sempre i 2 conteggi uguali ?

Ciao

Inserita:
3) Si potrebbe anche usare un PLC ma ho l’impressione che venga a costare troppo.

Potresti dire cosa intendi per "costare troppo"?

Dovresti poi fornire anche altri dati, tipo:

- Frequenza massima impulsi generati da PC

- Frequenza massima impulsi encoder

- Rampe accelerazione/decelerazione

- Errore massimo ammesso

Fornisci altre informazioni, e forse sarà possibile rispondere.

Inserita:

Purtroppo i dati precisi non li conosco, la macchina non funziona e reperisco informazioni col contagocce, comunque facendo qualche conto mi risulta più o meno:

fmax encoder = 47kHz (durante gli spostamenti veloci, molto meno durante la lavorazione)

fmax PC = idem come sopra

1 impulso = spostamento di 0.002 mm (riconosco che questa risoluzione è fin troppo eccessiva per l’applicazione e aumenta inutilmente la fmax)

Le rampe richieste non sono brusche (diciamo tra 1 e 2 secondi da 0 a fmax) , sono comunque completamente regolabili da PC.

errore massimo ammesso durante lavorazione = 1 centinaio di impulsi.

Appena ho qualche altro dato loc omunico.

Ciao e grazie

Inserita:

Scusami ma mi sembra il funzionamento di un motore PASSO-PASSO

Inserita:

Ciao, volevo chiederti se secondo te, poteva essere possibile l'eventuale riparazione della scheda vecchia...

<_<

Inserita:
Scusami ma mi sembra il funzionamento di un motore PASSO-PASSO

In un certo senso sì, il PC infatti “crede” di comandare un passo/passo, ma a valle c’è una scheda che fa da interfaccia tra il pc e un azionamento per un motore in corrente continua.

Ciao, volevo chiederti se secondo te, poteva essere possibile l'eventuale riparazione della scheda vecchia...
Non so, bisognerebbe aprirla...

Manca lo schema completo, c’è solo specie di schema a blocchi, in linea di massima contiene un contatore che conta gli impulsi che arrivano dal PC, il risultato del conteggio è la quota di destinazione, poi c’è un altro contatore per l’encoder (quota reale) e un PID che confronta le 2 quote....... l’uscita del PID va a pilotare l’azionamento.

-----------------

A questo punto, vorrei tentare di farlo col S7-222, ma il 1° problema è che non ci sta dietro (la fmax del PLC è 20kHz contro i 47kHz dell’encoder).Per risolvere questo pensavo di montare un divisore (/5) per l’encoder, ottenendo una fmax < 10kHz e una risoluzione di 0.01mm (sufficiente).

Gli impulsi del PC non necessitano di divisione in quanto liberamente configurabili via software.

-----------------

Il programma nel PLC vorrei farlo in questo modo:

- Contatore veloce HC0 per leggere in ogni istante la quota reale (impulsi encoder)

- Contatore HC4 (impulsi+direzione) per generare la quota target (impulsi PC)

- Interrupt a tempo ogni 20ms

- Calcolo della frequenza degli impulsi di comando (HC4), e con questa già posso generare una rampa da usare per pilotare l’azionamento, insomma, una specie di feed-forward.

- Siccome con la rampa generata si otterrà sicuramente un posizionamento spannometrico (in quanto si regola la velocità e non la posizione) ci aggiungo in PID per correggere (ogni 20ms) il riferimento analogico in base alla differenza tra la quota reale e quella teorica.

Osservazioni? Critiche? :rolleyes:

Inserita:

Senti, l'applicazione usa un tipico segnale di controllo per passo-passo convertita in analogico.

Qualche anno fa avevo usato un "oggetto" creato da un costruttore di driver passo-passo che aveva la funzione contraria: entrava +-10 V e usciva frequenza+direzione per il driver PP.

Potresti provare a sentire qualche costruttore di driver PP per sapere se hanno a catalogo quello che cerchi tu.

Non si sa mai.....tentare non nuoce !

Inserita:

Non vorrei essere ripetitivo, ma prima di valutare il progetto nuovo, proverei ad aprire la scheda vecchia, anche per fare un preliminare visivo.... Potrebbe essere un banale guasto sull'alimentatore, un diodo in corto o un elettrolitico esaurito.... Credo che per prima cosa vada fatto questo preliminare.... Nell'eventualita' invece della sostituzione, hai valutato la 224XP? Contatore veloce sino a 200KHz, uscite a impulsi sino a 100KHz, ingressi per encoder (A+B+0) a 5Vdc...

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