Vai al contenuto
PLC Forum


Controllo Pwm...e Il Feedback?


Messaggi consigliati

Inserito:

Salve!

Volevo chiedere se qualcuno può indicarmmi qualche sito, libri o anche materiale didattico che tratti dei controlli dei motori CC.

Ho realizzato una scheda di potenza per pilotare un motore CC da 3A tramite PWM con ponte ad H e ho utilizzato un sense di corrente per convertire la corrente sul motore e fare quindi feedback. Inoltre riesco a rilevare anche la tensione di armatura. Nel caso io volessi realizzare un controllo di velocità del motore (cioè fare in modo di mantenerlo a circa 40 mt/min anche sotto sforzo) che tipo di retroazione mi conviene utilizzare? Mi basta usare il sense di corrente e fare feedback con quello? Ho sentito anche parlare della caratteristica I2T per la regolazione del PWM in modo da non surriscaldare il motore. sapreste darmi qualche dritta su quale sia la miglior tecnica per ralizzare questo controllo? Che differenza c'è nel fare feedback sulla tensione di armatura invece che sulla corrente?

Cordiali saluti!

Lollo


Inserita:

Forse dovresti prima del controllo dovresti approfondire meglio come funziona il motore.

Comunque tenterò di riassumere in poche righe i fondamenti del controllo di velocità di un motore in c.c.

Presumo che il motore che stai usando sia a magneti permanenti, quindi il flusso sarà costante. In questo caso la funzione di trasferimento del motore è omega = k * Va, dove omega è la velocità angolare e Va è la tensione di armatura.

Se il tuo motore, p.e., ha una omega max, pari a 2000 rpm con Va=100v, k = 20. Quindi per ogni volt di tensione variazione della tensione di armatura si avrà una variazione di 20 rpm.

Se si effettua una reazione di armatura, in altre parole se si stabilizza la tensione di armatura ad un valore preciso, la velocità varierà comunque in funzione della variazione di assorbimento di corrente. La causa di questo è la resistenza di armatura che comporta una cdt variabile in funzione della corente assorbita.

Se si vuole mantenere la velocità veramente stabile e precisa si deve ricorrere ad una reazione di velocità, ovviamnete. Per questo si deve usare un trasduttore di velocità; tipicamente si usano dinamo tachimetriche, per controlli analogici, ed encoder per controlli di tipo digitale.

La reazione sulla corrente di armatura stabilizza la coppia motrice del motore. In questo caso al funzione di trasferimento del motore sarà Cm = K * Ia, sempre con flusso costante.

Questo controllo si adotta quando è necessario mantenere costante il valore di coppia indipendentemente dalla velocità. Un'applicazione tipica, p.e., è il controllo di avvolgitura con servo diametro.

La funzione I^2*t viene usata per poter far assorbire al motore una corrente istantanea maggiore della corrente nominale, ma mantendo la corrente termica intro il vlaore nominale. Si usa quando si ha necessità di grandi valori di coppia istantanei, quindi picchi di corrente per breve tempo. E' una funzione che non è legata alla regolazione PWM, ma viene adottata anche nei classici convertitori a SCR. Va usata solo se si conoscono molto bene le caratteristiche del motore che si sta usando.

Questo semplificando e banalizzando al massimo i concetti.

Inserita:

Grazie per la tempestiva risposta!

In effetti ho buttato un po' troppa carne al fuoco. E' il problema di tutti i giovani che vogliono imparare in fretta e hanno poca esperienza.

Vista la cortese attenzione, vorrei approfondire un po' di più la questione ammettendo con molta umitlà la mia inesperienza in materia(parlo da softwarista).

Ho letto le sue dispense sulle regolazioni e in particolare nel capitolo sul controllo di avvolgitura tipo "servodiametro" ho ritrovato i principi dell'applicazione che sto cercando di realizzare.

