Documente Academic
Documente Profesional
Documente Cultură
Introducere
Una din problemele importante care se pun în legătură cu comanda sistemelor de acţionare
electrică şi tipul motorului de acţionare este problema reglării vitezei sau poziţiei. Dacă până nu
demult, reglarea vitezei se făcea încă manual, în prezent comanda şi reglarea vitezei maşinilor
electrice impun un grad înalt de automatizare pentru sistemele de acţionare electrică.
Utilizarea unui impuls cu modulaţie în lăţime (PWM) este o tehnică puternică pentru comanda
circuitelor analogice, care folosesc pentru ieşire un procesor digital. Impulsul cu modulaţie în lăţime
este folosit într-o largă varietate de aplicaţii, începând de la măsurări şi comunicaţii până la
comanda de putere şi conversie.
Formele de undă ale tensiunii şi curenţilor de la intrarea şi ieşirea invertoarelor care folosesc
dispozitive semiconductoare de putere se abat de la forma sinusoidală. Din acest motiv, s-a optat
pentru realizarea unor tehnici de comandă a invertoarelor mai complexe, cum ar fi construirea
formelor de undă a mărimilor electrice de interes din trepte sau pulsuri modulate în durată. În cadrul
acestor tehnici de comandă, cele mai utilizate sunt tehnicile de comandă cu pulsuri modulate în
durată (PWM).
Invertorul comandat cu ajutorul tehnicilor PWM, lucrează în general cu frecvenţă de comutaţie
constantă şi trebuie să permită modificarea valorii efective a fundamentalei tensiunii de ieşire în
limite relativ mari, cu păstrarea constantă a tensiunii de intrare.
1 T
y f ( t ) dt
T 0
Deoarece f t este o undă rectangulară, valoarea acestei funcţii este y max pentru 0 t D T
Această expresie poate fi mult simplificată dacă considerăm cazul în care y min 0 . În acest
caz se obţine următoarea relaţie pentru valoarea medie:
y D y max .
Relaţia de mai sus arată în mod evident că valoarea medie a semnalului y este direct
proporţional cu factorul de umplere D.
Regulatorul de viteză al unui motor de curent continuu
Viteza unui motor de curent continuu este direct proporţional cu tensiunea de alimentare. Dacă
se reduce tensiunea de alimentare de la 12 V la 6 V, atunci motorul va funcţiona la jumătate din
viteza nominală. Pentru a regla viteza de funcţionare a unui motor de curent continuu este necesară
introducerea între sursa de alimentare şi motor a unui regulator de viteză. Acesta are sarcina să
varieze tensiunea medie transmisă motorului. O cale simplă de reglare a tensiunii de alimentare este
să comute alimentarea motorului de la deschis la închis foarte repede. Dacă comutarea este destul
de rapidă, motorul nu sesizează aceste schimbări, ci media efectelor.
Alegerea frecvenţei bazată pe caracteristicile motorului
O cale pentru a alege frecvenţa convenabilă este aceea prin care se doreşte ca forma de undă a
curentului să fie stabilită la un procent p. Atunci se poate stabili matematic frecvenţa minimă care
realizează acest scop (stabilirea unui tensiuni care determină o anumită viteză).
În Fig. 4.22 se prezintă circuitul echivalent al motorului şi forma de undă a semnalului PWM,
care comută alimentarea motorului deschis şi închis.
T este perioada de comutare, care determină frecvenţa de comutare. Forma de undă a
curentului este dată de relaţia:
t t R
i Ie Ie L .
L
τ este constanta de timp a circuitului, care este .
R
Deci curentul i1 la momentul t =T/2 trebuie să fie cu cel puțin P% mai mic decât la t = 0 (i0).
Aceasta înseamnă că există o condiție de limitare pentru curent.
2
Limbaje de Programarea pentru Roboţi C 10
P
i1 1 i0
100
Procent P Frecvenţa
1 42 kHz
5 8.2 kHz
10 4 kHz
20 1900 Hz
50 610 Hz
3
Limbaje de Programarea pentru Roboţi C 10
Semnale PWM
Pentru a controla turaţia motoarelor de curent continuu există mai multe metode. Cea mai
simplă ar fi înserierea unui rezistor variabil in circuitul de alimentare al motorului. Prin modificarea
valorii rezistenţei se modifică tensiunea aplicată motorului.
Majoritatea microcontrolerelor pot genera semnale PWM. Pentru măsurarea timpului cât
semnalul este în 0 logic şi al timpului cât stă în 1 logic, se foloseşte un Timer.
Pentru a genera un astfel de semnal numărătorul este incrementat periodic şi este resetat la
sfârşitul fiecărei perioade a PWM-ului. Când valoarea numărătorului este mai mare decât valoarea
de referinţă, ieşirea PWM trece din starea 0 logic in starea 1 logic (sau invers).
4
Limbaje de Programarea pentru Roboţi C 10
Rulaţi programul de mai multe ori modificând timpi de alimentare, care corespund factorului
de umplere al impulsurilor PWM.
Introducere
Un servomotor este un motor de curent continuu special prevăzut cu un reductor şi echipat cu
un circuit electronic pentru a controla direcţia de rotaţie precum şi poziţia arborelui motorului.
Deoarece servomotoarele permit poziţionarea unghiulară precisă a arborelui de ieşire, ele sunt
utilizate pe scară largă în robotică şi maşini, avioane controlate prin radio (pentru a controla
mişcarea diverselor piese). În continuare se vor prezenta părţile componente ale unui servomotor,
cum funcţionează şi apoi modul de interfaţare cu un microcontroler PIC.
5
Limbaje de Programarea pentru Roboţi C 10
Noţiuni teoretice
Un servomotor este compus dintr-un motor de curent continuu, care prin intermediul unui
reductor cu roţi dinţate antrenează un ax de ieşire. În interiorul servomotorului există un circuit
electronic care controlează poziţia axului de ieşire. Pe axul de ieşire este montat un potenţiometru
cu rol de senzor de poziţie. Obiectivul utilizării unui servomotor este de a realiza poziţionarea
unghiulară exactă a unei piese.
În scopul realizării unei poziţionări unghiulare precise a arborelui de ieşire este necesară o
informare a poziţionării instantanee a arborelui, care se realizează cu ajutorul unui traductor. O cale
simplă pentru „culegerea” informaţiei este ataşarea unui potenţiometru pe arborele de ieşire. Pentru
realizarea controlului poziţiei arborelui se compară semnalul de reacţie primit de la potenţiometru
(acesta conţine poziţia curentă a arborelui) cu semnalul de intrare, care conţine informaţii despre
poziţia dorită a arborelui. rezultatul comparării este semnalul eroare. Orice diferenţă dintre valoarea
actuală (de la potenţiometru) şi valoarea dorită determină semnalul eroare care este amplificat şi
folosit pentru acţionarea motorului de curent continuu în direcţia reducerii sau eliminării erorii.
Eroare este zero atunci când arborele de ieşire ajunge în poziţia dorită. Diagrama bloc tipică pentru
un servomotor este arătată în Fig. 4.25.
Reductor
Arborele
de ieşire
Potenţio-
metru
Semnal
eroare
PWM la
convertor
Control
Amplificator PWM
Aplicaţia servomotor
Scopul aplicaţiei este alimentarea unui servomotor de curent continuu. Pentru alimentarea
servomotorului se foloseşte pinul RD6 al unui microcontroler PIC 16F877A.. Portul D trebuie setat
ca ieşire. Programul are următoarea forma scris în pseudocod:
/* Nume proiect: Aplicaţie_servo
Program pentru alimentarea unui servomotor de curent continuu.
*/
int i;
void main()
{
TRISD = 0b10111111;
while (1)
{
for (i=0;i<200;i++)
{
PORTD.F6 = 1;
Delay_us(1200);
PORTD.F6 = 0;
Delay_us(18800);
}
}
}
Rulaţi programul de mai multe ori modificând timpi de întârziere a alimentării (750, 1500,
2000, 2500 microsecunde).