郑 赛,尚志会,秦铵胜,李洋,罗 成
(遵义医科大学医学信息工程学院,贵州 遵义 536000)
温度作为人们日常生活中的一个重要物理量,在现代工农业技术的发展和应用中扮演着极其重要的角色。随着数字化技术的发展与变革,以智能化技术为主的新型技术研究已经得到很大发展[1,2]。鉴于此,智能温度监测技术越来越受到大家的关注。在智能监测技术发展的基础上,基于智能温度测量系统得到了大量的研究与使用,传统的人工的温度测量装置正在被取代[3,4]。新型测温装置通过温度传感器,能够监测环境温度并且把所测温度数据传给中央控制模块,使所测温度数据显示出来并作出判断操作,若所测环境温度数据不在所设置的温度范围内,控制模块发出警报[5]。
根据现有传感器的发展情况和单片机所具备的优势,开发一个基于单片机的智能温度监测报警系统可以更好地服务人们的日常生产和生活,减少因为温度因素带来的影响。基于STM32 单片机的智能温度监测报警系统占用空间小、易于维护,可用于恶劣的环境,并且可以对温度进行实时监测,提高了监测精度,减少不必要的劳动,从而降低了生产成本。因此,温度智能监测报警系统的研究具有现实意义。
本设计是基于STM32 单片机的智能温度监测报警系统。在系统设计过程中,我们需要对各个模块的功能和配置进行掌握。在开发的过程中要多模块协同配合开发,这样使得整个系统功能具有完整性和有效性。
本系统的设计主要由以下几个功能模块组成,分别是STM32 单片机的核心控制芯片模块、LCD1602显示模块、DHT11 温度采集模块、温度设置按键模块。该系统的整体设计结构如图1 所示。在整个系统中,通过DHT11 温度采集模块来监测室内温度,并将采集到的温度通过主控模块将数据传输到LCD1602 液晶显示屏上。
图1 系统结构图
基于STM32 单片机智能温度监测报警系统在功能和性能上将满足如下需求:
(1)实现设置温度的最大值和最小值的功能;
(2)实现温度采集功能,并且能够与设定的最大和最小值进行比较;
(3)实现报警功能,当温度传感器监测到当前温度大于设定的最大值时,红色LED 灯亮起,代表当前温度过高,如果温度传感器监测到当前温度低于设定的最小值时,蓝色LED 灯亮起,代表当前温度过低;
(4)提供扩展接口,可用于连接其他报警装置,增加系统的可扩展性;
(5)具备功耗低,轻巧便携,安装简单,操作容易等特点。
本系统采用了STM32 单片机作为核心控制芯片,其最高工作频率为72MHz,可以计算单周期乘法和硬件除法,并且具有并行LCD 接口,兼容8080/6800 模式。此模块还具有时钟、复位、定时器以及看门狗等功能,可以为整个系统提供稳定持续的工作。另外该芯片还具有多个通信接口,为将来的拓展开发带来便利。
DHT11 是一款有已校准数字信号输出的温湿度传感器。其精度湿度±5%RH,温度±2℃,量程湿度为20%-90%RH,温度0~50℃。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性和卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8 位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11 传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式存在OTP 内存中,传感器内部在监测信号的处理过程中要调用这些校准系数。单线制串行接口使系统集成变得简易快捷,超小的体积、极低的功耗使其成为在该类应用中苛刻应用场合的最佳选择。该传感器为4 针单排引脚封装,连接方便。
1602 液晶也叫1602 字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个5x7 或者5x11 等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用。显示的内容为16x2,即可以显示两行,每行16 个字符液晶模块(显示字符和数字)。
温度按键模块由两个按键控制,分别为KEY1、KEY2。KEY1 为升高温度,KEY2 为降低温度。每按一次就可在前一次的温度数值基础上加或减1 ℃。KEY1、KEY2 被按下后会将对应GPIO 的电信号拉高或拉低,STM32 单片机通过监测GPIO 的电信号变化判断是否有按键被按下,并进行处理。STM32单片机核心控制芯片电路,如图2 所示。
图2 核心控制芯片图
在本系统设计中,基于STM32 智能温度监测报警系统的软件设计模块主要是为了实现前面所述的各个硬件电路模块的功能。下位机的软件系统设计以一个主程序为核心,然后再针对硬件电路的各个模块设计出相配合的子程序模块。整个流程主要包括开始工作、信号采集、信号传输、中断信号接收、中断信号处理以及信号响应等过程。基于此,系统的总体设计流程如图3 所示。
图3 程序流程图
在电子设计的过程中,往往需要对系统进行合理的实验测试,通过不断测试来监测电路设计是否存在缺陷,便于后期进行修改与调整。当我们了解到产品需要满足的功能之后,就需要针对对应的功能进行电路设计,并对设计好的电路进行调试。下面是系统的实物设计,如图4 所示。
图4 系统设计图
本系统主要体现是否可以将温度传感器采集到的数据在LCD显示屏上显示出来,同时也要注意其他外围电路的设计是否合理。在供电之后,可以发现,显示屏可以正常显示所设定的温度,最大温度为35 度,最小温度为15 度,当前温度为17 度,如图5所示。
图5 显示屏显示结果图
根据系统的实验结果可知,显示屏上可以很好地显示基本的温度参数信息,当温度过高时,会发出声光报警。系统稳定性和数据准确性良好。
经过不断调试和修改,本系统需求的功能已基本实现。但是,在本仿真系统的设计中,也暴露出来了一些问题。本系统只实现了基本的设计功能,今后需进一步完善和优化,将整个系统向着市场化方向发展,逐步拓展其功能,依靠其成本低廉和功能强大的特点,走入市场,满足各行各业的需求。
此外,如果使用TCP/IP 协议来进行数据传输,在单片机和PC 机之间可以实现一对多的无线网络传输,在进行数据传输时,可以突破空间上的限制,这也是本系统需要改进的方向。