基于单片机的温度巡回检测系统.docx

上传人:b****4 文档编号:5730025 上传时间:2023-05-09 格式:DOCX 页数:54 大小:821.64KB
下载 相关 举报
基于单片机的温度巡回检测系统.docx_第1页
第1页 / 共54页
基于单片机的温度巡回检测系统.docx_第2页
第2页 / 共54页
基于单片机的温度巡回检测系统.docx_第3页
第3页 / 共54页
基于单片机的温度巡回检测系统.docx_第4页
第4页 / 共54页
基于单片机的温度巡回检测系统.docx_第5页
第5页 / 共54页
基于单片机的温度巡回检测系统.docx_第6页
第6页 / 共54页
基于单片机的温度巡回检测系统.docx_第7页
第7页 / 共54页
基于单片机的温度巡回检测系统.docx_第8页
第8页 / 共54页
基于单片机的温度巡回检测系统.docx_第9页
第9页 / 共54页
基于单片机的温度巡回检测系统.docx_第10页
第10页 / 共54页
基于单片机的温度巡回检测系统.docx_第11页
第11页 / 共54页
基于单片机的温度巡回检测系统.docx_第12页
第12页 / 共54页
基于单片机的温度巡回检测系统.docx_第13页
第13页 / 共54页
基于单片机的温度巡回检测系统.docx_第14页
第14页 / 共54页
基于单片机的温度巡回检测系统.docx_第15页
第15页 / 共54页
基于单片机的温度巡回检测系统.docx_第16页
第16页 / 共54页
基于单片机的温度巡回检测系统.docx_第17页
第17页 / 共54页
基于单片机的温度巡回检测系统.docx_第18页
第18页 / 共54页
基于单片机的温度巡回检测系统.docx_第19页
第19页 / 共54页
基于单片机的温度巡回检测系统.docx_第20页
第20页 / 共54页
亲,该文档总共54页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于单片机的温度巡回检测系统.docx

《基于单片机的温度巡回检测系统.docx》由会员分享,可在线阅读,更多相关《基于单片机的温度巡回检测系统.docx(54页珍藏版)》请在冰点文库上搜索。

基于单片机的温度巡回检测系统.docx

基于单片机的温度巡回检测系统

基于单片机的温度巡回检测系统

摘要

温度控制系统广泛应用于社会生活的各个领域,如家电、汽车、材料、电力电子等,常用的控制电路根据应用场合和所要求的性能指标有所不同,在工业企业中,如何提高温度控制对象的运行性能一直以来都是控制人员和现场技术人员努力解决的问题。

这类控制对象惯性大,滞后现象严重,存在很多不确定的因素,难以建立精确的数学模型,从而导致控制系统性能不佳,甚至出现控制不稳定、失控现象。

本文设计了基于单片机AT89S51的温度控制系统的设计方案与软硬件实现。

采用温度传感器DS18B20采集温度数据,八段数码管显示温度数据,按键设置温度上下限并可改变加热器与致冷器的温控状态,当温度低于设定的下限时,单片机启动加热器加热;当温度高于设定的上限时,单片机启动致冷器降温。

当环境温度变化太剧烈或由于加热或降温设备出现故障,或者温度传感头出现故障等原因无法调控温度时,单片机通过三极管驱动扬声器发出警笛声。

文中介绍了该控制系统各单元部分的设计,包括:

温度检测单元、键盘单元、显示单元、温度控制及报警单元和一些接口电路。

单片机通过对信号进行相应处理,从而实现温度控制的目的。

文中还着重介绍了软件设计部分,在这里采用模块化结构,主要模块有:

数码管显示程序、键盘扫描及按键处理程序、温度信号处理程序、继电器控制程序、超温报警程序。

关键词:

AT89S51单片机DS18B20温度芯片温度控制串口通讯

BASEDONMONOLITHICINTEGRATEDCIRCUIT'S

TEMPERATURECONTROLSYSTEM'SDESIGN

ABSTRACT

