Transcript

Facultatea de Inginerie Electric i tiina Calculatoarelor

Monitorizarea parametrilor i controlul unui motor de curent continuu

Student: Profesor ndrumtor:Vlad Mihai PLCINT Conf.univ.dr.ing. Dan Laureniu MILICI

-Suceava 2014-

Cuprins

1.Introducere12. Proiectare Hardware62.1 Controlul vitezei de rotaie a unui motor de curent continuu62.2 Controlul sensului de rotaie a unui motor cu punte H82.2.1 Punte H cu tranzistoare MOSFET complementare92.3 Monitorizarea tensiunii curentului i temperaturii motorului102.3.1 Monitorizarea tensiunii i a temperaturii102.3.1 Monitorizarea curentului113. Alegerea i programarea uC124. Mediul de dezvoltare LabVIEW144.1 Generaliti144.2 Implementarea interfeelei de control155. Rezultate practice16

1.Introducere

Foarte multe dintre aplicaiile din domeniul microcontrolelor au ca sarcin s comande nite motoare. Cteva exemple ar fi:1. Geamurile electrice de la auto2. Motoarele din imprimante, scannere3. Motoarele din hard-disk4. Ventilatoarele de la procesoarele pc sau laptop, etc.

Motoarele se mpart mai multe categorii dup felul contructiiei:1. Motoare de curent continuu(cu sau fr perii colectoare, se mai numesc brushed i brushless)2. Motoare pas cu pas(bipolare sau unipolare)3. Motoare de curent alternativ cu inducie

Dintre acestea cel mai des ntlnite sunt cele enumerate la punctele 1 i 2. Un motor pentru a fi comandat de ctre un microcontroler are nevoie de o interfa, cunoscut i sub denumirea de driver. Driverul se ocup n special de asigurarea puterii necesare pentru a funciona motorul n parametri nominali.

Exist 2 metode principale de control a motoarelor de curent continuu: Cu punte H, asigur i schimbare de sens i variaa vitezei de rotaie Cu ajutorul PWM care asigur variaia turaiei aplicnd o tensiune medie PWM la bornele motorului

Zenobe Gramme, un inginer belgian a descoperit primul motor de curent continuu n anul 1973 atunci cnd a conectat un generator de curent continuu la un alt generator identic. n urma acestei conexiuni el a observat c generatorul pe post de consumator realizeaz o conversie a energiei electrice consumat de la generator n vitez de rotaie, mai precis lucru mecanic.La baza funcionarii oricrui motor electric este principiul bazat pe electromagnetism. Astfel c dac un fir conductor este traversat de un curent electric, acesta va genera un cmp magnetic, iar introducerea acestuia ntr-un cmp electric exterior va conduce la generarea unei fore proporional cu intensitatea curentului traversat de conductorul respectiv. Funcionarea acestuia se poate nelege cu ajutorul a doi magnei, care conform fizicii dac i apropriem i au polii identici atunci ei se vor respinge, iar dac vor avea poli diferii acetia se vor atrage.

Fig.1.1 Motor electric de curent continuu

Pri componente: Magnei permaneni Carcas Rotor Stator Perii colectoare

Statorul, dup cum i denumirea, este partea fix a unui motor.Acesta conine magneii permaneni care genereaz cmpul magnetic n care este introdus bobina rotorului.Rotorul este partea dinamic a motorului. Ea se rotete cu tot cu bobin atunci cnd bobina estea alimentat cu ajutorul periilor colectoare.Exist un mic spaiu ntre stator i rotor, acesta poart denumirea de ntrefier.Un motor de curent continuu poate funciona ntre urmtorii parametri: Tensiunea de alimentare maxim: 320V Puterea motorului : 2000W Vitez de rotaie maxim: 30000 RPM

Fig.1.2 Motor de curent continuu

Motoarele pas cu pas sunt defapt niste motoare de curent continuu comandate digital, avnd o deplasare unghiular a rotorului proporional cu numrul de impulsuri primite. Astfel c la fiecare impul rotorul execut un pas unghiular apoi atept alt impuls oprindu-se. Motoarele pas cu pas sunt capabile de schimbare de sens.Motoarele pas cu pas cu de dou tipuri:1. Bipolare2. Unipolare

Motoarele pas cu pas bipolare au 4 bobine independente ce sunt comandate separat, deci au 4 terminale.

Fig.1.3 Structura interna a unui motor pas cu pas bipolar

Motoarele pas cu pas unipolare sunt cu 4 bobine care sunt legate la un punct median ce este conectat la plusul sursei de alimentare, de regula acestea au 5 fire sau 6 fire dar 2 din cele 6 sunt legate la punctul de plus al sursei de alimentare.

