控制系统计算机仿真实验报告
控制系统仿真综合实验报告

图 2-1
校正前系统阶跃响应曲线
可以看出原系统的响应速度非常慢, 所以要通过校正来改善系统的动态性能, 可以采用串联超前校正。 原系统为Ⅰ型系统,容易求出系统的速度误差系数为
K lim
s 0
s 400 2 s ( s 30 s 200)
2
根据实验要求速度误差系数为 10 ,那么 KV 10 / 2 5 ,此时系统的开环 传函为: G s
5 400 ,用 MATLAB 计算得相角裕量为 32.6°,由于采 s s 30 s 200
2
用串联超前校正能够增大系统的相角裕量,所以综合考虑,采用串联超前校正。 2. 经过第一步的分析,采用串联校正,可以计算出串联校正装置传递函数为 5 (1 0.12 s ) ,因此校正后的开环传递函数为: 1 0.048s
K Ess Overshoot(%) Ts(s) 5 0.2857 34.6099 4.7766
表1
8 0.20000 43.5125 5.6730
9 0.1818 45.7812 5.5325
12 0.1429 51.6704 5.7655
不同 K 值下系统响应的参数
(四)实验结果与分析 从理论上分析,系统的传递函数为 G s
ulxxlgxx?????????????????????????????????????????????????????????????????4301004300100000000010????uxxxy????????????????????????????????????0001000001???实际系统摆杆转动轴心到杆质心的长度为l025m则系统的状态方程为
(二)实验要求 1. 使用 Matlab 进行仿真; 2. 分析不同 K 值的情况下,系统的单位阶跃响应曲线,并绘图进行比较; 3. 列表对系统响应各性能进行比较,并确定你认为合适的参数值。 (三)实验内容及步骤 1.运行 MATLAB,进行仿真实验。
计算机控制系统仿真实验