Temperaturecontrolsystemiswidelyusedinvariousfieldsofsociallife,suchashouseholdappliances,automobiles,materials,powerelectronics,controlcircuitaccordingtocommonlyusedapplicationsandtherequiredperformanceisdifferent,inindustrialenterprises,howtoimprovetemperaturecontrolobjectTheoperatingperformancehasbeenthecontrolofpersonnelandfieldtechnicianstoresolveproblems.Suchcontrolobjectinertia,lagisserious,therearemanyuncertainfactors,itisdifficulttoestablishaccuratemathematicalmodel,leadingtopoorcontrolsystemperformance,orevencontroltheinstability,outofcontrol.

SCMAT89S51isdesignedbasedonthetemperaturecontrolsystemdesignandsoftwareandhardware.TemperaturesensorDS18B20collectingtemperaturedata,8duandigitaldisplaytemperaturedata,keytosetthetemperaturecanchangetheupperandlowerlimitsoftemperaturecontrolheaterandcoolerconditions,whenthetemperatureisbelowthesetlowerlimit,starttheheaterMicrocontroller;whenthetemperatureishigherthantheupperlimitset,microcontrollerstartscoolercool.

Inthearticleintroducedthiscontrolsystem'shardwarepart,including:

temperaturesensingcircuit,temperaturecontrolcircuit,alarmcircuit,andsomeinterfacecircuits.SCMsignalsthroughthecorrespondingtreatmentinordertoachievetemperaturecontrol.Thepaperalsointroducesthesoftwaredesignsection,whereamodularstructure,themainmodulesare:

digitaltubedisplayprogram,keyboardscanningandkeyhandlingprocedures,temperature,signalprocessing,relaycontrolprogram,overtemperaturealarmprocedures.

 

Keywords:

AT89S51MonolithicIntegratedCircuit;DS18B20TemperatureChip;TemperatureControl;SerialPortCommunication

目 录

前言1

第1章设计背景及基本要求2

第2章设计原理3

第3章方案设计与论证5

§3.1测量部分5

§3.2主控制部分7

第4章硬件部分的设计13

§4.1键盘单元13

§4.2温度控制及超温和超温警报单元14

§4.3温度测试单元15

§4.4继电器单元16

§4.5八段数码管显示单元16

§4.6接口通讯单元18

§4.7电源输入单元19

第5章软件部分的设计21

§5.1概述21

§5.2程序结构分析22

§5.3程序流程图22

结 论27

参考文献28

致谢29

附 录30

外文资料译文43

前 言

 

温度控制系统广泛应用于社会生活的各个领域,如家电、汽车、材料、电力电子等,在工业企业中,如何提高温度控制对象的运行性能一直以来都是控制人员和现场技术人员努力解决的问题。

的控制电路根据应用场合和所要求的性能指标有所不同,这类控制对象惯性大,滞后现象严重,存在很多不确定的因素,难以建立精确的数学模型,从而导致控制系统性能不佳,甚至出现控制不稳定、失控现象。

传统的继电器调温电路简单实用,但由于继电器动作频繁,可能会因触点不良而影响正常工作。

控制领域还大量采用传统的PID控制方式,但PID控制对象的模型难以建立,并且当扰动因素不明确时,参数调整不便仍是普遍存在的问题。

而采用数字温度传感器DS18B20,因其内部集成了A/D转换器,使得电路结构更加简单,而且减少了温度测量转换时的精度损失,使得测量温度更加精确。

数字温度传感器DS18B20只用一个引脚即可与单片机进行通信,大大减少了接线的麻烦,使得单片机更加具有扩展性。

由于DS18B20芯片的小型化,更加可以通过单跳数据线就可以和主电路连接,故可以把数字温度传感器DS18B20做成探头,探入到狭小的地方,增加了实用性。

更能串接多个数字温度传感器DS18B20进行范围的温度检测。

第1章设计背景及基本要求

 

1.1设计背景

在工、农业生产和日常生活中,对温度的测量及控制占据着极其重要的地位,温度检测系统在各个方面的应用领域非常宽广,比如消防电气的非破坏性温度检测,电力、电讯设备的过热故障预知检测,空调系统的温度检测,各类运输工具的组件的过热检测,保全与监视系统的应用,医疗与健诊的温度测试,化工、机械...等设备温度过热检测。

