您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 基于DS18B20的温度监控系统
摘要本设计以STC12C5A16S2单片机为核心的温度控制系统的工作原理和设计方法。温度信号由温度芯片DS18B20采集,并以数字信号的方式传送给单片机,再由单片机将信号通过数码管显示出来。报告中介绍了该控制系统的硬件部分,包括:温度检测模块、温度控制模块、PC机与单片机串口通讯模块,键盘输入模块,显示模块和继电器模块。单片机通过对信号进行相应处理,从而实现温度控制的目的。报告中还着重介绍了软件设计部分,在这里采用模块化结构,主要模块有:数码管显示程序、键盘扫描及按键处理程序、温度信号处理程序、继电器控制程序。关键词:STC12C5A16S单片机DS18B20温度芯片温度控制串口通讯SummaryThisdesignSTC12C5A16S2singlechipwiththetemperaturecontrolsystemoftheworkingprincipleanddesignmethod.TemperaturesignalbytemperaturechipDS18B20acquisition,andthewayofdigitalsignaltransmittedbysingle-chipmicrocontroller,againbydigitalsignaldisplaytube.Inthereportofthecontrolsystemisintroduced,including:hardwareparttemperaturedetectionmodule,temperaturecontrolmodule,PCandMCUserialcommunicationmodule,keyboardinputmodule,displaymoduleandrelaymodules.Throughthecorrespondingsignalchipprocessing,soastoachievethepurposeoftemperaturecontrol.Thereportalsointroducesemphaticallythedesignofthesoftware,themodularizedstructure,herearethemainmodules:digitaldisplayandkeyboardscantubeprogramandkeyprocess,temperaturesignalprocessingprogram,relaycontrolprocedures.Keywords:STC12C5A16SchipDS18B20temperaturechiptemperaturecontrolserialcommunicationII目录摘要ISummaryII目录III第1章绪论1第2章总体设计方案22.1方案一22.2方案二22.3方案比较2第3章硬件系统方案设计33.1DS18B20温度传感器简介33.2单片机接口电路设计73.1.1晶振电路83.1.2串口引脚83.1.3其它引脚93.3键盘控制设计93.4温度测试电路103.5温度控制器件电路103.6七段数码管显示电路103.7串口通信电路………………………………………………11第4章软件系统分析与设计124.1程序结构分析154.2系统程序流图18第5章系统仿真调试与参数测量195.1测试环境205.2测试方法215.3测试结果215.4测试分析21结论22参考文献23附录25附录一:使用说明25附录二:元件清单25III第1章绪论温度是工业生产过程中最普遍、最重要反日检测参数之一。任何物理变化和化学变化的过程都与温度密切相关。温度检测和控制都直接与安全生产、节约能源等技术经济指标相联系。温度测量在工业、民用、军事等领域占着重要的地位。航空、家电、科研等领域都需要温度测试设备,用于测试和确定电工、电子及其它产品及材料进行高温、低温、交变温度或恒定试验的温度环境的变化,判断当检测目标的温度值达到警示条件时发出警告信号。常用的控制电路根据应用场合和所要求的性能指标有所不同,在工业企业中,如何提高温度控制对象的运行性能一直以来都是控制人员和现场技术人员努力解决的问题。这类控制对象惯性大,滞后现象严重,存在很多不确定的因素,难以建立精确的数学模型,从而导致控制系统性能不佳,甚至出现控制不稳定、失控现象。传统的继电器调温电路简单实用,但由于继电器动作频繁,可能会因触点不良而影响正常工作。控制领域还大量采用传统的PID控制方式,但PID控制对象的模型难以建立,并且当扰动因素不明确时,参数调整不便仍是普遍存在的问题。而采用数字温度传感器DS18B20,因其内部集成了A/D转换器,使得电路结构更加简单,而且减少了温度测量转换时的精度损失,使得测量温度更加精确。数字温度传感器DS18B20只用一个引脚即可与单片机进行通信,大大减少了接线的麻烦,使得单片机更加具有扩展性。由于DS18B20芯片的小型化,更加可以通过单跳数据线就可以和主电路连接,故可以把数字温度传感器DS18B20做成探头,探入到狭小的地方,增加了实用性。更能串接多个数字温度传感器DS18B20进行范围的温度检测。第2章总体设计方案2.1方案一测温电路的设计,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来。2.2方案二考虑使用数字温度传感器,结合单片机电路设计,采用一只DS18B20温度传感器,直接读取被测温度值,之后进行转换,依次完成设计要求。2.3方案比较方案一采用模拟温度传感器,数据处理麻烦,且容易产生信号失真,方案二可以只用一根线实现信号的双向传输,具有接口简单、容易扩展等优点,并且可以挂接多个从机,适用于单片机、多从机构成的系统。DS18B20可以直接温度转换为串行数字信号,供单片机进行处理,具有低功耗、高性能、抗干扰能力强等优点。比较以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计容易实现,故实际设计中拟采用方案二。在本系统的电路设计方框图如图1.1所示。图1.1温度计电路总体设计方案第3章硬件系统方案设计3.1DS18B20温度传感器简介DS18B20是DALLAS公司生产的一线式数字温度传感器,它具有微型化、低功耗、高性能抗干扰能力、强易配处理器等优点,特别适合用于构成多点温度测控系统,可直接将温度转化成串行数字信号(按9位二进制数字)给单片机处理,且在同一总线上可以挂接多个传感器芯片,它具有三引脚TO-92小体积封装形式,温度测量范围-55~+125℃,可编程为9~12位A/D转换精度,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出,其工作电源既可在远端引入,业可采用寄生电源方式产生,多个DS18B20可以并联到三根或者两根线上,CPU只需一根端口线就能与多个DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。从而可以看出DS18B20可以非常方便的被用于远距离多点温度检测系统。综上,在本系统中我采用温度芯片DS18B20测量温度。该芯片的物理化学性很稳定,它能用做工业测温元件,且此元件线形较好。在0-100摄氏度时,最大线形偏差小于1摄氏度。该芯片直接向单片机传输数字信号,便于单片机处理及控制。图3.1温度芯片DS18B203.1单片机接口电路设计DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,如图3.1所示单片机端口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个三极管来完成对总线的上拉。本设计采用电源供电方式,P2.2口接单线总线为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个上拉电阻和stc12c5a16s2的P2.2来完成对总线的上拉。当DS18B20处于写存储器操作和温度A/D变换操作时,总线上必须有强的上拉,上拉开启时间最大为10μs。采用寄生电源供电方式是VDD和GND端均接地。由于单线制只有一根线,因此发送接收口必须是三状态的。主机控制DS18B20完成温度转换必须经过3个步骤:初始化;ROM操作指令;存储器操作指令。3.1.1晶振电路单片机XIAL1和XIAL2分别接30PF的电容,中间再并个12MHZ的晶振,形成单片机的晶振电路。图3.1.13.1.2串口引脚P0口接9个2.2K的排阻然后接到显示电路上。P2.2温度传感器DS18B20如图3.1.2所示。图3.1.2图3.3DS18B20与单片机的接口电路P3.6引脚接继电器电路的4.7K的限流电阻上;P1口中P1.4、P1.5、P1.6、P1.7分别接到显示电路的三极管上,P3.2接蜂鸣器电路,P1.3接到发光二极管上;P2口接到按键电路。3.1.3其它引脚ALE引脚悬空,复位引脚接到复位电路、VCC接电源、VSS接地、EA接电3.2键盘控制设计单片机应用系统中除了复位按键有专门的复位电路,以及专一的复位功能外,其它的按键或键盘都是以开关状态来设置控制功能或输入数据。键开关状态的可靠输入:为了去抖动我采用软件方法,它是在检测到有键按下时,执行一个10ms的延时程序后,再确认该键电平是否仍保持闭合状态电平,如保持闭合状态电平则确认为真正键按下状态,从而消除了抖动影响在这种行列式矩阵键盘非编码键盘的单片机系统中,键盘处理程序首先执行等待按键并确认有无按键按下的程序段。当确认有按键按下后,下一步就要识别哪一个按键按下。对键的识别通常有两种方法:一种是常用的逐行扫描查询法;另一种是速度较快的线反转法。对照图示的3*4键盘,说明线反转法工作原理。首先辨别键盘中有无键按下,有单片机I/O口向键盘送全扫描字,然后读入行线状态来判断。方法是:给P2口的一个口致0,其它致1,判断P2口值是否有变化,在判断是哪个按键按下。图3.23.3温度测试电路采用温度芯片DS18B20。可以直接将被测温度转换为串行数字信号,工单片机进行处理,具有低功耗、高功能、抗扰能力强等优点。图3.3温度传感器电路引脚图3.4温度控制器件电路单片机通过三极管控制继电器的通断,最后达到控制外围器件电路的目的。当温度未达到要求时,单片机发送高电平信号使三极管饱和导通,继电器使电源与外围器件接通。当温度上升到预定温度时,单片机发送低电平信号三极管进入截止状态,继电器的弹片打到另一侧,使电热器与电源断开,外围器件截止。继电器电路中有一个PNP三极管的保护电路,即将一个二极管反向接到三机管的两端。连接方法如图3.4所示。图3.4其原理是:当继电器突然断电时,继电器产生很大的反向电流。二极管的作用是将反向电流分流,使流过三级管8050的电流比较小,达到保护三极管8050的作用3.5七段数码管显示电路具体见实际连线图如图3.5,当位选打开时,送入相应的段码,则相应的数码管打开,关掉位选,打开另一个位选,送入相应的段码,则数码管打开,而每次打开关掉相应的位选时,时间间隔低于20ms,从人类视觉的角度上看,就仿佛是全部数码管同时显示的一样。图3.53.6串口通信电路串口是计算机上一种非常通用设备通信的协议(不要与通用串行总线UniversalSerialBus或者USB混淆)。大多数计算机包含两个基于RS232的串口。串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232口。同时,串口通信协议也可以用于获取远程采集设备的数据。串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如IEEE488定义并行通行状态时,规定设备线总常不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。RS-232(ANSI/EIA-232标准)是IBM-PC及其兼容机上的串行连接标准
本文标题:基于DS18B20的温度监控系统
链接地址:https://www.777doc.com/doc-5616216 .html