基于无线通信和PID控制实现的智能温度控制系统研究
2019-09-25王艳李昂陈姝君王秀梅
王艳 李昂 陈姝君 王秀梅
摘 要:设计提出了无线通信和PID控制的智能温度控制系统,以单片机为核心,采用主机和从机的结构。主机通过按键设置预设温度,通过LCD1602实时显示实际温度和预设温度,通过nRF24L01无线射频模块将数据发送给从机;从机采用温度传感器DS18B20实时检测温度,通过nRF24L01无线射频模块接收预设温度,通过PID算法实现温度控制。
关键词:单片机;PID控制;DS18B20;nRF24L01;MOS管;实时
中图分类号:TP393文献标识码:A文章編号:2095-1302(2019)08-00-03
0 引 言
温度是表征物体冷热程度的一个物理量。在人们的日常生活和工农业生产中,对温度的控制占据着非常重要的地位。本设计是基于无线通信和PID控制实现的温度控制系统,该系统可以通过无线通信的方式实现远程温度控制。
1 系统设计
温度控制系统采用无线射频通信的方式,分为主机和从机两个部分,系统框图如图1所示。主机的功能是实时显示温度、预设温度;从机的功能是实时采集温度,通过PID控制实现制冷和加热。本设计由温度采集模块、键盘模块、显示模块、无线射频模块以及温度控制模块组成。温度采集模块通过DS18B20传感器实时采集温度;键盘模块预设温度;显示模块显示实时和预设温度;无线射频模块将主机的预设温度发送到从机,从机将采集的实时温度发送给主机;温度控制模块的工作原理是利用PID算法控制MOS管的导通与断开,从而实现温度的智能控制。
2 硬件电路设计
2.1 温度采集模块
温度采集模块采用DS18B20传感器实时测温,其温度测量范围较大,能够达到-55~+125 ℃[1-2],电源供电电压为3~5.5 V。该模块连线图如图2所示,DS18B20的1号脚接地;3号脚接VCC;2号脚为I/O口,接单片机的P2.0口。
2.2 无线射频模块
无线射频模块通过nRF24L01芯片进行数据通信,其工作频段为2.4~2.5 GHz,属于全球免申请ISM工作频
段[3-5]。主、从机和nRF24L01芯片的连接相似,以主机为例,nRF24L01与单片机的连线如图3所示。
nRF24L01的1脚接地;2脚接正电源(+3.3 V);3脚与P1.3口相连,控制射频芯片是否工作;5脚与P1.2口相连,控制读写时间;7脚与P1.1口相连,向单片机发送数据;8脚与P1.0口相连,向单片机发送中断信号;6脚与P1.4口相连,接收单片机的数据;4脚与P1.5口相连,由单片机发送信号控制读或写操作。
2.3 温度控制模块
本设计在从机中完成加热或制冷的温度控制。采用加热片进行加热,如图4所示,单片机的P3.7口通过三极管与MOS管的G口相连,MOS管S口与发热片相连,D口接地,当预设温度高于实际温度时,采用PID算法控制MOS管的导通与断开,从而控制加热模块的开启与关闭。制冷部分采用风扇降温,如图5所示,单片机的P2.1口通过三极管与风扇相连,控制风扇的开启与关闭。当P2.1为低电平时,三极管导通,风扇开启;当P2.1为高电平时,三极管截止,风扇关闭。
2.4 液晶模块
液晶模块采用芯片LCD1602实时显示实际温度与预设温度,温度范围为0~99.9 ℃,保留小数点后一位数字。该模块与主机中的单片机连线如图6所示。LCD1602的1号脚接地;2号脚接VCC;3号脚接电位器;4号脚接单片机的P2.5口;5号脚接P2.6口;P2.7接6号脚;D0~D7接P0.0~P0.7口;15号脚接VCC;16号脚接地。
2.5 键盘模块
键盘模块用于设置预设温度,其连线如图7所示。S2接P3.2口,控制是否开启预设温度;S3与S4分别接P3.3,P3.4口,设置预设温度。
3 软件程序设计
3.1 主程序流程
软件设计分为主机部分和从机部分,流程分别如图8和图9所示。
3.2 PID控制算法
加热控制分为如下两个阶段。
第一阶段:PID调节前段,在该阶段,由于刚刚开始加热,距离预设温度还有较长一段时间,因此无需控制,只有当温度上升的速度大于PID算出的温度加速度时,才断开
MOS管[6]。
第二阶段:PID调节阶段,在该阶段,PID算法求出一个实时变化的温度,并将此温度与预设温度进行比较,以保证温度处于较小的变化范围内[6]。
加热部分采用PID算法进行温度控制。公式(1)是PID算法的控制规律,其中K是比例系数;TI是积分时间常数;TD是微分时间常数;e(t)是测得温度与预设温度之间的差值。
将公式(1)离散化为周期采样算式,然后计算输出值[7-8]。离散化处理后的PID算式:
式中:Mn为第n次采样时PID的输出结果;SV为预设温度;PV为第n次采样时,第n次的温度与第n-1次的温度的差值;PVn-1为第n次采样时的差值;MX为积分前项值;Mintial为PID回路的静态输出值;KC为PID回路的比例增益;KI为积分比例常数KI=KC·TS/TI,TS是采样期间的采样时间间隔,TI是积分时间参数;KD为微分比例常数KD=KC·TD/TS,TD是微分时间参数。
本次设计采用增量式PID算法,其控制流程如图10所示。
3.3 无线射频子程序
nRF24L01无线射频模块的主要作用是将单片机传送的数据以无线方式发送到另一个nRF24L01芯片中,并接收另一个nRF24L01芯片发送的数据。其接收端流程与发射端流程如图11、图12所示。
4 硬件实物
硬件实物采用洞洞板焊接完成,主机与从机的硬件实物如图13、图14所示。从机实物中添加了工作状态指示灯,若加热灯亮则处于加热状态,若制冷灯亮则处于制冷状态。如图15所示,以制冷状态举例,设置温度为27.5 ℃,当实际温度为28.2 ℃时,则进行制冷工作,制冷灯亮。
经多次调试,当PID参数P=11,I=9,D=6时,系统基本可保持在预设温度处,并且温度稳定。无线射频通信的距离最远可达50 m,但随着距离的增加,传输速率将会下降,直接将DS18B20与发热片接触,测得提升1 ℃所需时间为14~16 s。
5 结 语
温度控制系统采用主、从机模式,由从机实时测温,并将温度以无线通信的形式发送给主机,主机将预设温度发送给从机,从机进行温度控制,从而较好地实现温度的智能控制。
参 考 文 献
[1]陈勇,许亮,于海阔,等.基于单片机的温度控制系统的设计[J].计算机测量与控制,2016,24(2):77-79.
[2]罗华生,刘颂梁,景棠.基于温度控制的透析用水管道消毒系统设计[J].中国医学装备 ,2018,15(5):1-4.
[3]罗箫,奚小东,吴晗平.基于nRF24L01模块无线传输的人体脉搏红外探测系统设计[J].武汉工程大学学报,2018,40(5):585-590.
[4]王军,邹学庆,卢蓓蓓,等.基于nRF24L01植保无人机无线数据传输系统设计[J].中国农机化学报,2018,39(6):52-55.
[5]谈敏.基于nRF24L01的8路无线温度实时监控系统设计[J].工业控制计算机,2018,31(5):27-28.
[6]罗川宁,郝润科,杨威.工业生产过程锅炉温度控制仿真[J].计算机仿真,2018,35(9):358-362.
[7]王欣峰,任淑萍.基于模糊PID的AVR单片机智能温度控制系统设计[J].现代电子技术,2018,41(15):179-182.
[8]张莉莉,武艳.蔬菜大棚模糊PID温度控制系统设计与仿真[J].科学技术创新,2017(36):17-18.
[9]苏家雨,任国强,王明富,等.EMCCD相機热电制冷温度控制系统研究与设计[J].物联网技术,2017,7(6):64-66.
[10]王恩义.基于改进型PID控制算法的智能温控系统[D].南昌:东华理工大学,2015.