单片机温度控制系统设计Word格式.docx

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

单片机温度控制系统设计Word格式.docx

《单片机温度控制系统设计Word格式.docx》由会员分享,可在线阅读,更多相关《单片机温度控制系统设计Word格式.docx(29页珍藏版)》请在冰点文库上搜索。

单片机温度控制系统设计Word格式.docx

2.电烤箱温度控制系统

该方案采用美国TI公司的FLASH型超低功耗16位单片机MSP430F123为核心器件,通过热电偶检测系统温度,用集成温度传感器AD590作为温度测量器件利用该芯片内置的比较器完成高精度AD信号采样,根据温度变化情况,通过单片机编写闭环算法,从而成功地实现了对温度的测量和自动控制功能。

其测温范围较低,大概在0-250之间,具有精度高,相应速度快等特点。

3.小型热水锅炉温度控制系统

该设计解决了北方分散取暖采用人工定时烧水供热,耗煤量大,浪费人力,温度变化大的问题。

设计方案硬件方面采用MCS-51系列8031单片机为核心,扩展程序存储器2732,AD590温度检测元件测量环境温度和供水温度,ADC0809进行数模转换,同向驱动器7407、光电耦合器及9103的功放完成对电机的控制。

软件方面建立了供暖系统的控制系统数学模型。

本系统硬件电路简单,软件程序易于实现。

它可用于一台或多台小型取暖热水锅炉的温度控制,可使居室温度基本恒定,节煤,节电,省人力。

1.3温度控制方案

结合本设计的要求和技术指标,通过对系统大致程序量的估计和系统工作的估计,考虑价格因素。

选定AT89S51单片机作为系统的主要控制芯片,8位模拟转换器ADC0809,采用AD590进行温度控制。

1.4论文的主要任务和所做工作

本论文主要是完成一种低成本、低价格、功能齐全、及温度测量、温度显示、温度控制于一体的单片机温度控制系统理论设计。

包括硬件电路和主要软件设计。

研究的关键问题是:

温度的精确测量;

温度采集器AD590温度控制电路设计;

单片机与A/D转换电路、显示电路及软件设计。

根据设计所需要的任务书论文完成了如下工作:

1.介绍了研究和设计的背景和意义,调查并综述了当前温度控制系统市场的国内外现状。

2.提出了符合设计要求高精度控制系统的方案,并阐述了其工作原理。

3.完成了硬件电路的设计,它包括温度采集系统电路;

包含89S51单片机,模数转换器ADC0809等芯片的接口电路;

通过AD590实现的温度控制采集电路;

键盘接口和LED显示电路。

4.基本完成了软件部分设计,它包括主程序图,A/D转换子程序,显示子程序,主程序清单。

 

第2章系统总体方案设计及原理

2.1系统工作原理和技术指标

1.系统工作原理

在温控系统中,需要将温度的变化转化为对应的电信号的变化,选用89S51单片机为中央处理器,通过温度传感器对空气进行温度采集,将采集到的温度信号传输给单片机,再有单片机控制显示器,并比较采集温度与设定温度是否一致,然后驱动空调加热或降温循环对空气进行处理,从而模拟实现空调控制单元的工作情况。

工作流程说明如下:

开始,先接通电源,三段数码管显示器就自动显示出当前温度,并且显示出设置温度的缺省值000

按下S1按键,功能转换键,按此键则进行功能控制。

此时可以通过键盘输入预设置的温度。

按下S2加,按此键温度设置加1度。

按下S3减,按此按键温度设定值减1度。

S4复位键,是系统复位。

就这样通过温度芯片的反馈信息,实现温度保持在设置温度上,从而达到自动控制温度的功能。

2.技术指标

系统的主要技术指标如下:

测温范围:

-55℃~+100℃温度分辨率:

正负0.5℃

LED显示位数:

3

2.2系统的总体结构

系统的硬件电路有温度传感器、A/D转换、LED等显示部分组成,总体方案结构见图2.1所示。

实现方案的技术路线为:

用按钮输入标准温度值,用LED实时显示环境温度,用驱动电路控制完成加热和制冷,用汇编语言完成软件编程。

图2.1空调温度控制单元结构图

第3章系统硬件单元方案设计与选择

硬件设计部分将先寻找电路最合适的设计方案,再进行单元电路设计,最后介绍所用到的两个特殊元件。

3.1温度传感器部分

要求对温度和与温度有关的参量进行检测,应考虑用热电阻传感器。

