实验七 控制系统PID校正器设计法
一、实验目的
1、熟悉常规PID控制器的设计方法 2、掌握PID参数的调节规律
3、学习编写程序求系统的动态性能指标
二、实验基本原理
1.模拟PID控制器
典型的PID控制结构如图1所示。 PID控制器 比 例 e(t) r(t) u(t) ` 对象模型 积 分
微 分
图1 典型PID控制结构
PID调节器的数学描述为
y(t) u(t)?Kp[e(t)?1Ti?t0e(?)d??Tdde(t)] dt2 数字PID控制器
在计算机PID控制中,连续PID控制算法不能直接使用,需要采用离散化方法,通常使用数字PID控制器。以一系列采样时刻点kT(T为采样周期)代表连续时间t,以矩形法数值积分近似代替积分,以一阶后向差分近似代替微分,即:
??t?kT?kkt? e(?)d??Te(jT)?Te(j)????0j?0j?0??de(t)e(kT)?e((k?1)T)e(k)?e(k?1)???TT?dt离散PID表达式:
1u(k)?Kp[e(k)?Ti?e(j)T?Tj?0kde(k)?e(k?1)]
T三、实验程序及结果
1、在SIMULINK窗口建立如下模型 2、设计PID控制器,传递函数模型如下
30
计算得出 M=92.7299 p=0.0924 tp=2.5103 tr=1.8008 ts=3.4543 yss=84.8827 满足条件。
此时PID参数如下表: 参数 Kp Ti Td 数值 5 5 2 程序如下:
%system analyse %M maxmun %p over
31
%tp maxmun-time %ts transition-time %tr rise_time %yss stable
function[M,p,tp,tr,ts,yss]=sys_ana(t,y); tm=length(t); yss=y(tm);
[M tpk]=max(y); tp=t(tpk); p=(M-yss)/yss;
while (y(tm)>0.95*yss)&(y(tm) ts=t(tm); k=1; while y(k)<=yss*0.98 k=k+1; end tr=t(k); 6、将输入信号设为r(k)?0.50sin(2?t),调节PID控制器参数,绘制正弦跟踪曲线。 32 实验八 线性方程组求解及函数求极值 一、实验目的 1、理解线性方程组求解方法 2、理解函数求极值方法 3、通过练习以下内容熟悉求解线性方程组的方法和函数求极值的方法 二、实验说明 1.自主编写程序,必要时参考相关资料 2.实验前应写出程序大致框架或完整的程序代码 5.实验学时:2学时 三、实验内容及实验程序 1、求下列方程组的解 ?2x?3y?5z?10?1) ?3x?7y?4z?3 ?x?7y?z?5??6x1?5x2?2x3?5x4??4?9x?x?4x?x?13?1234 ?3x?4x?2x?2x?1234?1??3x1?9x2?2x4?11 33 2、求下列函数在指定区间的最大值 1?x2,x?(0,2) 1)f(x)?41?x>> f='-(1+x^2)/(1+x^4)',x=fminsearch(f,0),ymax=(1+x^2)/(1+x^4) f = -(1+x^2)/(1+x^4) x = 0.6436 ymax = 1.2071 2)f(x)?sinx?cosx,x?(0,?) >> f='-sin(x)-cos(x^2)',x=fminsearch(f,0),ymax=sin(x)+cos(x^2) f = -sin(x)-cos(x^2) x = 0.7310 ymax = 1.5282 2心得体会: 通过这几次做实验,基本掌握了的基本matlab的功能,也把matlab强大的功能应用于其他几门课实验数据的处理。 34