SSN zastosowana do estymacji prędkości obrotowej obcowzbudnego silnika DC na podstawie wartości prądu i
napięcia.
1. Zbudować model silnika DC
2. Wygenerować wzorce uczące
Rejestracje (To Workspace) jako macierze z określonym czasem
próbkowania.
3. Nauczyć SSN odtwarzania prędkości obrotowej
clear;
sim('model_dc');
%skalowanie wartości
kUt=1/250;
kIt=1/50;
kn=1/3500;
R(:,1) = R(:,1).*kUt; %napięcie
R(:,2) = R(:,2).*kIt; %prąd twornika
R(:,3) = R(:,3).*kn; %prędkość obrotowa
%wektory uczące
t = R(:,4)'; %czas
X = R(:,1:2)'; %napięcie / prąd twornika
Y = R(:,3)'; %prędkość obrotowa
In = 2; %ilość wejść sieci
PR = zeros(In,2);
PR(1:In,1) = -1;
PR(1:In,2) = 1;
SizeLayers = [4 1];
TransferLayer = {'tansig' 'purelin'};
net = newff(PR,SizeLayers,TransferLayer);
net.trainFcn = 'trainlm';
net.trainParam.epochs = 500;
net.trainParam.min_grad = 0.00005;
net.trainParam.show = 10;
net.trainParam.lr = 0.65;
net.trainParam.goal = 0.0000005;
net = train(net,X,Y);
T = sim(net,X);
%deskalowanie wartości
T = T./kn; %napięcie
Y = Y./kn; %prędkość obrotowa
plot(t,Y,t,T); grid;
%gensim(net,ti);
4. Przeprowadzić badania SSN w układzie zamkniętym
M
TG
=
~
~
RI
RN
(-)
(-)
Zamknięty układ regulacji prędkości obrotowej
M
TG
=
~
~
RI
RN
(-)
(-)
SSN
Bezczujnikowy
zamknięty
układ
regulacji
prędkości
obrotowej