按照热电阻的性质可分为半导体热电阻和金属热电阻两大类,前者通常称为热敏电阻,后者称为热电阻。

方案1:

采用热敏电阻,这种电阻是利用对温度敏感的半导体材料制成,其阻值随温度变化有明显的改变。

负温度系数热敏电阻器通常是有锰,钴的氧化物烧制而成。

其特点是在工作温度范围内电阻阻值随随温度的上升而降低。

可满足40℃~90℃测量范围,但热敏电阻精度、重复性、可靠性交差,不适用于检测小于1℃的信号;

而且线性度差,不能直接用于A/D转换,应该用硬件或软件对其进行线性化补偿。

方案2:

采用温度传感器铂电阻pt1000.铂热电阻的物理化学性能在高温和氧化性介质中很稳定,他能用工业测温元件,且元件线性较好。

在0℃~100℃时最大非线性偏差小于0.5℃铂热电阻与温度的关系是,Rt=Ro(1+At+Bt*t):

其中Rt是温度为t摄氏度时的电阻;

Ro是温度是0℃时的电阻;

t为任意温度值,AB为温度系数。

但其成本太贵,不适合做普通设计。

方案3采用集成温度传感器,如常用的AD590和LM35。

AD590是电流型温度传感器。

这种器件是以电流作为输出量指示温度,其典型的电流温度敏感度是1μA/K。

它是二端器件,使用非常方便,作为一种高阻电流源,他不需要严格考虑传输线上的电压信号损失噪声干扰问题,因此特别适合作为远距离测量或控制用。

另外,AD590也特别适用于多点温度控制测量系统,而不必要考虑选择开关或CMOS多路转换开关所引起的附加电阻造成的误差。

由于采用了一种独特的电路结构,并利用最新的薄膜电阻激光微调技术校准,使得AD590具有很高的精度。

并且应用电路简单,便于设计。

方案选择:

选择方案3。

理由:

电路简单稳定可靠,无需调试,与A/D连接方便。

3.2A/D转换部分

模/数转化器是一种将连续的模拟量转化成离散的数字量的一种电路或器件,模拟信号转换为数字信号一般需要经过采样保持和量化编码两个过程。

针对不同的采样对象,有不同的A/D转化器(ADC)可供选择,其中有通用的也有专用的。

有些ADC还包含其他功能,在选择ADC器件时需要考虑多种因素,除了关键参数、分辨率和转换速度以外,还应考虑其他因素,如静态与动态精度、数据接口类型、控制接口与定时、采样保持性能、基本要求、通道数量、功耗、使用环境要求、封装形式以及与软件有关的问题。

ADC按功能划分,可分为直接转换和非直接转换两大类,其中非直接转换又有主次分级转换等类型。

A/D转换器在实际应用时,除了要设计适当的采样/保持电路、基准电路和多路模拟开关电路外,还应根据实际选择的具体芯片进行模拟信号急性转换等的设计。

方案1:

采用分级式转换器,这种转换器采用两步或多步进行分辨率的闪烁转换,进而快速地完成“模拟-数字”信号的转换,同时可以实现较高的分辨率。

例如再利用两步分级完成n级转换的过程中,首先完成m位的粗转换,然后使用精度至少为m位的数/模转换器(ADC)将此结果转换达到1/2的精度并且与输入信号比较。

对此信号用一个K位转换器(k+m<

=n)转换,最后将两个输出结果合并。

采用积分型A/D转换器,如ICL7135等。

双积分型A/D转换精度高,但是转换速度不太快,若用于温度测量,不能及时反映当前温度值,而且多数双积分型A/D转换器输出端多不是二进制码,而是直接将其输出端接I/O口会给软件设计带来极大的不方便。

方案3:

采用逐次逼近式转换器,对于这种转换方式,通常使用一个比较输入信号与作为基准的n次1位转换。

这种方法类似于天平上用二进制砝码称量物质。

采用逐次逼近寄存器,输入信号仅与最高位(MSB)比较,确定DAC的最高位(DAC满量程的一半)。

确定后结果(0或1)被锁存,同时加到DAC上,已决定DAC的输出(0或1/2)。

逐次逼近式A/D转换器,如ADC0809、AD574等,其特点是转换速度快,精度也比较高,输出为二进制码,直接接I/O口。

软件设计方便。

ADC0809芯片内包含8为模/数转化器,8通道多路转换器与微机控制兼容的控制逻辑。

8通道多路转换器能直接连通8个单输入端输入信号中的任何一个。

