Vai al contenuto
PLC Forum


Controllo Rotazione Motore Passo-passo


biondo

Messaggi consigliati

Salve a tutti,

sto utilizzando una CPU 21 CJ1M , per fare un semplice posizionamento ad anello aperto tramite un motore passo-passo (Non Omron).

Utilizzo l'istruzione PLS2 molto comoda e verstile.

Ora dovrei controllare (anello aperto) solo se il motore non sgrani e/o vada in stallo.

Ho a disposizione un encoder 360 impulsi giro collegato al contatore 0 della CPU.

Mi sono creato un task a tempo 80ms che quando l'uscita a treno di impulsi che comanda l'azionamento del motore passo-passo è attiva A281.4 , vado a confrontare il valore degli impulsi OLD con il valore degli impulsi NEW (tramite istruzione PRV fuori dal task a tempo) e se la differenza è sotto un certo numero di impulsi (maschera) do' l'allarme motore in blocco (aggiorno sucessivamente la pos.OLD con la NEW)

Ho utilizzato 3 maschere differenti a seconda del range di velocità a cui voglio arrivare con la PLS2.

Noto pero' che per valori di velocità e accelerazione elevati( 800-900Hz e 800-1000Hz/4ms ) e pochi impulsi (da 100- a 200) il motre va in stallo, la funzione PLS2 mi dice comunque di aver raggiunto gli impulsi impostati , col risultato (aimè) frustrante di non avere il controllo della rotazione dell'albero del motore......

Avete qualche suggerimento ? Sbaglio qualcosa ?

Esiste qualche altro metodo per controllare (indipendentemente dalla velocità) la rotazione di un motore ?

Ho provato anche a diminuire il task a tempo, portarlo a 50, 10 e 1 ms ma il risultato non cambia..... :senzasperanza::(

GRAZIE a CHIUNQUE PER EVENTUALI RISPOSTE !!!

Link al commento
Condividi su altri siti


...col risultato (aimè) frustrante di non avere il controllo della rotazione dell'albero del motore......

Purtroppo il controllo ad anello aperto ha questo svantaggio.

N

oto pero' che per valori di velocità e accelerazione elevati( 800-900Hz e 800-1000Hz/4ms ) e pochi impulsi (da 100- a 200) il motre va in stallo, ...

Devi verificare le specifiche del motore e quella dell'alimentatore/regolatore; per ogni azionamento stepper esiste un limite di accelerazione, come del resto per qualsiasi azionamento. La coppia massima di un motore step la si ha velocità zero, aumentando la velocità la coppia diminuisce. Può essere che data l'inerzia riportata all'asse motore e l'accelrazione richiesta la coppia necessaria sia di molto inferiore a quella disponibile; come potrebbe essere che il limite di corrente impostato sia inferiore alla corrente necessaria.

Link al commento
Condividi su altri siti

Grazie Livio, terro' sott'occhio i parametri dell'motore e del suo azionamento.

A livello di HMI, posso "limitare" a pannello le velocità e le acelerazioni in modo da non creare delle situazioni di stallo da parte di chi tocca i parametri.

Se volessi invece eseguire un controllo ad anello chiso...magari usando un PID o una FB ... cosa dici si potrebbe fare ?

Sai se esiste un FB di Omron che mi gestisca il treno di impulsi retroazionato con un encoder ? :o

Grazie

Link al commento
Condividi su altri siti

  • 3 months later...

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