基于单片机温度控制系统的设计本科毕设论文.docx
- 文档编号:24919775
- 上传时间:2023-06-02
- 格式:DOCX
- 页数:93
- 大小:765.24KB
基于单片机温度控制系统的设计本科毕设论文.docx
《基于单片机温度控制系统的设计本科毕设论文.docx》由会员分享,可在线阅读,更多相关《基于单片机温度控制系统的设计本科毕设论文.docx(93页珍藏版)》请在冰豆网上搜索。
基于单片机温度控制系统的设计本科毕设论文
引言
目前,国内企业的热处理车间,虽然有的已出现微机控制的全自动连续渗碳炉,但其价格却使很多中、小型阿企业望洋兴叹。
本文是以单片机温度控制系统正是针对这一问题而设计完成的,同时其控制原理也适用于其他类型的电炉系统的控制。
选用了MCS-51系列的AT89S51单片机的控制系统的核心,采用PID控制算法,使用双向晶闸管AC-SSR作为执行元件。
工作人员可以从键盘设定被控温度、时间、温度上限及温度下限等工艺参数,按下运行键后,系统将进入自动工作状态,工作结束后,有报警器提醒工作人员。
随着现代工业的逐步发展,在工业生产中,温度、压力、流量和液位是四种最常见的过程变量。
其中,温度是一个非常重要的过程变量。
例如:
在冶金工业、化工工业、电力工业、机械加工和食品加工等许多领域,都需要对各种加热炉、热处理炉、反应炉和锅炉的温度进行控制。
然而,用常规的控制方法,潜力是有限的,难以满足较高的性能要求。
采用单片机来对它们进行控制不仅具有控制方便、简单和灵活性大的优点,而且可以大幅度提高被测温度的技术指标,从而能够大大提高产品的质量和数量。
因此,单片机对温度的控制问题是一个工业生产中经常会遇到的控制问题在现代化的工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。
采用MCS-51单片机来对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量和数量。
因此,单片机对温度的控制问题是一个工业生产中经常会遇到的问题。
工业生产过程中经常遇到的温度控制系统是具有大滞后特征的控制系统,单纯采用PID算法校正的温度控制系统具有高频扰动大、调整时间长、PID参数整定困难、有较大超调量等弊端。
这里以Intel公司的MCS-51系列的AT89S51单片机为核心,引进模糊控制思想来实现对PID参数整定,设计了一个简单实用的温度控制系统。
实验结果表明,该系统具有控制参数整定方便、控制精度高、稳定性好等优点。
温度是工业控制中主要的被控参数之一,特别是在冶金、化工、建材、食品、机械、石油等工业中,具有举足重轻的作用。
对于不同场所、不同工艺、所需温度高低范围不同、精度不同,则采用的测温元件、测温方法以及对温度的控制方法也将不同产品工艺不同、控制温度的精度不同、时效不同,则对数据采集的精度和采用的控制算法也不同,因而,对温度的测控方法多种多样。
随着电子技术和微型计算机的迅速发展,微机测量和控制技术也得到了迅速的发展和广泛的应用。
利用微机对温度进行测控的技术,也便随之而生,并得到日益发展和完善,越来越显示出其优越性。
本设计即用微机对温度进行实时检测与控制。
第1章绪论
1.1问题的提出
在现代工业生产中,温度是非常重要的技术参数,在冶金工业、化工生产、电力工程、机械制造和食品加工等工业领域,对温度参数都有不同程度的要求。
在本系统中,温度对的控制对象——锅炉来说,是主要的参数。
如果锅炉内的温度过高,那么将会有爆炸的危险,国内这样的生产事故也是经常发生的,这将给生产和人们的日常生活带来无法估量的损失。
如果温度过低,根本就达不到产品的工艺要求。
故而,对锅炉的温度控制十分重要,也是十分必要的。
1.2系统的功能
本系统的功能主要有数据采集、数据处理、输出控制。
能对0~1000ºc范围内的电加热锅炉的温度进行精密测量,同时,四位LED显示器直接跟踪显示被控对象的温度值,准确度高,显示清晰,稳定可靠,使用方便。
数据采集部分能完成对被测信号的采样,显示分辨率0.25ºc,测量精度0.25ºc,控制精度0.25ºc,可以实现采集信号的放大及A/D转换,并自动进行零漂校正,同时按设定值、所测温度值、温度变化速率,自动进行PID参数自整定和运算,并输出0~10mA控制电流,配以主回路实现温度的控制。
数据处理分为预处理、功能性处理、抗干扰等子功能。
输出控制部分主要是数码管显示控制。
工作流程是:
当由传感器(由热敏电阻来实现)传来模拟信号,经放大电路放大之后,送到AD574AA/D转换器,转换为数字信号。
此信号送到单片机里,由单片机发出的控制信号分别送到EPPROMX5045、显示接口8155。
程序指令由EPPROMX5045送到单片机。
经8155输出的信号送到LED数码显示器显示。
系统可通过四个按键来设置上下限温度值等,存入EPPROM中。
每当锅炉的实际温度高于所设定的上限值或低于下限时,单片机会发出信号驱动声光报警。
图1-1系统的原理框图
第2章系统硬件电路的设计
本单片机应用系统结构是以单片机为核心外部扩展相关电路的形式。
确定了系统中的单片机、存储器分配及输入/输出方式就可大体确定出单片机应用系统的基本组成。
2.1单片机系统的硬件设计
2.1.1单片机的选择
在本系统中,考虑到系统的功能需求和目前市场上的单片机应用情况以及与学习的8051单片机的兼容情况,选定MCS-51系统的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)电路,片内时钟振荡器。
其引脚图如图2-1所示。
图2-1AT89S51引脚图
2.1.2时钟电路的设计
单片机虽然有内部振荡电路,但要形成时钟,必须外部附加电路。
51系列单片机的时钟产生方法有两种。
一种是内部时钟方式,另一种是外部时钟方式。
(1)内部时钟方式
利用芯片内部的振荡电路,在XTAL1、XTAL2引脚上外接定时元件,内部的振荡电路便产生自激振荡,用示波器可以观察到XTAL2输出的时钟信号。
最常用的内部时钟方式是采用外接晶体(在频率稳定性要求不高而希望尽可能廉价时,可选择陶瓷谐振器)和电容组成的并联谐振回路,不论是HMOS还是CHMOS型单片机其并联谐振回路及参数相同,如图2-2所示
图2-2使用片内振荡器的时钟电路
振荡晶体可在1.2MHz~12MHz之间选择,电容值无严格要求,但在电容值取值对振荡频率输出的稳定性、大小、振荡电路起振速度有少许影响,CX1、CX2可在20pF~100pF之间取值,但在60pF~70pF时振荡器有较高的频率稳定性。
在设计印刷电路板时,晶体或陶瓷谐振器和电容应尽可能靠尽单片机芯片安装,以减少寄生电容,更好是保证谐振器稳定和可靠地工作。
为了提高温度稳定性,应采用NPO电容。
(2)外部时钟方式
外部时钟方式是利用外部振荡信号源直接接入XTAL1、XTAL2。
由于HMOS和CHMOS单片机内部时钟进入的引脚不同(CHMOS型单片机由XTAL1进入,HMOS型单片机由XTAL2进入),其外部振荡信号源接入的方式也不同。
HMOS型单片机的外部振荡信号源的接入方法:
外部振荡信号接至XTAL2,而内部的反相放大器的输入端XTAL1应接地。
由于XTAL2端的逻辑电平不是TTL的,故建议外接一个上拉电阻。
在CHMOS电路中,因内部时钟引入端取反相放大器的输入端(即与非门的一个输入端),故采用外部与HMOS型有所不同,外部信号接至XTAL1,而XTAL2可不接地。
外部振荡信号通过一个2分频的触发器而成为内部的时钟信号。
故对外部信号的占空比没什么要求,但高电平持续时间和低电平持续时间应大于20ns.
(3)本设计方案
由于对上述两种方案的分析,在本设计中选择内部时钟方式。
电路如图2-3所示。
在外部晶体上选用晶体振荡器,频率为11.0592MHz,为提高频率稳定性,CX1、CX2都为30pF。
图2-3本设计的时钟电路
2.1.3复位电路的设计
51系列单片机通常采用上电自动复位和按钮复位两种。
本文是采用按钮复位,电路如图2–4所示。
当按钮按下后,RESET引脚端出现低电平,只要RESET端保持10ms以上低电平,就能使单片机有效地复位。
(a)上电自动复位(b)按钮复位
图2-4复位电路
2.1.4数码显示环节设计
单片机应用系统最常用的显示器是LED(发光二极管显示器)和LCD(液晶显示器),这两种显示器可显示数字、字符及系统的状态,它们的驱动电路简单、易于实现且价格低廉,因此,得到广泛应用。
常用的LED显示器有LED状态显示器(俗称发光二极管)、LED七段显示器(俗称数码管)和LED十六段显示器。
发光二极管可显示两种状态,用于系统状态显示;数码管用于数字显示;LED十六段显示器用于字符显示。
由于本系统中没有显示字符,故而选择数码管就可以满足要求了。
1、8155简介
(1)8155各引脚功能说明如下:
RST:
复位信号输入端,高电平有效。
复位后,3个I/O口均为输入方式。
AD0~AD7:
三态的地址/数据总线。
与单片机的低8位地址/数据总线(P0口)相连。
单片机与8155之间的地址、数据、命令与状态信息都是通过这个总线口传送的。
:
读选通信号,控制对8155的读操作,低电平有效。
:
写选通信号,控制对8155的写操作,低电平有效。
:
片选信号线,低电平有效。
IO/
:
8155的RAM存储器或I/O口选择线。
当IO/
=0时,则选择8155的片内RAM,AD0~AD7上地址为8155中RAM单元的地址(00H~FFH);当IO/
=1时,选择8155的I/O口,AD0~AD7上的地址为8155I/O口的地址。
ALE:
地址锁存信号。
8155内部设有地址锁存器,在ALE的下降沿将单片机P0口输出的低8位地址信息及
,IO/
的状态都锁存到8155内部锁存器。
因此,P0口输出的低8位地址信号不需外接锁存器。
PA0~PA7:
8位通用I/O口,其输入、输出的流向可由程序控制。
PB0~PB7:
8位通用I/O口,功能同A口。
PC0~PC5:
有两个作用,既可作为通用的I/O口,也可作为PA口和PB口的控制信号线,这些可通过程序控制。
TIMERIN:
定时/计数器脉冲输入端。
TIMEROUT:
定时/计数器输出端。
VCC:
+5V电源。
(2)8155的地址编码及工作方式
在单片机应用系统中,8155是按外部数据存储器统一编址的,为16位地址,其高8位由片选线
提供,
=0,选中该片。
当
=0,IO/
=0时,选中8155片内RAM,这时8155只能作片外RAM使用,其RAM的低8位编址为00H~FFH;当
=0,IO/
=1时,选中8155的I/O口,其端口地址的低8位由AD7~AD0确定,如表6-6所示。
这时,A、B、C口的口地址低8位分别为01H、02H、03H(设地址无关位为0)。
8155的A口、B口可工作于基本I/O方式或选通I/O方式。
C口可工作于基本I/O方式,也可作为A口、B口在选通工作方式时的状态控制信号线。
当C口作为状态控制信号时,其每位线的作用如下:
PC0:
AINTR(A口中断请求线)
PC1:
ABF(A口缓冲器满信号)
PC2:
(A口选通信号)
PC3:
BINTR(B口中断请求线)
PC4:
BBF(B口缓冲器满信号)
PC5:
(B口选通信号)
表2-18155芯片的I/O口地址
AD7~AD0
选择I/O口
A7
A6
A5
A4
A3
A2
A1
A0
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
×
0
0
0
0
1
1
0
0
1
1
0
0
0
1
0
1
0
1
命令/状态寄存器
A口
B口
C口
定时器低8位
定时器高6位及方式
8155的I/O工作方式选择是通过对8155内部命令寄存器设定控制字实现的。
命令寄存器只能写入,不能读出。
在ALT1~ALT4的不同方式下,A口、B口及C口的各位工作方式如下:
ALT1:
A口,B口为基本输入/输出,C口为输入方式。
ALT2:
A口,B口为基本输入/输出,C口为输出方式。
ALT3:
A口为选通输入/输出,B口为基本输入/输出。
PC0为AINTR,PC1为ABF,PC2为
,PC3~PC5为输出。
ALT4:
A口、B口为选通输入/输出。
PC0为AINTR,PC1为ABF,PC2为
,PC3为BINTR,PC4为BBF,PC5为
。
2.静态显示接口
1)静态显示概念
静态显示是指数码管显示某一字符时,相应的发光二极管恒定导通或恒定截止。
这种显示方式的各位数码管相互独立,公共端恒定接地(共阴极)或接正电源(共阳极)。
每个数码管的8个字段分别与一个8位I/O口地址相连,I/O口只要有段码输出,相应字符即显示出来,并保持不变,直到I/O口输出新的段码。
采用静态显示方式,较小的电流即可获得较高的亮度,且占用CPU时间少,编程简单,显示便于监测和控制,但其占用的口线多,硬件电路复杂,成本高,只适合于显示位数较少的场合。
3.动态显示接口
1)动态显示概念
动态显示是一位一位地轮流点亮各位数码管,这种逐位点亮显示器的方式称为位扫描。
通常,各位数码管的段选线相应并联在一起,由一个8位的I/O口控制;各位的位选线(公共阴极或阳极)由另外的I/O口线控制。
动态方式显示时,各数码管分时轮流选通,要使其稳定显示必须采用扫描方式,即在某一时刻只选通一位数码管,并送出相应的段码,在另一时刻选通另一位数码管,并送出相应的段码,依此规律循环,即可使各位数码管显示将要显示的字符,虽然这些字符是在不同的时刻分别显示,但由于人眼存在视觉暂留效应,只要每位显示间隔足够短就可以给人同时显示的感觉。
采用动态显示方式比较节省I/O口,硬件电路也较静态显示方式简单,但其亮度不如静态显示方式,而且在显示位数较多时,CPU要依次扫描,占用CPU较多的时间。
综合静态显示和动态显示的优缺点,在本次设计中选择动态显示。
用MCS-51系列单片机构建数码管动态显示系统时常采用8155可编程I/O扩展接口。
2)多位动态显示接口应用
采用8051与8155接口,再采用8155的I/O口控制数码管的段码和位码,同时,采用动态扫描方式依次循环点亮各位数码管,即可构成多位动态数码管显示电路。
由8155的A口控制段码输出,C口控制位码输出,采用定时器中断方式实现动态扫描,每隔20ms扫描一次,每位数码管点亮的时间为1ms。
在单片机内部RAM设置待显示数据缓冲区,由查表程序完成显示译码,将缓冲区内待显示数据转换成相应的段码,再将段码通过8051的P0口送至8155的A口;位码数据由累加器循环左移指令产生,再通过P0口送至8155的C口。
以单片机内部RAM的30H35H单元作为显示数据缓冲区,六位数码管段码的获取及每位数码管的显示时间均由显示子程序完成;采用定时器中断方式实现动态扫描,每隔20ms扫描一次,每位数码管点亮的时间为1ms。
单片机每接收一次按键信号(即模拟生产线计数信号),显示缓冲区的待显示数据被刷新一次,数码管相应的显示数值也就随之发生变化,如连续按键,即可产生计数数据从左至右循环移动的效果。
根据图中IO/
、
与单片机的连接可知,可以确定命令/状态字A口、B口、C口、计数值低8位寄存器及高6位和方式寄存器地址分别为:
0100H、0101H、0102H、0103H、0104H、0105H。
同样都是动态扫描显示,如果是采用不断调用子程序的方式实现动态扫描显示,亮度相对较高,CPU效率较低;但如果是采用定时器中断(20ms中断一次)的方式实现动态扫描显示,亮度较低,CPU效率相对较高;谁优谁劣,各有千秋。
针对数码管显示亮度偏低的情况,可采用提高扫描速度(如由20ms改为10ms),或适当延长单只数码管导通的时间(如导通延时时间由1ms改为2ms)等措施来弥补,但其带来的后果是显示程序占用CPU的时间更多,导致CPU利用率更加下降。
2.1.5可编程键盘的设计
键盘是由一组规则排列的按键组成,一个按键实际上是一个开关元件,也就是说键盘是一组规则排列的开关。
1、按键的分类
按键按照结构原理可分为两类,一类是触点式开关按键,如机械式开关、导电橡胶式开关等;另一类是无触点开关按键,如电气式按键,磁感应按键等。
前者造价低,后者寿命长。
目前,微机系统中最常见的是触点式开关按键。
按键按照接口原理可分为编码键盘与非编码键盘两类,这两类键盘的主要区别是识别键符及给出相应键码的方法。
编码键盘主要是用硬件来实现对键的识别,非编码键盘主要是由软件来实现键盘的定义与识别。
全编码键盘能够由硬件逻辑自动提供与键对应的编码,此外,一般还具有去抖动和多键、窜键保护电路,这种键盘使用方便,但需要较多的硬件,价格较贵,一般的单片机应用系统较少采用。
非编码键盘只简单地提供行和列的矩阵,其它工作均由软件完成。
由于其经济实用,较多地应用于单片机系统中。
下面将重点介绍非编码键盘接口。
2、键输入原理
在单片机应用系统中,除了复位按键有专门的复位电路及专一的复位功能外,其它按键都是以开关状态来设置控制功能或输入数据。
当所设置的功能键或数字键按下时,计算机应用系统应完成该按键所设定的功能,键信息输入是与软件结构密切相关的过程。
对于一组键或一个键盘,总有一个接口电路与CPU相连。
CPU可以采用查询或中断方式了解有无将键输入并检查是哪一个键按下,将该键号送入累加器ACC,然后通过跳转指令转入执行该键的功能程序,执行完后再返回主程序。
3、按键结构与特点
微机键盘通常使用机械触点式按键开关,其主要功能是把机械上的通断转换成为电气上的逻辑关系。
也就是说,它能提供标准的TTL逻辑电平,以便与通用数字系统的逻辑电平相容。
机械式按键再按下或释放时,由于机械弹性作用的影响,通常伴随有一定时间的触点机械抖动,然后其触点才稳定下来。
其抖动过程如图2-5所示,抖动时间的长短与开关的机械特性有关,一般为510ms。
图2-5按键触点的机械抖动
在触点抖动期间检测按键的通与断状态,可能导致判断出错。
即按键一次按下或释放被错误地认为是多次操作,这种情况是不允许出现的。
为了克服按键触点机械抖动所致的检测误判,必须采取去抖动措施,可从硬件、软件两方面予以考虑。
在键数较少时,可采用硬件去抖,而当键数较多时,采用软件去抖。
在本系统中,虽然只有四个按键,但考虑到系统外部电路已经比较复杂了,采用软件去抖方式。
单片机控制系统中,往往只需要几个功能键,此时,可采用独立式按键结构。
独立式按键是直接用I/O口线构成的单个按键电路,其特点是每个按键单独占用一根I/O口线,每个按键的工作不会影响其它I/O口线的状态。
独立式按键的典型应用如图2-6所示。
独立式按键电路配置灵活,软件结构简单,但每个按键必须占用一根I/O口线,因此,在按键较多时,I/O口线浪费较大,不宜采用。
图2-6中按键输入均采用低电平有效,此外,上拉电阻保证了按键断开时,I/O口线有确定的高电平。
当I/O口线内部有上拉电阻时,外电路可不接上拉电阻。
独立式按键软件常采用查询式结构。
先逐位查询每根I/O口线的输入状态,如某一根I/O口线输入为低电平,则可确认该I/O口线所对应的按键已按下,然后,再转向该键的功能处理程序。
图2-6独立式按键电路
单片机系统中,若使按键较多时,通常采用矩阵式(也称行列式)键盘。
但在本次设计中,按键较少,故而选择独立式按键。
而且通常情况下,为了节省单片机口线,把键盘和数码显示模块设计在一起。
具体设计如下:
接地
图2-7键盘与显示电路
2.1.6 看门狗电路及外部程序存储器
看门狗对系统提供了保护功能。
当系统发生故障而超过设置时间时或者程序跑飞时,电路中的看门狗将通过RESET信号向CPU做出反应。
为了系统有很好的掉电保护,扩展了外部ROM。
当系统掉电时,开始设定的温度值如果没有存储,那就会丢失,到上电时又要重新设置,这给的实际工作生活带来了麻烦。
所以,针对这个问题,在单片机系统之外设计了外部ROM,将设置的温度值存入,那么掉电后就不会丢失,再次上电后也就不用再次设定了。
X5045是一种集看门狗、电压监控和串行EEPROM三种功能于一身的可编程电路。
这种组合设计减少了电路对电路板空间的需求。
X5045提供了三个时间值供用户选择使用。
它所具有的电压监控功能还可以保护系统免受低电压的影响,当电源电压降到允许范围以下时,系统将复位,直到电源电压返回到稳定值为止。
X5045的存储器与CPU可通过串行通信方式接口,共有4096个位,可以按512×8个字节来放置数据。
1、引脚介绍
X5045的管脚排列如图2-8所示,它共有8个引脚,各引脚的功能如下:
CS电路选择端,低电平有效;
SO:
串行数据输出端;
SI:
串行数据输入端;
SCK:
串行时钟输入端;
WP:
写保护输入端,低电平有效;
RESET:
复位输出端;
VCC:
电源端;
VSS:
接地端。
图2-8X5045引脚图
2、工作原理
(1)上电复位
向X5045加电时会激活其内部的上电复位电路,从而使RESET引脚有效。
该信号可避免系统微处理器在电压不足或振荡器未稳定的情况下工作。
当VCC超过器件的Vtrip门限值时,电路将在200ms(典型)延时后释放RESET以允许系统开始工作。
(2)低电压监视
工作时,X5045对VCC电平进行监测,若电源电压跌落至预置的最小Vtrip以下时,系统即确认RESET,从而避免微处理器在电源失效或断开的情况下工作。
当RESET被确认后,该RESET信号将一直保持有效,直到电压跌到低于1V。
而当VCC返回并超过Vtrip达200ms时,系统重新开始工作。
(3)看门狗定时器
看门狗定时器的作用是通过监视WDI输入来监视微处理器是否激活。
由于微处理器必须周期性的触发CS/WDI引脚以避免RESET信号激活而使电路复位,所以CS/WDI引脚必须在看门狗超时时间终止之前受到由高至低信号的触发。
(4)重新设置VCC门限
X5045/45出厂时设置的标准VCC门限电压为Vtrip,但在应用时,如果标准值不恰当,用户可以重新调整。
(5)SPI串行存储器
器件存储器部分是带块锁保护的CMOS串行EEPROM阵列,阵列的内部组织是×8位。
X5045可提供最少为1000,000次擦写和100年的数据保存期,并具有串行外围接口(SPI)和软件协议的特点,允许工作在简单的四总线上。
X5045主要是通过一个8位的指令寄存器来控制器件的工作,其指令代码通过SI输入端(MSB在前)写入寄存器。
表2-2所列为X5045的指令格式及其操作。
(6)时钟和数据时序
当CS变低以后,SI线上的输入数据在SCK的第一个上升沿时被锁存。
而SO线上的数据则由SCK的下降沿输出
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 温度 控制系统 设计 本科 论文