由于ADC0809设计时考虑到若干种模/数转换技术的优点,所以该芯片非常适合于过程控制、微控制器输入通道的结合电路、智能仪器和机床控制等应用场合,并且价格低廉,降低设计成本。

选择方案:

选择方案3.理由:

用ADC0809采集速度快,配合温度传感器的应用方便,价格低廉,降低设计成本。

3.3数字显示部分

通常用的LED显示器有7段或8段“米”字段之分。

这种显示器有共阴极和共阳极两种。

共阴极LED显示器的发光二极管的阴极连接在一起,通常此共阴极接地。

当某个发光二极管的阳极为高电平时,发光二极管点亮,相应的段被显示。

同样,共阳极LED显示器的工作原理也一样。

采用静态显示方式。

各位LED显示器的共阳极(或共阴极)连接在一起并接地(或电源正),每位的段选线分别与一个8位的锁存器输出相连,各个LED的显示字符一旦确定,相应锁存器的输出将维持不变,直到显示另一个字符为止,正因为如此静态显示器的亮度都较高。

若用I/O口接口,这需要占用N*8位I/O口(LED显示器的个数N)。

这样的话,如果显示器的个数较多,那使用的I/O接口更多,因此在显示位数较多的情况下,一般都不用静态显示。

方案2:

采用动态显示方式。

当多位LED显示时通常将所有位的段相应的并联在一起,由一个8位I/O口控制,形成段选线的多路复用。

而各位的共阳极或共阴极分别有相应的I/O口控制,实现各位的分时选通。

其中段选占用一个8位I/O口,而位选线占用N个I/O口(N为LED显示器的个数)。

由于各位的段选并联段码的输出对各位来说都是相同的,因此,同一时刻,如果各位选线处于选通状态的话,那LED显示器将显示相同的字符。

若要各位LED能显示出与本位相同的字符,就必须采用扫描显示方式,即在某一时刻,只能让某一位选线处于选通状态,而其他各位的选线处于关闭状态,同时,段选线上输出相应位要显示字符的段码。

这种显示方式占用的I/O口个数为8+N(N为LED显示器的个数),相对静态显示少了很多,但需要占用大量的CPU资源,当CPU处理别的事情时,显示可能出现闪烁或者不现实的情况。

采用以为寄存器扩展I/O口,只需要占用3个I/O口即数据(DATA)、时钟(CLOCK)、输出使能(OUT ENABLE),从理论上讲就可以无限的扩展I/O口,而且显示数据为静态显示,几乎不占用CPU资源。

采用扩展口后,又能采用静态显示,这样,即解决了静态显示占用I/O口多的问题,也解决了动态显示不稳定、容易闪烁、占用CPU资源过多的问题。

非常节约I/O口,又有静态显示的特点,亮度高,节约CPU的使用率。

3.4键盘输入部分

常用键盘接口分为独立键接口和距阵式键盘接口。

采用4*4矩阵键盘接口输入,这种接口方式适用按件数量较由行线和列线组成,按键位于行、列的交叉点上。

矩阵键盘的工作原理是按键按健设置在行、列交叉点上,行、列线分别连接到按键开关的两端。

行线通过上拉电阻接到+5V上。

平时无按键按下时,行线处于高电平状态,而当有按键按下时,行线电平状态由与此电平相连的列线电平决定。

列线电平如果为低,则行线电平为低;

列线电平为高,则行线电平为高,这是识别矩阵锭盘是否被按下的关键所在,由于矩阵健盘中行、列线为多键共用,各按键均影响该按键所在行和列的电平,因此,各按键彼此将相互发生影响,所以不必将行、列线信号配合起来并作适当处理,才能决定闭合键位置。

对于矩阵式键盘,距阵的键盘由行号和列号唯一决定,所以分别对行号和列号行二进制编码,然后将两值合成一个字节,高4位是行号,低4位是列号。

但这种编码对于不同行的键,离散性大,并且编码的复杂度与键盘的个数成正比,因此不适合在出入量较小的设计中。

采用独立式按键接口。

这种方式是各种键盘相互独立。

每个按键各接—很输入线,一根输入线上的按键工作状态不会影响其他输入线上的工作状态。

因此通过检测输入线的电平状态可以很容易判断哪个按健被按下了。

独立式按键电路配置灵活,软件简单。

但每个按键需占用一根输入口线,在按键数量较多时需要较多的输入口线且电路结构复杂,故此种键盘适用于按键较少或操作速度较高的场合。

