![先进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=1738885366-PZgTOFZIN1Kv2sDIN0TtUdc99yoJnzgm-0-9a147f675452d03f9a179ed7b20cff9d)
采样时间为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=1738885366-Sd2GNAgjn5h5ARVPeU4xCnDHK1AxqoIq-0-6063e5ef078a76189bfff005be49f676)
图1-13 PID阶跃跟踪(S=1)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_36_1.jpg?sign=1738885366-6NnfBIxcspHFiCyzk0Ab3uPdeoLvUr3H-0-9bf974896c7f97a6fad3648f0cb1a717)
图1-14 PID方波跟踪(S=2)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_36_2.jpg?sign=1738885366-37c9MNWVqhj3m3rQjTP3wQI79RlDjmYY-0-a069f1912c4c45aef234850b9fed17c3)
图1-15 PID正弦跟踪(S=3)
〖仿真程序〗 chap1_9.m
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_36_3.jpg?sign=1738885366-l73IJA9WPDh6ZREWxKe9FO0XzOjqm06v-0-71b0bc6cfad92715d17428fd9154ed94)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_37_1.jpg?sign=1738885366-uq0DjAHHMkqStazeIEPb07arPkDbVLMd-0-57cdbd8207c08e3d39ebb99e6719dcbf)
【仿真之二】 指令为三角波、锯齿波和随机信号
设计离散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=1738885366-ORyASiX9KqUV0fiyeWzJIVNI4gcgaAkC-0-0f4e5af0fb26eb64d6671aa4ee819775)
图1-16 PID三角波跟踪(S=1)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_38_2.jpg?sign=1738885366-QmgwJF9JICndvDXDYpZiizKbUc5ayogC-0-88027e3df0e5422f7f64a2760a57c83f)
图1-17 PID锯齿波跟踪(S=2)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_38_3.jpg?sign=1738885366-Kqy25sWANUgjgnr9HuSUDCtS7zECJnVw-0-e45e65b28764b5dc867b3473a9a27dbe)
图1-18 PID随机信号跟踪(S=3)
〖仿真程序〗 chap1_10.m
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_38_4.jpg?sign=1738885366-V9PGQBjOy0j5kbOVEjYEwtR8vgbXtq2m-0-e792dd7023d5df91ef5b246a5c92a631)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_39_1.jpg?sign=1738885366-hx5zynF1cDlYPAndMsLz4Tphv8pYR9Pg-0-d6642f848f5fde481aa235667a0164e0)
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_40_1.jpg?sign=1738885366-zWRIQatJI5FE0wMadKpHVTdrl6MRy3NY-0-fa1b9471169438bb093ca8b9ed1d0524)
上述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=1738885366-0CFryTJMEYbUBP8ZDQDRohlrOC6BiUrG-0-f75d69374e5f510fa0d14cd3101288bb)
图1-19 离散PID控制的封装界面
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_41_1.jpg?sign=1738885366-AL8JrGkSgZ2vNMS73KlmkaWR7CaiTr0J-0-e703490acd6cfb80ccafabb0f9823e70)
图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=1738885366-YU80529BY0apbl2o8fPHvHwIr4A8hOOu-0-5b6b4f9104376887d30eca2edaa5505d)
离散PID控制器子程序如下:
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_41_3.jpg?sign=1738885366-ERLPbnzrlV8NTebHTJXDd9G18I3iuOTJ-0-6625f2c86052e5648a4858e92dd4d5f5)
(2)作图程序:chap1_11plot.m
![](https://epubservercos.yuewen.com/49A0DC/26947284307535106/epubprivate/OEBPS/Images/45295_41_4.jpg?sign=1738885366-WUCvzLlBYFASHIRiAFZWv9YtvfQt2khT-0-ed3b10f43030f5f11253cd339f0baf11)