pid控制的难点在于整定控制器的参数。为了学习整定pid控制器参数的方法,必须做闭环实验,开环运行pid程序没有任何意义。用硬件组成一个闭环需要plc的cpu模块、模拟量输入模块和模拟量输出模块,此外还需要被控对象、检测元件、变送器和执行机构。例如可以用电热水壶作为被控对象,用热电阻检测温度,用温度变送器将温度转换为标准电压,用移相控制的交流固态调压器作执行机构。
有没有比较简单的实现pid闭环控制的方法呢?
在控制理论中,用传递函数来描述被控对象、检测元件、执行机构和pid控制器。
在实验室可以用以运算放大器为核心的模拟电路(见下图)来模拟广义的被控对象(包括检测元件和执行机构)的传递函数。运算放大器应使用双电源,例如±12v的电源。设置模拟量输入、输出模块的量程为±10v。
将运算放大器电路的输出端接到plc的模拟量输入模块的电压输入端(下图的a-d端),将plc模拟量输出模块的电压输出端(d-a端)接到运算放大器电路的输入端,这样就组成了一个模拟的闭环控制系统。
可以用下图中的运算放大器电路来模拟一阶惯性环节、两个串连的惯性环节,或串连的惯性环节与积分环节。
我曾将这种运放电路用于s7-1200的pid参数自动调节。自调节的详细操作方法见《s7-1200 plc编程及应用》第2版。
下图是pid参数自调节过程的趋势曲线。使用自调节得到的pid参数,得到了比较好的响应曲线。