Comanda unui motor BLDC cu o singură fază

1 DECEMBRIE 2016

Cum se poate utiliza un microcontroler cu cost redus ca driver pentru un motor de curent continuu, fără perii, cu o singură înfăşurare.

MCA652_EA1016-EyecatcherÎntr-o aplicaţie de comandă a unui motor de joasă putere, în care costul este mai important decât complexitatea, iar cerinţele legate de cuplu sunt reduse, un motor de curent continuu fără perii (BLDC) cu o singură fază este o bună alternativă faţă de un motor trifazat.

Acest tip de motor este economic datorită construcţiei sale simple, ce înseamnă că este uşor de fabricat. De asemenea, ea necesită un senzor pentru o sigură poziţie şi câteva comutatoare pentru controlul şi alimentarea cu ener­gie a înfăşurării motorului. De aceea, echilibrul între motor şi electronica de comandă poate funcţiona favorabil.
Pentru a menţine eficienţa de cost, este nevoie de un driver economic pentru motor. Circuitul driver descris aici poate utiliza două bucle de reacţie. Prima, bucla interioară, este responsabilă de controlul comutaţiei, în vreme ce a doua, bucla exterioară, gestionează controlul vitezei. Viteza motorului are ca referinţă o tensiune analogică externă, iar erorile pot fi detectate pe durata condiţiilor de supracurent şi supratemperatură.

MCA652_EA1016_AN1779_FIG1

Figura 1: Diagrama bloc a unui driver BLDC cu o singură fază

Figura 1 prezintă driverul cu o singură fază bazat pe microcontrolerul pe 8 biţi Microchip PIC16F1613, ales datorită numărului său redus de pini şi peri­fericelor pe cip ce pot controla comutaţiile, măsura viteza motorului, prezice poziţia rotorului şi implementa detecţia erorilor. Această aplicaţie utilizează următoarele periferice: generator de formă de undă complementar (CWG); temporizator de măsurare semnal (SMT); convertor analog/digital (ADC); convertor digital/analog (DAC); PWM captură comparaţie (CCP); referinţă fixă de tensiune (FVR); temporizator; comparator şi indicator de temperatură. Aceste periferice sunt conectate intern prin firmware, ceea ce reduce numărul de pini externi necesari.

Circuitul în punte completă, care alimentează cu energie înfăşurarea motorului, este controlat de ieşirea CWG. Un senzor Hall este utilizat pentru a determina poziţia rotorului. Curentul ce trece prin înfăşurarea motorului este convertit într-o cădere de tensiune pe rezistenţa de detecţie Rshunt cu scop de protecţie la supracurent. Viteza poate avea ca referinţă o intrare analogică externă. Figura 2 prezintă schema de control a driverului motorului; pentru această aplicaţie, tensiunea nominală a motorului este de 5V, iar viteza nominală este de 2400 r.p.m. Tensiunea de alimentare a driverului motorului este de 9V.

MCA652_EA1016_AN1779_FIG2

Figura 2: Schema de control a driverului motorului

Referinţa de viteză poate fi orice intrare analogică. Modulul de conversie analog/ digital al microcontrolerului are o rezoluţie de 10 biţi şi până la 8 canale, făcându-l potrivit pentru diferite feluri de intrări analogice. Acesta este utilizat pentru a deriva referinţa de viteză şi factorul de umplere PWM iniţial, utilizat pentru a iniţializa viteza motorului pe baza sursei referinţă de viteză.
Factorul de umplere iniţial poate fi crescut sau redus de rezultatul controlerului proporţional-integral (PI), iar noua valoare a factorului de umplere încărcată în CCP, adică ieşirea PWM care este utilizată ca sursă iniţială a CWG pentru a controla modulaţia comutatoarelor de nivel inferior ale driverului punte completă şi, de aici, viteza motorului.

