基于ARM9Linux系统的模糊自整定PID温度控制器的设计

2011-03-27 07:31唐重和刘克平
长春工业大学学报 2011年3期
关键词:模糊控制嵌入式控制器

李 岩, 唐重和, 刘克平

(长春工业大学电气与电子工程学院,吉林长春 130012)

0 引 言

温度控制系统对生化分析仪的检测分析过程具有很大的影响,生化检验结果的可靠性与反应盘的温度精度密切相关。常规PID控制关键在于调整比例、积分、微分3个参数,使之既要相互配合,又要相互制约,从而达到最优效果。模糊控制不依赖于精确的数学模型,是基于启发性的知识和语言决策规则设计的,增强了控制系统的自适应能力[1]。但在生化分析仪反应盘温度控制系统中,当偏差和偏差变化率偏小时,传统的模糊控制方法就难于控制。如果将PID控制和模糊控制两种方法结合起来,利用模糊控制器来给PID控制器在线自整定(或者自校正、自调整)PID参数构成模糊自整定PID控制器,就可以取得理想的效果[2]。文中设计采用ARM9处理器,将模糊自整定PID算法[3]通过嵌入式 Linux系统实现,从硬件和软件两个方面大大提高了控制系统的精确性和稳定性。

1 系统硬件设计

系统以S3C2410处理器为核心,主要由温度采集单元、功率输出驱动单元、键盘显示单元以及存储单元组成。

S3C2410是一款低价位、低功耗、高性能的32位 RISC嵌入式处理器。其采用ARM920T内核,具有五级整数流水线,工作频率高达266 MHz,独立的16 KB指令和16 KB数据的缓存(Cache),用于虚拟内存管理的MMU单元,LCD控制器(STN&TFT),非线性(NAND)FLASH的引导单元系统管理器(包括片选逻辑控制和SDRAM控制器),3个通道的异步串口(UART),输入输出端口,实时时钟单元(RTC),带有触摸屏接口的8个通道的10 bit ADC,IIC总线接口,IIS总线接口,USB的主机(host)单元,USB的设备(Device)接口,2个通道的SPI接口和锁相环(PLL)时钟发生单元。

温度采集模块采用一线制数字温度传感器DS18B20,其测量可精确到0.062 5℃。程序将与之连接的单线端口设置为GPIO口,通过对引脚清零和置位寄存器进行设置并进行软件延时,即可产生复位及写0、写1、读0和读1的时序,并编写温度检测应用程序。经过模糊自整定PID算法模块计算后的PWM输出量直接控制功率驱动单元,完成对反应盘温度的控制。功率输出驱动单元主要采用L6203驱动器控制帕热帖进行加热和制冷。

显示模块选用的是SHARP公司的TFTLCD器件。S3C2410内部自带 LCD驱动控制器,通过内部寄存器设置相应的显示模式。另外,在嵌入式Linux系统下开发了相应的驱动程序,使其能够正常显示温度的设定值与返回值。温度值的设定通过系统采用SPI接口的键盘显示控制芯片 ZLG7289与 S3C2410的 SPI接口连接,ZLG7289的行线R[2:0]和列线C[7:0]构成矩阵键盘,同时在芯片内部可自动完成扫描、译码、去抖动处理等任务。另外,系统中Nand Flash存储器用来存储的算法模块运行时需要使用大量数据。系统硬件结构如图1所示。

图1 系统硬件结构图

2 模糊自整定PID控制器的设计

2.1 输入、输出变量的论域及隶属度函数

系统采用二输入、三输出的模糊控制器。控制系统的输入偏差为e,偏差变化率为ec。模糊控制器的输出为Δ Kp,ΔKi,Δ Kd[4]。模糊控制器与e,ec对应的输入语言变量分别为E,Ec,E和Ec的论域取{-3,-2,-1,0,1,2,3},其模糊子集均为{NB,NM,NS,ZO,PS,PM,PB},分别表示{负大,负中,负小,零,正小,正中,正大}[5]。将模糊控制器的3个输出变量Δ Kp,ΔKi,ΔKd的变化范围分别定义为:

它们的模糊子集为ΔKp,ΔKi,Δ Kd={NB,NM,NS,ZO,PS,PM,PB}。

