单片机温度控制系统电路设计.docx
- 文档编号:5351771
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:23
- 大小:115.17KB
单片机温度控制系统电路设计.docx
《单片机温度控制系统电路设计.docx》由会员分享,可在线阅读,更多相关《单片机温度控制系统电路设计.docx(23页珍藏版)》请在冰豆网上搜索。
单片机温度控制系统电路设计
引言
十年来计算机技术及微电子器件在微量技术中应用十分广泛。
单片机作为计算机技术的一个分支,广泛的应用于工业控制,智能仪器仪表,机电一体化等各个领域。
在此基础上发展起来的智能仪器无论是在测量、灵敏度、可靠性、自动化程度、运用功能方面或在解决测量技术问题的深度及广度方面都有了巨大发展,以一种崭新的面貌展示在人们的面前。
随着大规模集成电路及计算机技术的迅速发展,以及人工智能向测量技术的移植或应用,智能仪器将会有更大的发展。
测量仪器的智能化已是现代仪器仪表发展的主要方向,因而它已是当今测量工作者以及所有与测量技术有关的工程界、教育界以及科技界人士所普遍关注的问题,了解或熟悉这类仪器的发展概况,工作原理及设计思想无疑是十分重要的。
温度是生产过程中重要的被控参数之一,如冶金机械、化工、食品等各类生产过程中广泛使用的各种加热炉、热处理炉、反应炉对工件的处理温度等均需要对温度严格控制,因此温度检测则显得尤为重要。
当今计算机控制技术在这方面的应用已经使温度检测达到自动化和智能化,模块处理方式的采用使系统更为简洁和方便。
本文针对89C51型单片机在温度控制方面的应用,对温度恒定系统进行了分析并给出了具体的解决方案。
文章分为硬件设计和软件编程两部分对该方案进行阐述,在硬件设计部分划分温度检测、温度数据PID算法实现、温度显示、执行机构控制、RS-232通信五个模块单元,并且简单叙述了该实例的物理工作原理和电路工作原理,只有在清楚地了解这些工作原理的基础上,才能恰当地选用单片机硬件电路和准确地编制软件,本系统在结合硬件的基础上对每一个模块进行了编程设计,使软硬件更好的结合来达到实现温度恒温控制的目的。
文章大篇幅主要介绍了此恒温控制系统的软件设计,在软件设计中划分为主程序、中断子程序、PID算法子程序、滤波子程序、键盘与显示子程序和报警子程序六部分组成。
第1章概述
1.1系统功能
单片机温度控制系统实现恒温控制。
由键盘输入温度给定值,系统根据恒温炉的采集值与给定值的偏差,经过PID数据处理输出控制信息,实现温度自动控制,保证恒温炉的温度控制在一个固定值上。
系统功能如图1—1所示。
图1—1系统功能图
如图上图所示:
从键盘输入一个指定的温度值,键盘将所输入的数值通过8255送给单片机89C51。
然后单片机通过热敏电阻对恒温炉进行每秒五次采样,再经由放大电路放大,送入A/D转换芯片ADC0809进行模—数转换。
经处理的数字信号被送入单片机89C51进行处理,单片机通过核心PID算法对采集来的数据进行处理,并与从键盘所输入的数值进行比较。
处理之后得到的结果被送到LED进行显示,与此同时发出一个信号对固态继电器进行控制,固态继电器则控制加热炉对恒温炉进行或停止加热。
该系统被划分为四个部分进行设计,分别为:
系统电路的设计,系统软件设计,系统与PC机通讯设计,键盘和显示的软件和硬件设计。
1.2系统总体电路设计
1.2.1系统原理图
图1—2系统原理图
第2章系统扩展设计
2.1单片机与8255接口设计
2.1.18255芯片介绍
8255芯片的作用
为了实现人机交互功能,需要加入键盘和显示,用8255芯片来进行扩展。
图2—18255芯片引脚图
8255引脚功能
(一)RESET:
复位输入线,当该输入端外于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。
(二)CS:
片选信号线,当这个输入引脚为低电平时,表示芯片被选中,允许8255与CPU进行通讯。
J(三)RD:
读信号线,当这个输入引脚为低电平时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。
(四)WR:
写入信号,当这个输入引脚为低电平时,允许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配合使用,可作为控制信号输出
或状态信号输入端口。
(八)A1、A0:
端口地址总线,8255中有端口A、B、C和一个内部控制字寄存器,共4个端
口,由A0、A1输入地址信号来寻址。
A1
A0
RD
WR
CS
输入操作(读)
0
0
0
1
0
A口——数据总线
0
1
0
1
0
B口——数据总线
1
0
0
1
0
C口——数据总线
输出操作(写)
0
0
1
0
0
数据总线——A口
0
1
1
0
0
数据总线——B口
1
0
1
0
0
数据总线——C口
1
1
1
0
0
数据总线——控制口
禁止操作
X
X
X
X
1
数据总线为三态
1
1
0
1
0
非法状态
X
X
1
1
0
数据总线为三态
表2—18255的口操作状态
2.1.28255与单片机接口电路设计
(一)8255与单片机接口电路原理图
图2—38255与单片机接口电路原理图
如图2—3所示为8255与单片机接口原理图。
单片机的P0口与8255的D0~D7连接,作为数据总线。
单片机WR和RD分别与8255WR和RD连接对8255进行读写控制;P2.7,P2.6分别与8255A0,A1连接;P2.4与8255CS片选端连接;这5条线构成控制总线和地址总线,具体操作见表2—1。
第3章前向通道设计
3.1前向通道电路结构
3.1.1前向通道原理图
图3—1前向通道原理图
如图所示为前向通道的原理图,放大电路将热敏电阻产生的电阻转换为能被0809处理的适合电压,然后由0809进行A/D转换。
下面是对各部分具体介绍。
3.2传感器工作原理与性能
3.2.1传感器的工作原理
传感器的核心元件是热敏电阻。
热敏电阻是双端型温度敏感元件。
当温度发生变化时热敏电阻的阻值也发生变化,在不同的温度下,热敏电阻都有一个固定的电阻值与温度值相应,并且只要热敏电阻没有损坏,这种对应关系具有重复性。
热敏电阻阻值随温度变化的响应是高度的非线性响应。
在热敏电阻的量程范围内,温度较小的变化都会引起热敏电阻阻值相对较大的变化,绝大多数热敏电阻具有负温度系数特性,即随着温度的升高,电阻值下降。
3.2.2传感器的特性
RadioShack热敏电阻(#271—110A)就具有负温度系数特性。
这种传感器工作在低温端时,负温度系数引起电阻阻值的相对变化大约是-5%。
随着温度的升高,负温度系数也有所下降,当热敏电阻工作在量程的高温端时,负温度系数引起电阻阻值的相对变化大约只有-2%。
热敏电阻的有效输出为电阻值,由于A/D转换器转换的是电压信号,因此首先要将热敏电阻的电阻转换为电压信号,这一转换通常可以用电流源构成的激励电路来完成。
将热敏电阻安装在电流源所在的支路中,在热敏电阻两端就会产生与其电阻值成比例的电压值。
由于电流流过电阻会产生热效应,我们要注意不能由于热效应而使热敏电阻自身产生很大的热量,从而引起热敏电阻阻值的变化。
一般情况下,当电流源电流足够小时,电流流过热敏电阻所产生的热量可以忽略不计。
我们假定热敏电阻的耗散常数为典型值,一般在1mV/℃左右,为了使测量精度保证在1.0℃以内,电流源的电流必须足够小,以保证电流流过热敏电阻产生的热量在1mW以下。
根据以上分析,当电流源电流值不超过10uA时,可以满足以上要求。
总而言之,只要电流源的电流足够小,热敏电阻两端产生的电压就与其阻值成比例关系而不会由于电阻的热效应引起太大的测量误差。
接下来用仪用放大器AD524读取热敏电阻两端的电压差值,并且设置合适的增益,将电压差值调节到与A/D转换器的转换范围相匹配。
热敏电阻的激励电路与信号调节电路的原理如图3—2所示。
本系统采用的是RadioShack271—110A型热敏电阻,温度变化与热敏电阻阻值变化为非线性的关系,其不同温度的电阻值如下表所示:
RadioShack271——110A型热敏电阻在其温度范围内的输出值:
温度
热敏电阻阻值
温度
热敏电阻阻值
-50℃
329.2Ω
25℃
10.00Ω
-45℃
247.5Ω
30℃
8.313Ω
-40℃
188.4Ω
35℃
6.941Ω
-35℃
111.3Ω
40℃
5.828Ω
-25℃
86.39Ω
45℃
4.912Ω
-20℃
67.74Ω
50℃
4.161Ω
-15℃
53.39Ω
55℃
3.537Ω
-10℃
42.45Ω
60℃
3.021Ω
-5℃
22.05Ω
65℃
2.589Ω
0℃
27.28Ω
70℃
2.229Ω
5℃
22.05Ω
75℃
1.924Ω
10℃
17.96Ω
80℃
1.669Ω
15℃
14.68Ω
85℃
1.451Ω
20℃
12.09Ω
90℃
1.108Ω
表3—1
3.3放大电路设计
3.3.1放大电路的原理
传感器辅助电路两端电压变化很小,有时是不足以驱动下一级电路的,所以要对其进行放大,使信号足以驱动下一级电路。
热敏电阻的电流源电路由一个参考电压,一个运算放大器及三个电阻组成。
这些元件可以提供0.001mA的电流。
0.001mA的电流流过热敏电阻,使得其两端的电压值为热敏电阻阻值的1/100000。
在-50℃时,热敏电阻两端的电压为3.292V,当温度达到100℃时,电压为0.0675975V。
该电压输入到仪用放大器AD524BD中,由于热敏电阻上有大小为1V的浮地电压,因此仪用放大器可以读出热敏电阻两端的电压,该电压值其实是热敏电阻两端的电压差值,抵消了1V的浮地电压。
只要输入电压不超出仪用放大器的工作电压容限,热敏电阻两端的电压差都能测量出来。
将仪用放大器的第6个管脚接地,就可以将信号的参考点准确接地。
图中仪用放大器的增益设为10,因此,它的输出为热敏电阻两端电压的10倍,也就是说,对于理想的仪用放大器,在-50℃时,其输出为32.92V,当温度为100℃时,其输出为0.075957V。
仪用放大器的工作电压输入容限为±10V,A/D转换器的最大输入是0—5V。
而温度为-50℃时,32.92V的输出已大大超出了放大器的工作容限,因此该温度测量系统能有效测量的温度下限为-10℃,此时仪用放大器送到A/D转换器的输出为4.245V,在放大器的工作容限之内。
温度量程的上限对应于最小的电压值,因此不受放大器工作电压容限及A/D转换器转换量程的影响。
图3—2放大电路的原理图
3.4A/D转换电路设计
3.4.1A/D转换电路作用
该系统的核心部分是单片机,单片机只能处理数字信号。
通过传感器再放大所采集的信号为模拟电压信号,直接送入单片机是无法进行处理的。
所以要加入一块A/D转换芯片ADC0809来进行模——数转换,得到的数字信号被送入单片机进行处理。
3.4.2ADC0809芯片功能与性能指标
ADC0809的管脚图
图3—3
ADC0809采用双列直插式封装,共有28条引脚,各管脚的功能分四组简述如下:
(一).模拟信号输入IN0~IN7
IN0~IN7为八路模拟电压输入线,加在模拟开关上,工作时采用时分割的方式,轮流进行AD转换。
(二).地址输入和控制线
地址输入和控制线共4条,其中ADDA、ADDB和ADDC为地址输入线(AddressA),用于选择IN0~IN7上哪一路模拟电压送给比较器进行AD转换。
ALE(AddressLockEnable)为地址锁存允许输入线,高电平有效。
当ALE线为高电平时,ADDA、ADDB和ADDC三条地址线上地址信号得以锁存,经译码器控制八路模拟开关工作。
(三).数字量输出及控制线(11条)
START为“启动脉冲”输入线,该线正脉冲由CPU送来,宽度应大于100ns,上升沿清零,下降沿启动ADC工作。
EOC为转换结束输出线,该线高电平表示AD转换已结束,数字量已锁入“三态输出锁存器”。
D0~D7为数字量输出线,D7为最高位。
EOUT为“输出允许”线,高电平时能使D0~D7引脚上输出转换后的数字量。
(四).电源线及其他(5条)
CLOCK为时钟输入线,用于为ADC0809提供逐次比较所需,一般为640kHz时钟脉冲。
VDD为+5V电源输入线,GND为地线。
+VREF和-VREF为参考电压输入线,用于给电阻网络供给标准电压。
+VREF常和VDD相连,-VREF常接地。
3.4.3ADC0809应用说明
(一). ADC0809内部带有输出锁存器,可以与AT89S51单片机直接相连。
(二). 初始化时,使ST和OE信号全为低电平。
(三). 送要转换的哪一通道的地址到A,B,C端口上。
(四). 在ST端给出一个至少有100ns宽的正脉冲信号。
(五). 是否转换完毕,我们根据EOC信号来判断。
(六). 当EOC变为高电平时,这时给OE为高电平,转换的数据就输出给单片机了。
3.5ADC0809与单片机的接口设计
3.5.1ADC0809与89C51接口电路图
图3—4ADC0809与单片机的接口图
如图所示为单片机与ADC0809的接口连接图。
0809的数据输出口2.1~2.8分别与单片机P1口P1.0~p1.7连接,作为数据总线。
单片机P1口每秒钟对0809数据输出口进行5次读操作,读取的数据被送入单片机通过PID核心算法进行处理分析。
因为系统只用到ADC0809输入口的IN-0口,所以ADD-A、ADD-B、ADD-C都接低电平。
0809的EOC管脚与单片机P3.3连接,当EOC变为高电平时,这时给OE为高电平,转换的数据就输出给单片机。
第4章人机交互接口电路设计
4.1键盘和LED显示电路原理
图4—1键盘和LED显示电路原理图
如图4—1所示:
系统采用4*4行列式键盘。
分别由8255的PC口引出四行四列,按键设置在行,列线的交点上。
行线通过上拉电阻接+5V,被箝位在高电平状态。
BIC8718为8位集成驱动芯片。
显示采用6个LED显示器,由PA口引出数据总线通过BIC8718与6个LED显示器的段选线连接。
PB0~PB5通过BIC8718分别接在6个LED显示器上,做为位选通线。
4.2键盘设计
4.2.1键盘的工作过程
(一)判别键盘上是否有键按下。
(二)如果有键按下,则应进行扫描,判别是哪一个键按下。
(三)去抖动常采用延时程序。
(四)读取闭合按键的特征值(行和列的位置编码);
(五)对特征值进行译码,获得按键的相应顺序号,而后再按各键的实际定义去执行相应的服务程序。
(六)应采用双键锁定或N键轮回解决双键同时按下的问题。
4.2.2键盘功能
键值
功能
1
输入1
2
输入2
3
输入3
4
输入4
5
输入5
6
输入6
7
输入7
8
输入8
9
输入9
10
输入0
A
清除
B
开始
C
停止
D
暂停
E
F
表4—2键盘功能表
4.3LED显示设计
4.3.1LED显示器结构与原理
LED显示器是由发光二极管显示字段组成的显示器件。
该系统中采用的是七段LED。
这种显示器有共阴极和共阳极两种,该系统选用的是共阴极七段LED显示器。
七段LED显示器中有8个发光二极管,其中7个发光二极管构成7笔字形“8”。
一个发光二极管构成小数点。
七段LED显示器的管脚如图4—2所示。
从a~g管脚输入不同的8位二进制数,可显示不同的数字或字符。
LED的电流通常较小,一般均需在回路中接上限流电阻。
图4—2显示器结构图
4.3.2LED显示器的显示方式
该系统共用六个七段LED显示器,采用动态显示方式。
LED动态显示是将所有位的段选线并接在一个I/O口线上,共阴极端分别由相应的I/O口线控制。
在任一时刻,只有一位LED是点亮的,但只要扫描的频率足够高(一般大于25Hz),由于人眼的视觉暂留特性,直观上感觉却是连续点亮的。
如图4—2所示:
所有位的段选线并接在8255的PA口线上,共阴极端分别由PB口中的PB0~PB5控制。
在任一时刻,PB0~PB5中只有一条线是低电平,即只有一只LED被选通,此时刻单片机的P0口通过8255的PA口将相应的数据传输给被选通的LED,使LED点亮。
下一时刻另一只LED被选通,单片机同样传输给其相应数据使其点亮。
如此逐一进行扫描,6只LED显示器逐一被点亮,由于扫描频率很高,所以视觉上6只LED都被点亮了,并无闪烁。
这样系统就实现了显示功能。
第5章单片机串行通信接口电路设计
5.1单片机串行通信
MCS-51单片机内部有一个全双工的串行通信口,即串行接收和发送缓冲器(SBUF),这两个在物理上独立的接收发送器,既可以接收数据也可以发送数据。
但接收缓冲器只能读出不能写入,而发送缓冲器则只能写入不能读出,它们的地址为99H。
这个通信口既可以用于网络通信,亦可实现串行异步通信,还可以构成同步移位寄存器使用。
如果在传行口的输入输出引脚上加上电平转换器,就可方便地构成标准的RS-232接口。
RS-232是早期为公用电话网络数据通信而制定的标准,其逻辑电平与TTL\CMOS电平完全不同。
逻辑“0”规定为+5—15V之间,逻辑“1”规定为-5~-15V之间。
由于RS-232发送和接收之间有公共地,传输采用非平衡模式,因此共模噪声会耦合到信号系统中,其标准建议的最大通信距离为15米。
但实际应用中我们bit/s的速率下可以达到300米。
RS-232规定的电平和一般微处理器的逻辑电平不一致,必须进行电平转换,实现逻辑电平转换可以采用MAX232芯片。
采用MAX232芯片的转换接口MAX232是MAXIM公司生产的,包含两路驱动器和接收器的RS-232转换芯片。
芯片内部有一个电压转换器,可以把输入的+5V电压转换为RS-232接口所需的±10V电压,尤其适用于没有±12V的单电源系统。
单片机串口通信程序的实现方法,实际应用中,单片机通信程序一般采用中断方式与微机通信,微机做为主控方。
当单片机收到微机发送的地址信号时,便转入中断服务程序,向微机发送数据。
5.2串行通信电平转换电路设计
图5—2串行通信电路结构图
MAX232是一种双组驱动器/接收器,片内含有一个电容性电压发生器以便在单5V电源供电时提供EIA/TIA-232-E电平。
每个接收器将EIA/TIA-232-E电平输入转换为5VTTL/CMOS电平。
这些接收器具有1.3V的典型门限值及0.5V的典型迟滞,而且可以接收±30V的输入。
每个驱动器将TTL/CMOS输入电平转换为EIA/TIA-232-E电平。
所有的驱动器、接收器及电压发生器都可以在德州仪器公司的LinASICTM元件库中得到标准单元。
MAX232的工作温度范围为0℃至70℃,
特点
*单5V电源工作
*LinBiCMOS
*TM工艺技术
*两个驱动器及两个接收器
*±30V输入电平
*低电源电流:
典型值是8mA
*符合甚至优于ANSI标准EIA/TIA-232-E及ITU推荐标准V.28
*可与Maxim公司的MAX232互换
*ESD保护大于MIL-STD-883(方法3015)标准的2000V
第6章后向通道的设计
6.1固态继电器的原理与性能
6.1.1固态继电器的作用
系通要控制加热器对恒温炉进行加热,加热器所用电压为220V,而单片机所用的电压为-5V——+5V,它的输出电压不会超过-5——+5V,单片机无法直接控制加热器来进行加热,固态继电器的引入解决了两者电压不同的问题。
固态继电器直接由单片机控制,单片机输出一个0或1的信号,就可以实现被控端的通与断。
6.2.1固态继电器的选择
固态继电器(Solidstatcrelay)简称SSR,这是一种新型的无触点电子继电器。
其输入端仅要求输入很小的控制电流,能与TTL,HTL,CMOS等集成电路具有较好的兼容性,而其输出则用双向晶闸管来接通和断开负载电源。
与普通电磁式继电器和磁力开关相比,具有开关速度快,工作频率高,体积小,重量轻,寿命长,无机械噪声,工作可靠耐冲击等一系列特点,由于其无机械触点继电器无法比拟的优点。
另外其输入控制端与输出端用光电耦合器隔离,所需控制驱动电压低,电流小,非常容易与计算机控制输出接口。
图6—1固态继电器电路结构图
6.2.2固态继电器的主要特点:
输入功率小:
由于其输入端是采用的光电耦合器,其驱动电流仅需几毫安便能可靠地控制,所以可以直接用TTL,HTL,CMOS等集成驱动电路控制。
高可靠性:
由于其结构上无可动接触部件,且采用全塑密闭封装,所以SSR开关时无抖动和回跳现象,无机械噪声,同时能耐潮,耐腐蚀;由于无触点火花,可用在有易燃易爆介质的场合。
低电磁噪声:
交流型SSR在采用了过零触发技术后,电路具有零电压开启,零电流关断的特性,可使对外界和本系统的射频干扰减低到最低程度。
能承受的浪涌电流大:
其数值可为SSR额定值的6~10倍。
对电源电压适应能力强:
交流型SSR的负载电源电压可以在30~220V范围内任选。
抗干扰能力强:
由于输入与输出之间采用了光电隔离,割断了两者的电气联系,避免了输出功率负载电路对输入电路的影响。
另外又在输出端附加了干扰抑制网络,有效地抑制了线路中dV/di和di/dt的影响。
6.2.3固态继电器使用注意事项
电子开关器件的通病是存在通态压降和断态漏电流。
SSR的通态压降一般小于2V,断态漏电流通常为5~10mA。
因此使用中要考虑这两项参数,否则在控制小功率执行器时容易产生误动作。
固态继电器的电流容量负载能力随温度升高而下降,其使用的温度范围不太宽(-40~+80℃),所以当使用温度较高进,选用的SSR必须留有一定的余量。
固态继电器电压过载能力差,当负载为感性时,在SSR的输出端必须加接RM压敏电阻,其电压的选择可以取电源有效值的1.6~1.9倍。
输出端负载短路会造成SSR损坏,应特别注意避免。
对白炽灯,电炉等电阻类负载,要考虑其“冷阻”特性会造成接通瞬间的浪涌电流,有可能超过额定工作值,所以要对电流容量的选择留有余地。
为防止故障引起过流,最简单的方法是采用快速熔断器,要求熔断器的电压不低于线路工作电压,其标称电流值(有效值)与固态继电器的额定电流值一致。
第7章单片机温控系统可靠性设计
7.1可靠设计设计的重要性
由于该系统中含有大功率,大电流的驱动电路,即固态继电器控制的加热器。
外界电网会对系统电路产生一定的电磁干扰。
加上所用电源产生的电磁波和外界的电磁波都会对该系统电路产生电磁干扰,所以必须采取一些措施来消除或减小这些干扰。
7.2硬件电路可靠性设计
7.2.1减小来自电源的噪声
电源是向系统提供能量的。
电源在提供能源的同时,直接由
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 温度 控制系统 电路设计