Si tratta di una taglierina per matasse di tubo in silicone realizzata con un motoriduttore a vite senza fine con motore standard 24 Vdc 3700 giri 30W sul cui albero e calettato un disco per il trascinameto del tubo. Una ruota Encoder (in asse con la ruota del trascinamneto) appoggiata sul tubo, con un opportuno sistema per evitare lo schiacciamento dello stesso, mi permette di misurare la lunghezza del tubo da tagliare. A monte del sistema ci sarà uno sbobinatore autonomo con ballerino e quindi, in linea di principio dovrei ragionare come se il tubo che mi arriva dalla matassa non fosse soggetto a forti stiramenti. Il motore del trascinamento è quello che ieri dicevo essere controllato in reazione d'armatura e sul quale, grazie al sense di corrente, potevo anche fare feedback di corrente. L'encoder praticamente lo utilizzerei solo per effettuare la misurazione dello spezzone di tubo da tagliare e per realizzare il controllo di posizione( non sono sicuro di usare la terminologia appropriata) in modo da regolare (ovviamente con rampe di accelerzione e decelerazione) il trascinamento e fermarlo per tagliare lo spezzone di tubo a misura.

Il trascinamento del tubo viene fatto con una rampa di accelerazione fino al raggiungimento di una velocità max(40mt/min...lunghezza di taglio impostata permettendo)che viene mantenuta finchè non si arriva in prossimità del setpoint di lunghezza impostato in cui interviene una rampa di decelerazione funzione di un guadagno moltiplicato per la distanza dal setpoint. Non è proprio un controllo di posizione di tipo TRAPEZOIDALE ma una cosa del genere(è l'unica cosa che per ora la mia mente malata ha concepito).

I moduli software che avevo pensato di realizzare per il controllo del motore di trascinamento dovrebbero fare le seguenti cose:

1) Generazione del PWM in funzione del target di velocità max impostata facendo feedback sul valore di armatura.

2) Limitazione della corrente di picco nel caso ci sia inceppamento del tubo con blocco della ruota di trascinamento. Conseguente spegnimento immediato del PWM

3) Limitazione del PWM in funzione della corrente assorbita (misurata dall'HW col SENSE) con limitazioni impostate sulle specifiche di funzionamento del motore(classi di funzionamento).

4) Lettura continua del sense di corrente e calcolo automatico della caratteristcia I2T per determinare dinamicamente la soglia di limitazione citata al punto 3.

Ho già fatto in pratica il punto 1 e un banalissimo controllo di posizione. Il sistema fa il trascinamento e il taglio a misusra con buona precisione, ma vorrei realizzare un controllo PID come si deve ( o anche solo PI). Il mio problema è che essendo questo il primo lavoro di questo tipo sto realizzando il controllo in maniera un po' empirica e vorrei quindi avere qualche delucidazione di carattere tecnico per poter fare chiarezza su come impostarlo in maniera corretta e come legare la teoria del controllo ai parametri in gioco.

Non sono sicuro di averle dato abbastanza elementi per metterla nelle condizioni di darmi qualche consiglio ma ci ho provato.

Grazie comunque per la disponibilità!

Inserita: (modificato)

Sul forum ci si considera colleghi e ci si da del tu, indipendentemente dall'età e dai titoli accademici. :rolleyes:

Di elemeti ce ne sono anche troppi per poter dare una risposta esauriente.

Cercherò di condensare in poche righe le linee guida.

Il calcolo della I^2t è essenziale se, e solo se, s'intende utilizzare un'extra coppia per brevi periodi, altrimenti si limita la corrente al valore nominale.

Non bisogna confondere questa funzione con la funzione particolare per motori a magneti permanenti. Questi motori, generalmente ammettono coppie elevatissime a basso numero di giri; questi valori si mantengono costanti fino all'incirca 10%-15% della velocità max, poi decresono secondo una curva che, se ricordo correttamente, è di tipo iperbolico, fino a raggiungere il valore nominale di coppia. Comunque tutti i costruttori forniscono le curve coppia-velocità nel foglio tecnico del motore. Questi valori non devono essere assolutamente superati pena danni gravissimi al motore; danni che vanno dal consumo abnorme del collettore fino alla completa smagnetizzazione dei magneti. Per sfruttare le caratteristiche del motore il driver, almeno quelli decenti, è dotato di una funzione che limita la corrente in funzione della velocità, in accordo con le curve del motore.

Se il motore è in grado di trascinare il materiale, l'extra coppia può essere necessaria in fase di accelerazione e frenatura. Se, come sembra, stai usando un motore a magneti permanenti, verifica le curve caratteristiche coppia-velocità ed imponi i limiti di corrente che rispettino le curve.

Per un posizionamento un controllo PI o PID sulla velocità non serve a molto. E' invece importante, per le prestazioni dinamiche, un buon feed forward. Se hai letto il mio tutorial prova a riguardare il sottocapitolo sui posizionamenti.

Modificato: da Livio Orsini

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