Pagina 1 di 1

controllo brushless con AVR

MessaggioInviato: 29 lug 2011, 13:56
da Alessandro84
Salve.
Mi sono cimentato nell'implementazione di un controlo brushless trapezoidale, sensor based, su un atmel AVR tiny861.
Per il momento ho implementato la commutazione delle fasi alimentate: al cambiamento dello stato dei sensori ad effetto Hall, va in esecuzione una routine di interrupt (interrupt on change) che provvede a commutare l'alimentazione sulle fasi.
Il problema è: come faccio a determinare la corrispondenza tra stato dei sensori ad effetto Hall e stato delle fasi alimentate? Ho provato andando per tentativi, ma per ora ho un comportamento anomalo: il motore si avvia ruotando in un verso, poi inverte il senso di rotazione (questo fa sospettare che il campo magnetico generato dallo statore sia asincrono rispetto a quello del rotore), e poi si ferma.
Suggerimenti?

Re: controllo brushless con AVR

MessaggioInviato: 30 lug 2011, 4:54
da IsidoroKZ
Non c'e` sul data sheet del motore?

Re: controllo brushless con AVR

MessaggioInviato: 30 lug 2011, 16:11
da Alessandro84
No, sul datasheet non c'è.
Comunque, il problema non era quello: la corrispondenza stato-sensori stato alimentazione fasi, determinata sperimentalmente, pare essere corretta... Il problema stava nel fatto che il driver del motore non era alimentato.. (il regolatore di tensione ha un pin di enable, ed era disabilitato...).
A questo punto il motore ruota: ora procedo implementando un algoritmo di controllo della velocità (eventualmente un controllo in cascata, che preveda anche un anello interno di regolazione della coppia) e vi aggiorno sulla situazione.

Re: controllo brushless con AVR

MessaggioInviato: 26 ago 2011, 9:22
da Alessandro84
Dunque, ho implementato l'algoritmo di controllo per la velocità di rotazione del motore e tutto sembra funzionare. Ora però ho un dubbio: se voglio invertire il verso di rotazione del motore come devo modificare la tabella che associa lo stato delle fasi alimentate alla posizione del rotore? Si alcune application notes ho trovato che è sufficiente invertire la polarità dell'alimentazione (cioè alimentare le medesime fasi in ogni settore angolare, macon polarità opposta), ma sperimentando ho notato un comportamento anomalo (l'albero non gira ed il motore si surriscalda).