独立式按键电路按键直接与单片机的I/O口线相接,通过读I/O口判定各I/O口线的电平状态,即可识别出按下的按键。

选择方案2。

减少单片机的I/O口的使用.设计简单。

配置灵活,软件简单。

虽然每个按键需占用一根输入口线,但该设计所用按键较少。

第4章温度控制系统的单元电路设计

4.1温度采集电路

温度采集系统主要由AD590、OP-07。

ICL8069组成,如图4.1所示。

图4.1温度采集系统电路

选用温度传感器AD590,AD590具有较高精度和重复性(重复性优于0.1℃,其良好的非线形可以保证优于0.1℃的测量精度,利用其重复性较好的特点,通过非线形补偿,可以达到0.1℃测量精度)。

超低温漂移高精度运算放大器OP-07将“温度-电压”信号放大。

便于A/D进行转换,以提高温度采集电路的可靠性。

集成温度传感器的输出形式分为电压输出和电流输出两种。

电压输出型的灵敏度一般为10mv/K.温度0℃时输出为0℃,温度25℃时输出为2.982V。

电流输出型的灵敏度为1μA/K。

这样便于A/D转换器采集数据。

4.2A/D转换电路

选用89S51作为中央处理器,A/D转换器选用ADC0809,其连接电路如图4.2所示。

图4.2单片机与A/D转换连接电路

用单片机控制ADC时,多数采用查询和中断控制两种方式。

查询法是在单片机把启动命令送到ADC之后,执行别的程序,同时对ADC的状态进行查询,以检查ADC变换已经完成,如查询到变换已结束,则读入转换完毕的数据。

中断控制是在启动信号送到ADC之后.单片机执行别的程序。

当ADC转换结束并向单片机发出中断请求信号时.单片机响应此中断请求.进入中断服务程序,读入转换数据,并进行必要的数据处理,然后退回到原程序。

这种方法单片机无需进行转换时间管理.CPU效率高,所以特别适合于变换时间较长的ADC。

本设计采用查询方式进行数据收集。

由于ADC0809片内无时钟,故运用805l提供的地址锁存使能信号ALE经D触发器二分频后获得时钟。

因为ALE信号的频率是单片机时钟频率的1/6,如果时钟频率为6MHz则人ALE信号的频率为1MHz,经二分频后为500kHz,与ADC0809时钟频率的典型值吻合由于AD0809具有三态输出锁存器,故其数据输出引角可直接与单片机的总线相连。

地址码引脚ADDA~C分别与地址总线的低3位Ao、A1、A2相连,以选通IN0~IN7中的一个通道。

采用单片机的P2.7(地址总线最高位A15)作为A/D的片选信号。

并将A/D的ALE和START脚连在一起,以实现在锁存通道地址的同时启动ADC0809转换。

启动信号由单片机的写信号和P2.7经或非门而产生。

在读取转换结果时,用单片机的读信号和P2.7经或非门加工得到的正脉冲作为OE信号去打开三态输出琐存器。

编写的软件按下列顺序动作:

令P2.7=A15=0,并用Ao、Al、A2的组合指定模拟通道的地址;

执行一条输出指令,启动A/D转换;

然后根据所选用的是查询、中断、等待延时三种方式之一的条件去执行一条输入指令,读取A/D转换结果.

ADC0809是一个8路8位逐欲逼近式A/D转换器。

ADC0809的转换时间为100μs。

在CPU启动A/D命令后,便执行一个固定的延时程序,延时时间应略大于A/D的转换时间;

延时程序一结束,便执行数据读入指令,读取转换结果。

我们只用了其一路AD转换,参考电压2.56V.即一位数字量对应10mv即l℃。

所以用起来很方便。

4.3显示电路

显示电路图如下图4.3所示。

图4.3显示电路

显示电路采用74LSl64与单片机相连(如图4—3所示。

)进行I/0口扩充,并通过74LSl64与LED连接达到显示的目的。

74LSl64是8位串入并出移位寄存器,当单片机串行口工作在方式0的发送状态时,串行数据由P3.O(RXD)送出,移位时钟由P3.1(TXD)送出。

在移位时钟的作剧F,串行口发送缓冲器的数据一份一位的移入74LS164中。

需要指出例是,由于74LSl64无并行输出控制端.因而在串行输入过程中,其输出端的状态会不断的变化,故在某些固定场合。

在74LSl64的输出端应加接输出三态控制。

