基于STC单片机的智能电子温度控制系统设计研究
2017-08-29胡玉轩
胡玉轩
(国营大众机械厂第一研究所,山西 太原 030024)
基于STC单片机的智能电子温度控制系统设计研究
胡玉轩
(国营大众机械厂第一研究所,山西 太原 030024)
随着电气自动化及计算机技术的快速发展,微机测量与控制技术被广泛应用于各领域,其中具备较低成本、结构简单等优点的单片机则随着研究的不断深入,而作为核心部件被用于实时监测和自动控制领域。本文以STC单片机为主控单元,以温度测量单元构成单总数字温度传感器进行研究,通过设定温度上下限参数进行数据监测,进而达到一定范围内温度的监测与控制。
STC单片机;温度控制;温度采集
1 系统设计的总体方案
1.1 设计要求与总体方案描述
温度控制系统广泛应用于各个领域,不同领域对控制电路的性能指标要求不同。对于工业领域而言,温度控制的精度一直以来备受关注,基于STC单片机与数字温度传感器DS18B20的温度智能控制系统具有较高的控制精度,而且其设计成本操作简便,增加了实用性[1]。在本系统设计中,对智能温度控制系统提出了以下设计要求:
一是结合实际需求而设计温度控制的上下限,并通过LCD显示器显示,当温度超出上下限时则蜂鸣器自动报警;二是采用STC单片机与若干温度传感器,并在STC实验板上完成仿真实验过程,之后写出设计报告书;三是控制温度误差为:C≤±0.5 ℃。
在本文温度控制系统设计中,STC单片机为控制核心单元,通过温度传感器来实现温度测量与数据传输、记录。系统的总体硬件框架如图1所示,该系统以STC单片机为核心控制单元,硬件系统包括6个模块,即按键处理模块、温度采集模块、电源模块、数据存储模块、超温报警模块、LCD显示模块。
1.2 系统调试所用软件简述
在智能温度控制系统中,除了需要硬件支持之外,还需要必要的软件来完成实际操作。在本文设计中,结合了STC单片机的实际情况,选择Keil软件作为STC单片机软件,其包括C编译器、连接器、宏汇编、库管理以及功能强大的仿真调试器。在单片机设计中,Keil软件的调试过程如下:调试文件建立(工程建立)→程序编译→系统链接→系统运行。
图1 系统总体硬件框架
2 主控单片机及温度传感器
2.1 STC单片机简介
在本文的智能温度控制系统设计中,STC单片机选择STC15系列单片机,15是在11、12的基础上增加了更为强大的功能,而且速度提升了20%以上,内置RC振荡器精度更高,温飘更小且可选择多个频率,四个独立串口,硬件SPI接口,4 K内部扩展SRAM,5路定时器,6路CCP/PCA/PWM比较捕获单元。STC15系列单片机通用I/O口,无需专用编辑器。STC15系列单片机具有速度快、超低功耗、输入/输出口多、可送STC-ISP下载编辑器、支持掉电唤醒的管脚等优点[2]。
2.2 STC单片机应用
STC15系列单片机在智能温度控制系统中应用时,其所有I/O口均可由软件配置成推挽输出、准双向口、仅输入、开漏输出等4种工作类型之一[3]。在本文设计中,结合实际需求,STC15系列单片机I/O口为准双向口模式。在STC15单片机中,其A/D转换口在P1(P1-P10)口,用户通过软件设置可将8路中的任一作为自己的A/D转换口。在STC15单片机A/D转换中,先通过软件设置P1口的工作模式,然后将A/D转换口的特殊功能寄存器编制相应位置,并设置相应模拟功能。在确定A/D转换功能之后,对其转换速度进行控制,即A/D转换所需时间,通常包括以下几个类型:1) 70个时钟周期转换一次;2) 140个时钟周期转换一次;3) 280个时钟周期转换一次;4) 420个时钟周期转换一次。A/D转换完成之后的结果被存储在转换结果寄存器里。
2.3 DS18B20温度传感器
在本文温度控制系统的设计中,温度传感器使用DS18B20传感器,能够实现-55 ℃~+125 ℃的测温范围,并且固有测温分辨率0.5 ℃,在实际运行中不需要再次添加其他外围原件。DS18B20传感器的引脚包括DQ、GND、VDD,其内部结果包括温度传感器、64位光刻ROM、配置寄存器、非挥发的温度报警触发器TH和TL。DS18B20传感器采用独特的寄生电源供电方式,具有无需本地电源、无常规电源读取ROM、电路简洁、一根I/O口实现测温等优点。
2.4 温度传感器工作原理及注意事项
DS18B20传感器具有更高的测温精度以及更快的温度转换延迟,其测温工作原理如图2所示,其中低温度系数振荡器产生用于基数的固定脉冲,而高温度系数振荡器对温度的敏感性较高,用于产生测温脉冲,然后结合高温度系数振荡器与地温度系数振荡器的脉冲数值进行相互补偿,最终得出修正后的数值就是所测温度[4]。
在实践应用中发现,虽然DS18B20传感器具有诸多优点,但仍需要注意以下主要问题:一是对DS18B20传感器进行读写编程时需严格保证读写时序,二是单总线上所挂DS18B20传感器不能超过8个,三是链接DS18B20传感器的总线缆长度需进行有限控制。
图2 DS18B20传感器工作原理框架图
3 温度监控系统总体设计
3.1 电源输入部分
在本文设计的温度控制系统中,对于系统主控部分需要5 V直流电进行供电,因此直接220 V有效值、50 Hz频率的单项交流电需要进行转换,即单项电流经过电源变压器、滤波电路、整流电路、稳压电路等,最终转换为该系统主控所用的5 V直流电。在这种要求下,本系统电路选择H7805集成稳压芯片,该芯片输出电流与电压分别为1 A与5 V,而且可实现短路保护与过热保护。
3.2 键盘及显示电路
在该系统中,非编码键盘有矩阵式与独立式两种,键盘接口的过程为:判断按键→按下按键识别→读键值→判断多个按键按下。通常为了避免多按键按下时产生的错误读键值,可采用的方法有双键锁定法与N键轮回法。显示电路的设计中,显示器选用LCD液晶显示面板,采用最基本的VCC和GND电源即可。在显示器中E信号包括“忙标志BF”、“字型产生ROM”、“显示数据RAM”、“地址计数器AC”。
3.3 温度模块
基于STC单片机的温度控制系统,DS18B20温度传感器的工作流程可表述为:DS18B20传感器的初始化时序→DS18B20温度传感器的写和读操作→存储操作指令→数据传输→完成显示。此外,在该模块中需要设计超温报警电路,及配备蜂鸣器模块。温度检测的整体工作流程为:开始→初始化DS18B20温度传感器→发跳过ROM命令并转发温度转换命令→等待转换完成:I=1→初始化DS18B20→发匹配ROM命令并发第1个DS18B20的ID→读取温度到缓冲区→调用温度处理子程序→第n个DS18B20处理完成。
4 结束语
本文研究的基于STC单片机智能电子温度控制系统具有测温准确、敏感度高、小巧美观、便于携带等优点,而且读数十分方便,测温范围也较广,系统稳定且简单实用,经济成本较低,能够广泛应用于温度测控领域。此外,在面对更为复杂的外围环境时,可同个增加相应芯片进行扩展,这使得系统具有较强的可拓展性。
[1] 刘晓艺,刘清平.基于STC89C52单片机的温度采集与控制系统设计[J].科技广场,2016(6):186-188.
[2] 孙立峰.基于STC单片机塑料大棚温湿度控制系统的设计与研究[D].阿拉尔:塔里木大学,2015.
[3] 张威.基于STC15单片机的分布式温度控制系统设计[J].赤峰学院学报(自然科学版),2016(7):24-25.
[4] 吕高,霍达.基于STC12C5A60S2单片机的温度控制系统的研究与实现[J].电力学报,2015(6):263-267.
Research and Design of Intelligent Electronic Temperature Control System Based on STC Microcontrollers
Hu Yuxuan
(The1thInstitute,State-ownedDazhongMachineryFactory,TaiyuanShanxi030024,China)
With the rapid development of electrical automation and computer technology, the microcontroller’s measurement and control technology is widely used in various fields. With the deepening of research, the microcontrollers which have the advantages of low cost and simple structure are taken as the core component to be used for real-time monitoring and automatic control field. In this paper, the research is made with the STC microcontroller which as the main control unit and the temperature measuring unit which forms a single total digital temperature sensor, by setting the temperature upper and lower parameters for data monitoring to monitor and control the temperature within a certain range.
STC microcontrollers; temperature control; temperature acquisition
2017-06-12
胡玉轩(1986- ),男,山西太原人,助理工程师,主要从事电气自动化技术研究。
1674- 4578(2017)04- 0087- 03
TP273.5
A