直流电机PID闭环数字控制器设计

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5——30
18.40
0.42
0.94
16
5——40
30.37
0.58
1.24
8
5——50
40.34
0.77
1.46
78
图3 250转/min跃变到1000转/min测得波形如图
图4 250转/min跃变到1500转/min测得波形如图
图5 250转/min跃变到2000转/min测得波形
图6 250转/min跃变到2500转/min测得波形
(5)利用Simulink环境求取响应----适于所有系统求取响应。
1、PID调节原理
比例调节作用:按比例反应系统的偏差产生调节作用。比例作用大,可以加快调节,减少误差,但是过大的比例,使系统的稳定性下降,甚至造成系统不稳定。
积分调节作用:消除稳态误差。积分作用的强弱取决与积分时间常数Ti,Ti越小,积分作用就越强;反之,Ti大则积分作用弱
(2)观测的实验结果
由整理的经验结果和实验,我们选择参数为 , , 进行实验,设定值从250转/min跳变到不同转速下的暂态和稳态性能指标。
表1标准PID实验数据记录表
跃变(*50转/min)
超调量 (%)
峰值时间 (s)
调整时间 (s)
稳态误差(转/min)
5——20
10.03
0.34
0.61
23
以下为比较相同PID参数 , , 下设定值从250转/min跃变到2500转/min时不同PID控制算法下的响应波形。实验结果记录如下:
表2几种PID实验数据对比记录表
PID控制算法
超调量 (%)
峰值时间
调整时间
稳态误差(转/min)
标准
39.84
0.74
2.19
0
积分分离
19.83
1.12
2.27
(4)
式中
3、直流电机闭环调速系统原理
图2直流电机闭环调速系统原理
(4)被模拟对象模型描述
该闭环调速实验中,直流电机对象可通过实验测得其空载时的标称传递函数如下:
(5)
实验过程与分析
依据电机模型公式(5),在simulink中搭建直流电机闭环调速的仿真模型,分析PID对对象的影响,并选择一组较好的PID参数为在实验操作提供可行依据,搭建的模型如下:
微分调节作用:微分作用反映系统偏差信号的变化率,产生超前的控制作用。在偏差还没有形成之前,已被微分调节作用消除,改善系统的动态性能。在微分时间选择合适情况下,可以减少超调,减少调节时间。微分作用不能单独使用。
按偏差的PID是过程控制中应用最广泛的一种控制规则,该调解器是一种线性调节器,。PID的控制原理表达式为:
Tf=3;
a=Tf*100/(Tf+5);
KP=P;
KI=5*KP/I; //求出积分系数KI
KD=D*P/5; //求出微分系数Kp
II=II+E; //求出积分
U_=KP*E+KD*(E-E0)+KI*II;
U_=U_/100;
U=a*U0/100+(100-a)*U_;
E0=E;
U0=U;
return U;
其中PID模块的封装为:
(1)实验程序
标准PID程序:
int pid(int P,int I,int D,int E)
{
int KI,KD,KP,U;
KP=P;
KI=5*KP/I; //求出积分系数KI
KD=D*P/5; //求出微分系数Kp
II=II+E; //求出积分
U=KP*E+KD*(E-E0)+KI*II;
if(E<0)
fa=-E;
else
fa=0;
if(fa>10) //积分KI不参加运算
{
U_=KP*E+KD*(ELeabharlann BaiduE0);
}
else //积分KI参加运算
{
U_=KP*E+KD*(E-E0)+KI*II;
}
U_=U_/100;
U=a*U0/100+(100-a)*U_;
U0=U;
E0=E;
return U;
广西大学实验报告纸
姓名:指导老师:成绩:
学院:专业:班级
实验内容:直流电机PID闭环数字控制器设计2014年
其他组员:
实验时间:2014年10月28号
实验方式:课外在MATLAB平台上完成实验。
实验目的:
1、掌握线性系统状态空间标准型、解及其模型转换。
实验设备与软件:
1、MATLAB数值分析软件
实验原理:
图1 PID控制原理图
2、PID算法的数字实现
(1)标准PID算法:
在输出不振荡时,增大比例增益,减小积分时间常数,增大微分时间常数。因本实验采用的是一种离散时间的离散控制系统,因此为了用计算机实现PID控制必须将其离散化,故可用数字形式的差分方程来代替
(1)
式中积分系数 微分系数 ,其中 --采样周期; --第n次采样时计算机输出; --第n次采样时的偏差值; --第n-1次采样时的偏差值.
可将上式转化成增量的形式:
(2)
(2)积分分离PID控制算法
与上述标准算法比,该算法引进积分分离法,既保持了积分的作用,又减小了超调量,使控制性能得到较大的改善。令积分分离法中的积分分离阈值为 ,则
(3)
(3)不完全微分PID算法
微分作用容易引起高频干扰,因此通常在典型PID后串接一个低通滤波器来抑制高频干扰,微分作用能在各个周期按照偏差变化趋势均匀的输出,真正起到微分的作用,改善系统性能。这样得到的PID算法成为不完全微分PID算法,表达式为:
else
fa=0;
if(fa>10) //积分KI不参加运算
{
U=KP*E+KD*(E-E0);
}
else //积分KI参加运算
{
U=KP*E+KD*(E-E0)+KI*II;
}
E0=E;
return U;
}
不完全微分PID程序
int pid(int P,int I,int D,int E)
{
int KI,KD,KP,Tf,U_,a,U;
1、求矩阵特征值
[V J]=eig(A),cv= eig(A)
2、求运动的方法
(1)利用Laplace/Z逆变换----适合于连续/离散线性系统;
(2)用连续(离散)状态转移矩阵表示系统解析解----适合于线性定常系统;
(3)状态方程的数值积分方法----适合于连续的线性和非线性系统;
(4)利用Cotrol ToolBox中的离散化求解函数----适合于LTI系统;
}
不完全微分+积分分离PID程序
int pid(int P,int I,int D,int E)
{
int KI,KD,KP,fa,a,Tf,U,U;
Tf=3;
a=Tf*100/(Tf+5);
KP=P;
KI=5*KP/I; //求出积分系数KI
KD=D*KP/5; //求出微分系数Kp
II=II+E; //求出积分
E0=E;
return U;
}
积分分离PID程序:
int pid(int P,int I,int D,int E)
{
int KI,KD,KP,U,fa;
KP=P;
KI=5*KP/I; //求出积分系数KI
KD=D*KP/5; //求出微分系数Kp
II=II+E; //求出积分
if(E<0)
fa=-E;
39
不完全微分
22.06
0.71
1.97
20
积分分离+不完全微分
17.47
0.68
1.44
39
图7标准PID控制算法测得波形
图8积分分离PID控制算法测得波形
图9不完全微分PID控制算法测得波形
图10积分分离+不完全微分PID控制算法测得的波形
实验结论和总结
通过实验我们可以知道:当偏差阶跃发生时,加入微分环节,使系统阻尼增加,从而抑制振荡,使超调减弱,从而改善系统;比例环节也可以起到消除偏差的作用,而且因为比例的作用是一直存在的,并且是起主要作用的控制规律,可以使系统保持稳定;加入积分环节,可以消除稳态误差。通过实验选择合适的参数,可充分发挥三种控制规律的优点。在整个实验中我们学会了PID控制的多种方法,并且对其算法的优缺点有了更进一步的了解,使得我们在以后的学习中更加深刻。
相关文档
最新文档