毕业论文

打赏
当前位置: 毕业论文 > 机械论文 >

MATLAB交流伺服系统ARM单片机制软件设计及仿真(6)

时间:2017-01-17 19:53来源:毕业论文
图3.2 位置式PID控制阶跃响应 从图中可以看出位置式PID控制阶跃响应没有超调,调整时间短,没有产生振荡,离散控制过程与连续控制过程很接近。 式(3


 
图3.2 位置式PID控制阶跃响应
从图中可以看出位置式PID控制阶跃响应没有超调,调整时间短,没有产生振荡,离散控制过程与连续控制过程很接近。
式(3-4)和式(3-5)表示的控制算法是由式(3-2)所给出的PID控制规律直接定义进行计算的,所以它给出了全部控制量的大小,因此被称为位置式PID控制算法。
这种算法存在的问题是:由于是全量输出,所以每次输出均与过去状态有关,计算时要对 进行累加,工作量很大;此外,因为单片机输出的 对应的是执行机构的实际位置,如果单片机出现故障,输出 会大幅度变化,从而引起执行机构的大幅度变化,有可能因此造成严重的事故,这在实际生产中是绝对不允许的。
增量式PID控制算法可以有效避免这种现象产生。
3.2.2  增量式PID控制及MATLAB仿真
增量式PID指的是数字控制器的输出只是控制量的增加 。可以通过式(3-4)推导增量式PID控制算法。由式(3-4)可以得到控制器在第k-1个采样时刻的输出值为
 
将式(3-4)与式(3-6)相减,并整理,可以得到增量式PID控制算法公式为

式(3-7)还可以改写成下面的形式:
由式(3-7)可以看出,当单片机控制系统采用恒定的采样周期T,一旦确定了A、B、C,只要使用前后3次测量的偏差,就可以由式(3-7)求出控制量的增量。
增量式PID控制算法与位置式PID控制算法相比,计算量小得多,因此在实际中得到广泛应用。
下面利用MATLAB对增量式PID控制进行仿真。取采样周期为0.001s,采样2000次,输入值为10,选定合理的控制参数后进行仿真。增量式PID控制阶跃响应如图3.3所示。
 
图3.3 增量式PID控制阶跃响应
对于位置式PID控制算法可以通过增量式PID控制算法推出递推公式:
 
这就是目前在单片机控制中广泛应用的数字递推PID控制公式。
3.3  数字PID的改进及MATLAB仿真
3.3.1  积分分离PID控制及MATLAB仿真
在数字PID控制器中,引入积分环节的主要目的是为了消除系统的静态误差,提高系统的控制精度。当电机启动、停车或大幅度增减设定值时,短时间内系统输出很大的偏差,这会造成PID运算的积分积累很大,引起的输出控制量也很大,这一控制量很容易超出执行机构的极限控制量,从而引起强烈的积分饱和效应,会引起系统震荡、调节时间延长等不利结果。
积分分离的思路是:当控制量与给定值的偏差较大时,去掉积分,以防止积分饱和效应的产生;当被控制量与给定值比较接近时,重新引入积分,发挥积分的作用,消除系统静态误差,从而保证了控制的精度,又避免了震荡产生。
具体实现过程如下:
(1)根据实际情况,人为确定一个量X>0;
(2)当 时,采用PD控制,去掉积分项;
(3)当 时,采用PID控制;
因此,在积分项中乘以一个系数 , 取值如下:
 
下面利用位置式PID公式(3-4)来推导积分分离PID控制公式:
根据式(3-12),可以给出积分分离PID控制的程序框图,如图3.4所示。
下面利用MATLAB对积分分离PID控制进行仿真。取采样周期为0.001s,采样50000次,输入值为200,选定合理的控制参数后进行仿真。积分分离PID控制阶跃响应如图3.5所示,普通PID控制阶跃响应如图3.6所示。
由图3.5和图3.6可以明显看出采用积分分离PID控制后,超调量明显减小,调整时间缩短,未出现振荡。可见在大幅度增减设定值时,积分分离PID控制具有优良的控制特性,明显改善控制效果。
 图3.4 积分分离算法程序框图 MATLAB交流伺服系统ARM单片机制软件设计及仿真(6):http://www.751com.cn/jixie/lunwen_2402.html
------分隔线----------------------------
推荐内容