常规PID控制器作为一种线性控制器,其离散的控制规律为:
对于系统被控过程中不同的|e|和|ec|,PID参数Kp、KI、KD的自整定原则如下:
(1)误差|e|较大时,为加快系统的响应速度,使系统具有快速跟踪性能,应取较大Kp和较小KD。同时,为了防止积分饱和。避免系统超调过大,应限制KI或使其为零。
(2)误差|e|和|ec|中等时,为使系统超调较小,应取较小KP,适当KI和KD,特别是KD的取值对系统响应影响较大(一般取值较小)。
(3)误差|e|较小时,为使系统具有较好稳态性能,应取较大KP和KI。同时,为避免系统在平衡点附近出现振荡,应取合适的KD值。|ec|较大时,取较小KD;|ec|较小时,取较大KD。
考虑到上述原则,在该设计中,模糊控制器采用2输入,3输出的结构。以误差e和误差变化ec作为输入,经量化和模糊化处理后,查询模糊控制规则表,得到模糊输出量KP、KI、KD,再经解模糊和量化因子输出精确量,并将该输出量与传统PID相结合输出系统的控制量。输人语言变量e和ec以及输出语言变量KP、KI、KD的模糊集论域均设为{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},取相应论域上的语言值为{NB,NM,NS,ZO,PS,PM,PB}。考虑到对论域的覆盖程度及灵敏度,鲁棒性和稳定性等原则,各模糊子集隶属度函数均采用三角形隶属函数。
模糊规则采用“if e is A and ec is B then KP is C and KI isD and KD is E”的方式,控制器参数模糊推理过程采取Mam-dani直接推理法,“与”运算采用极小运算,“或”运算采用极大运算,模糊蕴含运算采用极小运算,模糊规则综合采用极大运算,去模糊化采用重心法且其计算公式为:
根据PID参数调整原则,输出量KP、KI、KD一轮决策将最多涉及147条推理规则。 3 恒温箱温度控制系统硬件电路设计
温度控制目前大多采用以单片机或CPU为核心的控制系统,这些以软件控制和运算的系统相比于硬件系统速度要慢、实时性差且可靠性低。
FPGA作为一种新型的数字逻辑器件,具有集成度高、可重复编程、逻辑实现能力强、设计灵活等特点,使用其内部逻辑模块单元实现所需功能,各个模块并行运行,这使得系统运算速度快、实时性强。与传统的基于CPU并行计算不同,FPGA内部结构真正实现并行计算,不是宏观上并行而是微观上分时运算。
该设计采用Ahera公司的Cyclone系列FPGA器件EP1C12为核心控制器来测量与控制恒温箱内温度。通过键盘向FPGA输入设定温度,现场温度参数由热电偶传感器转换成电动势信号,经A/D转换和滤波后,将实时的数字测量值送入FPGA。FPGA将比较温度的设定值与测量值,经模糊自适应PID控制算法运算处理后,输出相应控制信号,确保恒温箱内温度变化范围始终保持在设定值的误差范围内。系统的液晶显示用于实时显示控制系统的当前温度值、温度变化曲线、参数配制等信息;键盘用于设定控制系统的初始定值及初始参数信息;Flash,SDRAM,I2C等用于实现存储空间的扩展。图2为系统整体硬件结构框图。
此外,在FPGA中还集成有Altera公司提供的NIOS II软核处理器,FPGA一方面通过内部的双口RAM与其内部的硬件逻辑控制模块进行通讯,获取控制模块的状态信息并配置其参数;另一方面监控显示模块和键盘模块。FPGA内部逻辑示意图如图3所示。