本程序相当的复杂,写了将近一年 ,现分享如下:
自整定分七个步骤
0、无整定,自动或手动模式
1、准备整定,检查参数,等待激励,测量采样时间
2、实际整定,等待在稳定的控制器输出值上检测到拐点
3、过程参数的计算.整定前有效的控制器参数被保存
4、控制器的设计
5、使控制器处理新的可调节变量
7、检查过程类型
整定结果根据状态值判断整定系统的pid参数的好坏
0 : 没有新的控制器参数
10000 : 整定已结束,并得到合适参数
2xxxx : 使用估计值找到的控制参数。检查控制响应或检查诊断消息,并重复整定。
3xxxx : 发生操作员输入数据错误。检查诊断信息,并重复整定
温度保温过程采用位置PID,实现积分饱和,不完全积分等技术
本工程使用STM32F429编程user_pid.c部分程序1367行,具体占用空间如下,建议使用大一点的单片机,我项目中采用的是STM32F429
自整定完成后实现保温过程,温度保温可以实现±0.5度以内,大多数时刻在±0.2度以内,保温效果超出想象的好,用在两个项目中,完全可以对标欧姆龙PLC,汇川PLC,西门子PLC的温控
如下为采集的数据