控制系统计算机辅助设计MATLAB语言与应用第2版薛定宇课后习题答案.docx

上传人:b****6 文档编号:5139023 上传时间:2022-12-13 格式:DOCX 页数:36 大小:159.22KB
下载 相关 举报
控制系统计算机辅助设计MATLAB语言与应用第2版薛定宇课后习题答案.docx_第1页
第1页 / 共36页
控制系统计算机辅助设计MATLAB语言与应用第2版薛定宇课后习题答案.docx_第2页
第2页 / 共36页
控制系统计算机辅助设计MATLAB语言与应用第2版薛定宇课后习题答案.docx_第3页
第3页 / 共36页
控制系统计算机辅助设计MATLAB语言与应用第2版薛定宇课后习题答案.docx_第4页
第4页 / 共36页
控制系统计算机辅助设计MATLAB语言与应用第2版薛定宇课后习题答案.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

控制系统计算机辅助设计MATLAB语言与应用第2版薛定宇课后习题答案.docx

《控制系统计算机辅助设计MATLAB语言与应用第2版薛定宇课后习题答案.docx》由会员分享,可在线阅读,更多相关《控制系统计算机辅助设计MATLAB语言与应用第2版薛定宇课后习题答案.docx(36页珍藏版)》请在冰豆网上搜索。

控制系统计算机辅助设计MATLAB语言与应用第2版薛定宇课后习题答案.docx

控制系统计算机辅助设计MATLAB语言与应用第2版薛定宇课后习题答案

第1章控制系统计算机辅助设计概述

第2章MATLAB语言程序设计基础

第3章线性控制系统的数学模型

第4章线性控制系统的计算机辅助分析

第5章Simulink在系统仿真中的应用

第6章控制系统计算机辅助设计

第1章控制系统计算机辅助设计概述

【1】

已阅,略

【2】

已阅,略

【3】

已经掌握help命令和Help菜单的使用方法

【4】

区别:

MATLAB语言实现矩阵的运算非常简单迅速,且效率很高,而用其他通用语言则不然,很多通用语言所实现的矩阵运算都是对矩阵维数具有一点限制的,即使限制稍小的,但凡维数过大,就会造成运算上的溢出出错或者运算出错,甚至无法处理数据的负面结果

【5】

【8】

(1)输入激励为正弦信号

(2)输入激励为脉冲模拟信号

(3)输入激励为时钟信号

(4)输入激励为随机信号

(5)输入激励为阶跃信号

δ=0.3

δ=0.05

δ=0.7

结论:

随着非线性环节的死区增大,阶跃响应曲线的范围逐渐被压缩,可以想象当死区δ足够大时,将不再会有任何响应产生。

所以可以得到结论,在该非线性系统中,死区的大小可以改变阶跃响应的幅值和超调量。

死区越大,幅值、超调量将越小,而调整时间几乎不受其影响

第2章MATLAB语言程序设计基础

【1】

>>A=[1234;4321;2341;3241]

A=

1234

4321

2341

3241

>>B=[1+4i,2+3i,3+2i,4+i;4+i,3+2i,2+3i,1+4i;2+3i,3+2i,4+i,1+4i;3+2i,2+3i,4+i,1+4i]

B=

1.0000+4.0000i2.0000+3.0000i3.0000+2.0000i4.0000+1.0000i

4.0000+1.0000i3.0000+2.0000i2.0000+3.0000i1.0000+4.0000i

2.0000+3.0000i3.0000+2.0000i4.0000+1.0000i1.0000+4.0000i

3.0000+2.0000i2.0000+3.0000i4.0000+1.0000i1.0000+4.0000i

>>A(5,6)=5

A=

123400

432100

234100

324100

000005

∴若给出命令A(5,6)=5则矩阵A的第5行6列将会赋值为5,且其余空出部分均补上0作为新的矩阵A,此时其阶数为5×6

【2】

相应的MATLAB命令:

