控制系统数字仿真程序及结果文档格式.docx

上传人:b****3 文档编号:14749483 上传时间:2022-10-24 格式:DOCX 页数:16 大小:127.99KB
下载 相关 举报
控制系统数字仿真程序及结果文档格式.docx_第1页
第1页 / 共16页
控制系统数字仿真程序及结果文档格式.docx_第2页
第2页 / 共16页
控制系统数字仿真程序及结果文档格式.docx_第3页
第3页 / 共16页
控制系统数字仿真程序及结果文档格式.docx_第4页
第4页 / 共16页
控制系统数字仿真程序及结果文档格式.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

控制系统数字仿真程序及结果文档格式.docx

《控制系统数字仿真程序及结果文档格式.docx》由会员分享,可在线阅读,更多相关《控制系统数字仿真程序及结果文档格式.docx(16页珍藏版)》请在冰豆网上搜索。

控制系统数字仿真程序及结果文档格式.docx

根据提示找到出错位置和原因,加以改正,再进行编译……如此反复,直到顺利通过编译和连接为止。

(5)运行程序,并分析运行结果是否合理和正确。

在运行时要注意当输入不同数据时所得到的结果是否正确,应多运行几次,分别检查在不同情况下程序是否正确。

(6)输出程序清单和运行结果。

4.实验后,应整理出实验报告,实验报告应包括:

实验题目;

源程序;

5.实验内容的安排

本实验教材给出4个实验内容,学生应在实验前将教师指定的题目编好程序,然后上机输人和调试。

2关于程序调试

为了帮助大家调试程序和分析程序,下面简单介绍程序出错的种类。

(1)语法错误

不符合MATLAB语言的语法规定.例如将plot写为polt、括弧不匹配、变量命名错误等,这些都会在编译时被发现并指出。

这些都属于“致命错误”。

不改正是不能通过编译的。

对一些在语法上有轻微毛病但不影响程序运行的问题(如定义了变量但始终未使用),编译时会发出“警告”虽然程序能通过编译,但不应当使程序“带病工作”应该将程序中所有导致错误(error)和警告(warning)的因素都排除,再使程序投入运行。

(2)逻辑错误

程序无语法错误,也能正常运行,但是结果不对。

例如求s=l+2+3十……十100。

有人写出以下语句:

s=1;

fori=1:

100

s=s+i;

end;

sum=s

语法没有错,但求出的结果是l+1+2+3十……+100之和,而不是l+2+3十……十100之和。

这类错误可能是设计算法时的错误,也可能是算法正确而在编写程序时出现疏忽所致。

这种错误计算机是无法检查出来的。

如果是算法有错,则应先修改算法,再改程序。

如果是算法正确而程序写得不对,则直接修改程序.

(3)运行错误

有时程序既无语法错误,又无逻辑错误,但程序不能正常运行或结果不对。

多数情况是数据不对,包括数据本身不合适以及数据类型不匹配。

3Matlab基础练习(不上交)

(1)生成矩阵

i)创建如下矩阵

ii)创建C:

一个3×

3单位阵,用最方便的方法。

(2)基本矩阵运算

运用问题1.1中得到的矩阵A和B,

i)对比A*B和A.*B的结果,并解释MATLAB是如何得出相应的结果。

ii)A*B=B*A吗?

为什么?

iii)A.*B=B.*A吗?

为什么?

iv)创建矩阵D=B,并计算B*D=?

v)比较A/BA\B,并解释所得结果?

vi)创建一个新的3×

3矩阵E,主对角线元素为5,其它元素为0。

(3)脚本程序

输入并编辑一个脚本文件程序来计算,并输出结果。

(4)函数文件

运行一个自己编写的函数文件程序来计算,并输出结果。

(5)制图

(anoisyversionofy),。

i)用plot将两条曲线画在同一个坐标轴上,原函数用实线,加噪音的函数用开圆(或其它标示符)区分,颜色随意。

图及横纵坐标轴需要标注名称,图标标识不同曲线。

ii)用holdon将两条曲线画在同一个坐标轴上,其它要求同i),加上网格。

iii)用subplot将两条曲线画在同一幅图的两个不同的坐标轴上,其它要求同i)。

 

第2部分实验内容

实验1PID控制

1.1实验目的:

编程实现PID控制算法。

1.2实验内容:

二阶系统的时域响应。

下面是一个单位阶跃响应,已知系统是一阶线性系统,其传递函数为G(s)。

系统内嵌在反馈控制回路中,如下图所示,闭环系统也是一阶的。

(1)系统G(s)的开环参数(DC增益和时间常数)分别为:

53.2

(2)稳态输出和稳态输入之间的关系?

5:

1

(3)若要稳态误差不大于2%,比例增益K的应该为多大?