随着电子技术的不断发展,单片机在电子产品中的应用已经越来越广泛,数字化的传感器也已经走入人们的生活当中,利用单片机与数字化的传感器够成的温度检测系统较于传统的温度计有着巨大的优势。

1.2基本要求

本系统要求实现对温度的实时采样,并将测量结果显示出来,可以运用键盘按钮对温度进行设定,并且驱动加热器或制冷器将温度调整到设定温度。

当温度超出要求范围时,可以及时报警提醒通知。

具体要求如下:

1.温度连续可调,范围为0℃-40℃

2.超调量σ%≤20%

3.温度误差≤±0.5℃

4.人-机对话方便

第2章设计原理

 

温度传感器DS18B20从设备环境的不同位置采集温度,单片机AT89S51获取采集的温度值,经处理后得到当前环境中一个比较稳定的温度值,再根据当前设定的温度上下限值,通过加热和降温对当前温度进行调整。

当采集的温度经处理后超过设定温度的上限时,单片机通过三极管驱动继电器开启降温设备(压缩制冷器),当采集的温度经处理后低于设定温度的下时,单片机通过三极管驱动继电器开启升温设备(加热器)。

当由于环境温度变化太剧烈或由于加热或降温设备出现故障,或者温度传感头出现故障导致在一段时间内不能将环境温度调整到规定的温度限内的时候,单片机通过三极管驱动扬声器发出警笛声。

系统中将通过串口通讯连接PC机存储温度变化时的历史数据,以便观察整个温度的控制过程及监控温度的变化全过程。

图2-1总体结构图

第3章方案设计

 

3.1温度测量部分方案

温度测量部分选用DS18B20温度传感器。

美国Dallas半导体公司的数字化温度传感器DS1820是世界上第一片支持"一线总线"接口的温度传感器,在其内部使用了在板(ON-B0ARD)专利技术。

全部传感元件及转换电路集成在形如一只三极管的集成电路内。

部分功能电路的集成,使总体电路更简洁,搭建电路和焊接电路时更快。

一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念;同DS1820一样,DS18B20也支持"一线总线"接口,集成块的使用,有效地避免外界的干扰,提高测量电路的精确度。

DS18B20可以程序设定9~12位的分辨率,可选更小的封装方式,更宽的电压适用范围。

分辨率设定,及用户设定的报警温度存储在EEPROM中,掉电后依然保存。

DS18B20的性能是新一代产品中最好的!

性能价格比也非常出色!

测量温度范围为-55°C~+125°C,在-10~+85°C范围内,精度为±0.5°C。

现场温度直接以"一线总线"的数字方式传输,大大提高了系统的抗干扰性。

适合于恶劣环境的现场温度测量,如:

环境控制、设备或过程控制、测温类消费电子产品等。

与前一代产品不同,新的产品支持3V~5.5V的电压范围,使系统设计更灵活、方便。

而且新一代产品更便宜,体积更小。

目前DS18B20批量采购价格仅10元左右。

1)DS18B20的主要特性

(1)适应电压范围更宽,电压范围:

3.0~5.5V,在寄生电源方式下可由数据线供电

(2)独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯

(3)DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温

(4)DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内

(5)温范围-55℃~+125℃,在-10~+85℃时精度为±0.5℃

(6)可编程的分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温

(7)在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快

(8)测量结果直接输出数字温度信号,以"一线总线"串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力

(9)负压特性:

电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。

2)DS18B20的外形和内部结构

 DS18B20内部结构主要由四部分组成:

64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。

DS18B20的外形及管脚排列如下图3-1:

图3-1DS18B20的外形及管脚排列图

3)DS18B20引脚定义

(1)I/O为数字信号输入/输出端;

(2)GND为电源地;

(3)VDD为外接供电电源输入端(在寄生电源接线方式时接地)。

采用温度芯片DS18B20测量温度,芯片的使用将成为电路发展的一种趋势,体现了作品芯片化这个趋势。