各语言值的隶属度函数均采用三角形。E,Ec,Kd的隶属度函数如图2所示。

图2 E,Ec,Kd的隶属度函数

Kp,Ki的隶属度函数如图3所示。

图3 Kp,Ki的隶属度函数

2.2 模糊控制规则表

模糊控制设计的核心是总结相关技术知识和实际调试经验,建立模糊规则表[6],得到针对ΔKp,Δ Ki,Δ Kd这3个参数分别整定的模糊规则表,见表1~表3。

表1 ΔKp规则模糊表

表2 ΔKi规则模糊表

表3 ΔKd规则模糊表

ΔKp,Δ Ki,Δ Kd——模糊控制器输出值。

2.3 模糊控制查询表

模糊控制查询表是模糊控制算法的最终结果,根据上面的分析计算,文中所采用的模糊控制查询表[8]见表4。

表4 模糊控制查询表(ΔKp,ΔKi,ΔKd)

2.4 软件设计

软件平台采用的是基于2.4内核的嵌入式Linux系统。采用交叉编译器工具包CROSS2. 95.3.tgz。模糊 PID算法模块的实现是通过MATLAB离线计算得到模糊控制表并存入ARM9中,然后通过查模糊控制表得到对应的控制量。最后再转换为相应的PWM输出量控制功率驱动模块。

控制流程如图4所示。

2.5 MATLAB仿真

选取被控对象为一阶纯滞后模型:

在MATLAB命令窗口运行Fuzzy命令进入模糊逻辑编辑器,选择控制类型为Mamdani型,根据上面的分析分别输入E,Ec,Δ Kp,Δ Ki,ΔKd的隶属度函数和量化区间,并完成控制规则输入。在SIMULINK中建立模糊自整定PID控制系统模型,如图5所示。

图4 控制流程图

图5 模糊自整定PID控制系统模型的SIM ULINK构建

常规PID和模糊PID仿真结果如图6所示。

图6 常规PID和模糊PID仿真

从仿真结果可以看出,模糊自整定PID控制具有较小的超调量和较小的调节时间,以及较好的动态响应特性和稳态特性,且同步精度高。

3 结 语

着重研究了基于ARM9的模糊自整定PID控制算法在生化分析仪温度控制系统中的应用。仿真及实验结果表明,模糊自整定PID控制是一种设计简单、实现方便、控制规则优化以及性能优良的智能控制器,具有动态性能好、稳态精度高的特点,并且有较好的抗干扰性能和较好的鲁棒性。实际应用中,使生化分析仪反应盘控温精度达到±0.1℃,显示精度为±0.01℃,控制效果优化明显。

[1] T C Callai,J E S Santos,R R Sumar,et al.Applying the potentiality of using Fuzzy logic in PID control design[J].Advances in Soft Computing,2005,1:193-204.

[2] 诸静.模糊控制理论与系统原理[M].北京:机械工业出版社,2005.

[3] Taifu Li,Yingying Su,Bingxiang Zhong.Remodeling for Fuzzy PID controller based on neural networks[J].Fuzzy Information and Engineering(ICFIE),ASC 40,2008:20(13):3431-3435,3444.

[4] 李国勇.神经模糊控制理论及应用[M].北京:电子工业出版社,2009.

[5] 叶润玉.锅炉主汽温自适应模糊PID控制[J].机电技术,2008(3):44-46.

[6] Kevin M Passi.Stephen Yurkovich.Fuzzy control [M].Beijing:T singhua University Press,2001.

[7] 黄乐天,谢意.实用高精度智能恒温加热器系统设[J].微计算机信息,2005,21(10):70-71.

[8] 宋立芳,张永立.基于预测的模糊自整定PID温度控制系统[J].科学技术与工程,2006,14(6):2142-2143.

猜你喜欢
模糊控制嵌入式控制器
搭建基于Qt的嵌入式开发平台
嵌入式软PLC在电镀生产流程控制系统中的应用
T-S模糊控制综述与展望
基于模糊控制的PLC在温度控制中的应用
基于模糊控制的恒压供水系统的研究
用于光伏MPPT中的模糊控制占空比扰动法
Altera加入嵌入式视觉联盟
模糊PID控制器设计及MATLAB仿真
MOXA RTU控制器ioPAC 5542系列
倍福 CX8091嵌入式控制器