(SSE≤2%时,比例增益至少为多少?

K>

=10

(4)系统G(s)的闭环参数(DC增益和时间常数)分别为多少?

以 

K的函数形式给出。

Gdc=5k/(5k+1)Ts=3.2/(5k+1)

(5)建立开环传递函数。

用你在上面步骤中得到的数值写成如下形式:

G(s)=Gdc/(sτ+1)

G(s)=5/(s*3.2+1)

(6)建立仿真模型,用Matlab得到系统的阶跃响应,观察比例增益K变化时系统响应的变化,并对比分析仿真结果来验证理论分析的结果.

1.3实验程序:

l.学习Matlab中和本实验相关的命令。

figure

for----end

tf、step(num,den)

grid、title、holdon、holdoff

2.保存或复制实验曲线和数据。

1.4实验结果:

1.给出相应程序代码并记录实验程序的运行结果。

2.分析比例增益K对系统响应的影响。

程序:

clearall;

t=0:

0.1:

20;

num=[5];

den=[3.21];

plant=tf(num,den);

figure

(1)

step(plant,t),axis([02006]);

gridon

figure

(2)

Kp=10:

1:

m=0:

0.001:

1;

holdon

forcontr=Kp;

sys_cl=feedback(contr*plant,1);

%建立单位负反馈的系统的传递函数

step(sys_cl,m);

holdoff

图像:

K对系统的影响:

K越大,上升时间越短,调整时间也越短。

实验2根轨迹

2.1实验目的:

绘制根轨迹。

2.2实验内容:

反馈系统如下图。

系统有一个可调的增益放大器,系数为K。

被控对象传递函数为:

G(s)=(s+5)/[(s+1)(s+3)]

需要你分析一下系统的行为。

画出作为增益的函数的闭环系统的根轨迹。

(i)明确指出极点离开实轴的点或者是进入实轴的点。

1/(d+1)+1/(d+3)=1/(d+5)d1=-2.1716d2=-7.8284

(ii)给出那些点出现时的K值。

k=11.6569k=0.3432

2.3实验程序:

1、学习根轨迹、零极点图绘制的相关语句。

rlocus(sys)

[k,p]=rlocfind(num,den)

gtext

pzmap(p,z)

[num,den]=feedback(num,den,1)

2、运行实验程序,观察试验结果。

3、保存或复制实验曲线和数据。

2.4实验结果分析

1、给出相应程序代码并记录实验程序的运行结果。

2、分析放大系数K对根轨迹影响,并分析放大系数K系统稳定性的影响。

num=[15];

den=conv([11],[13]);

sys=tf(num,den);

pzmap(sys);

[p,z]=pzmap(sys);

legend('

极点'

'

零点'

);

rlocus(sys);

[k,p1]=rlocfind(num,den)

[k,p2]=rlocfind(num,den)

系统已经稳定,调节K对系统不会有影响

实验3伯德图补偿

3.1实验目的:

MATLAB辅助设计控制系统。

3.2实验内容:

绘制伯德图,并进行补偿分析。

下面是一个带可变增益的闭环系统。

被控对象G(s)=2/[(0.5s+1)(s2+4s+1)]。

画出G(s)的伯德图。

(i)确定系统G(s)的相角裕量和幅值裕量。

Gm=22.3dbPm=102deg

(ii)确定相角裕量为40o时的增益K。

k=3.9670

(iii)确定相角裕量为40o时阶跃输入的可达SSE,是否令人满意?

SSE=(1-DCGAIN(sys_cl))/1=0.1119令人满意

3.3实验程序:

1、学习频率绘制相关语句。

bode(num,den)

[num,den]=zp2tf(z,p,k)

logspace

subplot、xlabel、margin

2、运行实验程序,观察结果。

3.3实验结果分析

num=[02];

den=conv([0.51],[141]);

sys=tf(num,den)

bode(sys)

margin(sys)

fork=3:

4;

k1=k;

sys1=k1*sys;

[Gm,Pm,Wcg,Wcp]=margin(sys1);

if((Pm-40)/40>

-0.0001)&

&

((Pm-40)/40<

0.0001)

k1

Pm

figure(3)

margin(sys1)

gridon

break;

end

end

sys_cl=feedback(sys1,1)

figure(4)

step(sys_cl)

SSE=1-dcgain(sys_cl)

2、观察程序画出的bode图,与手绘图进行比较。

3、在bode图上读出相角裕量和幅值裕量,并判断闭环系统的稳定性。

Gm=22.3dbPm=102deg系统稳定

实验4奈奎斯特图

4.1实验目的:

4.2实验内容:

绘制奈奎斯特图,并进分析。

1、请手绘一下系统的奈图,给出高频渐进线、Dc增益点,实虚轴交点及所在的频率,并用nyquist命令自动生成奈图,进一步验证所绘制的奈图的正确性。

a.一阶系统G(s)=1/(s+1)

b.二阶系统G(s)=1/(s+1)2

c.三阶系统G(s)=1/(s+1)3

2、用nyquist命令直接绘制高阶系统的奈图。

3、用nyquist命令直接绘制复极点系统的奈图。

4、用nyquist命令直接绘制系统的奈图,并判断闭环系统的稳定性。

4.3实验程序:

1、学习Matlab语言与本实验相关的语句

nyquist(num,den)

2、运行实验程序。

4.4实验结果:

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

当前位置:首页 > 农林牧渔 > 林学

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

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