Открыть Электронные книги
Категории
Открыть Аудиокниги
Категории
Открыть Журналы
Категории
Открыть Документы
Категории
Лабораторная работа № 2
Выполнили:
ст. 3-го курса
гр. УТС/б-19-1-о
Тихонов Г.О.
Принял:
Доц. Карапетьян В.А.
Севастополь, 2021
Цель работы
Исследование методов и процедур линеаризации математических моделей
динамических управляемых объектов, построение различных форм моделей линейных
стационарных систем управления и моделирование их движения. Применение средств
среды Matlab для решения таких задач. Формирование навыков профессиональной ра-
боты в системе Matlab&Simulink.
Постановка задачи
1) аналитически вручную;
2) с использованием средств среды Matlab и пакета символьных вычислений Symbolic
Math Toolbox;
3) с использованием средств среды Matlab и пакета Simulink:
− функция linmod;
− инструментарий средства Linear Analysis Tool.
Ход работы
Ручное вычисление
Для компактности, заменим некоторые уравнения переменными:
A11=Ja+mp*(La)^2;
A12=mp*(lp)^2;
A21=-mp*(La)*(lp);
A22=Jp+mp*(lp)^2;
B1=Ca+(kt*kb/Ra);
B2=(1/2)*mp*lp^2;
B4=-(1/2)*mp*(lp)^2;
B3=mp*(La)*lp;
C1=-mp*g*lp;
C2=(kt*ku)/Ra;
2
α alf
[][ ]
β
α̇
β̇
α̈
β̈
=
bet
dalf
dbet
alf
¨
bet
¨
¨ = (A22*(C2*U-dalf*(B1+B2*dalf*dbet*sin(2*bet)+B2*dbet*sin(bet)+
alf
B3*dbet^2*sin(bet))))/((A11+A12*sin(bet)^2)-(A22*cos(bet))^2)
¨ = (((-A21*cos(bet))*(C2*U-dalf*(B1+B2*dalf*dbet*sin(2*bet)+
bet
B2*dbet*sin(bet)+B3*dbet^2*sin(bet))))/(A22*(A11+A12*sin(bet)^2)
-(A21*cos(bet))^2))-(((A11+A12*sin(bet)^2)*B4*dalf^2*sin(2*bet)+
Cp*dbet-C1*sin(bet))/(A22*(A11+A12*sin(bet)^2)-
(A21*cos(bet))^2))
1 A 22 − A 21∗cos β
H=
[
detM − A 21∗cos β A 11+ A 12∗sin( β)2 ]
0 0 1 0
[
A= 0
0
0
0
A 32
A 42
0
A 33
A 43
]
1 ,
A 34
A 44
B=¿
Для alf = 0; bet = 120, получим значения элементов для матриц A и B модели пространства
состояний
0 0 1 0
A=
0
[ 0 0 1
0 3.7309 −1.7412 −0.2(3)
0 −51.13 −0.93 −0.57544
,
]
0
B=
[ ]0
1.537
0.82422
4
clc; clear all;
n=4; m=2; p=2;
Ra=8.4; kt=0.042; kb=0.042; ku=0.0636;
ma=0.095; La=0.085; Ja=5.72e-5;
mp=0.024; Lp=0.129; lp=Lp/2; Jp=1.0e-4;
Ca=0.00015; Cp=0.00009;
g=9.81;
A11=Ja+mp*(La)^2;
A12=mp*(lp)^2;
A21=-mp*(La)*(lp);
A22=Jp+mp*(lp)^2;
B1=Ca+(kt*kb/Ra);
B2=(1/2)*mp*lp^2;
B4=-(1/2)*mp*(lp)^2;
B3=mp*(La)*lp;
C1=-mp*g*lp;
C2=(kt*ku)/Ra;
M_sym(1,1)=A11+A12*(sin(beta))^2;
M_sym(1,2)=A21*cos(beta);
M_sym(2,1)=M_sym(1,2);
M_sym(2,2)=A22;
H_sym=M_sym^-1;
K_sym(1,1)=B1+B2*Dbeta*sin(2*beta);
K_sym(1,2)=1/2*A12*Dalpha*sin(2*beta)+B3*Dbeta*sin(beta);
K_sym(2,1)=B4*Dalpha*sin(2*beta);
K_sym(2,2)=Cp;
G_sym=[0;C1*sin(beta)];
L_sym=[C2;0];
RP_sym=-H_sym*(K_sym*[Dalpha;Dbeta]-G_sym)+H_sym*L_sym*U;
RP_Jac=[Dalpha;Dbeta;RP_sym(1);RP_sym(2)];
A_sym=jacobian(RP_Jac,[alpha beta Dalpha Dbeta]);
B_sym=jacobian(RP_Jac,[U]);
alpha0=0; Dalpha0=0; beta0=120; Dbeta0=0; U0=0;
A=double(subs(A_sym,{alpha beta Dalpha Dbeta U},{alpha0 beta0 Dalpha0
Dbeta0 U0}));
B=double(subs(B_sym,{alpha beta Dalpha Dbeta U},{alpha0 beta0 Dalpha0
Dbeta0 U0}));
C=[ 1 0 0 0; 0 1 0 0];
D=zeros(2,1);
sys = ss(A,B,C,D)
t_end=30;
x0=deg2rad([0 120 0 0]);
[y,t]=initial(sys, x0, t_end);
y=rad2deg(y);
subplot(1,2,1); plot(t,y(:,1)); grid on; title('Плечо');
subplot(1,2,2); plot(t,y(:,2)); grid on; title('Рука');
eig(A)
5
A=
x1 x2 x3 x4
x1 0 0 1 0
x2 0 0 0 1
B=
u1
x1 0
x2 0
x3 1.537
x4 0.8242
C=
x1 x2 x3 x4
y1 1 0 0 0
y2 0 1 0 0
D=
u1
y1 0
y2 0
6
Плечо Рука
25 150
100
20
50
15
10
-50
5
-100
0 -150
0 10 20 30 0 10 20 30
ans =
0.0000 + 0.0000i
-0.2514 + 7.1373i
-0.2514 - 7.1373i
-1.8132 + 0.0000i
7
C использованием средств среды Matlab и пакета Simulink
В код из предыдущего раздела добавим:
[A_sim B_sim C_sim D_sim] = linmod('Tau1_lab2', [0 120 0 0], [0])
Asim =
0 0 1 0
0 0 0 1
8
Bsim =
1.537
0.82422
Csim =
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
Dsim =
ВЫВОД
В ходе лабораторной работы были исследованы методы и процедуры линеаризации
математических моделей динамических управляемых объектов, построены различные
формы моделей линейных стационарных систем управления и моделирование их
движения, были применены средства среды Matlab для решения подобных задач, а также
были сформированы навыки профессиональной работы в системе Matlab & Simulink.