Bucla internă
Bucla de reacţie internă este responsabilă pentru controlul comutaţiei. Ieşirea CWG, care contro­lează excitarea înfăşurării statorului, depinde de starea ieşirii senzorului Hall, care este comparată cu o referinţă fixă de tensiune (FVR) cu ajutorul unui comparator. Histerezisul comparatorului este activat pentru a nu lua în considerare zgomotul în ieşirea senzorului. Ieşirea comparatorului oscilează între mod punte direct şi invers pentru a produce o rotaţie în sens orar sau în sens trigonometric. Ieşirea CWG este trimisă intrărilor de comutaţie în circuitul de punte completă.
Pentru a produce un ciclu electric, trebuie executată o combinaţie direct/invers. O revoluţie mecanică a motorului necesită două cicluri electrice, de aceea trebuie executate două combinaţii direct/invers pentru o rotaţie completă în sens orar a motorului.

MCA652_EA1016_AN1779_FIG3

Figura 3: Schema driverului motorului BLDC cu o singură fază

Circuit de punte completă
Circuitul de punte completă din figura 3 este în principal compus din două MOSFET-uri cu canal p ca şi comutatoare de nivel superior şi două MOSFET-uri cu canal n ca şi comutatoare de nivel inferior. Avantajul principal al tranzistorului cu canal p este simplitatea tehnicii de comandă a porţii în poziţia de comutaţie de nivel superior, reducând astfel costul circuitului de comandă poartă pe nivel superior.
Chiar dacă comutatoarele pe nivel superior şi pe nivel inferior pot fi comutate în acelaşi timp – conducţie cruce – acest tip de comutaţie trebuie evitat. În caz contrar, se va crea un curent ce poate deteriora componentele driverului. Pentru a evita acest lucru, poate fi implementată o întârziere de bandă moartă prin utilizarea registrelor numărătorului generatorului de formă de undă CWG. Această strategie furnizează semnale de ieşire nesuprapuse evitând conducţia în acelaşi timp la comutaţia pe nivel superior şi inferior.
Ideal, MOSFET-urile cu canal n şi p ar trebui să aibă aceeaşi rezistenţă de on (RDSon) şi aceeaşi sarcină totală pe poartă QG pentru a obţine performanţe optime de comutaţie. Totuşi, cu toate că ar fi bună alegerea unei perechi complementare de MOSFET-uri pentru a se potrivi acestor parametri, în realitate este imposibil datorită construcţiei diferite; dimensiunea cipului dispozitivului cu canal p trebuie să fie de două – trei ori mai mare faţă de cel cu canal n pentru a se potrivi performanţelor RDSon. Dar cu cât este mai mare dimensiunea cipului, cu atât este mai mare efectul QG. De aceea, la selecţia MOSFET-urilor, este important să se decidă dacă RDSon sau QG vor avea cel mai mare impact asupra performanţelor de comutaţie şi să se aleagă în consecinţă.

Detecţia erorilor
Depăşirea sarcinii de cuplu maxim admisibil la nivelul motorului poate conduce la blocare şi un curent mare pe înfăşurare. De aceea, pentru a proteja motorul, trebuie implementate detecţie de supracurent şi de blocare.
Pentru a implementa detecţie de supracurent, Rshunt este adăugată circuitului de comandă, ceea ce oferă o tensiune corespunzătoare curentului ce trece prin înfăşurarea motorului. Tensiune care cade pe rezistenţă variază liniar cu valoarea curentului prin motor. Această tensiune este conectată la intrarea ne-inversoare a comparatorului şi comparată cu o referinţă de tensiune bazată pe rezistenţa Rshunt şi curentul maxim la blocare al motorului.
Tensiunea de referinţă poate fi furnizată de FVR şi poate fi coborâtă cu ajutorul DAC. Aceasta permite utilizarea unei tensiuni de referinţă foarte mici, cu o valoare a referinţei ce poate fi ţinută redusă, păstrând astfel disiparea de putere pe Rshunt. Dacă tensiunea pe Rshunt depăşeşte referinţa, ieşirea comparatorului declanşează funcţia de auto-închidere a generatorului CWG, iar ieşirea CWG va rămâne inactivă atât timp cât există condiţia de eroare.
Supratemperatura poate fi detectată utilizând indicatorul de temperatură de pe cip al dispozitivului, care poate măsura temperaturi între -40 şi +85°C. Circuitul intern al indicatorului produce o tensiune variabilă relativă cu temperatura, iar această tensiune este convertită digital de către ADC. Pentru o indicaţie mai exactă a temperaturii, poate fi implementată o calibrare într-un singur punct.