实验一 基于Matlab 的控制系统模型
一、 实验目的
1. 熟悉Matlab 的使用环境,学习Matlab 软件的使用方法和编程方法
2. 学习使用Matlab 进行各类数学变换运算的方法
3. 学习使用Matlab 建立控制系统模型的方法
二、 实验器材
x86系列兼容型计算机,Matlab 软件
三、 实验原理
1. 香农采样定理
对一个具有有限频谱的连续信号f(t)进行连续采样,当采样频率满足max 2ωω≥S 时,采样信号f*(t)
2. 拉式变换和Z 变换
使用Matlab 求函数的拉氏变换和Z 变换
3. 控制系统模型的建立与转化
传递函数模型:num=[b1,b2,…bm],den=[a1,a2,…an],n
n n m
m m b s a s a b s b s b den num s G ++++++=
=--ΛΛ121121)( 零极点增益模型:z=[z1,z2,……zm],p=[p1,p2……pn],k=[k],)
())(()
())(()(2121n m p s p s p s z s z s z s k s G ------=ΛΛ
四、实验步骤
1.根据参考程序,验证采样定理、拉氏变换和Z变换、控制系统模型建立的方法
2.观察记录输出的结果,与理论计算结果相比较
3.自行选则相应的参数,熟悉上述的各指令的运用方法
五、实验数据及结果分析
记录输出的数据和图表并分析
六、总结。
控制系统数字仿真实验报告

function dy = vdp(t,y)
dy=[y-2*t/y];
end
2.脚本m文件ode.m
[t,y]=ode45('vdp',[0 1],1);
plot(t,y);
xlabel('t');
ylabel('y');
3.运行
(二)试用四阶RK法编程求解下列微分方程初值问题。仿真时间2s,取步长h=0.1。
type=i;
[sysc,Kp,Ti,Td]=pidmargin(sys,type);
sysopen=sysc*sys;
sysclose=feedback(sysopen,1);
sysgroup=append(sysgroup,sysclose);
end
clf
for i=1:4
subplot(2,2,i)
Ti=0.5*Tcr
Td=0.12*Tcr
sysc=Kp*(1+tf(1,[Ti,0])+tf([Td 0],1));
end
end
编写脚本m文件:
clf
sys=tf([500 5000],[1 33 337 1775 4950 5000]);
sysgroup=feedback(sys,1);
for i=1:3
实验三PID控制器设计
一、实验目的
1.了解PID控制原理,掌握相应PID控制器设计仿真程序的应用;
2.掌握计算机辅助系统瞬态性能指标的计算;
3.掌握计算机辅助系统频率性能分析;
二、实验环境
网络计算机系统,MATLAB语言环境
三、实验内容
1.已知如图所示单位反馈系统
自控仿真实验报告

一、实验目的1. 熟悉MATLAB/Simulink仿真软件的基本操作。
2. 学习控制系统模型的建立与仿真方法。
3. 通过仿真分析,验证理论知识,加深对自动控制原理的理解。
4. 掌握控制系统性能指标的计算方法。
二、实验内容本次实验主要分为两个部分:线性连续控制系统仿真和非线性环节控制系统仿真。
1. 线性连续控制系统仿真(1)系统模型建立根据题目要求,我们建立了两个线性连续控制系统的模型。
第一个系统为典型的二阶系统,其开环传递函数为:\[ G(s) = \frac{1}{(s+1)(s+2)} \]第二个系统为具有迟滞环节的系统,其开环传递函数为:\[ G(s) = \frac{1}{(s+1)(s+2)(s+3)} \](2)仿真与分析(a)阶跃响应仿真我们对两个系统分别进行了阶跃响应仿真,并记录了仿真结果。
(b)频率响应仿真我们对两个系统分别进行了频率响应仿真,并记录了仿真结果。
(3)性能指标计算根据仿真结果,我们计算了两个系统的性能指标,包括上升时间、超调量、调节时间等。
2. 非线性环节控制系统仿真(1)系统模型建立根据题目要求,我们建立了一个具有饱和死区特性的非线性环节控制系统模型。
其传递函数为:\[ W_k(s) = \begin{cases}1 & |s| < 1 \\0 & |s| \geq 1\end{cases} \](2)仿真与分析(a)阶跃响应仿真我们对非线性环节控制系统进行了阶跃响应仿真,并记录了仿真结果。
(b)相轨迹曲线绘制根据仿真结果,我们绘制了四条相轨迹曲线,以分析非线性环节对系统性能的影响。
三、实验结果与分析1. 线性连续控制系统仿真(a)阶跃响应仿真结果表明,两个系统的性能指标均满足设计要求。
(b)频率响应仿真结果表明,两个系统的幅频特性和相频特性均符合预期。
2. 非线性环节控制系统仿真(a)阶跃响应仿真结果表明,非线性环节对系统的性能产生了一定的影响,导致系统响应时间延长。
控制系统仿真实验报告一

end
figure(1)
plot([0:hStep:nCounter*hStep]',Hlevel)
Grid
2、函数文件
functionNewX=my_wsh(h,t0,x0,u0)
K1=l_2(t0,x0,u0);
K2=l_2(t0+h/2,x0+h*K1/2,u0);
K3=l_2(t0+h/2,x0+h*K2/2,u0);
U=0.55,h=30 U=0.55,h=40
U=0.55,h=41 U=0.55,h=42
U=0.55,h=45 U=0.55,h=48
结论:由图可知,当h大于41时RK4变得不稳定
(3)ode45脚本文件
clc
clear
close
[t,H]=ode45('ode4_5',[1 200],[1.2 1.1]);
function[dh]=l_2(t,x,u)
A=2;
ku=0.1/0.5;
alpha12 = 0.25/sqrt(1.5);
alpha2 = 0.25/sqrt(1.4);
dh(1)=(ku*(u(1))-x(1,1)/(2*sqrt(1.5)/alpha12)+u(2))/A;
dh(2)=(x(1,1)/(2*sqrt(1.5)/alpha12)-x(1,2)/(2*sqrt(1.4)/alpha2))/A;
控制系统计算机仿真-实验五

实验五 采样控制系统的数字仿真实验 一、实验目的1. 掌握采样控制系统数字仿真的特点。
2.了解数字控制器对系统动态性能的影响。
3. 学会编制双重循环法的仿真程序。
二、实验预习1.复习采样控制系统的仿真原理及特点。
2.根据理论分析, 初步估计系统在给定条件下可能出现的动态过程。
三、实验要求1.整理各种实验条件下的数据和曲线。
2.分析两种控制器对系统动态性能的影响, 并写出实验报告。
四、实验内容 某单位反馈控制系统中, 被控对象的传递函数为)1(10)(0+=s s s G 在单位速度信号输入 下, 选择零阶保持器在 时设计的“最少拍”控制器为2121718.0282.010999.0471.0543.0)(------+-=zz z z z D 1) 1.按实验目的、要求和已知条件, 建立系统的Simulink 模型, 并且编制双重循环法的仿真程序。
2) Simulink 模型建立:根据题目给出的条件, 数字控制系统的结构图如下图所示:其中的其中数字控制器为:1221220.5430.4710.09990.5430.4710.0999()10.2820.7180.2820.718z z z z D z z z z z -----+-+==---- (1) 建立Simulink 模型如下图所示:3) 编制双重循环法的仿真程序 根据数字控制系统的结构图与条件(1)式, 我们可以得到得到被控对象的状态空间模型:[]112212()()0010()()()110()()01()x t x t u t x t x t x t y t x t ⎧⎡⎤⎡⎤⎡⎤⎡⎤=+⎪⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦⎪⎣⎦⎣⎦⎨⎡⎤⎪=⎢⎥⎪⎣⎦⎩(2) 按连续系统离散相似算法将(2)式离散化。
为了保证精度, 其离散化时的步长h (虚拟采样周期)应比数字控制器的实际采样周期T (=1s)小得多。
为简化起见, 取h=T/N=T/100=0.01T=0.01s 。
计算机控制系统实验报告2

