冯志彬,雷艳敏
(1.空军航空大学 基础部, 长春130021; 2.长春大学 电子信息工程学院, 长春130022)
基于单片机的暖手宝的设计与实现
冯志彬1,雷艳敏2
(1.空军航空大学 基础部, 长春130021; 2.长春大学 电子信息工程学院, 长春130022)
采用STC89C52单片机作为主控制器,设计了一种多功能暖手宝控制系统。该系统采用模块化设计思想,主要包括单片机最小系统模块、温度检测模块、温度显示模块、声光报警模块、继电器加热模块、按键模块等,能够实现暖手宝的加热功能、温度设置功能、防空烧功能等。通过硬件电路板的焊接与软件编程调试,实现了该系统的功能,提高了暖手宝的智能性、安全性和节能环保性。
暖手宝;单片机;模块化
目前,电暖手宝主要有电热饼和电热水袋两大类。从电热水袋的发热原理看,有电极式和电热元件式两大类。电极式暖手宝加热效果好,价格便宜,但是存在着安全隐患;电热元件式暖手宝,价格较贵,加热效果也没有电极式的好,但是却安全可靠。
随着人类社会的发展,科技的进步,各个行业都将自己的产品向智能化、数字化发展[1]。老式的电暖手宝由于不能彻底切断电路,加热时人不能远离,漏电风险大,并且加热后温度会比较高,容易造成烫伤,存在着一定的危险性。每年使用暖手宝造成的爆炸事故也屡有所闻[2],使消费者对暖手宝怀有一定的惧怕感,所以普通暖手宝渐渐淡出市场。如何让暖手宝更安全、更节能、更智能、功能又多是我们应该思考的问题,因此研究多功能暖手宝具有重要的意义。
为了提高暖手宝的智能性、安全性和环保性,首先要对控制核心进行选择。一般有两种控制核心可供选择,一种是CPLD,另一种是单片机。CPLD作为主控制器的优点是能够对复杂化的数据进行逻辑运算,而且具有体积小、资源丰富,还能进行功能扩展。此外,CPLD的输入和输出都采用了并行的方式,这样的方式能够极大的提升系统的运行和处理速度,所以,此控制器主要运用于需要控制规模比较大的控制系统中,特别是它的价格比较贵,因此限制了CPLD在小控制系统中的应用。
由于本设计中的运算比较简单,对数据处理的速度要求也不高,所以本文选择单片机作为主控制器。单片机的种类也很多,其中STC89C52是一种带8k字节闪烁可编程可擦除只读存储器的低电压、高性能的单片机,它具有单片机的各种操作指令和强大的控制功能,能够达到本设计所需要的各种功能,而且STC89C52单片机价格十分便宜,因此选择STC89C52型单片机为控制核心。
该系统采用模块化设计思想[3-4],主要包括单片机最小系统模块、温度检测模块、温度显示模块、声光报警模块、继电器加热模块和按键模块等,系统结构框图如图1所示。
2.1 单片机最小系统
单片机的最小系统主要包括复位电路和晶振电路两个部分,分别如图2和图3所示。复位电路分为手动复位和上电复位两种方式:手动复位电路是由图2中的电源VCC、电阻R4、按键S1、电阻R5和地构成的,当按下S1时,单片机的复位端RST为高电平,使单片机实现复位功能;自动复位电路是由电源VCC、极性电容C7、电阻R5和地构成的,在单片机刚一供电的时候,使RST为高电平,这主要是利用电容两端电压不能突变的特性来实现单片机的复位功能。晶振电路是为单片机提供时钟的,单片机工作的最小时间计量单位就是由这个晶振决定的,常用的晶振是6MHZ和12MHZ,本次设计中选择12MHZ的晶振。图3中的XTAL1和XTAL2为单片机的时钟晶振引脚,而C8和C14为晶振的负载电容,OS1为晶振,工作在并联谐振状态。
图2 单片机的复位电路
图3 单片机晶振电路
2.2 温度检测电路的设计
图4 温度检测电路图
为了进行温度的测量,首先要选择温度传感器。根据温度传感器输出的信号进行分类,可以分为两大类:一类是模拟信号;另一类是数字信号。模拟信号输出的温度传感器主要有热敏电阻传感器、热电阻传感器和热电偶传感器,其中较为常用的为热电偶传感器。这类温度传感器在应用的时候,首先要将温度传感器获得的模拟信号进行放大,然后再进行模数转换,最后送入单片机进行处理。数字信号输出的温度传感器常用的有DS18B20温度传感器来检测温度[5],该器件具有体积小、功耗低、性能高、抗干扰能力强等优点,其输出为数字量,可以直接送入单片机,不需要放大和模数转换电路,可以节约成本。所以本文综合考虑,选择数字量输出的DS18B20作为温度传感器,温度检测电路如图4所示,P24为单片机的IO口,单片机通过这个引脚检测温度。
2.3 温度显示电路的设计
常用的显示方式主要有两种:LED数码管显示和LCD液晶显示屏两种。前者简单,而且价格低廉,但是后者的显示信息量大。本系统中只需要显示温度值,所以综合考虑,本系统采用LED数码管显示方式。采用四位数码管来显示温度,所以需要对数码管进行段选信号和位选信号的控制。位选信号是为了控制具体哪位数码管点亮,段选信号是为了显示具体的数字。本文中采用动态扫描的方式。
数码管的温度显示电路如图5所示,单片机的P33-P36为位选控制信号,P10-P17为段选控制信号。数码管分为共阳极和共阴极数码管,本文中采用共阳极的数码管,所以当P10-P17为低电平信号时,该段数码管被点亮。采用PNP型三极管8550对数码管进行位驱动,当P33-P36为低电平时,Q1-Q4将分别导通,相连接的数码管位被选通。
图5 数码管的温度显示电路图
2.4 继电器加热电路的设计
当暖手宝的温度低于设定值时,要对暖手宝进行加热,这是暖手宝的基本功能。本文中采用继电器[6]控制加热的方式,加热电路图如图6所示。当DS18B20检测到温度低于所设置的最低温度时,单片机引脚P37为低电平,PNP三极管Q5导通,继电器线圈得电,吸合K1使加热电路闭合,暖手宝开始加热。当DS18B20检测到温度高于所设置的最高温度时,单片机引脚P37为高电平,三极管Q5截止,继电器线圈失电,加热电路断开,暖手宝停止加热。图6中的D1为发光二极管,单片机引脚P37为低电平时,三极管Q5导通,D1发光,起到加热指示灯的作用。在本图中,考虑到继电器线圈断电时,所产生的反向电动势较小,所以在该图中没有加起保护元器件作用的反向续流二极管。
图6 继电器加热电路
图7 声光报警电路
2.5 声光报警电路的设计
当暖手宝的温度达到上限值时,需要发出警示,所以设计中增加了声光报警功能,电路如图7所示。当温度达到上限值,单片机P13输出低电平,PNP型的三极管V1导通,蜂鸣器报警;同时由VCC、R13、D8和P13构成的发光回路导通,使发光二极管D8发光,发出视觉上的警示。
2.6 按键电路的设计
图8 按键电路的设计
为了实现多功能暖手宝的温度设置、温度重置和防空烧的功能,设计的独立式键盘按键电路如图8所示,其中K1为温度重置按键,默认温度值为30℃,K2为加键,K3为减键,K4为防空烧按键。有按键按下的时候,P00—P04为低电平,否则为高电平。加键K2和减键K3,每按下一次,增加或减少的温度为1℃。
本设计中的一个非常重要的功能就是防空烧功能。设置防空烧按键的目的是防止暖手宝在加热时因为无人看管或被遗忘而没有给暖手宝取下电源的情况下,暖手宝会因为循环加热,造成电能的浪费,同时也会存在安全隐患。所以,本设计中一旦暖手宝达到设定的温度值时,暖手宝就会停止加热,直到按键K4被按下为止,否则暖手宝就会一直不被加热。
软件是整个系统的灵魂,它是算法和功能实现的关键。为了实现硬件电路的功能,进行了软件设计,系统流程图主要包括主程序、温度采集子程序、温度加热子程序、按键子程序等,本文由于篇幅限制,只给出了主程序流程图,如图9所示。
图9 主程序流程图
图10 实物图
为了验证上面所设计的多功能暖手器的可行性和有效性,对所设计的系统进行了硬件电路板的焊接,焊接的电路板实物图,如图10所示。51单片机对软件进行编程是需要一款编程软件的,Keil C51就是兼容51系列单片机的一款C语言软件开发系统,和汇编语言类似,但是却有着自己独特的优点,而且更加容易学习和运用[7]。Keil C51软件自带库函数和集成开发调试工具,使用起来非常方便快捷。
通过焊接电路板和采用Keil C51软件开发系统进行编程调试,能够实现设计中的各个功能,图中显示的温度为25.3℃。
本文采用模块化的设计思想,设计了基于STC89C52单片机的暖手宝控制系统,分别进行了硬件设计和软件设计,并进行了实际电路板的焊接和软件编程调试。从实验结果可以看出,本文所设计的多功能暖手宝,可以实现加热功能、温度设置功能、防空烧功能等,能够很好的提高暖手宝的实用性、安全性和节能环保性能。下一步将对该系统进一步研究,可以赋予暖手宝更多的功能,比如充电宝功能等。
[1] Emma.暖手充电宝[J].设计,2016(4):25.
[2] 警惕潜伏在你身边的八大爆炸源[J].中国消防,2015(22):46-48.
[3] 赵丽,张春林.基于单片机的智能浇花系统设计与实现[J].长春大学学报,2012,22(6):650-651.
[4] 杨敏英,陈辉煌,杨阿弟,等. 一种家庭智能门禁语音报警控制设计与实现[J].长春大学学报,2016,26(4):4-9.
[5] 褚新建. 基于DS18B20的温度控制系统设计[J]. 电子制作, 2014(12):17-18.
[6] 廉忠平. 探析继电器在电气工程及其自动化低压电器中的应用[J].黑龙江科技信息,2014(4):89.
[7] 金炯泰. 如何使用KEIL 8051 C编译器[M].北京:北京航天航空大学出版社, 2002.
责任编辑:程艳艳
Design and Implementation of a Hand-warming Device Based on Single Chip Microcomputer
FENG Zhibin1, LEI Yanmin2
(1.Foundational Department, Aviation University of Air Force, Changchun 130021, China;2. College of Electronic Information Engineering, Changchun University, Changchun 130022, China)
Taking STC89C52 single chip microcomputer(MCU) as the main controller, this paper designs a multi-function control system for hand-warming device. The system uses the modular design idea, including MCU minimum system module, temperature detection module, temperature display module, sound and light alarm module, relay heating module and keys module, etc., which can achieve the functions of heating, temperature setting and prevetion from overcharging. Through the welding of hardware circuit board and software programming, it realizes the functions of the system and improves the characteristics of intelligence, safety and energy saving.
hand- warming device; MCU; modularization
2016-10-16
冯志彬(1978-),男,吉林辽源人,讲师,硕士,主要从事电工电子及自动化控制方面研究;雷艳敏(1976-),女(满族),黑龙江五常人,副教授,博士,主要从事机器人智能控制及自动化控制方面研究。
TP273
A
1009-3907(2016)12-0025-04