本方案应用这一温度芯片,也是顺应这一趋势。

3.2主控制部分方案

单片机部分选用AT89S51。

AT89S51是一个低功耗,高性能CMOS8位单片机,片内含4kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。

AT89S51具有如下特点:

40个引脚,4kBytesFlash片内程序存储器,128bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。

此外,AT89S51设计和配置了振荡频率可为12MHz并可通过软件设置省电模式。

空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。

同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。

由于系统控制方案简单,数据量也不大,考虑到电路的简单和成本等因素,因此在本设计中选用ATMEL公司的AT89S51单片机作为主控芯片。

主控模块采用单片机最小系统是由于AT89S51芯片内含有4Kb的E2PROM,无需外扩存储器,电路简单可靠,其时钟频率为0~24MHz,并且价格低廉,批量价在10元以内。

AT89SXX系列单片机实现了ISP下载功能,故而取代了89CXX系列的下载方式,也是因为这样,ATMEL公司已经停止生产89CXX系列的单片机,现在市面上的AT89CXX多是停产前的库存产品。

图3-2AT89S51单片机引脚图

1)主要功能特性:

•8031CPU与MCS-51兼容32个双向I/O口

•4K字节可编程FLASH存储器(寿命:

1000写/擦循环)

2个16位可编程定时/计数器

•全静态工作:

0Hz-33MHz

•128*8位内部RAM

•32条可编程I/O线

•两个16位定时器/计数器

•6个中断源

•可编程串行通道

•低功耗的闲置和掉电模式

•片内振荡器和时钟电路

•中断唤醒省电模式

•3级加密位

•看门狗(WDT)电路

•软件设置空闲和省电功能

•灵活的ISP字节和分页编程

•双数据寄存器指针

可以看出AT89S51提供以下标准功能:

4K字节Flash闪速存储器,128字节内部RAM,32个I/O口线,看门狗(WDT),两个数据指针,两个16位定时器/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟。

同时,AT89S51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。

空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。

掉电方式何在RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直接到一个硬件复位。

2)AT89S51引脚功能说明

VCC:

电源电压

GND:

接地

P0口:

P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口,作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端口。

在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。

在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。

P1口:

P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。

对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。

作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号校验期间,P1接收低8位地址。

表3-1为P1口第二功能。

表3-1P1口第二功能

端口引脚

第二功能

P1.5

MOSI(用于ISP编程)

P1.6

MISO(用于ISP编程)

P1.7

SCK(用于ISP编程)

P2口:

P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动4个TTL逻辑门电路。

对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流I。

在访问8位地址的外部数据存储器(如执行:

MOVX@RI指令)时,P2口线上的内(也即特殊功能寄存器,在整个访问期间不改变。

FLASH编程或校验时,P2也接收高位地址和其它控制信号。

P3口:

P3口是一组带有内部上拉电阻的8位双向I/O口。

P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。

对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。

作输入端口时,被外部拉低的P3口将用上拉电阻输出电流I。

P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,P3口的第二功能如下表3-2。

表3-2P3口的第二功能

端口功能

第二功能

端口引脚

第二功能

RXD(P3.0)

串行输入口

T0(P3.4)

定时/计数器0外部输入

TXD(P3.1)

串行输出口

T1(P3.5)

定时/计数器1外部输入

INT0(P3.2)

外中断0

WR(P3.6)

外部数据存储器写选通

INT1(P3.3)

外中断1

RD(P3.7)

外部数据存储器读选通

RST:

复位输入。

当振荡工作时,RST引脚出现两个机器周期上高电平将使单片机复位。

WDT益出将使该引脚输出高电平,设置SFRAUXR的DISRTO位(地址8EH)可打开或关闭该功能。

DISRTO位缺省为RESET输出高电平打开状态。

ALE/PROG:

当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。

即使不访问外部存储器,ALE仍以时钟振荡频率的1/6输出的正脉冲信号,因此它可对外输出时钟或用于定时目地,要注意的是:

第当访问外部数据存储器时将跳过一个ALE脉冲。

如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。

该位禁位后,只有一条MOVX和MOVC指令ALE才会被激活。

此外,该引脚伎被微弱拉高,单片机执行外部程序时,应设置ALE无效。

PSEN:

程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。

当访问外部数据存储器,高有两次有效的PSEN信号。

EA/VPP:

外部访问允许。

欲使CPU公访问外部程序存储器(地址0000H-FFFFH),EA端必须保持低电平(接地)。

需注意的是:

如果加密位LB1被编程,复位时内部会锁存EA端状态。

如EA端为高电平(接VCC端),CPU则执行内部程序存储器中的指令。

Flash存储器编程时,该引脚加上+12V的编程电压VPP。

XTAL1:

振荡器反相放大器及内部时钟发生器的输入端。

XTAL2:

振荡器反相放大器的输出端。

3)AT89S51单片机内部构造及功能

