基于单片机的测温系统设计与实现
2019-09-24甘琪琛薛安琪钟明静
甘琪琛 薛安琪 钟明静
摘要:随着我国人民生活水平的提高,人们对温度控制与检测的要求越来越高。本文设计的基于单片机的测温系统的,测温系统以STC89C52单片机最小系统为核心,DS18B20传感器为测量元件,按键设定为输入,通过LCD1602显示设计成自动化测温控制系统。然后通过测温系统软件程序的编写实现对整个系统软件和硬件的仿真和调试,系统经济适用,易于操作。
关键词: AT89C52;DS18B20温度传感器;自动化控制;温度检测
中图分类号: TP208 文献标识码:A
文章编号:1009-3044(2019)21-0237-03
开放科学(资源服务)标识码(OSID):
Abstract: With the improvement of the living standard of our people, the demand for temperature control and detection is getting higher and higher. The temperature measurement system based on single chip microcomputer is designed in this paper. The temperature measurement system is based on the smallest system of STC89C52 single chip microcomputer. The DS18B20 sensor is the measuring element, the key is set as input, and the LCD1602 display is designed as an automatic temperature control system. Then, the software and hardware of the whole system is simulated and debugged through the software program of the temperature measurement system. The system is economical and applicable, and easy to operate.
Key words: AT89C52;DS18B20 Temperature Sensor; Automation control;Temperature detection
在人們生活水平不断改善的过程中,温度自动检测与控制在工农业等方面应用越来越普及。因此温度检测系统的广泛应用的研究有着非常重要的作用。
本文从软硬件两个方面设计了家用温度系统的设计,在结合温度检测与单片机的基础上,深入研究并设计以单片机为核心的测温系统。主要采用模块化和层次化的理念,把温度获取、单片机计算以及LCD显示系统性相结合。测温系统以AT89C5251单片机最小系统为核心,DS18B20传感器为测量元件,按键设定为输入,通过LCD1602显示构成自动化测温控制系统,实现对温度系统的精确监控。
1 整体系统电路设计
温度测量与控制系统的基本功能是要能够完成对温室内温度的实时检测、显示并对不满足计划设定的温度范围,通过控制升温或者降温设备进行控制以便保持室温内温度的恒定,同时能够实现在以上这两种情况下进行温度报警处理。可以根据所计划的功能设定要求,初步得出测温控制系统的总体设计如图1所示。
本温度智能管理系统采用的是STC系列中的STC89C52单片机的最小系统,其中输入的控制部分主要包含温度的测量和目标温度的设定两个部分,其中温度的测量主要是对温室内的温度进行实时的采集并把所采集到的温度传送给主控制单元;温度的设定部分主要是根据温室大棚内所生长的植物需要得相对恒定的温度范围进行设定(包括温度范围的上限值和温度范围的下限值)。该系统的输出部分包括温度实时显示、超范围温度的控制以及超范围温度报警以便提示工作人员。温度显示主要是把主控单元输出的数据通过LCD1602液晶显示出来,以便看工作人员观察;温度的控制部分主要是党实时温度不在所设定的温度范围内时,通过控制外部降温或者升温设备绝对温室进行经文或者升温处理;温度得报警电路设计主要是在实时温度如果不在所设定的温度范围内时会自动发出报警提醒。
2 硬件设计
2.1 主控制器电路
主控电路采用外STC89C52单片机,而单片机工作需要三个基本条件:接电路供电电源、接石英晶体振荡器和按键复位电路以及把程序烧录到单片机最小系统芯片中,如图2所示。
图2 STC89C52单片机最小化电路。STC89C52单片机的最小化系统的设计中只使用了单片机的一片集成化电路,这样一来可以实现电路系统的低功耗、简单运算控制等。
STC89C52单片机的主要功能因素有:与51系列单片机兼容;1000次擦写寿命;正常工作的电压为5.0V;全静态工作:正常工作始终频率为12MHz;3级程序安全加密保护;具有2048位内部RAM缓冲区;
同时还拥有2×16个16位定时器或者是计数器;8个中断源;具有低功耗的优点以及掉电模式;此外内部还具有看门狗保护电路。
2.2温度传感器
温度传感器采取DS18B20,其测温监控原理如图3所示。从图中可以看出温度的上升和下降对低温系数振荡器的影响可以忽略不计,可以用于产生固定频率的脉冲信号进而传送给减法计数器(Subtraction Counter);高温系数振荡器受温度上升或者下降的影响很明显,进而所产生的脉冲信号传送给减法计数器2;图中还有未画出的计数门(Counting Gate),当计数门处于打开状态时,该温度传感器就会对低温系数振荡器产生时钟脉冲进行累加,这样一来就可以完成一次温度的测量周期。
2.3 液晶显示电路
LCD液晶通过D0口进行显示,用单片机的P0.0口来显示数据,J2是一个可以调节显示数据亮度的可调电阻,液晶显示模块的电路如图4所示。
LCD1602液晶显示对于数据的读写方式以及对于屏幕亮度调节等的操作一般情况下可以通过程序的编写来实现,其中在默认情况下1是处于高电平情况,0是处于低电平情况。
2.4 数据采集模块
数据采集模块为了正确输出由模拟的温度值信号转化得到的数字信号,DS18B20要加一个阻值为4.7K的上拉电阻R18。M2是一个蜂鸣器,其作用是当水位低至一定值时蜂鸣报警。
2.5 时钟电路和复位电路
单片机内部电路和其外部的一些元器件可以构成一个时钟电路(Clock Circuit)。单片机的中央处理单元中的所有操作都是在时钟脉冲同步下进行的。其中单片机内部的振荡器的振荡频率(Concussion Frequency)和晶振的时钟频率是非常接近的,一般情况下是在1.2MHz~12MHz之间,当时钟电路开始工作以后,如果在单片机的RST(复位)引脚上出现两个或者两个以上的机器周期处于高电平的工作状态时,此时单片机可以实现初始化状态。
2.6 电源模块
本设计用到的电源仅为+5V的稳压电源,从成本及开发的周期来考虑故选择为单电源。电路为输出+5V的直流稳压電源,由滤波器、变压器、集成稳压以及二极管整流桥构成了该稳压电源。
3系统测试和实现
3.1 测温系统测试的抗干扰设计
(1)基于单片机测温系统抗干扰的元件
在本系统设计的温度管理系统中有许多的抗干扰电路的设计以及抗干扰的器件,通过研究发现目前应用比较广泛的抗干扰元件主要有去耦电容、抑制高频的电感、自恢复保险丝、防雷击元器件等。
本文研究的基于单片机的测温控制系统应用到的元器件是去耦电容,它作为滤波电容可以滤掉来自电源模块的高频噪声;也可以当作储能元件,吸收三极管导通或截止引起的电流变化,进而可以降低噪声影响。
(2)提高测温系统抗干扰能力的主要方法
提高系统的抗干扰能力的方法有很多,针对本文研究的测温控制系统的在硬件和软件方面提高其稳定性的方法主要有以下几个方面:
在其硬件电路的设计中为增强系统的抗干扰能力,在抑制干扰源方面可以给继电器线圈增加续流二极管,增加滤波电容以及在布线方面需要注意的细节等;在切断抗干扰源的措施中需要考虑电源模块对单片机的影响电路板中弱电荷强电的区分以及大功率元件单独接地等;在提高敏感元件的抗干扰能力上考虑尽量减少回路环形的面积、对供电模块进行监控处理等。在软件设计中的抗干扰技术体现在本系统中的主要有软件“看门狗”技术,主要是防止程序在运行过程中不正常运行或者失控。
3.2系统软件测试与实现
在软件程序的设计中,重要设计步骤有温度上下限范围的设定、对DS18B20采集到了数据进行处理、高温和低温报警并做出对应的降温和升温措施以及实时显示温室中当前的温度变化等,通过一系列功能性的软件编写设计,软件实现流程如图5所示。本系统的软件设计主要可分为温度读取检测子程序、LCD显示子程序二大模块。温度检测子程序主要是温度控制,LCD显示子程序的内容主要有两个方面,即温度和方向显示。当通电后,液晶显示器首先进行初始化,经过一定的延时,然后开始显示。
4 结论
本文设计了家用基于单片机的测温系统的运行过程,主要运用AT89C52单片机、DS18B20单线数字温度传感器、LCD1602液晶显示屏来设计软硬件的监控系统,通过编程实现对温度的精确监控,系统操作简单,实用性强。
参考文献:
[1] 张均,卢涵宇.可编程控制器原理及应用[M].中国铁道出版社,2009.
[2] 熊小萍,卢涵宇.模拟电子技术 [M].哈尔滨工程大学出版社,2009.
[3] 史建芳. 智能仪器设计基础[M]. 北京:电子工业出版社,2012.
[4] 史建芳. 智能仪器设计基础[M]. 北京:电子工业出版社,2012.
[5] 孙育才,孙华芳,王荣兴.单片机原理及其应用[M].北京:电子工业出版,2006.
[6] 李林功,吴飞青. 单片机原理与应用[M]. 北京:机械工业出版社,2008.
[7] 张勇. C/C++语言硬件程序设计[M].西安电子科技大学出版社,2
【通联编辑:光文玲】