1)数字温度传感器:DS18B20是一种“一线总线”接口的温度传感器。与传统的热敏电阻等测温元件相比,它是一种新型的体积小、适用电压宽、与微处理器接口简单的数字化温度传感器,实现温度的采集。
2)控制器:采用STM32模块和存储器构成,以其丰富的外部资源和高达72 MHz的主频完成大量的PID运算。
3)加热模块:采用驱动芯片DRV8834,是一款双路桥式步进器或者直流电机驱动器。由于加热器帕尔贴是由直流控制发热或者制冷,所以用DRV8834用作直流电机驱动器来驱动帕尔贴。
DRV8834能够驱动两个直流电机或者一个步进电机,每个H桥的电流输出为1.5 A,2.2 A峰值电流,所以用1.5 A电流驱动帕尔贴加热元器件。该器件提供了带有一个故障输出引脚的内部关断功能,此功能用于过流保护、短路保护、欠压闭锁和过热。另外,还提供了一种低功耗睡眠模式以节约电能和增加元器件使用寿命。如图2,nSLEEP引脚控制驱动芯片的睡眠模式,低电平进入睡眠模式,由STM32的I/O控制;AOUT1和AOUT2为桥A的两个输出端,(这里接帕尔贴的两个输入端),并且在AOUT端串联一个0.1欧姆的电阻和1uH的电感来模拟直流电机负载;VREFO为参考电压的输出;AVREF和 BVREF通过滑动变阻器改变输入的电压,结合AISEN端的电阻设置斩波电流的输出,斩波电流计算公式:AENABL引脚是DRV8834芯片的使能芯片;DIR引脚控制桥电流的输出方向,这里可以控制帕尔贴的加热或制冷;nFAULT引脚在芯片正常工作时输出高电平,当输出低电平时表示芯片过温、过流或者欠压以指示芯片的工作状态;VM输入5 V电压供电。
3 模糊PID温度控制系统的软件设计
3. 1 模糊控制基本原理
模糊控制是以模糊集合理论、模糊语言及模糊逻辑为基础的控制,它是模糊数学在控制系统中的应用,是一种非线性智能控制。本文在常规PID基础上,以温度反馈值与目标值的误差e和误差变化率ec作为输入,一方面送入模糊控制器用模糊推理的方法计算PID参数的调整系数,进行在线自整定,以满足不同e和ec对控制器参数的不同要求。
温度控制的软件设计主要包含3个部分:系统的初始化,模糊PID的计算,驱动电路的控制。其控制流程如图4所示。其中系统初始化包含STM32系统时钟的初始化,I/O口的初始化,数字温度传感器DS18B20的初始化,显示模块的初始化等。模糊PID的计算是 e(k)和ec(k)的值输入到模糊控制规则表然后去模糊化算出Kp、Ki、Kd的当前值。PID控制输出的控制量是STM32定时器的计数值以控制 PWM输出的占空比,PWM输出连接到帕尔贴驱动器的使能引脚控制电流的输出的通断,从而控制帕尔贴的发热量。
3.2 模糊划分及模糊化
设温度偏差e的基本论域为[-30℃,+30℃],温度偏差变化率ec的基本论域为[-12,+12],输出u的基本论域为 [-0.4,+0.4],e、ec和u的语言变量E、EC和U,均划分为7个变量等级(NB,NM,NS,Z,PS,PM,PB),各个变量的模糊论域范围为:
{E)={-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6};
{Ec}={-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6};
{U}={-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7}。
对于模糊控制器而言,温度偏差及其变化率都是精确输入量,为了对确定的精确量进行模糊化,必须把它们转换成模糊集合的隶属函数。由于三角形函数计算较简单、性能较好,输入/输出变量的隶属度函数都采用三角形分布。
3.3 模糊控制规则
确定模糊控制规则的原则必须是系统输出响应的动、静态特性达到最佳。当误差大或较大时,选择控制量以尽快消除误差为主;而当误差较小时,选择控制量要注意防止超调,以系统的稳定性为主要出发点。
本研究根据实际运行经验进行了试验、分析、归纳,并得出一系列控制规则为:3.4 simulink的仿真对比
采用模糊自适应PID控制与常规PID控制作对比,体现出模糊自适应在温度控制方面的优越性。帕尔贴加热散热片可以看成是一个具有时滞特性的一阶惯性环节,其传递函数为:其中k取4,τ取500,延时部分在simulink中串联一个Transport Delay模块,延时时间取3 s。
如图5,上半部分为模糊自适应PID控制,输入的信号通过迷糊控制器算出Kp、Ki、Kd的修正值,然后加上Kp、Ki、Kd的经验值来对传递函数起作用。下面半部分就为普通的PID控制。通过虚拟的示波器观察两种控制方法的控制效果。红色曲线为普通PID控制的输出曲线,黄色曲线为模糊自适应PID控制的输出曲线,通过对比可以发现,传统的PID控制存在严重的超调,并在预期值上下震荡,调整时间长。模糊自适应PID控制很好的解决了这个问题,以最快的时间最小的超调达到系统稳定。
4 结束语
本次实验采用了常用的直流电机驱动器通过适当调整电路运用到半导*冷器件上,电路简单成本也较低。软件设计上运用PID模糊控制有效的解决了温度控制的惯性和延迟问题,实验基于STM32控制器充分利用其固件库函数大大减少了开发周期,提高了效率。此系统可以运用在医疗设备、家用小电器等一些用到温度控制的场合中,具有一定代表性。