特殊功能寄存器:

特殊功能寄存器的片内空间分存地址并没有全部占用,没有占用的地址不可使用,读这些地址将得到一个随意的数值。

而写这些地址单元将不能得到预期的结果。

中断寄存器:

各中断允许控制位于IE寄存器,5个中断源的中断优先级控制位于IP寄存器。

双时钟指针寄存器:

为方便地访问内部和外部数据存储器,提供了两个16位数据指针寄存储器:

PD0位于SFR区块中的地址82H、83H和DP1位于地址84H、85H,当SFR中的位DPS=0时选择DP0,而DPS=1时选择DP1。

在使用前初始化DPS。

电源空闲标志:

电源空闲标志(POF)在特殊功能寄存储器SFR中PCON的第4位(PCON.4),电源打开时POF置“1”,它可由软件设置睡眠状态并不为复位所影响。

存储器结构:

MCS-51单片机内核采用程序存储器和数据存储器空间分开的结构,均具有64KB外部程序和数据的寻址空间。

程序存储器:

如果EA引脚接地(GND),全部程序均执行外部存储器。

在AT89S51,假如接至VCC(电源+),程序首先执行从地址0000H-0FFFH(4KB)内部程序存储器,再执行地址为1000H-FFFFH(60KB)的外部程序存储器。

数据存储器:

在AT89S51的具有128字节的内部RAM,这128字节可利用直接或间接寻址方式访问,堆栈操作可利用间接寻址方式进行,128字节均可设置为堆栈区空间。

看门狗定时器(WDT):

WDT是为了解决CPU程序运行时可能进入混乱或死循环而设置,它由一个14bit计数器和看狗复位SFR(WDTRST)构成。

外部复位时,WDT默认为关闭状态,要打开WDT,必按顺序将01H和0E1H写到WDTRST寄存器,当启动了WDT,它会随晶体振荡器在每个机器周期计数,除硬件复位或WDT溢出复位外没有其它方法关闭WDT,当WDT溢出,将使RST引脚输出高电平的复位脉冲。

第4章硬件部分的设计

 

4.1键盘模块

单片机应用系统中除了复位按键有专门的复位电路,以及专一的复位功能外,其它的按键或键盘都是以开关状态来设置控制功能或输入数据。

键开关状态的可靠输入:

为了去抖动我采用软件方法,它是在检测到有键按下时,执行一个10ms的延时程序后,再确认该键电平是否仍保持闭合状态电平,如保持闭合状态电平则确认为真正键按下状态,从而消除了抖动影响

在这种行列式矩阵键盘非编码键盘的单片机系统中,键盘处理程序首先执行等待按键并确认有无按键按下的程序段。

当确认有按键按下后,下一步就要识别哪一个按键按下。

对键的识别通常有两种方法:

一种是常用的逐行扫描查询法;另一种是速度较快的线反转法。

对照图示的4*4键盘,说明线反转法工作原理。

首先辨别键盘中有无键按下,有单片机I/O口向键盘送全扫描字,然后读入行线状态来判断。

方法是:

向行线输出全扫描字00H,把全部列线置为低电平,然后将列线的电平状态读入累加器A中。

如果有按键按下,总会有一根行线电平被拉至低电平从而使行线不全为1。

判断键盘中哪一个键被按下是通过将列线逐列置低

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2