Fig.1.4 Structuta interna a unui motor pas cu pas unipolar2. Proiectare Hardware

2.1 Controlul vitezei de rotaie a unui motor de curent continuu

Dac se dorete doar controlul vitezei de rotaie a unui motor i nu i sensul de rotaie atunci cea mai simpl variant este cea cu un tranzistor de putere i PWM.PWM(pulse width modulation) sau n limba romn modularea impulsurilor n durat este o tehnica cea mai comun de comand n sisteme digitale dar i n sursele de alimentare n comutaie. Un semnal de acest tip transmite informaia prin limea(durata) impulsului obinut. De regul un astfel de semnal se obine cu un oscilator ce genereaz un semnal dreptunghiular prin ncrcarea i descrea unui condensator.

Fig.2.1 Semnal PWM(jos) i semnal din care se obine acesta(sus)

Factorul de umplere este principala mrime caracteristic a unui semnal de tip PWM.D= (2.1)D-duty cycle(factorul de umplere);- Timpul activ;- Timpul de blocare;-Perioada semnalului, T.

Fig.2.2 PWM cu 25% duty cycle

Fig.2.3 PWM cu 50% duty cycle

Fig.2.4 PWM cu 75% duty cycle

2.2 Controlul sensului de rotaie a unui motor cu punte H

O punte H este un circuit electronic realizat din 4 ntreruptoare care conduc 2 cte 2 pe diagonal. Demunirea de punte H are numele derivat de la aezarea ntreruptoarelor n circuit.

Fig.2.5 Ilustrearea principiului de funcionare a unei puni H

Puntea H se poate realiza cu: Tranzistoare bipolare Tranzistoare MOSFET Relee

Valoare AValoare BRezultat

00frnare

01nainte

10napoi

11frnare

Fig.2.6 Funciile de comand ale unei puni H

2.2.1 Punte H cu tranzistoare MOSFET complementare

Fig.2.7 Punte H cu tranzistoare MOSFET complementare, principiu de funcionare

Este cea mai folosit schem, deoarece are avantajele pierderilor sczute datorit tranzistoarelor. Funcionarea schemei se bazeaz pe acelai principiu ca i la cea cu bipolar, doar ca acum este nevoie de un curent mai mare susinut n poarta tranzistoarelor pentru a se comanda corect. Cderile de tensiune de pe tranzistoare sunt direct proporionale cu rezistena dren surs n conduie direct i curentul consumat de motor. Astfel se pot ajunge la cderi de tensiune de ordinul zecilor de milivoli.Cele dou tranzistoare bipolare asigur o amplificare n tensiune a celor 5Vdai de microcontroler, deoarece un MOSFET uzual se deschide complet la circa 10-12V, dar au ca efect secundar inversarea comenzii.Cele patru rezistoare din poarta celor patru tranzistoare MOSFET asigur blocarea acestora atunci cnd comanda lipsete. Iar cele dou rezistoare din baza tranzistoarelor bipolar limiteaz curentul de polarizare.Tensiunea de alimentare maxim va fi circa 15V, deoarece aceast tensiune este aplicat direct n poarta tranzistoarelor MOSFET i se pot strpunge.2.3 Monitorizarea tensiunii curentului i temperaturii motorului2.3.1 Monitorizarea tensiunii i a temperaturii

Fig.2.8 Divizor rezistiv pentru msurarea tensiunii de alimentare Divizorul rezistiv este cea mai simpl soluie de msurare a unui tensiuni continue de valoare mai mare de ct poate suporta portul analogic al microcontrolerului(5V). = * (2.2)Ca msur de protecie se poate instala o diod Zener(5V1) pentru a preveni o supratensiune pe portul analogic, astfel la depirea tensiunii de prag dioda se strpunge i pune astfel portul analogic la mas.Pe acelai principiu se bazeaz i msurarea variaiei temperaturii cu ajutorul unui thermistor de tip NTC.

2.3.1 Monitorizarea curentului

Pentru msurarea curentului prin motor am ales o variant cu unt pe plus(High side current measuring) deoarece am dorit s am mas comun. Ca schem de principiu am folosit un AO diferenial generator de curent transistor pnp la ieire.

