温度控制系统Word格式文档下载.docx
- 文档编号:21573966
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:27
- 大小:1.41MB
温度控制系统Word格式文档下载.docx
《温度控制系统Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《温度控制系统Word格式文档下载.docx(27页珍藏版)》请在冰豆网上搜索。
采用温度传感器采集温度数据,用CPU控制温度值稳定在预设温度。
数码管上输出的数字就是对应于所测量的实际温度。
2.1方案论证
设计中采用了两个方案,具体的方案见方案一和方案二。
方案一:
采用铂电阻温度传感器的电阻与温度的关系是非线性的,用电桥实现温度升高引起的电阻变化对应于电压的变化。
经A/D转换器后,送入锁存器锁存,在经译码器输出后,再在数码管上显示,由于74LS373具有锁存功能就能实现四位的温度显示。
由于铂电阻与温度的关系是非线性的,因此输出的结果测试精度较低,并且不能达到我们对温度控制的要求。
图2.1测温整体方案一框图
方案二:
设计一种温度控制方法将温度控制到某一设定值,并保持稳定。
同时还可以根据实际需要重新设置温度并进行重新控制调节,使温度达到一新的设定值,并保持稳定。
这里的重新设置和控制可以进行无限多次,当然这个设置值得在某一最大值范围之内,这里把最大值设为68℃。
当设置温度大于68℃时,系统就会报错并退出系统。
图2.2系统原理框图
经过对以上二种方案得分析、比较,我觉得方案二更加完善、功能更加齐全,对于本次设计更加具有可实行性,并且能够达到我们所预期的目的,于是我采用方案二作为本次设计的总体方案。
2.2系统硬件选择和设计
1、系统扩展接口的选择
本次设计采用的是8086微处理器,选择8255A可编程并行接口作为系统的扩展接口,8255A的通用性强,适应灵活,通过它CPU可直接与外设相连接。
2、温度传感器与A\D转换器的选择
本系统选用温度传感器AD590构成测温系统。
AD590是一种电压输入、电流输出型集成温度传感器,测温范围为-55℃~150℃,非线性误差在±
0。
30℃,其输出电流与温度成正比,温度没升高1K(K为开尔文温度),输出电流就增加1uA。
其输出电流I=(273+T)uA。
本设计中串联电阻的阻值选用2KΩ,所以输出电压V+=(2730+10T)MV.另外,为满足系统输入模拟量进行处理的功能,对其再扩展一片ADC0809,以进行模拟—数字量转化。
3、显示接口芯片
为满足本次设计温度显示的需要,我们选择了8279芯片,INTEL8279芯片是一种通用的可编程的键盘、显示接口器件,单个芯片就能完成键盘键入和LED显示控制两种功能。
备注:
系统硬件接线应尽量以插接形式连接,这样便于多用途使用和故障的检查和排除。
3单元模块设计
本系统采用的是8086微处理器,选择8255A可编程并行接口作为系统的扩展接口,8255A的通用性强,适应灵活,通过它CPU可直接与外设相连接。
温度控制系统对温度进行检测,然后通过A/D转换器(ADC0809)转换成数字信号输入主机。
使用Intel8279可编程序的键盘、显示接口功能,完成键盘输入和显示控制两种功能。
3.1温度控制与检测系统
温度信息由温度传感器测量并转换成微安级的电流信号,经过运算放大电路将温度传感器输出的小信号进行跟随放大,输入到A/D转换器(ADC0809)转换成数字信号输入主机。
数据经过标度转换后,一方面通过数码管将温度显示出来;
另一方面,将该温度值与设定的温度值进行比较,调整电加热炉的开通情况,从而控制温度。
在断开电加热器,温度仍然异常,报警器发出声音报警,提示采取相应的调整措施。
3.1.1温度控制
当PC6为高电平时,三极管导通,继电器吸合,向加热系统输出12V电压加热;
反之,输入低电平,三极管截止,继电器断开,停止加热。
二极管的作用是吸收继电器端开时产生的浪涌电压。
如图3.1所示。
图3.1温度控制
3.1.2温度测量
A\D590是AD公司生产的一种精度和线度较好的双端集成传感器,其输出电流与绝对温度有关,对于电源电压从5-10V变化只引起1uA最大电流的变化或1摄氏度等效误差。
A\D590输出的电流:
I=(273+T)uA(T为摄氏温度)。
因此测量的电压V为(273+T)uA×
10K=(2.73+T/100)V,为了将电压测量出来,又务必使电流I不分流出来。
使用电压跟随器使其输出电压V2等于V。
由于一般电源供应多器件之后,电源是带杂波的,因此使用稳压二极管作为稳压元件,再利用可变电阻分压,其输出电压V1需调至2.73V。
差动放大器其输出V0为(100K/10K)×
(V2-V1)=T/10,如果现在为摄氏28℃,输出电压为2.8V。
输出电压接A\D转换器,那么A\D转换输出的数字量就和摄氏温度成线性比例的关系。
图3.2温度测量
3.28086微处理器及其体系结构
1.8086微处理器的一般性能特点
(1)16位的内部结构,16位双向数据信号线;
(2)20位地址信号线,可寻址1M字节存储单元;
(3)较强的指令系统;
(4)利用第16位的地址总线来进行I/O端口寻址,可寻址64K个I/O端口;
(5)中断功能强,可处理内部软件中断和外部中断,中断源可达256个;
(6)单一的+5V电源,单相时钟5MHz。
另外,Intel公司同期推出的Intel8088微处理器一种准16位微处理器,其内部寄存器,内部操作等均按16位处理器设计,与Intel8088微处理器基本上相同,不同的是其对外的数据线只有8位,目的是为了方便地与8位I/O接口芯片相兼容。
2.8086CPU的编程结构
编程结构:
是指从程序员和使用者的角度看到的结构,亦可称为功能结构。
从功能上来看,8086CPU可分为两部分,即总线接口部件BIU(BusInterfaceUnit)和执行部件EU(ExecutionUnit)。
8086CPU的内部功能结构如图3.3所示:
图3.38086/8088CPU内部功能结构图
3.8086的可编程外设接口电路
8255的数据口D0-D7与CPU的6根控制线相连接,控制8255A内部的各种操作。
控制线RESET用来使8255A复位。
CS和地址线A1及A0用于芯片选择和通道寻址。
分别与8086的高位地址线A19,A1,A0相连接。
图3.48086的可编程外设接口电路
3.38255A并行I\O接口
8255A芯片内包含有3个8位的端口,它们是A口,B口和C口。
这3个端口均可作为CPU与外设通讯时的缓冲器或锁存器,当需要“状态”或“联络”信号时,C口可以提供,此时,将C口的高4位为A口所用,C口的低4位为B口所用。
3个端口通过各自的输入/输出线与外设联系。
并行输入/输出端口:
一个并行输入/输出的LSI芯片,多功能的I/O器件,可作为CPU总线与外围的接口。
具有24个可编程设置的I/O口,即使3组8位的I/O口为PA口,PB口和PC口。
它们又可分为两组12位的I/O口,A组包括A口及C口(高4位,PC4~PC7),B组包括B口及C口(低4位,PC0~PC3)。
A组可设置为基本的I/O口,闪控(STROBE)的I/O闪控式,双向I/O3种模式;
B组只能设置为基本I/O或闪控式I/O两种模式,而这些操作模式完全由控制寄存器的控制字决定。
8255引脚功能:
RESET:
复位输入线,当该输入端处于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。
CS:
芯片选择信号线,当这个输入引脚为低电平时,即
=0时,表示芯片被选中,允许8255与CPU进行通讯;
=1时,8255无法与CPU做数据传输。
RD:
读信号线,当这个输入引脚为低电平时,即
=0且
=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。
WR:
写入信号,当这个输入引脚为低电平时,即
=0时,允许CPU将数据或控制字写入8255。
D0~D7:
三态双向数据总线,8255与CPU数据传送的通道,当CPU执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。
PA0~PA7:
端口A输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入锁存器。
PB0~PB7:
端口B输入输出线,一个8位的I/O锁存器,一个8位的输入输出缓冲器。
PC0~PC7:
端口C输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入缓冲器。
端口C可以通过工作方式设定而分成2个4位的端口,每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口。
A0、A1:
地址选择线,用来选择8255的PA口,PB口,PC口和控制寄存器。
当A0=0,A1=0时,PA口被选择;
当A0=0,A1=1时,PB口被选择;
当A0=1,A1=0时,PC口被选择;
当A0=1。
A1=1时,控制寄存器被选择。
3.4ADC0809概述
ADC0809是采样分辨率为8位的、以逐次逼近原理进行模—数转换的器件。
其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。
1.ADC0809的主要特性
1)8路输入通道,8位A/D转换器,即分辨率为8位。
2)具有转换起停控制端。
3)转换时间为100μs
4)单个+5V电源供电
5)模拟输入电压范围0~+5V,不需零点和满刻度校准。
6)工作温度范围为-40~+85摄氏度
7)低功耗,约15mW。
2.ADC0809的内部逻辑结构
由下图可知,ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。
多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。
三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。
图3.5ADC0809的内部逻辑结构
3.外部特性(引脚功能)
ADC0809芯片有28条引脚,采用双列直插式封装,下面说明各引脚功能。
IN0~IN7:
8路模拟量输入端。
2-1~2-8:
8位数字量输出端。
ADDA、ADDB、ADDC:
3位地址输入线,用于选通8路模拟输入中的一路
ALE:
地址锁存允许信号,输入,高电平有效。
START:
A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。
EOC:
A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。
OE:
数据输出允许信号,输入,高电平有效。
当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。
CLK:
时钟脉冲输入端。
要求时钟频率不高于640KHZ。
REF(+)、REF(-):
基准电压。
Vcc:
电源,单一+5V。
GND:
地。
4.ADC0809的工作过程
首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。
此地址经译码选通8路模拟输入之一到比较器。
START上升沿将逐次逼近寄存器复位。
下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。
直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。
当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。
3.5ADC0809与8255的连接
模拟输入通道地址A,B,C直接接地,因此ADC0809只对通道IN0输入的电压进行模数转换。
为了减少输入噪声其他通道直接接地。
ADC0809的数据线D0-D7与8255的PB0-PB7相连接。
其片选CS与8086的地址/数据总线AD14相连接。
图3.6ADC0809与8255的连接
3.68279的功能介绍
Intel8279是一种通用的可编程序的键盘、显示接口器件,单片器件就能够完成键盘输入和显示控制两种功能。
键盘部分提供一种扫描的工作方式,可以和具有64个按键的矩阵键盘相连接,能对键盘不断扫描,自动消抖,自动识别按下的键并给出编码,能对双键或n键同时按下实行保护。
显示部分为发光二极管、荧光管及其它显示器提供了按扫描方式工作的显示接口,它为显示器提供多路复用信号,可以显示多达16位的字符或数字。
INTEL8279的逻辑符号如图7-28所示。
它用于8085、MCS-51系统。
它最多可外接8X8的键盘及16X8的七段数码显示器。
图3.78279的逻辑符号
8279的操作方式是通过CPU对8279送入命令时来实现编程的。
当数据选择端A0置1时,CPU对8279写入数据为命令字,读出的数据为状态字。
8279共有八条命令。
其功能及命令字定义分述如下。
1)键盘/显示方式设置命令字
命令格式:
D7D6D5D4D3D2D1D0
D
K
其中:
D7、D6、D5=000方式设置命令特征位。
DD(D4、D3):
来设定显示方式,其定义如下:
00:
8个字符显示,左入口
16个字符显示,左入口
8个字符显示,右入口
16个字符显示,右入口所谓左入口,即显示位置从最左一位(最高位)开始,以后逐次输入的显示字符逐个向右顺序排列;
所谓右入口,即显示位置从最右一位(最低位)开始,以后逐次输入的显示字符时,已有的显示字符逐个向左顺序移动。
KKK(D2、D1、D0):
用来设定七种键盘、显示工作方式
2)读显示RAM命令
D7D6D5D4D3D2D1D0
1
AI
A
D7D6D5=011为读显示RAM命令字的特征位。
该命令用来设定将要读出的显示RAM地址。
AAAA(D3、D2、D1、D0)用来寻址显示RAM命令字的特征位。
由位显示RAM中有16个字节单元故需要4位寻址。
AI(D4)为自动增量特征位。
当AI=1时,每次读出后地址自动加1指向下一地址。
3)写显示RAM命令
D7D6D5=100为写显示RAM命令字的特征位。
在写显示器RAM之前用该命令用来设定将要写入的显示RAM地址。
AAAA(D3、D2、D1、D0)为将要写入的存储单元地址。
当AI=1时,每次写入后地址自动加1指向下一次写入地址。
3.7LED显示器
工作原理:
发光二极管组成的显示器事单片机应用产品中最常用的廉价输出设备。
它由若干个发光二极管按一定的规律排列而成。
当某一个发光二极管导通时,相应的一个点或一个比划被点亮,控制不同组合的二极管导通,就能显示出多种字符。
常见LED数码管的两种接法如图3.8所示。
图3.87段LED数码管的两种接法
通过控制管脚a、b、c、d、e、f、g、dp的电平即可获得所需的符号显示。
显示器的工作方式有两种,一种是静态显示:
当显示器显示某一个字符时,相应的发光二极管恒定地导通或截止。
另一种事本次设计中采用的动态显示方式:
所谓动态显示即一位一位轮流的点亮各位显示器,对于每一位显示器来说,每隔一段时间点亮一次。
但由于时间间隔很小,我们就可以看到完整的显示了。
图3.9数据显示部分
4系统工作原理及软件设计
针对各模块的硬件功能,对各模块设定子程序,通过主程序对这些子程序模块的调用,完成软件设计。
4.1系统工作原理
(1)温度测量显示部分
温度通过AD590温度传感集成芯片,将温度变化量转换成电压值变化量,经过OP07一级跟随后输入到电压放大电路,放大后的信号输入到A/D转换器将模拟信号转换成数字信号,然后将该数字信号通过然间编程转化为十进制BCD码,并送到8279进行温度值的显示。
(2)温度控制部分
温度的上升或下降,通过给加热系统通断电来实现。
当需要加热时,8255的PC6输出低电平,启动加热系统。
当需要降温时,8255的PC6输出高电平,关闭加热系统。
加热或降温的控制信号通过8255的PA0读取拨动开关的状态来实现。
4.2系统软件设计
本设计的目的是以8086微处理器为控制器,将温度传感器输出的小信号经过放大和低通滤波后,送至A/D转换器;
微控制器实时采集、显示温度值(要求以摄氏度显示),同时系统还应可设定、控制温度值,使系统工作在设定温度。
4.3系统流程图
1.主程序
通过开始界面,显示提示信息,调用温度子程序,设置温度。
通过模数转换器采集A\D值并求其平均值。
调用BCD码转换子程序将其转换为十进制温度值;
调用显示子程序,如果温度高于实际温度,就加热,反之拨动开关关闭,停止加热。
在此过程中,还可以重复设置温度值。
其流程图如图4.1所示。
图4.1主程序流程图
2.BCD码转换子程序
设定温度为0摄氏度时变换放大电路送出的模拟量为0.0V,此时A/D输出的数字量为00H;
温度为68℃时变换器送出对应电压4.98V,此时A/D输出的数字量为FFH,即每0.3℃对应1LSB的变化量,对应电压值为19.5mV。
报警温度设定为68℃,此时,输出电压约为5.0V左右。
其流程图如图4.2所示。
图4.2BCD码转换子程序
3.显示子程序
采用动态显示方式,其流程图如图4.3所示。
4.温度值设置子程序
问了避免加热温度过高,在程序设计中加了一条,即设定值不能大于68℃,否则就认为有错系统报警。
其流程图如图4.4所示。
图4.3显示子程序
5.系统调试
通过前一部分的介绍说明,我们对系统的工作情况有了大体的了解。
为了进一步了解系统的工作过程,这里介绍一下系统调试过程及调试过程中出现的一些具体的问题,软件仿真图。
实验调试软件运行于DOC环境下,其步骤如下:
一、根据硬件图和原理图连接好线路。
二、在PC机上敲入程序,并对其进行的查错,编译,连接,最后生成可执行文件。
三、接上电源,敲入可执行文件的文件名,系统就开始了工作过程。
1)这是DOC屏幕上会出现的一些提示信息,如
’ENTERANYKEYTOBEGIN!
’
’LETPA0=0TOADJUSTTHETEMPERATUREVALUE!
’LETPA0=1TOINPUTA
NEWTEMPERATUREVALUE!
这里后两条只作注释用。
2)然后敲任意一个键,系统就开始进行温度测量和显示,屏幕上就会显示
’INPUTTHETEMPERATURE:
在这一条信息之后敲入一温度值。
注意这里敲入的温度值不能大于76摄氏度,否则屏幕将会显示’INPUTVALUEERROR!
’并返回DOC。
(以
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 温度 控制系统