Laboratorium Podstaw Automatyki
1
Laboratorium nr 2
Przykład analizy silnika elektrycznego prądu stałego
z magnesem trwałym
1. Cele ćwiczenia
•
zapoznanie się z zasadą działania silnika elektrycznego prądu stałego,
•
zapoznanie się ze sposobami tworzenia modeli silnika elektrycznego w postaci: równań róŜniczkowych,
równań stanu i wyjścia, schematu blokowego i transmitancji operatorowej,
•
wyznaczenie odpowiedzi skokowej silnika w Matlabie/Simulinku,
•
wyznaczenie odpowiedzi silnika na sygnały prostokątne w Matlabie/Simulinku.
2. Wprowadzenie teoretyczne
2.1. Wstęp
Silniki elektryczne prądu stałego są bardzo często stosowanymi elementami wykonawczymi w
układach regulacji. Podstawowymi zaletami tych silników są: duŜy moment obrotowy, dobra sprawność oraz
małe wymiary. Wadami są natomiast: iskrzenie (zakłócenia przemysłowe) i zuŜywanie się szczotek
komutatora. W ciągu ostatnich kilkudziesięciu lat wprowadzono na rynek szereg silników o specjalnej
konstrukcji, charakteryzujących się bardzo dobrymi właściwościami dynamicznymi.
Schematycznie budowę silnika prądu stałego z magnesem trwałym przedstawiono na rysunku 2.1.
Moment obrotowy w silnikach elektrycznych powstaje na skutek oddziaływania między zewnętrznym polem
magnetycznym, a polem magnetycznym
powstającym wokół przewodnika, przez który
płynie prąd. W silnikach prądu stałego małej
mocy
zewnętrzne
pole
magnetyczne
wytwarzane jest zazwyczaj przez magnesy
trwałe,
umieszczone
w
nieruchomej
obudowie
silnika
zwanej
stojanem.
Znajdujący się w polu magnetycznym stojana
wirnik zawiera uzwojenia składające się z
wielu ramek przewodów połączonych z
komutatorem.
Zazwyczaj
uzwojenia
te
nawinięte
są
na
rdzeniu
z
materiału
ferromagnetycznego. W wyniku współdziałania strumienia stojana i prądu przepływającego w uzwojeniach
wirnika powstaje wspomniany wcześniej moment obrotowy. Aby moment obrotowy działający na wirnik był
maksymalny, wektory strumienia magnetycznego stojana i wirnika powinny być względem siebie
prostopadłe. Zapewnia to komutator, który przełącza kolejne ramki uzwojenia wirnika, powodując
odpowiednie zmiany kierunku przepływającego prądu. Napięcie zasilające komutator doprowadzane jest
przez szczotki, wykonane ze specjalnie spreparowanego węgla. W silnikach tego typu obwodem sterowania
jest zawsze obwód wirnika. Zmiany napięcia zasilającego obwód sterowania wywołują zmiany momentu
obrotowego a tym samym, przy określonym momencie obciąŜenia wirnika, zmianę prędkości kątowej
wirnika.
Rys. 2.1. Budowa silnika prądu stałego z magnesem trwałym
magnes trwały
magnes trwały
uzwojenia
wirnika
szczotka
szczotka
komutator
łoŜyska
wał wirnika
Prędkość
kątowa
wirnika ω
s
Laboratorium Podstaw Automatyki
2
2.2. Model matematyczny silnika zapisany w postaci równań róŜniczkowych
Tworząc model silnika naleŜy zatem zwrócić uwagę na znalezienie zaleŜności pomiędzy
napięciem zasilającym silnik (U
z
) a prędkością kątową silnika (
ω
s
). Schemat zastępczy silnika
prądu stałego, sprowadzonego do obwodu wirnika, pokazano na rysunku 2.2. RozwaŜając osobno
elektryczne i mechaniczne parametry obwodu wirnika moŜna napisać dwa równania modelujące
jego działanie.
Parametry elektryczne
Wielkości elektryczne występujące na schemacie charakteryzują odpowiednio:
U
z
– napięcie zasilające wirnik,
i
w
– prąd płynący w uzwojeniach wirnika,
R
w
– rezystancja zastępcza uzwojeń wirnika,
L
w
– indukcyjność zastępcza uzwojeń wirnika,
E – siła elektromotoryczna indukcji,
ω
s
– prędkość kątowa wirnika.
Na podstawie schematu zastępczego oraz II-go prawa Kirchhoffa moŜna napisać równanie
elektryczne silnika
E
U
U
U
w
w
L
R
z
+
+
=
Napięcie na rezystancji uzwojeń wirnika jest proporcjonalne do prądu przez niego płynącego
w
w
R
i
R
U
w
=
Napięcie odniesione do indukcyjności wirnika jest proporcjonalne do zmian prądu przez nią
płynącego (straty w obwodzie magnetycznym zostały tutaj pominięte)
dt
di
L
U
w
w
L
w
=
Gdy wirnik wykonuje ruch obrotowy, w jego uzwojeniach indukowana jest siła elektromotoryczna
indukcji (SEM), której wartość jest proporcjonalna do prędkości kątowej wirnika
s
e
k
E
ω
=
,
gdzie
k
e
–stała elektryczna, zaleŜna m.in. od strumienia
magnetycznego stojana oraz liczby zwojów w uzwojeniach
wirnika.
Podstawiając kolejne składowe napięcia
U
z
do równania (2.1), otrzymamy
s
e
w
w
w
w
z
k
dt
di
L
i
R
U
ω
+
+
=
Rys. 2.2. Schemat zastępczy obwodu wirnika silnika prądu stałego
U
z
E
J
B
M
s
M
obc
ω
s
R
w
L
w
i
w
Laboratorium Podstaw Automatyki
3
Parametry mechaniczne
Wielkości mechaniczne występujące na schemacie charakteryzują odpowiednio:
M
s
– moment obrotowy wirnika,
ω
s
– prędkość kątową wirnika,
B – współczynnik tarcia lepkiego zredukowany do wału wirnika,
J – moment bezwładności zredukowany do wału wirnika,
i
w
– prąd płynący w uzwojeniach wirnika,
M
obc
– stały moment obciąŜenia silnika.
Moment obrotowy wirnika, wykorzystywany do pokonania momentów przeciwstawiających się
jego ruchowi moŜna zapisać jako
obc
v
a
s
M
M
M
M
+
+
=
(6.3)
Zakładając, Ŝe strumień magnetyczny stojana ma wartość stałą, moment obrotowy wirnika,
proporcjonalny do prądu płynącego przez wirnik, moŜemy zapisać jako
w
m
s
i
k
M =
gdzie
k
m
– stała mechaniczna, zaleŜna m.in. od strumienia
magnetycznego stojana oraz liczby zwojów w uzwojeniach
wirnika.
Moment związany z przyspieszeniem kątowym wirnika moŜna zapisać jako
dt
d
J
M
s
a
ω
=
Moment związany z oporami ruchu wirnika moŜna zapisać jako
s
v
B
M
ω
=
Podstawiając kolejne składowe momentu
M
s
do równania (6.3), otrzymamy
obc
s
s
w
m
M
B
dt
d
J
i
k
+
+
=
ω
ω
(6.4)
Przekształcając równania (6.2) i (6.4) otrzymujemy układ równań róŜniczkowych będący modelem
silnika:
……………………………...........................
(6.5)
Rys. 2.2. Schemat zastępczy obwodu wirnika silnika prądu stałego
U
z
E
J
B
M
s
M
obc
ω
s
R
w
L
w
i
w
Laboratorium Podstaw Automatyki
4
2.3 Model matematyczny silnika zapisany w postaci równań stanu i wyjścia
Przyjmując jako zmienne stanu prąd płynący w uzwojeniach wirnika (
i
w
) oraz prędkość kątową
wirnika (
ω
s
) moŜemy zapisać model silnika w postaci równań stanu i wyjścia. Dokonujemy
zamiany zmiennych
s
obc
z
s
w
y
M
u
U
u
x
i
x
ω
ω
=
=
=
=
=
2
1
2
1
otrzymując układ równań
Równania (6.6) zapisujemy w postaci macierzowej
+
=
+
=
Du
Cx
y
Bu
Ax
x
&
lub po rozpisaniu
czyli:
Laboratorium Podstaw Automatyki
5
Model matematyczny silnika zapisany
w postaci schematu blokowego
Stosując przekształcenie Laplace’a do równań (6.5) otrzymamy
Przekształcając uzyskane równania, przy załoŜeniu zerowych warunków początkowych, otrzymamy
Na podstawie powyŜszych równań moŜna narysować schemat blokowy silnika, przedstawiony na
rysunku 6.3.
U
z
(s)
y
-
-
I
w
(s)
Ω
Ω
Ω
Ω
s
(s)
M
obc
(s)
Część elektryczna
Część mechaniczna
Rys. 6.3. Schemat blokowy silnika prądu stałego
M
s
(s
)
E(s)
Laboratorium Podstaw Automatyki
6
Model matematyczny silnika zapisany
w postaci transmitancji operatorowej
Przyjmując jako wielkość wyjściową prędkość kątową wirnika (
ω
s
) a jako wielkość wejściową
napięcie zasilające wirnik (
U
z
) oraz rozpatrując silnik bez obciąŜenia (
M
obc
= 0) moŜemy
wyznaczyć transmitancję tego układu, dokonując kolejnych modyfikacji powyŜszego schematu
blokowego (rysunek 6.4).
Na podstawie schematu blokowego z rysunku 6.4 transmitancję
G(s)
moŜna zapisać jako
( )
( )
( )
(
)(
)
(
)(
)
B
sJ
R
sL
k
k
B
sJ
R
sL
k
s
U
s
s
G
w
w
e
m
w
w
m
z
s
+
+
+
+
+
=
Ω
=
1
MnoŜąc licznik i mianownik przez
(
)(
)
B
sJ
R
sL
w
w
+
+
otrzymujemy
( )
(
)(
)
e
m
w
w
m
k
k
B
sJ
R
sL
k
s
G
+
+
+
=
Przekształcając dalej otrzymamy
( )
(
)
e
m
w
w
w
w
m
k
k
B
R
s
BL
J
R
s
JL
k
s
G
+
+
+
+
=
2
Rys. 6.4. Przekształcony schemat blokowy silnika prądu stałego
U
z
(s)
-
Ω
Ω
Ω
Ω
s
(s)
Laboratorium Podstaw Automatyki
7
Model matematyczny silnika zapisany
w postaci transmitancji operatorowej
Zazwyczaj współczynnik tarcia
B
jest niewielki, w efekcie czego przyjmujemy, Ŝe
R
w
J >> BL
w
oraz
k
e
k
m
>> R
w
B
. Transmitancję silnika
G(s)
zapisujemy wtedy w postaci uproszczonej
( )
e
m
w
w
m
k
k
Js
R
s
JL
k
s
G
+
+
=
2
Dzieląc licznik i mianownik przez
k
m
k
e
otrzymujemy
( )
1
1
2
+
+
=
s
k
k
J
R
s
R
L
k
k
JR
k
s
G
e
m
w
w
w
e
m
w
e
Podstawiając
e
m
w
m
k
k
JR
T =
,
w
w
e
R
L
T =
oraz
e
k
K
1
=
otrzymujemy
( )
( )
( )
1
2
+
+
=
Ω
=
s
T
s
T
T
K
s
U
s
s
G
m
e
m
z
s
Przyjmując zatem prędkość kątową (
ω
s
) jako wielkość wyjściową, uzyskano transmitancję silnika w
postaci
członu II-go rzędu
. Mechaniczna stała czasowa
T
m
jest zazwyczaj co najmniej o rząd
wielkości większa od elektrycznej stałej czasowej
T
e
. W takim przypadku stałą
T
e
moŜna pominąć a
silnik staje się
członem inercyjnym I-go rzędu
.
( )
( )
( )
1
+
=
Ω
=
s
T
K
s
U
s
s
G
m
z
s
JeŜeli wielkością wyjściową jest
przemieszczenie kątowe wału wirnika (
α
α
α
α
s
)
, który moŜemy
wyznaczyć po scałkowaniu prędkości kątowej wirnika (
( )
( )
s
s
s
Ω
=
α
), transmitancja G(s)
przyjmie postać
( )
( )
( )
(
)
1
+
=
=
s
T
s
K
s
U
s
s
G
m
z
s
α
(6.11)
W tym przypadku silnik jest
członem całkującym rzeczywistym
(tzn. szeregowym połączeniem
członu całkującego i inercyjnego I-go rzędu).
Laboratorium Podstaw Automatyki
8
Wyznaczenie odpowiedzi skokowej silnika
w Matlabie/Simulinku
Odpowiedź skokową silnika
wyznaczono w oparciu o dwie metody. W pierwszej metodzie
posłuŜono się transmitancją operatorową silnika (6.8)
( )
(
)
e
m
w
w
w
w
m
k
k
B
R
s
BL
J
R
s
JL
k
s
G
+
+
+
+
=
2
PoniŜej przedstawiono źródło programu napisanego w Matlabie, w którym zamodelowano
transmitancję G(s) i wyznaczono odpowiedź skokową silnika przy pomocy funkcji step.
clear all, close all
% Zdefiniowanie parametrów modelu
Rw = 2; Lw = 0.1; ke = 0.1;
J = 0.1; B = 0.5; km = 0.1;
% Wyznaczenie transmitancji operatorowej silnika
licz = km;
mian = [J*Lw Rw*J + B*Lw Rw*B + km*ke];
system = tf(licz,mian);
% Określenie parametrów odpowiedzi skokowej
t = 0:0.02:1.4;
odp=step(system,t);
% Wykreślenie charakterystyki skokowej
plot(t,odp,'ro'); grid
xlabel('czas (s)'),ylabel('predkosc katowa ω
s
(rad/s)')
title('Odpowiedz skokowa silnika pradu stalego')
W drugiej metodzie na podstawie schematu blokowego silnika, pokazanego na rysunku 6.3,
zbudowano odpowiadający mu schemat w Simulinku, przedstawiony na rysunku 6.5, zakładając, Ŝe
M
obc
=0
. Sygnałem wejściowym jest sygnał skoku jednostkowego.
km
stala
mechaniczna
ke
stala
elektry czna
1
J.s+B
Transmitancja
czesci mechanicznej
1
Lw.s+Rw
Transmitancja
czesci elektry cznej
Skok
jednostkowy
Predkosc
katowa
wirnika
(ws)
Rys. 6.5. Schemat blokowy silnika zbudowany w Simulinku
Laboratorium Podstaw Automatyki
9
Wyznaczenie odpowiedzi skokowej silnika
w Matlabie/Simulinku
Aby móc przeprowadzić numeryczną symulację działania silnika naleŜy zdefiniować jego
parametry (współczynniki i stałe). ZałóŜmy, Ŝe:
R
w
= 2 Ω,
J = 0.1 kgm
2
/s
2
,
L
w
= 0.1 H,
B = 0.5 Nms/rad,
k
e
= 0.1 Vs/rad,
k
m
= 0.1 Nm/A,
Przed uruchomieniem symulacji naleŜy powyŜsze parametry wprowadzić do przestrzeni roboczej
Matlaba, wpisując:
>> Rw=2; Lw=0.1; ke=0.1; J=0.1; B=0.5; km=0.1;
W efekcie wykonania programu w Matlabie i uruchomienia symulacji w Simulinku otrzymano
przebiegi pokazane na rysunku 6.6.
EMBED Word.Picture.8
0
0.2
0.4
0.6
0.8
1
1.2
1.4
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
czas (s)
p
rę
d
k
o
ś
ć
k
ą
to
w
a
ω
s
(
ra
d
/s
)
Jak widać przebiegi uzyskane zaprezentowanymi metodami są identyczne, co potwierdza
przydatność zarówno Matlaba, jak i Simulinka do symulacji działania układów. Charakter
otrzymanych przebiegów wskazuje, Ŝe silnik przy tak przyjętym modelu, rzeczywiście jest członem
II-go rzędu.
Rys. 6.6. Odpowiedź skokowa silnika prądu stałego, uzyskana przy pomocy:
a) transmitancji operatorowej silnika – kółka
b) modelu silnika wyznaczonego w Simulinku – linia
Laboratorium Podstaw Automatyki
10
Wyznaczenie odpowiedzi silnika na sygnały prostokątne
w Matlabie/Simulinku
Na podstawie schematu blokowego silnika, pokazanego na rysunku 6.3, zbudowano odpowiadający
mu schemat w Simulinku, przedstawiony na rysunku 6.7. Aby móc przeprowadzić numeryczną
symulację działania silnika naleŜy zdefiniować jego parametry (współczynniki i stałe). ZałóŜmy jak
poprzednio, Ŝe:
R
w
= 2 Ω,
J = 0.1 kgm
2
/s
2
,
L
w
= 0.1 H,
B = 0.5 Nms/rad,
k
e
= 0.1 Vs/rad,
k
m
= 0.1 Nm/A,
oraz, Ŝe zarówno sygnał wejściowy jak i moment obciąŜenia są sygnałami prostokątnymi o
odpowiednich parametrach
U
z
= 10 V,
M
obc
= 0.2 Nm
Przed uruchomieniem symulacji naleŜy powyŜsze parametry wprowadzić do przestrzeni roboczej
Matlaba, wpisując:
>> Rw=2; Lw=0.1; ke=0.1; J=0.1; B=0.5; km=0.1;
Po uruchomieniu symulacji na wykresach, pokazanych na rysunku 6.8 otrzymujemy przebiegi:
napięcia zasilającego wirnik (U
z
), prądu płynącego przez wirnik (i
w
), momentu obciąŜenia silnika
(M
obc
) oraz prędkości kątowej wirnika (
ω
s
) w funkcji czasu.
Rys. 6.7. Schemat blokowy silnika zbudowany w Simulinku
Laboratorium Podstaw Automatyki
11
Wyznaczenie odpowiedzi silnika na sygnały prostokątne
w Matlabie/Simulinku
Po uruchomieniu symulacji na wykresach, pokazanych na rysunku 6.8 otrzymujemy przebiegi:
napięcia zasilającego wirnik (U
z
), prądu płynącego przez wirnik (i
w
), momentu obciąŜenia silnika
(M
obc
) oraz prędkości kątowej wirnika (
ω
s
) w funkcji czasu.
0
1
2
3
4
5
6
7
8
0
5
10
U
z
(
V
)
0
1
2
3
4
5
6
7
8
0
5
i
w
(
A
)
0
1
2
3
4
5
6
7
8
0
0.1
0.2
M
o
b
c
(
N
m
)
0
1
2
3
4
5
6
7
8
-0.5
0
0.5
1
czas (s)
ω
s
(
ra
d
/s
)
2.5
Rys. 6.8. Przebiegi uzyskane podczas symulacji: a) napięcie zasilające wirnik (U
z
),
b) prąd płynący przez wirnik (i
w
), c) moment obciąŜenia silnika (M
obc
),
d) prędkość kątowa wirnika (ω
s
)
a)
b)
c)
d)
Laboratorium Podstaw Automatyki
12
Wyznaczenie odpowiedzi silnika na sygnały prostokątne
w Matlabie/Simulinku
Symulację działania silnika przeprowadzono takŜe wykorzystując jego model zapisany w postaci
równań stanu i wyjścia. Zakładając, Ŝe moment obciąŜenia M
obc
= 0, oraz warunki początkowe
=
20
10
0
0
x
x
i
s
w
ω
oraz przyjmując oznaczenia
s
z
s
w
y
U
u
x
i
x
ω
ω
=
=
=
=
1
2
1
na podstawie równań (6.7) otrzymujemy
[ ]
[
]
=
+
−
−
−
=
2
1
2
1
2
1
1
0
0
1
x
x
y
u
L
x
x
J
B
J
k
L
k
L
R
x
x
w
m
w
e
w
w
&
&
Schemat blokowy układu pokazano na rysunku 6.9. Blok „
Model silnika w postaci równań stanu
i wyjścia”, w którym zapisano parametry modelu układu, przedstawiono na rysunku 6.10.
Uz
Predkosc katowa
wirnika (ws)
Napiecie
zasilajace (Uz)
x' = Ax+Bu
y = Cx+Du
Model silnika w postaci
rownan stanu i wy jscia
Rys. 6.9. Schemat blokowy silnika zbudowany w Simulinku
Rys. 6.10. Parametry modelu silnika
Laboratorium Podstaw Automatyki
13
Wyznaczenie odpowiedzi silnika na sygnały prostokątne
w Matlabie/Simulinku
Aby móc przeprowadzić numeryczną symulację działania silnika naleŜy zdefiniować jego
parametry (współczynniki i stałe). ZałóŜmy jak poprzednio, Ŝe:
Rw = 2 Ω,
J = 0.1 kgm
2
/s
2
L
w
= 0.1 H,
B = 0.5 Nms/rad
k
e
= 0.1 Vs/rad
k
m
= 0.1 Nm/A
U
z
= 10 V,
oraz, Ŝe warunki początkowe
x
10
= 5;
x
20
= 0.5;
Przed uruchomieniem symulacji naleŜy, jak poprzednio powyŜsze parametry wprowadzić do
przestrzeni roboczej Matlaba, wpisując
>>
Rw=2; Lw=0.1; ke=0.1; J=0.1; B=0.5; km=0.1; x10=5; x20=0.5;
Po uruchomieniu symulacji na wykresach, pokazanych na rysunku 6.11, otrzymujemy przebiegi:
napięcia zasilającego wirnik (
U
z
) oraz prędkości kątowej wirnika (
ω
s
) w funkcji czasu.
EMBED Word.Picture.8
0
1
2
3
4
5
6
7
8
0
2
4
6
8
10
12
U
z
(
V
)
0
1
2
3
4
5
6
7
8
0
0.2
0.4
0.6
0.8
1
czas (s)
ω
s
(
ra
d
/s
)
1.2
Przebiegi te moŜna równieŜ uzyskać wykorzystując funkcję
plot, wpisując w Matlabie:
>>
plot (Uz(:,1),Uz(:,2));
>>
ylabel(‘Uz (V)’);
>> plot (ws(:,1),ws(:,2));
>>
xlabel(‘czas (s)’); ylabel (‘ws (rad/s)’);
Rys. 6.11. Przebiegi uzyskane podczas symulacji:
a) napięcie zasilające wirnik (U
z
), b) prędkość kątowa wirnika (ω
s
)
a)
b)