Fig.2.9 Configuraie AO+pnp pentru msurare curentuntul va fi de valoare mic pentru a fi pierderile ct mai mici, astfel c la trecerea unui curent prin unt astfel prin R1 AO va culege cderea de tensiune si n funcie de ceea ce citete pe intrarea inversoare fa de ceva neinversoare care este conectat la o mas de referin a sursei de alimentare a operaionalului, care trebuie sa fie separat galvanic pentru a funciona. Ieirea AO comand pnp care n funcie de curentul prin el determin o cdere de tensiune pe R2 care va fi culeas de portul analogic pentru a fi convertit n curent.

3. Alegerea i programarea uC

Pentru controlul digital s-a ales PIC16F876A, acesta este un microcontroler relativ ieftin si destul de perfomant pentru nevoile cerute.

Fig.3.1 Dispunerea pinilor la PIC16F876A

Caracteristici tehnice: 5 intrri analogice pe 10 bii 2 ieiri PWM 3 porturi pe 8 bii bidirecionale UART I2C SPI

Limbajul de programare folosit este C iar compilatorul folosit este cel de la Mikroelectronika, mikroC. Programatorul folosit este o clon a programatorului pickit2.Softul a fost gndit cu funcii predefinite apelabile din funcia principal, iar comunicaia este realizator cu un modul Bluetooth serial HC-05 ce ruleaza la 9600 Baunds.

Fig.3.2 Modulul Bluetooth folosit

4. Mediul de dezvoltare LabVIEW

4.1 Generaliti

LabVIEW(Laboratory Virtual Instrument Engineering Workbench) este un mediu de dezvoltare care folosete un limbaj grafic de programare numit limbaj G ce conine librii foarte bogate pentru algebr liniar, generare i procesare semnale, analiza sistemelor dar i comunicarea cu diferite dispozitive periferice. Programele n LabVIEW se numesc instrumente virtuale(vi) fiind formate din panoul frontal i diagrama bloc. Panoul frontal are aspectul unui instrument virtual i conine toate elementele necesare operrii interactive a programului creat i vizualizrii rezultatelor.

Elementele ce formeaz panoul de control sunt de dou tipuri:

1. Elemente de control: ce servesc la introducerea datelor;2. Indicatoare: ce servesc la afiarea rezultatelor.

Panoului frontal i se atribuie o diagram bloc care este de fapt codul surs scris n limbaj grafic G al programului curent. Acesta conine toate icoanele corespunztoare instruciunilor, constantelor, funciilor aritmetrice i procedurilor utilizate. Fluxurile de date sunt determinate n diagram bloc prin legturi reprezentate prin linii ntre icoane.O alt facilitate a acestui program este c permite utilizarea vi-urilor ca subprogram n vi-uri. Dup ce vi a fost creat, acestuia i se poate ataa o icoan i se poate utiliza ca subvi n diagrama bloc a unui alt vi de nivel superior.

4.2 Implementarea interfeelei de control

Pentru implementarea interfeei de control i achiziie am luat drept reper de start un exemplu de comunicare RS232. Dup ce am priceput cum funcioneaz am luat i am adugat funciile de care am nevoie, butoane i indicatoare. Fiecare buton atunci cnd este apsat va trimite un anumit caracter pe portul serial la microcontroler. Citirea parametrilor se face cu ajutorul funciei scan from string ce detecteaz irul de numere trimis de microncontroler. Delimitarea nceputului irul se face cu funcia match string ce are ca rol scanarea ntregului ir i cutarea unui caracter de reper, n cazul nostru ca reper cifra Z. irul va fi de forma Z%f\n%f\n, unde \n delimiteaz valorile citite. Atunci cnd se pornete prima dat aplicaia trebuie configurat portul de comunicaie corespunztor cu configuraia din microcontroler. Pentru o funionarea mai uoar a programului am mprit programul n 3 bucle while care pot fi activate cu ajutorul unui buton de control.

Fig.4.1 Panoul frontal al interfeei de control5. Rezultate practice

Cu ajutorul programului Altium Designer am desenat schemele electrice, am proiectat cablajele aferente toate modulelor i am creat i o reprezentare 3D.

Fig.5.1 Schema modului de comand cu microcontroler

Fig.5.2 Proiectarea PCB a modului de comand cu microcontroler

Fig.5.3 Reprezentare 3D a modului de comand cu microcontroler

Fig.5.4 Schema final a modului cu punte H

Fig.5.5 Proiectare PCB a modului cu punte H

Fig.5.6 Reprezentare 3D a modului cu punte H

Fig.5.7 Schema final a modului de monitorizare curent i tensiune

Fig.5.8 Proiectarea PCB a modului de monitorizare curent i tensiune

Fig.5.9 Reprezentare 3D a modului de monitorizare curent i tensiune

0