计算机仿真技术与CAD习题答案解析Word格式.docx
- 文档编号:20753330
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:26
- 大小:346.28KB
计算机仿真技术与CAD习题答案解析Word格式.docx
《计算机仿真技术与CAD习题答案解析Word格式.docx》由会员分享,可在线阅读,更多相关《计算机仿真技术与CAD习题答案解析Word格式.docx(26页珍藏版)》请在冰豆网上搜索。
此外,自适应控制、自校正控制以及最优控制等现代控制策略都可利用CAD技术实现有效的分析和设计。
第1章仿真软件——MATLAB
1-1对于矩阵A=[12;
34],MATLAB以下四条命令:
A.^(0.5);
A^(0.5);
sqrt(A);
sqrtm(A)
所得结果相同吗?
它们中哪个结果是复数矩阵,为什么?
A.^(0.5)=[1.00001.4142;
1.73212.0000];
A^(0.5)=[0.5537+0.4644i0.8070-0.2124i;
1.2104-0.3186i1.7641+0.1458i];
sqrt(A)=[1.00001.4142;
sqrtm(A)=[0.5537+0.4644i0.8070-0.2124i;
其中,“A.^(0.5)”表示向量的乘方,“A^(0.5)”表示矩阵的乘方,“sqrt(A)”只定义在矩阵的单个元素上,即分别对矩阵的每个元素进行运算,“sqrtm(A)”表示对矩阵(方阵)的超越函数进行运算。
1-4求二元函数方程组:
sin(x-y)=0,cos(x+y)=0的解。
>
[x,y]=solve('
sin(x-y)=0'
'
cos(x+y)=0'
x'
y'
)
x=
-1/4*pi
1/4*pi
y=
1/4*pi
1-5求函数y(t)=exp(-t)*|sin[cost]|的最大值(0<
=t<
inf)。
f='
(-1)*exp(-(abs(x)))*abs(sin(cos(abs(x))))'
;
x=fminsearch(f,0),ymax=exp(-(abs(x)))*abs(sin(cos(abs(x))))
ymax=
0.8415
1-6设D2y-3Dy+2y=x,y(0)=1,Dy(0)=0,求y(0.5)的值。
>
f='
D2y-3*Dy+2*y=x'
g=dsolve(f,'
y(0)=1,Dy(0)=0'
);
x=0.5;
y=eval(g)
y=
0.6100
1-7求方程cos(t)^2*exp(-0.1t)=0.5t的解。
t1=solve('
cos(t)^2*exp(-0.1*t)=0.5*t'
t'
t=eval(t1)
t=
0.8329
1-8求方程组:
x^2+y^2=1,xy=2的解。
x^2+y^2=1'
x*y=2'
-1/2*(1/2*5^(1/2)+1/2*i*3^(1/2))^3+1/4*5^(1/2)+1/4*i*3^(1/2)
-1/2*(1/2*5^(1/2)-1/2*i*3^(1/2))^3+1/4*5^(1/2)-1/4*i*3^(1/2)
-1/2*(-1/2*5^(1/2)+1/2*i*3^(1/2))^3-1/4*5^(1/2)+1/4*i*3^(1/2)
-1/2*(-1/2*5^(1/2)-1/2*i*3^(1/2))^3-1/4*5^(1/2)-1/4*i*3^(1/2)
1/2*5^(1/2)+1/2*i*3^(1/2)
1/2*5^(1/2)-1/2*i*3^(1/2)
-1/2*5^(1/2)+1/2*i*3^(1/2)
-1/2*5^(1/2)-1/2*i*3^(1/2)
1-9求f(kT)=kexp(-akT)的Z变换表达式。
symsktz;
f=k*exp(-a*t);
F=ztrans(f,t,z)
f=
k*z/exp(-a)/(z/exp(-a)-1)
1-10求一阶微分方程Dx=ax+by(t),x(0)=x0的解。
Dx=a*x+b*y'
x=dsolve(f,'
x(0)=x0'
-b*y/a+exp(a*t)*(b*y+x0*a)/a
1-12求以下方程组边值问题的解。
Df=3f+4g,Dg=-4f+3g,f(0)=0,g(0)=1
Dx1=3*x1+4*x2,Dx2=-4*x1+3*x2'
[x1,x2]=dsolve(f,'
x1(0)=0,x2(0)=1'
x1=
exp(3*t)*sin(4*t)
x2=
exp(3*t)*cos(4*t)
第2章控制系统的数学模型及其转换
2-1已知系统的传递函数为
试用MATLAB建立其状态空间表达式。
num=[111];
den=[16116];
[A,B,C,D]=tf2ss(num,den)
A=
-6-11-6
100
010
B=
1
0
C=
111
D=
2-2已知系统的状态空间表达式为
试用MATLAB求其传递函数阵。
A=[01;
-2-3];
B=[10;
11];
C=[10;
D=zeros(2,2);
[num1,den1]=ss2tf(A,B,C,D,1),[num2,den2]=ss2tf(A,B,C,D,2)
num1=
01.00004.0000
02.00002.0000
den1=
132
num2=
00.00001.0000
01.00001.0000
den2=
2-3已知两子系统的传递函数分别为
,
试利用MATLAB求两子系统串联和并联时系统的传递函数。
num1=1;
den1=[132];
num2=1;
den2=[130];
[num,den]=series(num1,den1,num2,den2)
num=
00001
den=
161160
[num,den]=parallel(num1,den1,num2,den2)
00262
2-4设系统的状态空间表达式为
若取线性变换阵
设新的状态变量为
,则利用MATLAB求在新状态变量下,系统状态空间表达式。
A=[01;
B=[1;
2];
C=[30];
D=[0];
P=[11;
1-1];
[A1,B1,C1,D1]=ss2ss(A,B,C,D,P)
A1=
-20
3-1
B1=
3
-1
C1=
1.50001.5000
D1=
2-5已知离散系统状态空间表达式
试用MATLAB求其系统的脉冲传递函数。
13];
B=[0;
1];
C=[11];
D=0;
T=1;
[A1,B1,C1,D1]=c2dm(A,B,C,D,T)
2.95987.3357
7.335724.9669
1.9598
7.3357
11
第3章连续系统的数字仿真
3-1已知线性定常系统的状态空间表达式为
且初始状态为零,试利用四阶-龙格库塔法求系统的单位阶跃响应。
%ex3_1.m
r=1;
-5-6];
B=[2;
0];
C=[12];
d=0;
Tf=5;
h=0.1;
x=[zeros(length(A),1)];
y=0;
t=0;
fori=1:
Tf/h
K1=A*x+B*r;
K2=A*(x+h*K1/2)+B*r;
K3=A*(x+h*K2/2)+B*r;
K4=A*(x+h*K3)+B*r;
x=x+h*(K1+2*K2+2*K3+K4)/6;
y=[y;
C*x];
t=[t;
t(i)+h];
end
plot(t,y)
3-2设单位反馈系统的开环传递函数
试利用二阶-龙格库塔法求系统的单位阶跃响应。
%ex3_2.m
numo=4;
deno=[1,2,0];
[num,den]=cloop(numo,deno);
[A,b,C,d]=tf2ss(num,den);
K1=A*x+b*r;
K2=A*(x+h*K1)+b*r;
x=x+h*(K1+K2)/2;
y=[y;
3-4利用input()函数修改例3-1所给程序ex3_1.m,将其中给定的参数r,numo,deno,numh和denh利用键盘输入,使其变为连续控制系统面向传递函数的通用数字仿真程序。
3-5利用input()函数修改例3-2所给程序ex3_2.m,将其中给定的参数r,P,W,W0和Wc利用键盘输入,使其变为连续控制系统面向结构图的通用数字仿真程序。
第4章连续系统按环节离散化的数字仿真
4-1已知非线性习题如图题4-1所示,试利用连续系统按环节离散化的数字仿真方法,求输出量y的动态响应,并与无非线性环节进行比较。
(图略)
%ex4_1.m%主程序
R=10;
P=[0.110.5155;
011000;
212000;
10110000];
W=[000-1;
1000;
0100;
0010];
W0=[1;
0;
Wc=[0001];
Tf=25;
T=0.02;
A=P(:
1);
B=P(:
2);
C=P(:
3);
D=P(:
4);
FZ=P(:
5);
S=P(:
6);
n=length(A);
n
if(A(i)~=0)
if(B(i)==0)
E(i)=0;
F(i)=0;
G(i)=0;
H(i)=0;
L(i)=(C(i)+D(i)/T)/A(i);
Q(i)=-D(i)/(A(i)*T);
else
E(i)=exp(-A(i)*T/B(i));
F(i)=(D(i)/B(i)-C(i)/A(i))*((1-E(i))*B(i)/(A(i)*T)-1);
G(i)=(D(i)/B(i)-C(i)/A(i))*(1+(E(i)-1)*(1+B(i)/(A(i)*T)));
H(i)=1;
L(i)=D(i)/B(i);
Q(i)=0;
end
if(B(i)~=0)
E(i)=1;
F(i)=0.5*C(i)*T/B(i);
G(i)=F(i);
disp('
A(i)=B(i)=0'
x0=x;
z=x;
u=[zeros(length(A),1)];
u0=u;
y=[zeros(length(Wc(:
1)),1)];
t=0;
forj=1:
Tf/T
u1=u;
u=W*x+W0*R;
if(FZ(i)~=0)
if(FZ(i)==1)u(i)=saturation(u(i),S(i));
if(FZ(i)==2)u(i)=deadzone(u(i),S(i));
if(FZ(i)==3)[u(i),u0(i)]=backlash(u0(i),u(i),u1(i),S(i));
if(FZ(i)==4)u(i)=sign1(u(i),S(i));
x1=x;
z(i)=E(i)*z(i)+F(i)*u(i)+G(i)*u1(i);
x(i)=H(i)*z(i)+L(i)*u(i)+Q(i)*u1(i);
end
fori=1:
if(FZ(i)~=0)
if(FZ(i)==5)x(i)=saturation(x(i),S(i));
if(FZ(i)==6)x(i)=deadzone(x(i),S(i));
if(FZ(i)==7)[x(i),x0(i)]=backlash(x0(i),x(i),x1(i),S(i));
if(FZ(i)==8)x(i)=sign1(x(i),S(i));
y=[y,Wc*x];
t=[t,t(j)+T];
plot(t,y)
%saturation.m%子程序
functionx=saturation(u,s)
if(abs(u)>
=s)
if(u>
0)x=s;
elsex=-s;
else
x=u;
修改“P=[0.110.5100;
”
ex4_1
4-2针对例3-2所给线性定常系统,试利用第4章所给程序,求系统的单位阶跃响应,并对其结果进行比较。
ex3_2
4-3针对例4-1所给系统,去掉饱和非线性环节后求系统的单位阶跃响应,并与例4-1所得结果进行比较。
4-4利用input()函数修改例4-1所给程序ex4_1.m,将其中给定的参数R,P,W,W0和Wc利用键盘输入,使其变为连续控制系统按环节离散化的通用数字仿真程序。
略
第5章采样控制系统的数字仿真
5-1已知采样控制系统的结构图如图题5-1所示(图略)。
试利用采样控制系统的数字仿真方法,求当采样周期T=0.1s,且初始状态为零时,离散系统的单位阶跃响应。
%ex5_1.m
R=1;
Gr=[1];
Fr=[0];
P=[111000;
121000];
W=[00;
10];
Wc=[01];
Tm=0.1;
T=0.01;
n1=length(Fr);
m1=length(Gr);
if(A(i)~=0)
if(B(i)==0)
E(i)=0;
L(i)=(C(i)+D(i)/T)/A(i);
Q(i)=-D(i)/(A(i)*T);
E(i)=exp(-A(i)*T/B(i));
F(i)=(D(i)/B(i)-C(i)/A(i))*((1-E(i))*B(i)/(A(i)*T)-1);
G(i)=(D(i)/B(i)-C(i)/A(i))*(1+(E(i)-1)*(1+B(i)/(A(i)*T)));
H(i)=1;
L(i)=D(i)/B(i);
Q(i)=0;
if(B(i)~=0)
E(i)=1;
else
disp('
A(i)=B(i)=0'
end
x0=x;
u0=u;
Ur=[zeros(n1,1)];
Er=[zeros(m1,1)];
forij=0:
Tf/Tm;
e=R-x(n);
Er=[e;
Er(1:
m1-1)];
ur=-Fr*Ur+Gr*Er;
Ur=[ur;
Ur(1:
n1-1)];
Tm/T
u1=u;
u=W*x+W0*ur;
if(FZ(i)~=0)
if(FZ(i)==1)u(i)=saturation(u(i),S(i));
if(FZ(i)==2)u(i)=deadzone(u(i),S(i));
if(FZ(i)==3)[u(i),u0(i)]=backlash(u0(i),u(i),u1(i),S(i));
if(FZ(i)==4)u(i)=sign1(u(i),S(i));
x1=x;
fori=1:
z(i)=E(i)*z(i)+F(i)*u(i)+G(i)*u1(i);
x(i)=H(i)*z(i)+L(i)*u(i)+Q(i)*u1(i);
if(FZ(i)~=0)
if(FZ(i)==5)x(i)=saturation(x(i),S(i));
if(FZ(i)==6)x(i)=deadzone(x(i),S(i));
if(FZ(i)==7)[x(i),x0(i)]=backlash(x0(i),x(i),x1(i),S(i));
if(FZ(i)==8)x(i)=sign1(x(i),S(i));
t=[t,t(length(t))+T];
ex5_1
5-2针对例3-2和例4-1所给连续系统,试利用第5章所给程序,求系统的单位阶跃响应,并对其结果进行比较分析。
ex5_2
5-4略
第6章动态仿真集成环境——Simulink
6-1已知单变量系统如图题6-1所示(图略),试利用Simulink求输出量y的动态响应。
6-2假设某一系由图题6-2所示的四个典型环节组成(图略),试利用Simulink求输出量y的动态响应。
6-3已知非线性系统如图题6-3所示,试利用Simulink求输出量y的动态响应。
6-4已知采样系统结构如图题6-4所示,试利用Simulink求输出量y的动态响应。
6-5已知非线性系统如图6-5所示,试利用Simulink分析非线性环节的c值与输入幅值对系统输出性能的影响。
(1)r=1c=0
(2)r=0.5c=0
(3)r=1c=1
(4)r=1c=2
6-6已知线性定常系统的状态方程为
试利用Simulink求u(t)为单位阶跃函数时系统状态方程的解。
[t,x,y]=sim('
ex6_6'
10);
plot(t,y(:
1),'
:
b'
t,y(:
2),'
-r'
legend('
y1'
y2'
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机仿真 技术 CAD 习题 答案 解析