其传输方式采用串行口方式0的数据传送,可采用中断方式,也可采用查询方式.无论哪种方式,都要借助于TI或RI标志。

串行发送时.可以靠TI置位(发完一帧数据后)引起中断申请.在中断服务程序中发送下一帧数据,或者通过查询TI的状态,只要TI为0就继续查询,TI为l就结束查询,发送下一帧数据。

在串行接收时,则由RI引起中断或对RI查询来确定何时接收下一帧数据。

无论采用什么方式,在开始通讯之前,都要先对控制寄存器SCON进行初始化。

在方式0中,将OOH送SCON就可以了。

当系统传送一个字节数给74LSl64时,利用UART模式0。

把DISPLAY_DATA中的初始数显示到LEDl和LED2,十位数值显示到LEDl,个位数值显示到LED2;

当十位数值为0时LEDl不显示。

每位数值的显示时间由DISPLAY_TIME确定。

显示采用3位共阳LED静态显示方式,显示方式有温度值的十位、个位及负位.这样就可以只用P3.0(RXD)口来输出显示数据,从而节省单片机端口资源,在P3.1(TXD)的控制下通过74LSl64来实现3位静态显示。

就是每一个显示器都占用单独的具有锁存功能的I/O接口用于笔划段字形代码。

只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形代码,因此,使用这种方法单片机中CPU的开销较小。

4.4键盘电路

本设计采用独立式按键设计如图4.5所示。

每个按键各接一根输入线,一根输入线上的按键工作状态不会影响其他输入线上的工作状态。

软件设计采用查询方式和外部中断相结合的方法来设计,低电平有效。

按键直接与89S5l的I/O口线相连接。

通过读I/O口的电平状态,即可识别出按下的按键。

4个按键分别接到P1.0、P1.1、P1.2和RST。

对于这种键各程序可以采用中断查询的方法,功能就是:

检测是否有键闭合,如有键闭合,则去除键抖动,判断健号并转入相应的键处理。

其功能根简单,4个键定义如下。

P1.0:

Sl功能转换键,按此捷则开始键盘控制。

P1.1:

S2加,按此键则温度设定加1度。

图4.5键盘电路

P1.2:

S3减,按此键则温度设定减1度。

P1.4:

S4复位键,使系统复位。

4.5电源电路

电源也不能小视,每一个系统的电源部不容马虎,电源虽然简单,但需要功能可靠。

通过对电路的观察,发现设计所有电源都是直流电源+5v。

可由直流稳压电源提供。

第5章温度控制系统的软件设计

5.1主程序设计

本程序主程序流程图如图5.l所示。

图5.1主程序流程图

程序启动后,首先清理系统内存.然后进行采集,并通过A/D转换后,传输到单片机.再由单片机控制显示设备,显示现在的温度.然后系统进入待机状态,等待健盘输入设定为温度,然后系统将设定温度与现在温度进行比较,得出结果后,启动制冷系统或是加热系统。

5.2A/D转换子程序设计

图5.2是A/D转换子程序流程图。

89S51给出一个脉冲信号启动A/D转换后,ADC0809对接受到的模拟信号进行转换,这个转换过程大约需要100us,系统采用的是固定延时程序,所以在预先设定的延时后,89S5l直接从ADC0809中读取数据。

图5.2A/D转换子程序流程图

5.3显示子程序设计

程序流程图如图5.3所示。

图5.3显示子程序流程图

5.4键盘扫描子程序设计

1.本设计采用独立式按键设计.单片机对它的控制采用程序扫描即中断查询方式,A口为地通口,B口为显示口、C口为查询输入口,

键盘扫描子程序功能如下:

(1)判断键盘上有无按键按下,方法为:

每个按键各接一根输入线.一根输入线上的按键工作状态不会影晌其他输入上的工作状态。

软件设计采用查询方式和外部各中断结合的方法来设计,低电平有效。

按键直接与AT89S51的I/O口线相连接。

通过读I/O口的电平状态.即可识别出按下的按键。

4个按键分别接到P1.0、P1.1、P1.2和RET。

(2)去键的机械抖动影响:

在判断有键按下后,软件延时一段时间<5ms送-10ms)后再判断键盘状态.如果仍为有键按下状态.则认为确实有键被按下T;

否则,按照键抖动处理。

(3)判别闭合键的键号:

对键盘的列线进行扫描,扫描口为PA0——PA7,依次输出扫描字为FEH.FDH,FBH,P8H,EFH,DFH

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

当前位置:首页 > 党团工作 > 入党转正申请

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

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