上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.3.9 带滤波器的PID控制算法
采用低通滤波器可有效地滤掉噪声信号,在控制系统的设计中是一种常用的方法。通过以下两个实例验证低通滤波器的滤波性能。
【仿真实例1】 基于低通滤波器的信号处理
设低通滤波器为
采样时间为1ms,输入信号为带有高频(100Hz)正弦噪声的低频(0.2Hz)正弦信号。采用低通滤波器滤掉高频正弦信号。滤波器的离散化采用Tustin变换,其Bode图如图1-32和图1-33所示。仿真结果表明,该滤波器对高频信号具有很好的滤波作用。
图1-32 低通滤波器Bode图
图1-33 原始信号及滤波后信号
〖仿真程序〗 chap1_17.m
【仿真实例2】 采用低通滤波器的PID控制
被控对象为三阶传递函数:
低通滤波器为
采样时间为1ms,噪声信号加在对象的输出端。
【仿真之一】 采用M语言进行仿真
分三种情况进行:M=1时,为未加噪声信号;M=2时,为加噪声信号未加滤波;M=3时,为加噪声信号加滤波。三种情况的阶跃响应仿真结果如图1-34~图1-36所示。
图1-34 普通PID控制阶跃响应(M=1)
图1-35 无滤波器时PID控制阶跃响应(M=2)
图1-36 加入滤波器后PID控制阶跃响应(M=3)
〖仿真程序〗 chap1_18.m
【仿真之二】 采用Simulink进行仿真
控制器采用积分分离PI控制,即当误差的绝对值小于等于0.80时,加入积分控制,仿真结果如图1-37和1-38所示。
图1-37 加入滤波器时PID控制阶跃响应
图1-38 无滤波器时PID控制阶跃响应
〖仿真程序〗
(1)初始化程序:chap1_19int.m
(2)Simulink主程序:chap1_19.mdl
PI控制器子程序如下:
(3)作图程序:chap1_19plot.m