Explorați Cărți electronice
Categorii
Explorați Cărți audio
Categorii
Explorați Reviste
Categorii
Explorați Documente
Categorii
CONDUCĂTOR ŞTIINŢIFIC:
Prof. dr. ing. EMIL MICU
2007
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
CUPRINS
LISTĂ ABREVIERI......................................................................................................4
INTRODUCERE...........................................................................................................5
2.1 Modele matematice ale motoarelor de curent continuu fără perii ........................ 13
2.1.1 Modelul în coordonatele fazelor cu parametrii concentraţi pentru servomotorul de
curent continuu fără perii ..................................................................................................... 13
2.1.2 Funcţiile de transfer ale servomotoarelor de curent continuu cu sau fără perii
bazate pe constantele de timp ale acestora ........................................................................... 14
1
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
4.6 Standul experimental pentru controlul motorului BLDC cu circuite FPGA ....... 27
2
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
7.2 Dezvoltarea unei interfeţe grafice pentru controlul în timp real al motoarelor
BLDC 55
8 CONCLUZII ŞI CONTRIBUŢII.............................................................................. 56
9 BIBLIOGRAFIE SELECTIVĂ.............................................................................. 64
3
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
LISTĂ DE ABREVIERI
4
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
INTRODUCERE
Potrivit unui articol publicat în revista Embedded Magazine, Embedded Solutions for
Programmable Logic Design, ediţia septembrie 2005, revistă promovată de firma Xilinx, lider
mondial în domeniul circuitelor logice programabile, numai într-o locuinţă modernă pot să
existe peste 334 de motoare electrice. Acestea sunt prezente peste tot acolo unde există părţi
în mişcare, de la echipamente electrocasnice până la echipamente de calcul şi echipamente
audio-video. Odată cu achiziţionarea unui echipament din categoriile mai sus amintite,
numărul acestor motoare creşte. Numai în cazul achiziţionării unui echipament de calcul,
numărul motoarelor conţinute de acesta este impresionant, 3 sau 4 motoare pentru
ventilatoare, 4 pentru unitatea DVD, 2 pentru hardisk şi multe altele pentru orice periferic
adăugat: imprimante, scaner, joystick etc. Datorită formei compacte, raportului
cuplu/dimensiune bun şi acurateţii controlului, mare parte dintre aceste motoare sunt de
curent continuu fără perii.
Sistemele care implementează algoritmi de control devin din ce în ce mai complexe,
beneficiază de un consum redus de energie şi au o flexibilitate sporită care permite extinderea
funcţionalităţii în mod continuu şi creşterea acurateţi controlului. Circuitele logice
programabile vin în întâmpinarea acestor cerinţe, permiţând integrarea pe un singur chip atât a
algoritmilor de control cât şi a celorlalte funcţii periferice şi aceasta la viteze ridicate datorită
executării în hardware a tuturor operaţiilor. Un alt avantaj adus de circuitele logice
programabile fiind şi timpul scurt de dezvoltarea şi lansare pe piaţă a aplicaţiei de control.
Obiectivul acestei teze constă în realizarea unui sistem complet şi funcţional din punct de
vedere hardware şi software pentru controlul motoarelor de curent continuu cu şi fără perii,
utilizând circuite logice programabile. Acest sistem trebuie să funcţioneze independent sau să
permită comunicarea bidirecţională şi în timp real cu un mediu software (ex. Simulink). De
asemenea autorul şi-a propus şi crearea unei biblioteci integrabile în Simulink, cu componente
parametrizabile care să permită simularea, implementarea şi testarea în hardware a buclei de
control pentru motoarele de curent continuu, toate acestea procese trebuind să se desfăşoare
cât mai simplu şi într-un timp cât mai scurt. Teza îşi propune de asemenea să ofere soluţii
practice pentru fiecare etapă de proiectare plecând de la motor, trecând prin modulul de
control cu circuite logice programabile şi ajungând la o interfaţa grafică care să permită
introducerea parametrilor de control. Pe scurt autorul îşi propune dezvoltarea unei platforme
hardware/software complete pentru implementarea controlului maşinilor electrice cu circuite
logice programabile. Teza este structurată pe 7 capitole.
Capitolul 1 prezintă informaţii despre motoarele electrice, punând accent pe motoarele
de curent continuu, în special pe cele fără perii. În cea de a doua parte sunt identificate
soluţiile existente pe piaţă pentru implementarea controlului şi sunt stabilite criterii de
selecţie. Un accent deosebit se pune pe soluţiile cu circuite digitale configurabile.
Capitolul 2 abordează problema modelelor matematice pentru motoarele de curent
continuu şi în special pentru cele fără perii. Se va pune accent pe modelele în coordonatele
fazelor cu parametrii concentraţi şi pe modelul bazat pe funcţia de transfer, determinată pe
baza constantelor de timp ale motorului. Modele determinate vor fi implementate şi simulate
în Simulink.
Capitolul 3 prezintă arhitectura generală, specificaţiile de proiectare, metodele de
acordare şi modalităţi de implementare digitală a controlerelor de tip proporţional-integral-
derivativ. Vor fi prezentate succint şi filtrele digitale în special cele cu răspuns de durată
infinită. În final se va propune o modalitate de proiectare a controlerelor plecând de la
arhitectura unui filtru.
5
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Elaborarea acestei lucrări s-a făcut sub îndrumarea generoasă, competentă şi exigentă
a conducătorului ştiinţific prof.dr.ing. Emil Micu pentru care îmi exprim întreaga stimă şi
consideraţie şi de asemenea îi adresez cele mai respectuoase mulţumiri.
Autorul îşi exprimă întreaga stimă şi consideraţie pentru domnul dr.ing. Ştefan
Marinca, fost conferenţiar al Universităţii de Nord Baia Mare, actualmente senior designer la
Analog Devices, Limerick, Irlanda, care a avut un aport deosebit în formarea profesională a
acestuia.
Pentru sprijinul generos în diferite momente pe durata elaborării lucrării, autorul aduce
mulţumiri grupului de electronică, condus de conf.dr.ing Ştefan Oniga, din cadrul Catedrei
de Electrotehnică de la Universitatea de Nord Baia Mare.
Nu în ultimul rând mulţumesc părinţilor mei, soţiei mele Valeria şi fiicei mele Mara
care m-au sprijinit şi încurajat pe durata elaborării tezei şi pe care în ultima perioadă i-am
lipsit în mod sistematic de sprijinul meu.
6
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Capitolul 1
Partea I
1.1.1 Introducere
7
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
către exterior. De asemenea la acest tip de motor scad şi pierderile rotorice. Metodele de
control a motorului BLDC sunt mai puţin complexe decât la motorul asincron.
Întabelul T1.1 este prezentată o comparaţie între motoarele de curent continuu cu perii şi
cele fără perii.
Tabelul T.1.1 Comparaţie motoare c.c. şi motoare c.c. fără perii
Motoare de c.c. cu perii Motoare c.c. fără perii
Tipul comutatoarelor Mecanice Electrice (invertoare + senzori
de poziţie)
Dimensiuni Mari Reduse
Întreţinere Periodică Minimă
Domeniul de puterii Mari Mici
Viteza maximă Mică Mare
Controlul vitezei Simplu Complex
Densitate de putere Redusă Mare
Moment de inerţie Mare Mic
Disiparea căldurii Slabă Bună
1.1.4 Clasificarea, structura şi aplicaţii ale motoarelor de curent continuu fără perii
8
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Modalitatea cea mai simplă de a cunoaşte poziţia rotorului la un moment dat este
folosirea senzorilor de poziţie HALL. Aceştia se montează pe unul dintre capetele arborelui
motorului, vezi figura 1.3. Pe acelaşi capăt mai poate fi montat şi un codificator optic de
poziţie pentru determinarea poziţiei exacte a rotorului, cât şi pentru, determinarea cu precizie
mare a vitezei rotorului. Detaliile privind modul de realizare a comutaţiei folosind senzorii
HALL şi determinarea vitezei pe baza informaţiei de poziţie, vor fi precizate în capitolele
următoare. [73, 74].
Figura 1.2 Statorul uni motor de tip BLDC Figura 1.3 Secţiune longitudinală prin motor BLDC
Aplicaţiile în care sunt folosite motoare de curent continuu pot fi împărţite în câteva clase:
servosisteme, acţionări cu viteză constantă, sisteme de centrifugare şi ventilatoare, pompe,
procese industriale, tracţiuni electrice, şi mai recent periferice de calculatoare şi aparatură
medicală.
9
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Partea a II
În acţionările moderne, atât partea de control cât şi logica de comutaţie (vezi figura 1.4)
sunt implementate cu procesoare digitale de semnal (DSP). Însă acestea au competitori
tradiţionali sau mai noi, dintre care amintim:
- Microcontrolere (MCU);
- Microprocesoare de uz general / microprocesoare cu set redus de instrucţiuni
(GPP/RISC);
- Arii de porţi logice programabile (FPGA);
- Circuite integrate dedicate (ASIC).
În tabelul T.1.3 este prezentată o comparaţie între cele cinci arhitecturi de circuite
digitale care pot fi folosite în parte de control a unei acţionări electrice.
10
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Tabel T.1.3 Comparaţie între diferite tipuri de arhitecturi folosite pentru aplicaţiile în timp real
Uşurinţă
Implementa- Consum de Flexibilitate
Performanţa Preţ în Concluzii
re pe piaţă putere ulterioară
dezvoltare
Nesatisfăcător
ASIC Foarte Bun Foarte Bun Satisfăcător Bun Nesatisfăcător Satisfăcător
Foarte Bun
DSP Bun Bun Foarte Bun Foarte Bun Foarte Bun Foarte Bun
Bun
FPGA Foarte Bun Bunr Foarte Bun Satisfăcător Bun Bun
Foarte Bun
MCU Satisfăcător Foarte Bun Bun Satisfăcător Foarte Bun Bun
RISC/
Bun Bun Satisfăcător Bun Satisfăcător Foarte Bun Bun
GPP
11
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Figura 1.6 Utilizarea tradiţională a circuitului FPGA în Figura 1.7 Metoda software-hardware de înglobare a
sistemele de control întregii bucle de control într-un circuit FPGA
12
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Capitolul 2
13
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
dΩ
J = m − mr - ecuaţia de echilibru dinamic (2.5)
dt
2.1.2 Funcţiile de transfer ale servomotoarelor de curent continuu cu sau fără perii
bazate pe constantele de timp ale acestora
La analiza acţionărilor cu servomotoare, în ecuaţiile care modelează funcţionarea
servomotoarelor sunt prezente două constante de timp, una mecanică şi cealaltă electrică.
Analiza ecuaţiilor motorului de curent continuu fără perii (BLDC) va pleca de la analiza
ecuaţiilor motorului de curent continuu.
Ecuaţiile în regim staţionar pentru motorul de unde:
curent continuu: U = tensiunea la borne (V);
U = iaRa + KeΩ (2.7) ia = curentul în înfăşurarea statorică (A);
T = iaKT = J α (2.8) JT = momentul de inerţie total al motorului
2
Pentru cazul general ecuaţiile diferenţiale plus sarcina (kg*m );
sunt: Ke = constantă de tensiune (v/rad/sec);
dia KT = constanta de cuplu (N*m/A);
U = iaRa + La + KeΩ (2.10) La = inducţia înfăşurări statorice (H);
dt
Aplicând Laplace şi prin rearanjare se obţine: Ra = rezistenţa înfăşurări statorice (ohm);
(U − KeΩ)KT TL = cuplul (N*m);
=Ω (2.11)
La Ω = viteza rotorului (rad/sec);
( S + 1)RaJTS α = acceleraţia (rad/sec2).
Ra
Ecuaţie (2.12) poate fi reprezentată ca şi diagramă bloc de forma celei din figura 2.2, [35].
14
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
1 ω m = 1 / t mte (2.16)
U Ke
= (2.15)
Ω tmteS + tmS + 1
2
În cazul motorului de curent continuu fără perii (BLDC), ecuaţiile care definesc
constantele de timp electrică şi mecanică, au aproximativ aceeaşi formă, cu mici modificări
faţă de cele ale motorului de curent continuu. Pentru un motor BLDC cu statorul conectat în
stea, circuitul electric echivalent va fi cel din figura 2.3.
RL − L
∑ 2
JTOTAL R Jtotal
tm = =0.86 l −l
Ke(L − L) K e ( l −l ) K T
KT
1.73
(2.18)
Inductiv. totala LL − L
te = = (2.19)
Figura 2.3 Circuitul electric echivalent al motorului BLDC Rezist. totala ∑ Rm(L − L)
1
U
= Ke (2.20)
Ω tmS + 1
Majoritatea producătorilor dau parametrii electrici ai motorului în valori de linie, astfel
aceste valori trebuie convertite în valori de fază, constanta de timp mecanică poate fi calculată
cu relaţia (2.18) iar, constanta de timp electrică va fi calculată cu relaţia (2.19).
15
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Valoarea constantei de timp electrice este mult mai mică decât cea a constantei de
timp mecanice, te << tm, astfel că produsul tetm se poate neglija, iar funcţia de transfer
tensiune – viteză, a sistemului se poate simplifica considerând-o cu o bună aproximaţie ca
fiind de ordinul I, de forma (2.20).
Analiza unui sistem de acţionare electrică este un proces dificil, deoarece acţionările electrice
sunt sisteme complexe. Un rol important înainte, de implementarea practică a unui astfel de
sistem, revine părţii de simulare, în acest scop fiind dezvoltate numeroase pachete de
programe pentru simularea acţionărilor electrice. Pentru a modela un sistem de acţionare
electrică a fost necesară dezvoltarea unor componente specifice, ce vor fi prezentate în cadrul
acestui capitol, şi care au la bază blocurile deja existente în mediul de simulare
Matlab/Simulink [59, 147].
Maşinile electrice au fost modelate pe baza ecuaţiilor funcţionale ale acestora şi a
funcţiilor lor de transfer. Pentru modelare s-a folosit implementarea modelului cu blocuri
Simulink. În această secţiune se vor prezenta modelele motorului de curent continuu bazat pe
reprezentarea servomotorul de curent continuu fără perii în coordonatele fazelor cu parametrii
concentraţi şi modelul bazat pe funcţia sa de transfer
În figura 2.4 este prezentat un model al motorului de curent continuu fără perii descris
cu blocuri din Simulink. Descrierea acestui model se bazează pe ecuaţiile 2.6. În figura 2.5
este prezentată şi fereastra de configurare a componentei Simulink create, acest model va
putea fi uşor de configurat ţinându-se cont de parametrii constructivi ai motorului. Răspunsul
sistemului la un semnal de tip treaptă este prezentat în figura 2.6. Se observă că ieşirea este
subunitară pentru un semnal de intrare unitar. Sunt marcate pe figură valorile timpilor de
creştere şi valoarea staţionară. Se poate observa că ieşirea sistemului nu este oscilatorie.
16
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
17
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Capitolul 3
Pentru controlul în buclă închisă cel mai cunoscut şi mai utilizat algoritm este algoritmul
de control PID (proporţional – integral - derivativ). În sistemele de control actuale, mai bine
de 95% din buclele de control sunt de tipul PID, de fapt, majoritatea sunt de tipul PI
(proporţional – integral). Configuraţia unui sistem cu, controler de tip PID este prezentată în
figura 3.1 [5], [91], [97], [125]. Tehnologii de control mai sofisticate, cum este controlul
predictiv sunt organizate ierarhic şi au la bază tot controlerele de tip PID care se află la nivelul
cel mai de jos al acestei ierarhii. Se poate spune că, controlul de tip PID se regăseşte la nivelul
oricărui sistem controlat. În domeniul continuu de timp reprezentarea controlerului PID este
conform celei din figura 3.1.
1 de(t )
u (t ) = K P e(t ) +
KI ∫ e(t )dt + K D
dt
(3.1)
Kp amplificare proporţională;
KI amplificare integrală;
KD amplificare diferenţială;
e(t) - eroarea dintre răspunsul
Figura 3.1. Sistem comandat cu controler de tip PID dorit şi răspunsul real al sistemului.
Controlul realizat de cei trei termeni: integral, proporţional şi derivativ, ţine cont de
comportarea sistemului în trecut, prezent şi viitor. În figura 3.2 sunt prezentate într-o manieră
sugestivă influenţele însumate asupra parametrilor de performanţă ai sistemului, ai celor trei
coeficienţi de amplificare.
Pentru proiectarea adecvată a unui controler de tip PID trebuie avute în vedere
următoarele aspecte: filtrarea zgomotului, ponderarea referinţei, fenomenul de saturare,
metoda de acordare al controlerului, modalitatea de implementare digitală a controlerului.
În continuare vor fi dezbătute pe larg fiecare din aspectele mai sus menţionate.
18
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Legea de control definită de relaţia (3.1) presupune că, aplicarea unui semnal treaptă la
intrarea de referinţă a unui sistem de control va avea ca rezultat un semnal de control de tip
impuls. Cel mai adesea acest lucru trebuie evitat, din aceeaşi cauză în mod frecvent nici
termenul derivativ nu se aplică semnalului de referinţă. Această problemă poate fi evitată prin
filtrarea valorii de referinţă înainte de a fi aplicată controlerului. O altă posibilitate este ca
asupra semnalului de referinţă să acţioneze numai termenul proporţional, cunoscută ca metoda
de ponderare a referinţei. În acest caz relaţia fundamentală (3.1) va deveni:
⎛ 1
t
dr (t ) dy (t ) ⎞ unde, b şi c sunt parametri
u (t ) = K ⎜⎜ br (t ) − y (t ) + ∫ e(τ )dτ + Td (c − ) ⎟⎟ (3.3) adiţionali.
⎝ Ti 0 dt dt ⎠
19
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Altfel spus, reglarea va fi mai lentă făcându-se cu paşi mici, evitându-se astfel suprareglajul
accentuat şi oscilaţiile amortizate.
Procesul de stabilire a valorilor optime pentru coeficienţii KI, KD, KP, poate fi destul de
dificil deoarece presupune ajustarea simultană a celor trei constante. Dacă valorile nu sunt
corect stabilite sistemul devine instabil generând zgomot şi putând duce chiar şi la distrugerea
maşinii. Există mai multe metode de acordare a controlerelor, metode clasice, mai empirice,
cum este metoda Ziegler Nicholls şi metode moderne care necesită un calcul matematic
intensiv, cum este metoda de acordare folosind alocarea polilor. În cazul metodelor de reglare
empirice cheia ajustării eficiente a celor trei constante constă în folosirea unui proces care să
permită decuplarea, cât mai mult posibil, a efectelor unei amplificări faţă de cealaltă [5].
20
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
z − 1 ⎡ H P ( s) z ⎤
H P( z ) = Z⎢ * −T *h ⎥
(3.8)
z ⎣ s z−e ⎦
Figura 3.4 Reglarea unui proces de ordinul I cu controlere
bd
PI discret H P ( z) = (3.9)
z − ad
⎧⎪ b * T , dacă, a = 0 1 T
→ (3.11)
bd = ⎨ b s z −1
b = * (1 − e −aT ), dacă , a ≠ 0, şi, a d = e −aT
⎪⎩ d a
(3.10)
T K
H R ( z) = K P + K i = Kp + i (3.12)
z −1 z −1
( Kp * z + Ki − Kp ) * bd
H bi ( z ) = (3.13)
z 2 + z ( Kp * bd − a d − 1) + bd * ( Ki − Kp ) + a d
s 2 + 2ξωs + ω 2 = 0 ⇒ s1, 2 = −ξω ± jω 1 − ξ 2
(3.14)
z1, 2 = e −ξωT (cos(ωT 1 − ξ 2 ) + j sin(ωT 1 − ξ 2 ))
(3.15)
⎧⎪ p = −( z + z ) = −2 * e −ξωT * cos(ωT 1 − ξ 2 )
z 2 + z * p1 + p 2 , unde, ⎨ 1 1 2 (3.16)
⎪⎩ p 2 = z1 * z 2 = e − 2ξωT
⎧ ⎧ p + ad + 1
⎪ p = K *b − a −1 ⎪ Kp = 1
⎪ 1 p d d ⎪ bd
⎨ ⇒⎨ (3.17)
p −a
⎪ p 2 = ( K i − K p ) * bd + a d ⎪ Ki = 2 d
⎪⎩ ⎪⎩ bd + K p
21
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
22
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
obţin coeficienţii filtrului, (3.27) în funcţie de amplificările Kp, Ki, Kd ale controlerului PID.
În concluzie, un controler PID poate fi proiectat ca şi filtru digital de ordinul 2.
n n
y (k ) = ∑ a i x(k − i ) − ∑ bi y (k − i ) (3.21)
i =0 i =1
unde:
- k - eşantionul curent, pentru o anumită
perioadă de timp T;
- y(k) - semnalul de ieşire;
- x(k) - semnalul de intrare;
ai şi bi - coeficienţii filtrului.
Figura 3.5 Diagrama controlerului digital
U (s) K 2 z −1 2 1 − z −1
Dcontroler = = KP + I + KDs (3.22) s= sau s = (3.23)
E ( s) s T z +1 T 1 + z −1
K IT⎛ 1 + z −1 ⎞ 2 K D ⎛ 1 − z −1 ⎞
D( z ) = K P + ⎜⎜ ⎟+
−1 ⎟
⎜ ⎟ (3.24)
2 ⎝1− z ⎠ T ⎜⎝ 1 + z −1 ⎟⎠
(K + K I T / 2 + 2 K D / T ) + (K I T − 4 K D / T )z −1 + (− K P K I / 2T + 2 K D / T ) z −2 (3.25)
D( z ) = P
1 − z −2
a + a z −1 + a 2 z −2 K T 2K D
D ( z ) = 0 1 −1 (3.26) a0 = K P + I +
2 T
1 + b1 z + b2 z −2 b1 = 0
K I T 4K D
a1 = − (3.27)
2 T b2 = −1
K I 2K D
a2 = − K P + +
2T T
23
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Capitolul 4
Conectarea cu motorul BLDC se realizează prin intermediul plăcii PM-50 care amplifică
semnalul de comandă provenind de la placa de control şi îl furnizează mai departe celor trei
înfăşurări statorice ale motorului BLDC. Pe placa PM-50 se face şi achiziţia şi adaptarea
nivelelor semnalelor provenind de la senzorii Hall şi de la codificatorul de poziţie, semnale ce
vor fi transmise mai departe plăcii de control cu circuit FPGA. Placa PM-50 permite de
asemenea şi monitorizarea curenţilor din cele trei ramuri de invertor.
24
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Familia de circuite FPGA Spartan-3 a fost proiectată în mod expres pentru a veni în
întâmpinarea cerinţelor de capacitate sporită şi cost redus, specifice pieţei bunurilor de larg
consum. Această familie de circuite are opt membrii cu capacităţii între 50.000 şi cinci
milioane de porţii logice, vezi tabelul T4.1. Circuitele din această familie sunt realizate în
tehnologie 90nm şi pot fi implementate proiecte cu frecvenţă de lucru de până la 185 MHz .
Familia de circuite Spartan-3 este o alternativă superioară circuitelor ASIC programate prin
mască. Circuitele FPGA permit reducerea costurilor iniţiale de producţie, a ciclului de
dezvoltare implementare a aplicaţiei şi înlătură inflexibilitatea specifică circuitelor ASIC
25
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
26
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
acest caz HEDS-9xxx, care în funcţie de tip poate furniza la ieşire trei semnale şi
complementele acestora.
Motorul BLDC
Tabel T4.2. Datele Constructive ale motorului BLDC
Motorul ales pentru acest experiment Date constructive Simbol Valoare
Tensiune nominală VN [V] 19
este un motor de curent continuu fără perii
Viteza în gol SNL[rpm] 8000
produs de firma Pittman Express [93]. Acest
Valoarea de vârf a cuplului Tpk[mNm] 94
motor are montaţi pe arbore senzori Hall şi un Valoarea cuplului nominal TC[mNm] 29
codificator de poziţie. Datele constructive ale Rezistenţa Rfază[Ω] 5,25
acestui motor sunt prezentate în tabelul T4.2. Inductivitatea Lfază[mH] 0,46
Curent în gol INL[mA] 72
Curent de vârf IP[A] 1,3
27
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Capitolul 5
28
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
transformat într-o descriere de tip VHDL folosind utilitarul Xilinx System Generator.
Proiectul este în cele din urmă sintetizat prin procedeul obişnuit pentru descrierile VHDL şi
implementat în FPGA [140]. Arhitectura software a mediului integrat HW/SW pentru
implementarea sistemelor de control permite pe de o parte implementare părţii software a
aplicaţiei, care constă în modelarea şi simularea comportamentului procesului controlat
(motor BLDC) respectiv a controlerului (PI), şi pe de altă parte proiectarea părţii hardware,
adică implementarea şi testarea controlerului şi a blocurilor conexe în FPGA. O simplă
enumerare a resurselor software întrebuinţate pentru dezvoltarea mediului integrat HW/SW
arată complexitatea acesteia, vezi şi figura 5.1:
Matlab – mediul de programare
utilizat pentru modelarea proces
controlat şi a controlerului, suport
pentru toolboxul Simulink;
Simulink – pentru simulare sistem
de control şi proces controlat.
System Generator – rulând în
cadrul programului Simulink,
utilizat pentru:
- modelarea cu blocuri Xilinx a
SC;
- generarea fişierelor proiect
Xilinx;
- generarea codului VHDL
sintetizabil;
- generarea unui fişier Testbench
în limbaj VHDL pentru simularea
controlerelor PID;
- generarea fişierelor de
constrângeri.
Xilinx ISE – mediul integrat
pentru sinteza şi implementarea
în FPGA, rulează împreună cu:
VHDL – folosit pentru descrierea
în totalitate a unor blocuri ale SC,
pentru includerea unor blocuri de
tip proprietate intelectuală (IP),
pentru includerea diagramelor de
stare (FSM) şi de asemenea ca
limbaj intermediar între Simulink
şi Xilinx;.
- ModelSim XE – permite
simularea în diverse etape a SC;
- Impact – folosit pentru
încărcarea fişierului de
configurare în FPGA;
- ChipScope – utilizat în faza de
Figura 5.1 Resursele software şi hardware implicate în proiectarea
depanare a proiectului, permite cu circuite FPGA a controlului unui servomotor
vizualizarea circuitului
implementat în FPGA;
29
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
30
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Figura 5.3 Metoda hardware-software propusă pentru implementarea/ testarea controlului hardware digital
2. În cea de a doua etapă descrierea HDL va trece prin faza de sinteză, după care se va
putea face o simulare funcţională folosind simulatorul logic ModelSim proprietar
firma ModelTech.
3. Dacă simularea funcţională este satisfăcătoare se va trece la implementarea blocului
proiectat, astfel că se vor executa automat fazele de translatare, mapare şi plasare a
logicii de configurare. În această fază fiind necesare bibliotecile tehnologice, de la
producătorul circuitului care urmează a fi programat.
4. După implementare se poate trece la generarea fişierului de configurare. Cel mai
frecvent de tip PROM (format .mcs) pentru programarea memoriei flash, sau de tip
bitstream (format .bit) pentru programarea directă a circuitului FPGA.
5. Pentru configurarea efectivă a circuitului FPGA se apelează la programul iMPACT,
care prin intermediul portului paralel al calculatorului şi a unui cablu JTAG va trimite
şirul de biţi către placa care conţine memoria flash şi circuitul FPGA.
6. În ultima etapă se poate face o testare a comportamentului în hardware a blocului de
control proiectat. Pentru aceasta se foloseşte programul ChipScope.
31
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
32
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
33
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Capitolul 6
34
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
35
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Figura 6.4 Implementarea în FPGA blocului de intrare pentru simulare co-simulare HIL
36
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
37
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
limita maximă va avea valoarea 4095, valoare pentru care factorul de umplere este 1 sau
100%.
Figura 6.6. Formele de undă corespunzătoare blocului de generare semnal PWM, captură din ModelSim
6.4.1 Comutaţia curentului prin cele trei faze statorice ale motorului BLDC
După cum s-a putut vedea dintr-un capitol anterior datorită faptului că motoarele
BLDC nu au perii, comutaţia curentului în fazele statorice se realizează electronic în funcţie
de poziţia rotorului. Pe durata fiecărei secvenţe de comutaţie, în cazul unui motor trifazat,
două faze vor fi parcurse de curent, în timp ce, cea de a treia va fi flotantă. Utilizând tehnica
PWM, tensiunea medie aplicată fiecărei înfăşurări statorice poate fi controlată, controlând
38
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
astfel turaţia motorului. Rolul blocului de comutaţie fiind acela de a prelua semnalul PWM şi
de al transmite succesiv la câte o pereche de tranzistori, aflaţi pe braţe diferite ale invertorului.
Succesiunea activării perechilor de tranzistori făcându-se în funcţie de poziţia rotorului,
informaţie oferită de senzorii HALL. De asemenea prin intermediul blocului de comutaţie se
stabileşte şi sensul de rotaţie al motorului. Majoritatea producătorilor de motoare BLDC
furnizează acest tip de motoare împreună cu trei senzori cu efect Hall. Fiecare senzor
furnizează un semnal digital cu nivel logic 1 pentru o perioadă π (1800 grade electrice), iar
pentru cea de a doua perioadă π un semnal digital cu nivel logic 0. Semnalele date la ieşire de
cei trei senzori sunt defazate între ele cu 600 electrice astfel că fiecare senzor este aliniat cu
unul dintre circuitele electromagnetice. Numărul de cicluri electrice care trebuie să se repete
pentru a obţine o rotaţie mecanică complectă este determinat de numărul de poli rotorici.
Astfel că, pentru fiecare pereche de poli rotorici se execută un ciclu electric. În acest caz, între
numărul de rotaţii mecanice, cicluri electrici şi viteza motorului se stabilesc următoarele
relaţii:
f ciclu _ mecanic = p * f ciclu _ electric = p * f HALL (6.4) fciclu_mecanic - frecvenţa semnalului pentru o rotaţie
V rpm mecanică complectă;
f ciclu _ mecanic = (6.5) Vrpm - turaţia motorului exprimată în
60
rotaţii/minut;
din (6.4) şi (6.5) se obţine,
fcilcu_electric - frecvenţa cu care se realizează o
V rpm
f HALL = p * , sau (6.6) comutaţie electrică complectă;
60 fHALL - frecvenţa semnalului provenind de la
60 * f HALL
V rpm = (6.7) oricare din cei trei senzori HALL;
p p - numărul de perechi de poli rotorici.
39
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
40
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
41
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Proiectarea tahometrului digital folosind metoda numărării intervalului de timp dintre două
impulsuri.
Pentru implementarea hardware a tahometrului digital bazat pe prima metodă se face
proiectarea a două blocuri unul numit bloc de interfaţă (având şi rol de filtrare) cu
codificatorul optic iar celălalt bloc de măsurare a vitezei. În figura 6.13 sunt reprezentate cele
două blocuri şi de asemenea semnalele care intră şi ies din acestea.
Semnalele Ea şi Eb provin de
la codificatorul incremental şi sunt
semnale de intrare în blocul de
interfaţă care pe baza acestora
generează trenul de impulsuri pentru
blocul de măsurare şi de asemenea
semnalul care indică direcţia. Figura 6.13. Blocurile constructive ale uni tahometru digital
Blocul de interfaţă cu codificatorul optic este construit folosind diagrame de stare pe
baza tabelelor de adevăr identificate şi prezentate în continuare.
Tabel T6.1. Tabele de adevăr asociate blocului de interfaţă
Starea Ea Eb Starea Ea Eb
S0 0 0 S0 0 0
S1 0 1 S4 1 0
S2 1 1 S5 1 1
S3 1 0 S6 0 1
Dir = 0 Dir = 1
42
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
aleasă egală cu perioada semnalului de tact aplicat circuitului FPGA, adică 20 ns.(vezi relaţia
(6.10)).
Vrpm fcodif – frecvenţa semnalului provenind de
f codif = 500 * (6.8)
60 la codificatorul optic;
Tcodif =
1
=
60
(6.9) Tcodif – perioada semnalului provenind de la
f codif 500 * Vrpm codificatorul optic;
Tcodif 1 60 1 count_enc – valoarea contorului, în urma
count _ enc = = * − 9
(6.10) contorizării unui interval dintre două fronturi
TFPGA Vrpm 500 20 * 10
60 1
crescătoare.
const. = * = 6 * 10 6 (6.11) TFPGA – perioada semnalului de tact aplicat
500 20 * 10 −9
circuitului FPGA, în acest caz 20x10-9 s;
const. 6.000.000
Vrpm = = (6.12) Vrpm – viteza motorului, exprimată în
count _ enc count _ enc
rotaţii/minut;
Rata de eşantionare este mare în condiţiile în care oscilatorul extern conectat la
circuitul FPGA prezent pe placa Spartan 3 are frecvenţa de 50MHz [24]. Pentru această rată
de eşantionare eroarea de măsurare este minimă .
În figura 6.16 se poate observa reprezentarea grafică a distribuţiei erorii (exprimată în
rotaţii/minut) în funcţie de domeniul de viteze al motorului. Din figură se poate observa că
eroarea de măsurare este zero pentru viteze de până la aproximativ 2500 rpm, după care la
intervale de aproximativ 500-1000 rpm creşte cu 1 rpm, valoarea maximă atinsă fiind de 10
rpm în jurul turaţiei maxime a motorului, de 8000 rpm. Metoda de determinare a erorii a
constat în determinarea valorii lui count_enc în domeniul de viteze 1-8000 după care s-a
aplicat relaţia (6.12), iar din valoare vitezei astfel obţinute s-a păstrat numai partea întreagă.
Eroarea s-a obţinut ca şi diferenţă dintre viteza reală şi viteza calculată. În literatura de
specialitate, referinţa [33] o eroare între 1 - 2 rad/s (aprox. 9-19 rpm) este considerată
acceptabilă la turaţii mari, astfel că la 10 rpm (1, 047 rad/s) eroare se poate vorbii de o
precizie bună, pentru o turaţie de 8000 rpm.
Modulul de măsurare a vitezei a fost descris în VHDL conform algoritmului din figura
6.15. Operaţia de împărţirea care se efectuează pentru determinarea valorii vitezei se face
folosind un bloc de împărţire de tip core optimizat pentru circuitul FPGA, generat cu utilitarul
Core Generator şi instanţiat ca şi componentă în codul VHDL al modulului de măsurare. În
figura 6.17 este prezentată arhitectura RTL a tahometrului digital. În această figură se
evidenţiază interconectarea celor două blocuri principale.
43
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Figura 6.17. Arhitectura RTL a tahometrului digital proiectat prin metoda măsurării intervalului de timp dintre
două impulsuri succesive
Figura 6.18. Rezultat al co-simulării hardware, Figura 6.19. Rezultat al co-simulării hardware,
pentru un singur semnal achiziţionat de la pentru semnal filtrat de la codificator
codificatorul optic
44
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
măsurare mică, se poate concluziona că s-a reuşit implementarea cu succes în FPGA a unui
tahometru digital performant, bazat pe metoda numărări intervalului de timp dintre două
impulsuri succesive. Implementarea acestui tip de tahometru într-un circuit FPGA care
lucrează la frecvenţa de 50Mhz este de dorit, făcându-l astfel adecvat pentru închiderea buclei
de viteză la motoarele BLDC.
Descrierea în VHDL a acestui bloc s-a făcut de asemenea după un algoritm elaborat de
autor. Spre deosebire de modulul conversie frecvenţă-viteză unde tot la al doilea impuls se
contoriza perioada de timp scursă între două fronturi crescătoare, în acest caz pentru a afişa o
45
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
valoare cât mai precisă şi mai stabilă a vitezei s-a ales varianta ca pe un interval de timp
stabilit (în acest caz 1 s)să fie numărate tranziţiile din zero în unu ale semnalului ce provine de
la codificatorul de poziţie. Eroarea s-a calculat şa fel ca şi în cazul precedent şi variază între 0
şi 8 rpm, indiferent de turaţia măsurată.
46
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Figura 6.25. Blocul de saturaţie şi formele de undă asociate Figura 6.26 Bloc Estimator
În figura 6.26 este prezentat blocul estimator, acesta generează semnalul de eroare
pentru controler. Acest bloc permite şi ponderarea referinţei cu coeficientul b şi de asemenea
limitarea valorilor extreme pe care aceasta le poate lua.
În capitolul 3 s-au prezentat relaţiile matematice care descriu acest tip de filtre, relaţii
care dau posibilitatea implementării în FPGA a controlerelor PID ca şi filtre IIR.
47
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Performanţele arhitecturii din figura 6.27 au fost analizate comparativ cu cele ale
arhitecturii clasice de controler PI. S-a observat că abaterea este sub 1%. În concluzie,
datorită performanţelor evidenţiate în paragrafele anterioare şi datorită resurselor FPGA
consumate, relativ comparabile cu cele ale arhitecturii clasice de controler PI, noua arhitectură
de controler PID-IIR este o alternativă viabilă.
48
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Pentru testarea buclei de control după metoda enunţată anterior este recomandat ca
introducerea datelor de intrare să se facă software. În această situaţie blocul de intrare poate fi
simplificat, prin înlăturarea multiplexoarelor şi a celorlalte blocuri ce facilitează introducerea
hardware a datelor. În figura 6.29 este prezentat blocul de testare, rezultat în urma
implementării în hardware a schemei simplificate. Prin intermediul acestui bloc şi a porturilor
49
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
sale proiectantul poate trimite în timp real stimuli din Simulink şi poate achiziţiona în timp
real răspunsul sistemului. Din figura 6.29 se poate observa că prin intermediul stimulilor din
Simulink, poate fi modificat sensul de rotaţie al motorului (intrarea Dir), pot fi introduse valori
pentru coeficienţii de amplificare ai controlerului PI (Kp, Ki), motorul poate fi pornit/oprit,
poate fi impus un palier fix pentru viteza de referinţă sau un profil aleatoriu.
În ceea ce priveşte semnalele de ieşire, poate fi vizualizat orice semnal considerat de
proiectant ca fiind de interes, cum ar fi sensul de rotaţie, semnale achiziţionate de la senzorii
Hall sau de la codificatorul de poziţie şi cel mai important, viteza de rotaţie motorului BLDC.
În figura 6.30 este prezentat răspunsul motorului BLDC la un semnal treaptă pentru
diferite valori ale vitezei de referinţă. Se poate observa că pentru valori ale coeficienţilor de
amplificare Kp=300 şi Ki=40 eroarea staţionară este de sub 0,2%, practic nulă.
Figura 6.29 Bloc de co-simulare-testare cu hardware în buclă pentru controlul software al motorului BLDC
Figura 6.30 Răspunsul motorului (albastru) la aplicarea unei viteze de referinţă (galben) de tip treaptă
50
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
este prezentată eroarea staţionară, care se poate observa că la turaţii de peste 500 rpm este sub
2%. Vârfurile negative care apar până la momentul de timp de 0,6 ms se datorează întârzierii
de un eşantion (20 ns), a răspunsului sistemului. Motorul este adus până la viteza 0 după care
pornit la o viteză mică, 200 rpm. O eroare staţionară mai mare, dar sub 10% apare la turaţii
mai mici de 200 rpm. Se observă de asemenea că motorul răspunde bine şi la schimbarea
sensului de rotaţie, ultima parte a diagramei, rezultând că este un sistem stabil. .
Figura 6.31 prezintă răspunsul motorului la variaţia sensului de rotaţie şi a vitezei de referinţă, stabilite
51
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Capitolul 7
52
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Secţiunea Control Blocks din biblioteca creată, conţine toate componentele buclei de
control testate în capitolele anterioare. Modalităţile de parametrizare a acestor componente
vor fi prezentate în subcapitolul următor.
În figura 7.4 sunt prezentate blocurile de control realizate. O parte dintre acestea sunt
parametrizabile, funcţionarea acestora putând fi modificată prin intermediul unei ferestre de
configurare. Cealaltă parte au un regim de funcţionare fix, blocurile cu simbol Xilinx. Primele
pot fi realizate cu primitive System Generator, sau mixt incluzând şi cod HDL, cele din urmă
sunt realizate numai în cod HDL. Biblioteca de componente de control conţine:
- Blocul de comutaţie configurabil, unde proiectantul are posibilitatea să aleagă între
comutaţie hard şi soft;
- Blocul PWM configurabil, la acesta proiectantul poate alege modul de generare a
semnalului PWM, standard sau simetric;
- Modulele de tahometru digital, unul cu filtrarea intrării şi bazat pe metoda de
contorizare a intervalului de timp dintre două impulsuri, celălalt bazat pe metoda CET şi
care asigură şi conversia binară-BCD-7-seg.
- Blocul parametrizabil de saturare semnal, aceasta permite alegerea limitelor de
saturaţie şi a timpului de eşantionare.
- Blocul parametrizabil de estimare cu ponderarea referinţei şi limitarea semnalului de
referinţă. Acest bloc permite alegerea valorii coeficientului de ponderare, a ratei de
eşantionare şi permite impunerea unor limite pentru semnalul de referinţă.
- Blocul de interfaţă cu placa Spartan 3. Acest bloc realizează interfaţarea cu hardware-
ul de pe placă şi este util la proiectarea unui sistem de control independent care nu
interacţionează cu calculatorul decât în etapa de programare;
- Blocul de interfaţă Spartan3/Simulink, care realizarea interfaţarea atât cu hardware-ul
cât şi cu software-ul, permiţând controlul şi monitorizarea mixtă Hardware-Software.
Din figura 7.4 se poate observa că sunt grupate blocurile din aceeaşi clasă şi cu porturi
identice: controlerele, blocurile de comutaţie şi blocurile PWM. Această grupare sugerează
faptul că integrarea într-un proiect a oricărui bloc din grup se poate face prin intermediul
blocului configurabil, exemplu blocul PID Configurabil, care va reprezenta grupul. Un bloc
configurabil, odată adus în fereastra de Simulink prin procedura cunoscută drag and drop, se
dă un click dreapta pe acesta şi se va deschide fereastra de configurare. Din această fereastră
prin alegerea opţiunii Block Choice, proiectantul va avea posibilitatea să aleagă între mai
multe versiuni de simulare şi implementare, în acest exemplu una dintre arhitecturile
controlerului PID. În figura 7.2 este prezentată fereastra de configurare a controlerului P. Din
figură se poate observa că aceasta este împărţită în două zone cea de parametri uzuali şi cea de
parametrii avansaţi. În zona de parametri uzuali se definesc coeficientul de amplificare, rata
de eşantionare, limitele de saturaţie şi valoarea iniţială. În zona de parametri avansaţi se
definesc precizia care poate fi maximă (64 biţi) sau poate fi definită de utilizator. În cazul
selectării celei de a doua opţiuni devin active şi următoarele câmpuri, tipul ieşirii (cu semn
sau fără semn), număr de biţi pentru precizie şi număr de biţi după virgulă, modul de tratare a
cuantizării şi a depăşirii. Efectele în hardware parametrilor avansaţi şi opţiunile pe care le are
proiectantul au fost prezentate mai pe larg în teză. doar a parţii de controler P.
53
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Figura 7.2 Parametrii de configurare uzuali Figura 7.3 Biblioteca cu blocurile de control
şi avansaţi pentru controlerul P şi PI parametrizabile
54
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Prin activarea tabului Loock under mask click dreapta pe bloc, proiectantul poate avea
acces şi la nivelele ierarhice inferioare, unde poate face setări direct pe primitivele care
alcătuiesc controlerul (sumatoare, multiplicatoare etc.) şi de asemenea are acces şi la opţiuni
de implementare hardware. Dacă proiectantul doreşte modificarea parametrilor din fereastra
de configurare acesta are la dispoziţie opţiunea Edit Mask, pentru alte detalii vezi referinţele
[59, 140]. În situaţia controlerului PID a fost utilă dezvoltarea de blocuri separate pentru
fiecare tip de controler de la cel mai simplu la cel mai complex. Acesta datorită faptului că,
nu este deloc economic din punct de vedere al resurselor hardware, ca un controler configurat
de tip PI (18% ocupare hardware) să fie implementat ca şi controler PID, la implementare
intrând întreaga arhitectură a controlerului PID (23% ocupare hardware), rezultând o pierdere
de 5% resurse hardware. Această pierdere este şi mai mare în cazul implementării cu controler
PID.
55
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
8 CONCLUZII ŞI CONTRIBUŢII
56
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
trebuie limitată amplificarea frecvenţelor înalte. Prin filtrarea valorii de referinţă înainte de a
fi aplicată controlerului se evită un semnal de control de tip impuls, apărut ca răspuns la
aplicarea unui semnal de referinţă de tip treaptă. Pentru a evita saturaţia procesului controlat
trebuie limitată variaţia valorii de referinţă, astfel încât valoarea de la ieşirea controlerului să
nu atingă niciodată limitele actuatorului. Există mai multe metode de acordare a controlerelor,
metode clasice, mai empirice, cum este metoda Ziegler Nicholls şi metode moderne care
necesită un calcul matematic intensiv, cum este metoda de acordare folosind alocarea polilor.
În cazul metodelor de reglare clasice cheia ajustării eficiente a celor trei constante constă în
folosirea unui proces care să permită decuplarea, cât mai mult posibil, a efectelor unei
amplificări faţă de cealaltă. Prin metoda alocării polilor se pot determina coeficienţii de
amplificare ai controlerului, impunând factorul de amortizare şi pulsaţia dorită şi cunoscând
două dintre caracteristicile motorului controlat şi anume constanta de tensiune electromotoare
şi constanta mecanică. Atât din relaţiile matematice cât şi din simulările Matlab-Simulink se
poate trage concluzia că, controlerele digitale pot fi proiectate cu succes ca şi filtre de tip
impuls cu răspuns infinit (IIR).
57
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
58
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
resursele acestuia. Proiectarea acestui bloc s-a făcut folosind diagrame de stare din care s-a
generat cod VHDL. Tahometrul digital este o componentă esenţială în implementarea
buclelor de control a vitezei pentru acţionările de curent continuu sau alternativ. În acest
capitol s-au proiectat, simulat şi implementat două variante de tahometru digital: după
metodele contorizării intervalului de timp dintre două impulsuri succesive şi după metoda
contorizării numărului de impulsuri într-un interval de timp (metoda CET). Ambele variante
implementate au dat rezultate foarte bune în cea ce priveşte precizia. Se poate concluziona că
tahometrul bazat pe metoda CET va fi implementată împreună cu modulul de interfaţă cu
utilizatorul recomandat fiind acolo unde nu sunt necesare performanţe dinamice deosebite dar
beneficiind totuşi de preciziei bună neafectată de modificarea domeniului de viteze. Autorul
recomandă, implementarea tahometrului prin metoda de numărare a intervalului dintre două
fronturi crescătoare ale trenului de impulsuri, în bucla de control a vitezei unde performanţele
dinamice trebuie să fie foarte bune. În cazul celei din urmă, s-au făcut două implementări
prima optimizată pentru viteză (cu 41% resurse ocupate), a doua optimizată pentru arie (cu
19% resurse ocupate). În cazul variantei bazate pe metoda CET în plus faţă de măsurarea
vitezei fiind integrate şi blocuri pentru conversia binar-BCD şi BCD – 7 segmente, astfel că la
implementare va ocupa 37% din resursele FPGA. Având în vedere performanţele dinamice
foarte bune şi eroarea de măsurare mică, se poate concluziona că s-a reuşit implementarea cu
succes în FPGA a unui tahometru digital performant, în special cel bazat pe metoda numărări
intervalului de timp dintre două impulsuri succesive. Acest tip de tahometru pentru a avea o
precizie acceptabilă necesită o frecvenţă de lucru mare, în special pentru viteze mari ale
motorului, a se observa distribuţia erorii în funcţie de viteză. În acest caz implementarea
acestui tip de tahometru într-un circuit FPGA care lucrează la frecvenţa de 50Mhz este de
dorit, făcându-l astfel adecvat pentru închiderea buclei de viteză la motoarele BLDC. Un alt
obiectiv atins al acestui capitol a constat în proiectarea cu blocuri System Generator şi
analizarea comparativă prin simulare a mai multor variante de controlere: P, PI, PID, PID-IIR.
Pentru a avea o referinţă s-a realizat şi implementarea cu blocuri Simulink a relaţiei generale
ce descrie controlerul PID clasic. Analizând formele de undă rezultate se poate observa
răspunsul aproape similar în cazul controlerului modelat cu blocuri System Generator
comparativ cu cel modelat cu blocuri Simulink. Se observă că între răspunsul sistemului
controlat PI faţă de cel controlat PID nu există diferenţe semnificative de eroare staţionară,
concluzia fiind că, în cazul motorului BLDC este suficient controlul PI, mai ales că nu apare
nici un suprareglaj al sistemului. În funcţie de precizia (număr de biţi) controlerului PI
implementarea formei clasice a acestuia în FPGA poate consuma între 18-20% din resursele
acestuia. Implementarea sub formă de arhitectură IIR consumă cu 5% mai multe resurse, iar
performanţele sunt comparabile. În concluzie, datorită performanţelor evidenţiate în
paragrafele anterioare şi datorită resurselor FPGA consumate, relativ comparabile cu cele ale
arhitecturii clasice de controler PI, noua arhitectură de controler PID-IIR poate fi o alternativă
viabilă. Pentru a se obţine un model de referinţă al comportării motorului BLDC controlat în
buclă închisă, s-a făcut mai întâi o simulare cu software în buclă. La acest tip de simulare atât
sistemul controlat cât şi sistemul de control sunt reprezentate de modele care descriu
comportamentul acestora. În finalul capitolului este prezentată întreaga buclă de control a
vitezei, proiectată cu blocuri descrise în VHDL şi blocuri System Generator. Metoda de
testare abordată este cea propusă de autor şi permite un controlul şi o monitorizare a
funcţionării motorului BLDC în timp real, validarea metodei şi totodată a funcţionării corecte
a sistemului s-a făcut prin compararea rezultatelor cu cele de la simularea cu software în
buclă. Rezultatele implementării hardware în circuitul FPGA XC3s200, a tuturor
componentelor buclei de control reprezintă 72% din capacitatea totală a circuitului. Frecvenţa
maximă a întregii bucle de control poate să fie de 150 MHz, de trei ori mai mare decât
59
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
frecvenţa la care lucrează FPGA-ul de pe placa de test Spartan 3. Astfel că, nu există riscul
apariţiei hazardului logic.
În concluzie implementarea întregii bucle de control a motorului BLDC într-un singur
circuit FPGA este posibilă şi aceasta cu performanţe foarte bune, eroarea staţionară de sub 1%
pentru viteze mari, timpi de creştere de ordinul sutelor de microsecunde şi suprareglaj 0. De
remarcat că toate aceste performanţe au fost realizate pe un circuit FPGA familia Spartan 3,
circuit cu o capacitate mică spre medie (aprox. 200.000 logice) şi cu un preţ foarte accesibil
(aprox. 15$). Având în vedere resursele hardware ocupate de un controler PI (18%) şi de
asemenea valorile reduse ale timpilor de răspuns ai sistemului controlat în buclă, există
posibilitate extinderii performanţelor acestuia şi cu o buclă de control a curentului, folosind
acelaşi circuit FPGA. De asemenea implementând în hardware numai comanda din Simulink
sau numai comanda de pe placa Spartan3 vor rămâne la dispoziţia proiectantului şi mai multe
resurse ale circuitului FPGA, astfel încât vor putea fi adăugate facilităţi suplimentare de
control pe acelaşi circuit.
În prima parte a capitolului 7 sunt prezentate concepte ale proiectării bazate pe modele,
avantajul utilizării metodei de proiectare bazate pe modele constă în faptul că: Modelele
create pot fi folosite în toate etapele începând de la definirea specificaţiilor, evaluarea prin
simulare a proiectului şi a specificaţiilor acestuia, generarea automată de cod implementabil în
hardware, testarea cu hardware în buclă şi crearea unui mediu software pentru testarea în timp
real a întregului sistem hardware; Reduce în mod substanţial timpul de dezvoltare conducând
rapid la un proiect complet, funcţional şi permite prin metode iterative, optimizarea rapidă a
parametrilor funcţionali, toate acestea realizându-se într-un mediu unificat de proiectare
simulare şi testare. Autorul contribuie la implementarea metodei de proiectare bazată pe
modele, în controlul motoarelor electrice cu circuite logice programabile şi pune bazele unei
biblioteci de componente parametrizabile, integrate în Simulink, oferind astfel suportul
necesar aplicării metodei. Autorul propune platforma System Generator/Simulink ca mediu de
dezvoltare a blocurilor parametrizabile datorită faptului că este bine integrată în mediul
Matlab/Simulink, mediu binecunoscut proiectanţilor de sisteme de control şi care împreună
cu mediul ISE Xilinx dezvoltat de producător asigură parcurgerea tuturor etapelor de
proiectare. Fiabilitatea şi viabilitatea pes care o oferă acest toolbox au fost dovedite pe
parcursul dezvoltării unui sistem complet de control, vezi capitolele 5, 6. Parametrizarea
blocurilor de control permite pe lângă setarea parametrilor uzuali: coeficienţi de amplificare,
rate de eşantionare, limite de saturaţie etc. şi alegerea rapidă a unor parametrii avansaţi:
precizie de calcul, tipul semnalului de ieşire, modalitatea de tratare a cuantizării şi a depăşirii.
Însă modificarea acestor parametrii trebuie să se facă ţinând cont de efectul pe care îl au la
implementarea hardware.
Pentru reprezentarea valorilor semnalelor la simulare, mediul Matlab-Simulink
foloseşte reprezentarea în virgulă mobilă a numerelor pe 64 de biţi. În cazul conversiei din
virgulă mobilă în virgulă fixă apar efectele de depăşire şi de cuantizare, practic la trecerea
semnalelor generate de Simulink în System Generator, nu şi invers. În general este
recomandat să se lucreze cu numere exprimate pe un număr fix de biţi bine stabilit şi care să
fie acoperitor pentru exprimarea celei mai mari valori pe care o poate lua semnalul, astfel se
evită şi fenomenul de depăşire. Tratarea efectului cuantizării se face prin trunchiere sau
rotunjire. În cazul depăşirii opţiunile pe care le are proiectantul sunt saturarea şi descărcare.
Nu trebuie scăpat din vedere faptul că în cele din urmă, în hardware semnalele nu pot fi
reprezentate decât ca şi numere întregi. În general limbajele de descriere hardware VHDL şi
Verilog, nu oferă biblioteci pentru numerele reprezentate în virgulă. Astfel că este problema
proiectantului să stocheze separat partea întreagă şi cea zecimală a unui astfel de număr şi să
urmărească modul în care se fac operaţiile cu aceste numere, respectiv poziţia virgulei.Se
60
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
61
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
62
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
Autorul a realizat practic, un sistem complet şi funcţional din punct de vedere hardware şi
software pentru controlul motoarelor BLDC cu circuite FPGA, sistem care poate funcţiona
independent, sau care poate comunica bidirecţional şi în timp real cu mediul Simulink.
Autorul a creat o bibliotecă integrabilă în Simulink, cu componente parametrizabile necesare
simulării, implementării şi testării în hardware a buclei de control pentru motoarele de
curent continuu. A fost parcurs întreg lanţul de proiectare şi executare a sistemului de
control, plecând de la motorul BLDC, trecând prin modulul de control implementat în FPGA
şi ajungând la o interfaţa grafică ce facilitează introducerea parametrilor de control,
oferindu-se soluţii practice pentru fiecare etapă. Se prezintă astfel, o soluţie completă
hardware/software de implementare a controlului maşinilor electrice cu circuite logice
programabile.
63
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
9 BIBLIOGRAFIE SELECTIVĂ
[1] Åström Karl Johan, Control System Design, Lecture notes ME 155A, Department of
Mechanical & Environmental Engineering University of California, Santa Barbara,
2002.
[2] Bose B.K., Modern Power Electronics and AC Drives, Prentice HALL PTR, 2002.
[3] Brandmayr G., Humer G., Rupp M., Automatic Co-Verification of FPGA Designs in
Simulink, procedings MBDC2005, Munich, 2005.
[4] Chan Y.F., Moallem M., Wang W., Efficient Implementation of PID Control
Algorithm using FPGA Technology, 43rd IEEE Conference on Decision and Control,
Bahamas, 2004.
[5] Chen R., Chen L, System Design Consideration for Digital Wheelchair Controller,
IEEE Transactions on Industrial Electronics, vol. 47, no. 4 2000.
[6] Fratta A., Griffero G., Niedu S., Comparative Analysis among DSP and FPGA based
Control Capabilities in PWM Power Converters, The 30th Annual Conference of the
IEEE, November2-6, Busan, Korea.
[7] Galvan E., Torralba A., Franquelo L., ASIC Implementation of a Digital Tachometer
with High Precision in Wide Speed Range, IEEE Transactions on Industrial
Electronics, vol. 43, no. 6, 1996.
[8] Gavrincea, C., Mic D., Oniga, Ş., Tisan, A., VHDL Description of PIC14000
microcontroller with pipeline, Electronic and Telecommunication Symposium – 5-th
edition, Timişoara,2002.
[9] George W. Younkin, P.E., ElectricServo Motor Equations And Time Constants,
Industrial Controls Consulting, Div., Bulls Eye Marketing, Inc, Fond du Lac,
Wisconsin, 2000.
[10] Grout I., Rzan J., O’Shea T., Configuration and debug of field programmable gate
arrays using Matlab/Simulink, Journal of Physics, Limerick, Conference Series 15,
2005.
[11] Gwaltney David A., Kenneth D. King and Keary J. Smith, Implementation of
Adaptive Digital Controllers on Programmable Logic Devices, NASA Marshall
Space Flight Center, Huntsville, 2004.
[12] International Rectifier, FPGA-based High Performance AC Servo Motor Drive –
Accelerator TM configurable servo drive design platform, Author: Toshio Takahashi,
October 2002.
[13] Mathworks, Matlab The Language of Technical Computing, Simulink for Model
Based on System Level Design (www.mathworks.com).
[14] Mic D., Micu E., Oniga S., Hardware and Software Co-Design Method for
Implementation of Closed Loop Control for Brushless DC Motor, Proceedings of 10th
International Conference on Optimization of Electrical and Electronic Equipments
OPTIM’06 May 18-19, 2006, Braşov, Romania, in coop with: IEEE (IAS, IES,
PELS), IEE, VDE, vol. 3 pp. 59-66, ISBN 973-635-705-8; 978-973-635-705-3;
[15] Mic D., Implementation of Digital Hardware Control for a Brushless DC Motor on an
FPGA Board, International Workshop of Control and Information Technologies,
Ostrava, ISBN 80-248-0906-0, 2005.
[16] Mic D., Micu E., Oniga S., Gavrincea C., The FPGA Implementation of a Digital
Controller as a Digital Filter, Buletinul Ştinţific al Universităţii “Politehnica” din
Timişoara, Transaction on Electronics and Telecomunications, Tom 49(63), Fascicola
1, 2004.
64
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
[17] Mic D., S. Oniga, C. Gavrincea, A. Tisan, A. Buchman, Survey of digital tehniques
and circuits employed in motion control, Buletinul Ştiinţific, Seria C, Volumul X,
Fascicola Electronică, Electrotehnică, Automatizări, Simpozionul Ştiinţific Naţional,
Baia Mare, 8 – 9 Mai 2003, pp. 39 – 44. ISSN 1224-3272;
[18] Mic D., Implementation with FSM of some algorithms for control part of the I2C
controller, International Computer Science Conference microCAD 2002, Miskolc,
Hungary, 7-8 March 2002, Section G.
[19] Mic D., Oniga S., Contribution Regarding the VHDL Description of a Simulated
RAM Memory Used for Microprocessor Testing, Buletinul Ştiinţific Seria C Volumul
IX, Fascicola Electronică, Electrotehnică, Automatizări, Simpozionul Ştiinţific
Naţional, Baia Mare, 15-16 Mai 2001, pp. 77-82. ISSN 1224-3272.
[20] Mic D., Implementation of Stepper Motor Controller in a XILINX FPGA, Buletin
Ştinţific seria C volumul IX, Fascicola Electronica, Electrotehnica, Automatizări,
Simpozionul Stintific National, Baia Mare, 15-16 Mai 2001, pp 83-88.
[21] Mic D., Oniga S., A Study Regarding the Implementation with VHDL of a Simulated
Memory Used for Testing a Microprocessor, The 6th International Symposium for
Design and Technology for Electronic Modules - SIITME '00, Bucharest, Romania,
21-24 Sept. 2000, pp. 132-135.
[22] Mic D., Oniga Ş., Proiectare asistată cu circuite logice programabile, Editura
Risoprint, Cluj Napoca , 2002.
[23] Miller T.J.E., Brushless Permanent Magnet and Reluctance Motor Drives, Clarndon
Press OXFORD, 1989.
[24] Mulpur A., Galijasevic Z., Model based Design Shortens Development Time of
Motor Control Applications, The MathWorks Inc, Embedded Technology Journal,
2006.
[25] Omar A., Rahim N., Mekhilef S., Three Phase Synchronous PWM for Flyback
Converter with Power Factor Correction Using FPGA ASIC Design, IEEE
Transactions on Industrial Electronics, vol. 51, nr. 1, 2004.
[26] Oniga S., Sistem Senzorial pentru recunoaşterea gesturilor unei mâini utilizând reţele
neuronale implementate în FPGA, Teză de doctorat, Universitatea Politehnică
Timişoara, 2005.
[27] Oniga, S., Tisan A., Mic D., A. Buchman , Hand Postures Recognition System Using
Artificial Neural Networks Implemented in FPGA, 30th ISSE 2007 Conference
Proceedings, Emerging Technologies for Electronics Packaging, Technical University
of Cluj-Napoca, Cluj-Napoca, ROMANIA, May 9-13, 2007, pag 507- 512, IEEE
Catalog Number: 07EX1780C, ISBN: 1-4244-1218-8, 1-4244-1218-8/07/$25.00
©2007 IEEE;
[28] Oniga S., Tiponuţ V., Buchman A., Mic D., Adaptive Interface Based on FPGA
implemented Artificial Neural Network, Scientific Bulletin of the Politehnica
University of Timişoara, Tomul 49(63), Fascicola 1, 22-23 octombrie 2004, pp. 236-
240. ISSN 1583-3380;
[29] Oniga S., Mic D., Application possibilities of a development board with FPGA in
signal processing, International Computer Science Conference microCAD 2001,
Miskolc, Hungary, 1-2 March 2001, Section G.
[30] Oniga St., Mic D., Some Aspects Regarding VHDL Description for Program
Memory Used in Functional Simulation of Microcontroler, The 6th International
Symposium for Design and Technology for Electronic Modules - SIITME '00,
Bucharest, Romania, 21-24 Sept. 2000, pp. 135-139.
65
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
[31] Osama M., Liu S., Liu Z., A Phase Variable Model of BLDC based on Finite Element
Analysis and its Coupling with External Circuits, IEEE Transactions on Magnetics,
vol. 41, no. 5, 2005.
[32] Pragasan p., Krishnan R., Modeling of Permanent Magnet Motor Drives, IEEE
Transaction on Industrial electronics, vo. 35, no 4, 1988.
[33] Prodic, A. Maksimovic, D., Design of a Digital PID Regulator Based on Look Up
Tables for Control of High Frequency DC-DC Converters, Computers in Power
Electronics, IEEE Workshop, 2002.
[34] Sanvido M., Cechtickz V., Testing Embedded Control Systems Using Hardware In
The Loop Simulation and Temporal Logic, 15th Triennial World Congress, Barcelona,
2002.
[35] Shanblatt M., Foulds B., A Simulink to FPGA Implementation Tool for Enhanced
Design Flow, IEEE Internation conferences on Microelectronic Systems Education,
2005.
[36] Sokira T.J., W. Jaffe, Brushless DC Motors Electronic Comutation and Controls, Tab
Books Inc.
[37] Tisan A., Oniga S., Gavrincea C., D. Mic, A Study Regarding the Implementation
with VHDL of a Multiple Clock Gating Scheme for Low Power RTL Design,
Symposium of Electronics and Telecommunications, - Fifth Edition – Etc 2002,
September, 19-20, 2002, Timişoara, România, pp. 53-56. ISSN 1224-6034;
[38] Toshio Takahashi, International Rectifier, New Digital Hardware Control Method for
High Performance AC Servo Motor Drive – Accelerator Servo Drive Development
Platform for Military Application, Military Electronics Conference, 2002.
[39] Vasarhelyi J., Imecs M., Szabo C., Incze I., Performances of Module Library for
Vector Control using Reconfigurable Hardware, http://mazsola.iit.uni-
miskolc.hu/mazsola/ M.publications, 2002.
[40] Visser P. Groothuis M, and others, FPGA as versatile configurable I/O devices in
Hardware in the Loop Simulation, RTSS Lisbon, December 2004.
[41] Werner L., Control of Electric Drives, Editura Springer 1997.
[42] Xilinx Inc., - Nabeel Shirazi, Jonathan Ballagh, Put Hardware in the Loop with Xilinx
System Generator for DSP, Fall 2003.
[43] Xilinx Inc., Spartan-3 FPGA Family, Complete Data Sheet, DS099, 2006.
[44] Xilinx Inc., System Generator for DSP (www.xilinx.com).
[45] Xilinx Inc., FPGA Motor Control Reference Design, AN xapp808, 2005.
[46] Yong-Ho Y., Deok-Kyu K., Tae-Won L., You-Young C., Chung-Yuen W., Speed
Control System of PM Brushless DC Motor Using 2 Hall-ICs, 30th Annual
Conference of IEEE Volume 2, Issue , 2-6 Nov. 2004 Page(s): 1374 - 1379 Vol. 2.
66
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
In this thesis author propose a rapid and new method to design and optimize the
electric motor control using Field Programmable Gate Array (FPGA). The elaborated
designing algorithm takes advantage of the unification of ISE Xilinx digital designing
environment with Matlab/Simulink simulation and testing environment, through System
Generator toolbox. This result in a faster and efficient design flows having the following
stages: design the model, evaluate the performance, generate and co-simulate VHDL (VHSIC
- Hardware Description Language) code and finally test the system with hardware in the loop.
So that, a unified testing software environment for electric motors operation and hardware
implemented control algorithms is obtained and arise the opportunity of optimization the
motor operation in a real time environment by iterative tuning of the control loop parameters.
Extending System Generator toolbox library with specific electric motors control
blocks (PWM, PID, Commutation blocks), a hierarchical control system design method is
achieved too, based on parameterized models.
A software and hardware operational system was realized using programmable logic
circuits for Brushless DC (BLDC) motor control. The system is able to operate independently
or to communicate in real time with Matlab/Simulink environment.
67
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
CURRICULUM VITAE
DATE PERSONALE:
Numele: MIC
Prenumele: DANIEL
Data naşterii: 31 august 1975
Locul naşterii: Baia Mare, Maramureş
Stare civilă: căsătorit, un copil
Adresa locului de muncă: Oficiul Judeţean de Telecomunicaţii Speciale Maramureş, Baia
Mare, str. 22 Decembrie, nr. 37
Adresă domiciliu: Baia Mare, str. Oituz, nr.2/18, Maramureş
ACTIVITATE ŞTINŢIFICĂ:
Cărţi publicate: 1, autor principal, cu titlul: “Proiectare asistată cu circuite Logice
Programabile”, Editura Risoprint 2002.
Articole publicate: 19 (din care 7 la conferinţe internaţionale).
Proiecte şi studii de cercetare: 11.
68
Contribuţii la dezvoltarea unui mediu integrat hardware-software
pentru controlul motoarelor electrice cu circuite logice programabile
CURRICULUM VITAE
PERSONAL DATA:
Surname: MIC
First name: DANIEL
Date of birth: 31 august 1975
Place of birth: Baia Mare, Maramureş
Civil status: married, one child
Work address: Special Telecommunication Service Maramureş County, Baia Mare, 22
December no. 37 street.
Home address: Baia Mare, Oituz, 2/18 street, Maramureş.
SCIENTIFIC ACTIVITIES:
Published books: 1, first author, title: “Assisted Designing with Programmable Logic
Circuits”, Risoprint, 2002.
Scientific papers: 19 (7 at International Conferences)
Research Studies and Projects: 11
OTHERS: 2 Tempus grants, at the National Technical University of Athens, Greece and
the Catholic University Leuven, 1 CEEPUS grant at the Technical University
of Varna, Bulgaria.
69