B=A(2:

2:

end,:

>>A=magic(8)

A=

642361606757

955541213515016

1747462021434224

4026273736303133

3234352928383925

4123224445191848

4915145253111056

858595462631

>>B=A(2:

2:

end,:

B=

955541213515016

4026273736303133

4123224445191848

858595462631

∴从上面的运行结果可以看出,该命令的结果是正确的

【3】

>>symsxs;f=x^5+3*x^4+4*x^3+2*x^2+3*x+6

f=

x^5+3*x^4+4*x^3+2*x^2+3*x+6

>>[f1,m]=simple(subs(f,x,(s-1)/(s+1)))

f1=

19-(72*s^4+120*s^3+136*s^2+72*s+16)/(s+1)^5

m=

simplify(100)

【4】

>>i=0:

63;s=sum(2.^sym(i))

s=

0615

【5】

>>fori=1:

120

if(i==1|i==2)a(i)=1;

elsea(i)=a(i-1)+a(i-2);end

if(i==120)a=sym(a);disp(a);end

end

[1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368,75025,121393,196418,317811,514229,832040,1346269,2178309,3524578,5702887,9227465,,,,,5,1,6,7,3,70,03,73,76,49,,074,099,173,272,2445,3717,6162,9879,6041,55920,81961,37881,19842,106,177565,035288,212853,248141,0460994,,1170129,1879264,8065,,,,00884757,,0,5,6,1,0,88,,673,58,931,,120,,029,4,2,9905,3072,2977,46049,69026,15075,40,99176,083277,082453,165730,248183,7576,62096,,4738105,5814114,9,186333,,284885,9,3488322,9,0,0]

【6】

>>

k=1;

fori=2:

1000

forj=2:

i

ifrem(i,j)==0

ifj

ifj==i,A(k)=i;k=k+1;break;end

end

end

end

disp(A);

Columns1through13

2357111317192329313741

Columns14through26

434753596167717379838997101

Columns27through39

103107109113127131137139149151157163167

Columns40through52

173179181191193197199211223227229233239

Columns53through65

241251257263269271277281283293307311313

Columns66through78

317331337347349353359367373379383389397

Columns79through91

401409419421431433439443449457461463467

Columns92through104

479487491499503509521523541547557563569

Columns105through117

571577587593599601607613617619631641643

Columns118through130

647653659661673677683691701709719727733

Columns131through143

739743751757761769773787797809811821823

Columns144through156

827829839853857859863877881883887907911

Columns157through168

919929937941947953967971977983991997

【7】

说明:

h和D在MATLAB中均应赋值,否则将无法实现相应的分段函数功能

symsx;h=input(‘h=’);D=input(‘D=’);

y=h.*(x>D)+(h.*x/D).*(abs(x)<=D)-h.*(x<-D)

【10】

functiony=fib(k)

ifnargin~=1,error('出错:

输入变量个数过多,输入变量个数只允许为1!

');end

ifnargout>1,error('出错:

输出变量个数过多!

');end

ifk<=0,error('出错:

输入序列应为正整数!

');end

ifk==1|k==2,y=1;

elsey=fib(k-1)+fib(k-2);end

end

【13】

【14】

>>t=[-1:

0.001:

-0.2,-0.1999:

0.0001:

0.1999,0.2:

0.001:

1];

y=sin(1./t);

plot(t,y);

gridon;

【15】

(1)>>t=-2*pi:

0.01:

2*pi;

r=1.0013*t.^2;

polar(t,r);axis('square')

(2)>>t=-2*pi:

0.001:

2*pi;

r=cos(7*t/2);

polar(t,r);axis('square')

(3)>>t=-2*pi:

0.001:

2*pi;

r=sin(t)./t;

polar(t,r);axis('square')

(4)>>t=-2*pi:

0.001:

2*pi;

r=1-cos(7*t).^3;

polar(t,r);axis('square')

【17】

(1)z=xy

>>[x,y]=meshgrid(-3:

0.01:

3,-3:

0.01:

3);

z=x.*y;

mesh(x,y,z);

>>contour3(x,y,z,50);

(1)z=sin(xy)

>>[x,y]=meshgrid(-3:

0.01:

3,-3:

0.01:

3);

z=sin(x.*y);

mesh(x,y,z);

>>contour3(x,y,z,50);

第3章线性控制系统的数学模型

【1】

(1)>>s=tf('s');

G=(s^2+5*s+6)/(((s+1)^2+1)*(s+2)*(s+4))

Transferfunction:

s^2+5s+6

--------------------------------

s^4+8s^3+22s^2+28s+16

(2)>>z=tf('z',0.1);

H=5*(z-0.2)^2/(z*(z-0.4)*(z-1)*(z-0.9)+0.6)

Transferfunction:

5z^2-2z+0.2

---------------------------------------

z^4-2.3z^3+1.66z^2-0.36z+0.6

Samplingtime(seconds):

0.1

【2】

(1)该方程的数学模型

>>num=[6422];den=[1103232];

G=tf(num,den)

Transferfunction:

6s^3+4s^2+2s+2

------------------------

s^3+10s^2+32s+32

(2)该模型的零极点模型

>>G=zpk(G)

Zero/pole/gain:

6(s+0.7839)(s^2-0.1172s+0.4252)

-------------------------------------

(s+4)^2(s+2)

(3)由微分方程模型可以直接写出系统的传递函数模型

【5】

(1)>>P=[0;0;-5;-6;-i;i];Z=[-1+i;-1-i];

G=zpk(Z,P,8)

Zero/pole/gain:

8(s^2+2s+2)

-------------------------

s^2(s+5)(s+6)(s^2+1)

(2)P=[0;0;0;0;0;8.2];Z=[-3.2;-2.6];

H=zpk(Z,P,1,'Ts',0.05,'Variable','q')

Zero/pole/gain:

(q+3.2)(q+2.6)

---------------

q^5(q-8.2)

Samplingtime(seconds):

0.05

【8】

(1)闭环系统的传递函数模型

>>s=tf('s');

G=10/(s+1)^3;

Gpid=0.48*(1+1/(1.814*s)+0.4353*s/(1+0.4353*s));

G1=feedback(Gpid*G,1)

Transferfunction:

7.58s^2+10.8s+4.8

--------------------------------------------------------------

0.7896s^5+4.183s^4+7.811s^3+13.81s^2+12.61s+4.8

(2)状态方程的标准型实现

>>G1=ss(G1)

a=

x1x2x3x4x5

x1-5.297-2.473-2.186-0.9981-0.7598

x240000

x302000

x400200

x50000.50

b=

u1

x12

x20

x30

x40

x50

c=

x1x2x3x4x5

y1000.60.42730.3799

d=

u1

y10

Continuous-timestate-spacemodel.

(3)零极点模型

>>G1=zpk(G1)

Zero/pole/gain:

9.6(s^2+1.424s+0.6332)

--------------------------------------------------------

(s+3.591)(s^2+1.398s+0.6254)(s^2+0.309s+2.707)

【11】

>>Ga=feedback(s/(s^2+2)*1/(s+1),(4*s+2)/(s+1)^2);

Gb=feedback(1/s^2,50);

G=3*feedback(Gb*Ga,(s^2+2)/(s^3+14))

Transferfunction:

3s^6+6s^5+3s^4+42s^3+84s^2+42s

---------------------------------------------------------------------------

s^10+3s^9+55s^8+175s^7+300s^6+1323s^5+2656s^4+3715s^3

+7732s^2+5602s+1400

【13】

c1=feedback(G5*G4,H3)=G5*G4/(1+G5*G4*H3)

c2=feedback(G3,H4*G4)=G3/(1+G3*H4*G4)

c3=feedback(c2*G2,H2)=c2*G2/(1+c2*G2*H2)=G3*G2/(1+G3*H4*G4+G3*G2*H1)

G=feedback(G6*c1*c3*G1,H1)=G6*c1*c3*G1/(1+G6*c1*c3*G1*H1)

=G6*G5*G4*G3*G2*G1/(1+G3*H4*G4+G3*G2*H1+G5*G4*H3+G5*G4*H3*G3*H4*G4+G5*G4*H3*G3*G2*H1+G6*G5*G4*G3*G2*G1*H1)

【14】

>>s=tf('s');

c1=feedback(0.21/(1+0.15*s),0.212*130/s);

c2=feedback(c1*70/(1+0.0067*s)*(1+0.15*s)/(0.051*s),0.1/(1+0.01*s));

G=(1/(1+0.01*s))*feedback(130/s*c2*1/(1+0.01*s)*(1+0.17*s)/(0.085*s),0.0044/(1+0.01*s))

Transferfunction:

0.004873s^5+1.036s^4+61.15s^3+649.7s^2+1911s

---------------------------------------------------------------------------

4.357e-014s^10+2.422e-011s^9+5.376e-009s^8+6.188e-007s^7

+4.008e-005s^6+0.001496s^5+0.03256s^4+0.4191s^3

+2.859s^2+8.408s

第4章线性控制系统的计算机辅助分析

【1】

(1)>>num=[1];den=[3212];

G=tf(num,den);

eig(G)

ans=

-1.0000

0.1667+0.7993i

0.1667-0.7993i

分析:

由以上信息可知,系统的极点有2个是在s域的右半平面的,因此系统是不稳定的

(2)>>num=[1];den=[63211];

G=tf(num,den);

eig(G)

ans=

-0.4949+0.4356i

-0.4949-0.4356i

0.2449+0.5688i

0.2449-0.5688i

分析:

由以上信息可知,系统的极点有2个是在s域的右半平面的,因此系统是不稳定的

(3)>>num=[1];den=[11-3-12];

G=tf(num,den);

eig(G)

ans=

-2.0000

-1.0000

1.0000

1.0000

分析:

由以上信息可知,系统的极点有2个是在s域的右半平面的,因此系统是不稳定的

(4)>>num=[31];den=[3006005031];

G=tf(num,den);

eig(G)

ans=

-1.9152

-0.1414

0.0283+0.1073i

0.0283-0.1073i

分析:

由以上信息可知,系统的极点有2个是在s域的右半平面的,因此系统是不稳定的

(5)>>s=tf('s');

G=0.2*(s+2)/(s*(s+0.5)*(s+0.8)*(s+3)+0.2*(s+2));

eig(G)

ans=

-3.0121

-1.0000

-0.1440+0.3348i

-0.1440-0.3348i

分析:

由以上信息可知,系统的所有极点都在s域的左半平面,因此系统是稳定的

【2】

(1)>>num=[-32];den=[1-0.2-0.250.05];

H=tf(num,den,'Ts',0.5);

abs(eig(H)')

ans=

0.50000.50000.2000

分析:

由以上信息可知,所有特征根的模均小于1,因此该系统是稳定的

(2)>>num=[3-0.39-0.09];den=[1-1.71.040.2680.024];

H=tf(num,den,'Ts',0.5);

abs(eig(H)')

ans=

1.19391.19390.12980.1298

分析:

由以上信息可知,由于前两个特征根的模均大于1,因此该系统是不稳定的

(3)>>num=[13-0.13];den=[11.3520.44810.0153-0.01109-0.001043];

H=tf(num,den,'Ts',0.5);

abs(eig(H)')

ans=

0.87430.15200.27230.23440.1230

分析:

由以上信息可知,所有特征根的模均小于1,因此该系统是稳定的

(4)>>num=[2.1211.7615.91];den=[1-7.368-20.15102.480.39-340];

H=tf(num,den,'Ts',0.5,'Variable','q');

abs((eig(H))')

ans=

8.23493.21152.34152.34322.3432

分析:

由以上信息可知,所有特征根的模均大于1,因此该系统是不稳定的

【3】

(1)>>A=[-0.2,0.5,0,0,0;0,-0.5,1.6,0,0;0,0,-14.3,85.8,0;0,0,0,-33.3,100;0,0,0,0,-10];

eig(A)

ans=

-0.2000

-0.5000

-14.3000

-33.3000

-10.0000

分析:

由以上信息可知,该连续线性系统的A矩阵的所有特征根的实部均为负数,因此该系统是稳定的

(2)>>F=[17,24.54,1,8,15;23.54,5,7,14,16;4,6,13.75,20,22.5589;10.8689,1.2900,19.099,…

21.896,3;11,18.0898,25,2.356,9];

abs(eig(F)')

ans=

63.720723.539312.436613.323119.7275

分析:

由以上信息可知,该离散系统的F矩阵的所有特征根的模均大于1,因此该系统是不稳定的

【4】

>>A=[-3121;0-4-2-1;12-11;-1-11-2];

B=[10;02;03;11];C=[122-1;21-12];

D=[00;00];

G=ss(A,B,C

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 艺术

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1