数学建模社区-数学中国
标题:
求助一个程序
[打印本页]
作者:
deven1985
时间:
2011-8-23 10:39
标题:
求助一个程序
给予组合趋近律的变结构控制,程序如下:
5 f6 [1 B7 G9 X" v g
clear all;
$ N+ W0 a O* ]( Z0 e9 Z. n
close all;
- m& C5 k. g( f; ?6 ~: b, g
a=25;b=133;
( @* B2 K# C0 P+ M/ K
ts=0.001;
( O- C* u% J4 p- o
A1=[0,1;0,-a];
4 E4 D- C; c1 N
B1=[0;b];
0 e# d+ I' o. s4 \. a6 u4 Q
C1=[1,0];
+ N6 B% M$ s4 a8 N1 X' E, C
D1=0;
+ g+ A/ ~. @% X* W$ E, P, F) Z
[A,B,C,D]=c2dm(A1,B1,C1,D1,ts,'z');
) y2 v: I' S- A- X) |1 n1 x
x=[-0.8;-0.5];
+ C, U; q4 ~! I" H3 }
r_1=0;r_2=0;
3 j8 t3 {8 f+ P( P
c=20;
' ~0 e H1 }( j' k
eq=5;
: `: n- n2 k* i$ o, n! Q
q=30;
, z1 o! i, E# H+ u
Ce=[c,1];
0 i1 r! k. d, \) B7 [. o+ M
for k=1:1:2000
- r9 n9 Y$ s! e v9 R8 U
time(k)=k*ts;
) M f0 Q+ a& x
r(k)=1.0;
0 g+ |) M+ K7 ?4 A/ U
+ f' _, M* Z0 p
%Using Waitui method
) j1 @) V! M5 O" e4 P2 i- V; h
dr(k)=(r(k)-r_1)/ts;
1 _/ c- r9 w- ]' T2 h5 ~# z
dr_1=(r_1-r_2)/ts;
" r" ?0 K/ y- f- t! n" f0 Y0 i d. o6 o G
r1(k)=2*r(k)-r_1;
" n4 X" v1 u2 g9 T( i
dr1(k)=2*dr(k)-dr_1;
2 V& \. a+ F; y4 A- `
1 ^8 O: Z' z+ H7 F% t
R=[r(k);dr(k)];
) C) k7 a5 L9 v: z
R1=[r1(k);dr1(k)];
( u) r; u/ B& r0 P: Z" {$ T! V
& s; l! Y( |9 |
E=R-x;
5 J* Y. j, P5 y1 C) N
e(k)=E(1);
* Z7 G `4 S( @* ]9 A- N- Q! N
de(k)=E(2);
" n* S. O" ^5 O8 @* y
: [& h. s9 w! ~, T0 d
s(k)=Ce*E;
) l9 A, R- e8 f0 ]
" s$ m L. h+ J
X1=abs(e(k))+abs(de(k));
. I3 F" R& g% z6 M3 c
2 A" O, N) z+ R8 Q! `
M=2;
0 X# u+ S8 h! z" k6 z% V+ J, I5 g, ?
if M==1 %EXP reaching law
+ ]1 a8 v t0 \* F$ \
ds(k)=-eq*ts*sign(s(k))-q*ts*s(k);
0 R( y8 P& R% ~
u(k)=inv(Ce*B)*(Ce*R1-Ce*A*x-s(k)-ds(k));
- g' n2 ] K4 {0 ] H- X9 |2 x3 Q
elseif M==2 %Variable rate reachine law
9 {4 K7 [, J4 {. x ~& m
ds(k)=-eq*ts*X1*sign(s(k));
9 J e' a6 X2 H; r. `' R
u(k)=inv(Ce*B)*(Ce*R1-Ce*A*x-s(k)-ds(k));
. a w2 t+ @/ i$ `7 L* f
elseif M==3 %Coposite reaching law
. a0 d% N$ d+ b( g1 Q6 Z
k0=0.60;
$ Y, q: d* i6 g% I# r5 C
if X1>k0 %EXP reachine law
: l# v# K4 l \) y2 g3 B
ds(k)=-eq*ts*sign(s(k))-q*ts*s(k);
% @) }% i% Z z5 F
u(k)=inv(Ce*B)*(Ce*R1-Ce*A*x-s(k)-ds(k));
" l4 k5 H5 `* \4 `
elseif X1<=k0 %Variable rate reachine law
Y, l. N: Q o5 k. n0 n
ds(k)=-eq*ts*X1*sign(s(k));
: p4 V% R* {# W+ O \( {" t
u(k)=inv(Ce*B)*(Ce*R1-Ce*A*x-s(k)-ds(k));
+ P7 }: j$ F g2 `1 w! b8 g
end
7 I, S4 K+ f9 h" M7 }5 i( T: c
end
5 I) X5 D' U' N" s
if u(k)>=10
$ M( Z( D1 i* G5 R, L! t
u(k)=10;
2 k: n: V# y& d7 T3 N+ R+ v
end
! H7 L3 w) h) `' k" e3 g" |' J; \
if u(k)<=-10
, v4 ` H, o- s8 s
u(k)=-10;
: j' _5 b# r/ c2 c0 l- A# L* D
end
# o+ [2 }. }/ m- W' D1 Q
x=A*x+B*u(k);
( W! h V2 E2 @/ m7 l7 ]! d2 E0 r, Y
y(k)=x(1);
1 `$ i& M. H( O$ T) \/ \
%Update Parameters
. D: G, i' s" r5 e* @4 u
r_2=r_1;
( J* i3 d- W* R
r_1=r(k);
0 M' o' A8 a) V9 p+ c
end
; k, M/ C# T: n& D8 e
figure(1)
8 L, {# |: D: k% Y- H
plot(time,r,'r',time,y,'b');
# i- d) S( g0 K7 Y, J
xlabel('Time(second)');ylabel('Position tracking');
+ b2 [8 \" {4 i5 L: b- ~; n c2 b' _
figure(2)
; K/ j: j% o( ^- I' ]
plot(time,s,'r');
$ ]( y) R9 d6 M9 p
xlabel('Time(second)');ylabel('Switch function s');
! e8 I# E" n9 l- a$ K0 Y
figure(3)
; b' q F. _% u' z
plot(e,de,'r',e,-c*e,'b');
( Q3 M5 Y5 g- ?! b1 G
xlabel('e');ylabel('de');
: T' J1 |1 S7 ]' w8 s+ I
figure(4)
, |6 e) |$ s# ]7 y7 ]: q: i2 f# {, ^
plot(time,u,'r');
$ B* |5 T: @( W8 ~
xlabel('Time(second)');ylabel('u');
' f. ~7 g, f# a8 E y8 M
* n6 G0 M7 H7 a2 V5 d
请问最后的4个图分别是什么意识,本人新手,谢谢大家了!
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5