Bucla exterioară
Bucla exterioară prezentată în figura 2 controlează viteza motorului în diferite condiţii, precum schimbări de sarcină, perturbaţii şi derive termice. Viteza este măsurată de SMT, care este un temporizator-numărător pe 24 de biţi, iar logica de poartă poate fi configurată pentru măsurarea diferiţilor parametrii de semnale digitale (lăţime puls, frecvenţă, factor de umplere şi diferenţă de timp între fronturile a două semnale de intrare.
Măsurarea frecvenţei de ieşire a motorului poate fi făcută prin modul de achiziţie al perioadei şi factorului de umplere al SMT. În acest mod, fie factorul de umplere, fie perioada semnalului SMT pot fi achiziţionate prin raportare la ceasul SMT. Temporizatorul SMT determină numărul semnalelor de ceas SMT prezente într-o singură perioadă a rotaţiei motorului şi stochează rezultatul în registrul special al perioadelor determinate. Utilizarea acestui registru permite obţinerea frecvenţei actuale a motorului.

Atunci când referinţa de viteză este comparată cu viteza actuală, se va genera o eroare pozitivă sau negativă, depinzând de faptul că viteza actuală este mai mare sau mai mică decât referinţa stabilită. Această eroare este transferată contro­lerului PI, care este un algoritm firmware ce calculează o valoare de compensare pentru variaţia de viteză. Valoarea determinată se va adăuga sau scădea din factorul de umplere iniţial al PWM pentru a produce o nouă valoare.

Concluzie
În aplicaţiile de control motoare sensibile la preţ, un microcontroler eficient şi flexibil poate avea un impact semnificativ. Eficienţa dispozitivului poate fi măsurată în funcţie de nivelul perifericelor integrate pentru optimizarea sarcinilor de control faţă de numărul de pini, memoria şi dimensiunea capsulei. Suplimentar, uşurinţa de utilizare şi durata necesară până la lansarea pe piaţă sunt importante, în special dacă sunt necesare variante de proiectare.
Acest articol a arătat cum un microcontroler economic poate răspunde cerinţelor de mai sus, lăsând driverul să stabilească viteza de referinţă dorită, să determine poziţia rotorului, să implementeze un algoritm de control, să măsoare viteza curentă a motorului şi să impună detecţia de proble­me de funcţionare.

Autori: Mike Gomez, Application Engineer și Mark Pallones, Team Leader, Microchip Technology


Microchip Technology |  www.microchip.com
Sigla-Microchip

Comentarii

gica70 spune:

Este cam aiurea sa vorbesti despre „un motor de curent continuu fără perii (BLDC) cu o singură fază”. Confuzia apare de la faptul ca acest tip de motor, denumit corect, cu excitatie serie, are aplicatii atat in c.a cat si in c.c. Mai poate fi si o scapare la traducere. Cu alte cuvinte, un acelasi tip de motor functioneaza foarte bine in c.a. (in mai toate electrocasnicile) cat si in c.c. Aici trebuie o mica observatie in sensul ca in c.c. va functiona cu un curent ceva mai mare intr-ucat aici nu mai avem reactanta inductiva; deci in c.c. tensiunea se va reduce (veti vedea, la electrocasnice, ca una din viteze se realizeaza folosind o simpla dioda inseriata cu motorul si alimentarea).

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile necesare sunt marcate *

  • Folosim datele dumneavoastră cu caracter personal NUMAI pentru a răspunde comentariilor/solicitărilor dumneavoastră.
  • Pentru a primi raspunsuri adecvate solicitărilor dumneavoastră, este posibil să transferăm adresa de email și numele dumneavoastră către autorul articolului.
  • Pentru mai multe informații privind politica noastră de confidențialitate și de prelucrare a datelor cu caracter personal, accesați link-ul Politica de prelucrare a datelor (GDPR) si Cookie-uri.
  • Dacă aveți întrebări sau nelămuriri cu privire la modul în care noi prelucrăm datele dumneavoastră cu caracter personal, puteți contacta responsabilul nostru cu protecția datelor la adresa de email: gdpr@esp2000.ro
  • Abonați-vă la newsletter-ul revistei noastre