江南大学物联网工程学院《计算机控制系统》实验报告实验名称实验二微分与平滑仿真实验实验时间2017.10.31专业自动化班级1503 姓名汪涛学号********** 指导教师陈珺实验成绩一、实验目的与要求1、了解微分对采样噪音的灵敏响应。
2、了解平滑算法抑制噪音的作用。
3、进一步学习MATLAB 及其仿真环境SIMULINK 的使用。
二、仿真软硬件环境PC 机,MATLAB R2012b 。
三、实验原理如图微分加在正反馈输入端,计算机用D(Z)式进行微分运算。
R 为阶跃输入信号,C 为系统输出。
由于微分是正反馈,当取合适的微分时间常数时,会使系统响应加快。
若微分时间常数过大,则会影响系统稳定性。
四、D(Z)设计1、未平滑时的D(Z)用一阶差分代替微分运算:)1()()()(1--==Z TT Z X Z Y Z D D 式中T D为微分时间常数,T 为计算机采样周期。
2、平滑后的D(Z)微分平滑运算原理如图:取Y *(k)为四个点的微分均值,有)331(6)()()( )33(6 )5.15.05.05.1(4)( 321321221*-----------+==∴--+=-+-+-+-=Z Z Z T T Z X Z Y Z D X X X X TT X X X X X X X X T T K Y D K K K K D K K K K Dx x x k -3 x k -2 x k -1 x k t T 0.5T T 0.5T + + ○× R C五、SIMULINK仿真结构图六、仿真实验记录参数设置R、C波形记录未平滑T=0.02STD=0.01SD(Z)=D(Z)=0.5(1-Z-1)平滑T=0.02ST D=0.01SD(Z)=1/12+1/4Z-1/4Z2-12Z3未平滑T=0.04ST D=0.02SD(Z)=0.5(1-Z-1)平滑T=0.04ST D=0.02SD(Z)=0.5*平滑T=0.02ST D=0.02SD(Z)=1/6(1+3Z-1-3Z-2-Z-3)平滑T=0.04ST D=0.01SD(Z)=0.25*七、思考题1、微分噪音与采样噪音和采样周期T有什么关系?与微分时间常数有什么关系?在采样周期T相同的情况下,TD越大,微分噪音越严重;在TD相同的情况下,采样周期T越小微分噪音越严重。
控制系统仿真实验报告书

一、实验目的1. 掌握控制系统仿真的基本原理和方法;2. 熟练运用MATLAB/Simulink软件进行控制系统建模与仿真;3. 分析控制系统性能,优化控制策略。
二、实验内容1. 建立控制系统模型2. 进行仿真实验3. 分析仿真结果4. 优化控制策略三、实验环境1. 操作系统:Windows 102. 软件环境:MATLAB R2020a、Simulink3. 硬件环境:个人电脑一台四、实验过程1. 建立控制系统模型以一个典型的PID控制系统为例,建立其Simulink模型。
首先,创建一个新的Simulink模型,然后添加以下模块:(1)输入模块:添加一个阶跃信号源,表示系统的输入信号;(2)被控对象:添加一个传递函数模块,表示系统的被控对象;(3)控制器:添加一个PID控制器模块,表示系统的控制器;(4)输出模块:添加一个示波器模块,用于观察系统的输出信号。
2. 进行仿真实验(1)设置仿真参数:在仿真参数设置对话框中,设置仿真时间、步长等参数;(2)运行仿真:点击“开始仿真”按钮,运行仿真实验;(3)观察仿真结果:在示波器模块中,观察系统的输出信号,分析系统性能。
3. 分析仿真结果根据仿真结果,分析以下内容:(1)系统稳定性:通过观察系统的输出信号,判断系统是否稳定;(2)响应速度:分析系统对输入信号的响应速度,评估系统的快速性;(3)超调量:分析系统超调量,评估系统的平稳性;(4)调节时间:分析系统调节时间,评估系统的动态性能。
4. 优化控制策略根据仿真结果,对PID控制器的参数进行调整,以优化系统性能。
调整方法如下:(1)调整比例系数Kp:增大Kp,提高系统的快速性,但可能导致超调量增大;(2)调整积分系数Ki:增大Ki,提高系统的平稳性,但可能导致调节时间延长;(3)调整微分系数Kd:增大Kd,提高系统的快速性,但可能导致系统稳定性下降。
五、实验结果与分析1. 系统稳定性:经过仿真实验,发现该PID控制系统在调整参数后,具有良好的稳定性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机仿真试验报告
自动化1201 ** 3120502007
[实验目的]
(1).掌握采样控制系统数字仿真的特点。
(2).了解数字控制器对系统动态性能的影响。
(3).学会编制双重循环法的仿真程序。
(1). 复习采样控制系统的仿真原理及特点。
(2).根据理论分析,初步估计系统在给定条件下可能出现的动态过程。
(1).按实验目的、要求和已知条件,建立系统的Simulink模型,并且编制双重循环法的仿真程序。
1) Simulink模型建立:
根据题目给出的条件,数字控制系统的结构图如下图所示:
其中的其中数字控制器为:
根据上面结构图,所建立
2) 编制双重循环法的仿真程序
根据数字控制系统的结构图与条件(1)式,我们可以得到得到被控对象的状态空间模型:
[]112212()()0010()()
()110()()01()x t x t u t x t x t x t y t x t ⎧⎡⎤⎡⎤⎡⎤⎡⎤=+⎪⎢⎥⎢⎥⎢⎥⎢⎥-⎣
⎦⎣⎦⎪⎣⎦⎣⎦⎨
⎡⎤
⎪=⎢⎥⎪
⎣⎦⎩
(2)
按连续系统离散相似算法将(2)式离散化。
为了保证精度,其离散化时的步长h (虚
拟采样周期)应比数字控制器的实际采样周期T (=1s)小得多。
为简化起见,取h=T/N=T/100=0.01T=0.01s 。
利用MATLAB 控制系统工具箱提供的将连续系统转换成离散系统的函数c2d ,把连续状态空间模型(2)变换为离散状态空间模型。
离散程序如下(程序1):
clear;
h=0.01; A=[0 0;1 -1]; B=[10;0];
[G,H]=c2d(A,B,h)
运行后的结果为:
即:
1
0(())0.010.99T ⎡⎤==⎢⎥⎣⎦
G Φ (3) 0.1(())0.0005T ⎡⎤
==⎢
⎥
⎣⎦
H Γ (4) 故连续系统被控对象(2)的等价离散化状态方程为:
[]112212(1)()100.1()(1)()0.010.990.0005()()01()x k x k u k x k x k x k y k x k ⎧+⎡⎤⎡⎤⎡⎤⎡⎤
=+⎪⎢⎥⎢⎥⎢⎥⎢⎥
+⎣⎦⎣⎦
⎪⎣⎦⎣⎦⎨
⎡⎤
⎪=⎢⎥⎪
⎣⎦⎩
(5)
根据上述条件,采样控制系统数字控制器的差分方程为u k u k u k e k e k e k
=-+-+--+- (6)
()0.282(1)0.718(2)0.543()0
2)
式中:()()()
e k r k y k
=-(7)
根据例题3.2中仿真框图分别递推求解 (5)式和 (6)式的MATLAB仿真程序:
程序2如下:
clear
G=[1 0;0.01 0.99];
H=[0.1;0.0005];c=[0 1]; % 连续被控对象的离散化状态方程的系数阵
h=0.01;T=1; % 设定内循环步长h=0.01,而外循环则以采样周期T=0.1为步长N=round(T/h); % 在一采样周期内连续被控对象的离散化状态方程递推N次(内循环) TF=15; % 设定总仿真时间为15s
M=round(TF/T); % 数字控制器的差分方程递推M次(外循环)
x=[0;0];
u=zeros(1,M+2);
e=zeros(1,M+2);
u(1)=0;
u(2)=0;
t=0;
xt=x;
for i=1:M % 外循环
y=c*x;
r(i)=i;
e(i+2)=r(i)-y;
u(i+2)=0.282*u(i+1)+0.718*u(i)+0.543*e(i+2)-0.471*e(i+1)+0.0999*e(i); % 外循环中递推求数字控制器在实际采样时刻的输出(步长为T)
for j=1:N % 内循环
x=G*x+h*u(i+2); % 内循环中递推求受控对象状态响应(步长为h)
xt=[xt,x]; % yt为记载各步状态响应的矩阵
t=[t,j*h+(i-1)*T]; % t为记载各采样(kT)时刻的行向量(与yt对应)
end
end
x2t=xt(2,:);
plot(t,t,':k',t+T,x2t,'k');
legend('r', 'y');
grid;
xlabel('time(s)');
title('双重循环法仿真程序的运行结果');
(2). 分别运行双重循环法的仿真程序和Simulink模型,观察纪录系统动态性能的变化。
1) 运行双重循环法的仿真程序结果如下所示:
2)运行Simulink模型结果如下图所示:
进行对比发现,两种方法结果基本相同。
双重循环法通用性较强,不仅可得到控制系统的输出值,还可得到被控对象内部状态变量的响应;也可用于被控对象中含有典型非线性环节的非线性系统的仿真。
克服了差分方程递推求解法
不能计算被控对象的内部状态变量的响应特性,对被控对象含有非线性环节的情况也不适用的局限性。
1) 更改只需改Discrete Transfer Fcn 参数即可,Simulink模型为:输出结果如下:
2)双重循环法:
改变数字控制器后,连续系统离散化模型是不变的,只需将控制系统差分方程改写即可:=-+-+--+-(7)u k u k u k e k e k e k
()0.407(1)0.593(2)0.383()0.365(1)0.825(2)
重新编写双重循环仿真程序如下(程序3):
clear
G=[1 0;0.01 0.99];
H=[0.1;0.0005];c=[0 1]; % 连续被控对象的离散化状态方程的系数阵
h=0.01;T=1; % 设定内循环步长h=0.01,而外循环则以采样周期T=0.1为步长N=round(T/h); % 在一采样周期内连续被控对象的离散化状态方程递推N次(内循环) TF=15; % 设定总仿真时间为15s
M=round(TF/T); % 数字控制器的差分方程递推M次(外循环)
x=[0;0];
u=zeros(1,M+2);
e=zeros(1,M+2);
u(1)=0;
u(2)=0;
t=0;
xt=x;
for i=1:M % 外循环
y=c*x;
r(i)=i;
e(i+2)=r(i)-y;
u(i+2)=0.407*u(i+1)+0.593*u(i)+0.383*e(i+2)-0.365*e(i+1)+0.0825*e(i);
% 外循环中递推求数字控制器在实际采样时刻的输出(步长为T)
for j=1:N % 内循环
x=G*x+h*u(i+2); % 内循环中递推求受控对象状态响应(步长为h)
xt=[xt,x]; % yt为记载各步状态响应的矩阵
t=[t,j*h+(i-1)*T]; % t为记载各采样(kT)时刻的行向量(与yt对应)
end
end
x2t=xt(2,:);
plot(t,t,':k',t+T,x2t,'k'); legend('r', 'y');
grid;
xlabel('time(s)');
title('“无波纹”双重循环法仿真结果');
程序运行结果输出如下所示:。