![先进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=1739275900-YCX1CzGMl8D18nTthQh0rGp9IW8S7BAH-0-51cac5394e5bb72b2ddb714c8ef7ee2f)
采样时间为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=1739275900-brpBbx3aqWlzpPZAkXMiRaujCc52VEWw-0-caa6a2ae90691657884619caa417eb88)
图1-13 PID阶跃跟踪(S=1)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_36_1.jpg?sign=1739275900-x7rfo3bfgivC9d4k2W0UKZz6jZ7e7P0B-0-e042c447fcf793446f56ffae64e2f52c)
图1-14 PID方波跟踪(S=2)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_36_2.jpg?sign=1739275900-rJ8xnP245gEard5vfFtNPg5K4nk9W8kv-0-5fac3df56bd091bd3957d5c0525d9cda)
图1-15 PID正弦跟踪(S=3)
〖仿真程序〗 chap1_9.m
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_36_3.jpg?sign=1739275900-APoVe1FSw8TwofdlAlTs7EjCZ3jq3qRW-0-c35941d242a891801268e824da6cd528)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_37_1.jpg?sign=1739275900-DHEjhbekq06mn4rgB19W4swwerezQuVY-0-59365a9a73a23743265c8188b1456cb8)
【仿真之二】 指令为三角波、锯齿波和随机信号
设计离散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=1739275900-5cuIBRkCaXfCnFRkaa9zanavB3W4fpZM-0-2d0362307caf140e4b5737083fdf898d)
图1-16 PID三角波跟踪(S=1)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_38_2.jpg?sign=1739275900-4fSJfr4P5tHcjsVSl8qGz2Mjdh8uXYDY-0-f5b245ed867c244d0923aa888a443db2)
图1-17 PID锯齿波跟踪(S=2)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_38_3.jpg?sign=1739275900-XffIL3PXNwCmR8DfXZf88UmghkPuPDzk-0-94a9f2c6df0fb9dba36aa82400a48823)
图1-18 PID随机信号跟踪(S=3)
〖仿真程序〗 chap1_10.m
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_38_4.jpg?sign=1739275900-y5ER9qRRDg3m1fxFKUTEkjtCTu5DfrwY-0-d108d3d511db52e2091d910c37f3ed14)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_39_1.jpg?sign=1739275900-maqC1NHx0sGo2MQB2yJtWajV4Bi0Z1Oz-0-ac4d2db17d168adf4ac9b08440c09121)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_40_1.jpg?sign=1739275900-6iK4xslSLLsWuqPTtMBVDCTGMUTWBgXH-0-155e56a65efd26b13325a1faa6cbd171)
上述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=1739275900-fNZE3xd24BgiJhQdlTSU08qsZnSoc12G-0-b04c06a46621bf2c46fa3553e6cb2a32)
图1-19 离散PID控制的封装界面
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_41_1.jpg?sign=1739275900-8ZCziAjlsxtj0ll27pFXYIuD68JJZE24-0-f27b5faf1859d34068772eb0fd1148b9)
图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=1739275900-dpccgMzicMjWHtMcfU8MpNZCyjV5q2IC-0-40fa1c98c5bc47bd6a607cc98f803e97)
离散PID控制器子程序如下:
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_41_3.jpg?sign=1739275900-9XuZjNWiRO6wf6BTw4WoWwtzQagWlH4K-0-f87607c9b5de960c18bd64d399c9e6b7)
(2)作图程序:chap1_11plot.m
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_41_4.jpg?sign=1739275900-3aeM2ryWZYfci2k1ya7bwM4HpRnvnWi4-0-5e7ec03623b8961ee6d15e63529aafb0)