![先进PID控制MATLAB仿真(第5版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/9/47549009/b_47549009.jpg)
1.3.3 离散系统的数字PID控制算法
控制对象为
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_35_3.jpg?sign=1739000886-zajcJkwCIuQTt64gRWLXOiS1GPwNyPKV-0-01d09d8cb00dd2970b540f4b10a86c06)
采样时间为1ms,采用z变换进行离散化,经过z变换后的离散化对象为
y(k)=-den(2)y(k-1)-den(3)y(k-2)-den(4)y(k-3)+num(2)u(k-1)+num(3)u(k-2)+num(4)u(k-3)
【仿真之一】 指令为阶跃信号、正弦信号和方波信号
设计离散PID控制器。其中,S为信号选择变量,S=1时为阶跃跟踪,S=2时为方波跟踪,S=3时为正弦跟踪,仿真结果如图1-13~图1-15所示。
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_35_4.jpg?sign=1739000886-woyrbIp1mVS8LTI0ARTZRWIAR4o93CJn-0-3395a9128c6d658f77a29d2ae40c9e56)
图1-13 PID阶跃跟踪(S=1)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_36_1.jpg?sign=1739000886-NSLFtjeEApE4w1LPIBxr1RgUBdBIkjDv-0-af7545605216b2e770c2333059936390)
图1-14 PID方波跟踪(S=2)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_36_2.jpg?sign=1739000886-TxZgdJW7DEbsNozanYBOh7WbJRnpJKq6-0-f4dc366125b605f49606b9f81de70f58)
图1-15 PID正弦跟踪(S=3)
〖仿真程序〗 chap1_9.m
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_36_3.jpg?sign=1739000886-mFIxHgGJ31I4itnGP0P0RoFlBgTEnqiX-0-ca086aebdf3feeff97db3ef2ed97a6f3)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_37_1.jpg?sign=1739000886-YR8jZj92ysJm6gvID1V1dpi6kz6F1isi-0-795a03b4075037d4695a8d421d70207f)
【仿真之二】 指令为三角波、锯齿波和随机信号
设计离散PID控制器,各信号的跟踪结果如图1-16~图1-18所示,其中S代表输入指令信号的类型。通过取余指令mod实现三角波和锯齿波。当S=1时为三角波,S=2时为锯齿波,S=3时为随机信号。在仿真过程中,如果D=1,则通过pause命令实现动态演示仿真。在随机信号跟踪中,对随机信号的变化速率进行了限制。
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_38_1.jpg?sign=1739000886-RbR3mvLdmRdRIbJHmygSqfYQgmyiAUzW-0-8f60f5ef105d14f502a502d3a24f1709)
图1-16 PID三角波跟踪(S=1)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_38_2.jpg?sign=1739000886-S0SzQJddohFgnDlHUJbGsmyxIouPnomK-0-10afeb2d8590d8745cc8fba2a57f05c5)
图1-17 PID锯齿波跟踪(S=2)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_38_3.jpg?sign=1739000886-7Dhi5enprV4zf7xnlOVCjBCSXkIc0Lls-0-afde1dcd0007054b9cf8d498ec69afd5)
图1-18 PID随机信号跟踪(S=3)
〖仿真程序〗 chap1_10.m
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_38_4.jpg?sign=1739000886-wgGHrfKL3HzhqOje0tYp0PKxXxBYAkoe-0-534bc118d8e9098ab590ae35c47105b4)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_39_1.jpg?sign=1739000886-K1nem0RobBWBaWWeHpvkobtske2DwuUl-0-6aea62e820701dc5690efb52078b4aa8)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_40_1.jpg?sign=1739000886-hhIkObYmXgbG4KdOgdA2q7ENPiRzqju1-0-5dec87bb0b82c82820c40d9525f2ea46)
上述PID控制算法的缺点是,由于采用全量输出,所以每次输出均与过去的状态有关,计算时要对error(k)量进行累加,计算机输出控制量u(k)对应的是执行机构的实际位置偏差,如果位置传感器出现故障,u(k)可能会出现大幅度变化。u(k)的大幅度变化会引起执行机构位置的大幅度变化,这种情况在生产中是不允许的,在某些重要场合还可能造成重大事故。为避免这种情况的发生,可采用增量式PID控制算法。
【仿真之三】 采用Simulink实现离散PID控制器
离散PID控制的封装界面如图1-19所示,在该界面中可设定PID的三个系数、采样时间及控制输入的上下界。仿真结果如图1-20所示。
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_40_2.jpg?sign=1739000886-PrmbelYMar7NbZOpwd4TrV0JxfXJgQG2-0-2221aa79fb3da77f48b24c0b103388d2)
图1-19 离散PID控制的封装界面
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_41_1.jpg?sign=1739000886-9gQV6I72yztFBR32of39Nvu3ewntbmXv-0-d833cd94711c8198ce311c706cee53dc)
图1-20 采用Simulink离散PID控制的阶跃跟踪
〖仿真程序〗
(1)Simulink主程序:chap1_11.mdl
离散PID控制的比例、微分和积分三项分别由Simulink模块实现。
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_41_2.jpg?sign=1739000886-LarOAcD0eOl6zNGqIfzF1ZUC3npscamb-0-327c834fc5c7dc4cc1454baa804d681a)
离散PID控制器子程序如下:
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_41_3.jpg?sign=1739000886-s3EJZKKOTcLmjZguP4McFHM4Ezdz5veO-0-ae5353b51786a59c350381a4b5878d90)
(2)作图程序:chap1_11plot.m
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_41_4.jpg?sign=1739000886-DTez3isXwTF3pZMAaobN02Ob83gMM2cu-0-1fafa50c5498dbc649f10207c1d085f8)