南昌航空大学单片机课程设计温度的采集全集与控制学位论文Word文档格式.docx
《南昌航空大学单片机课程设计温度的采集全集与控制学位论文Word文档格式.docx》由会员分享,可在线阅读,更多相关《南昌航空大学单片机课程设计温度的采集全集与控制学位论文Word文档格式.docx(24页珍藏版)》请在冰豆网上搜索。
2天;
3.领元器件、制作、焊接:
3天
4.调试:
2天
5.验收:
1天
6.提交报告:
2012~2013学年第二学期17~19周
学生姓名:
指导时间:
第17~19周
指导地点:
综合楼505室
任务下达
2013-06-17
任务完成
考核方式
1.评阅√□2.答辩√□3.实际操作√□4.其它√□
指导教师
系(部)主任
注:
1、此表一组一表二份,课程设计小组组长一份;
任课教师授课时自带一份备查。
2、课程设计结束后与“课程设计小结”、“学生成绩单”一并交院教务存档。
摘要
本系统将单片机应用于温度测量。
系统的核心部件是STC89C52单片机,系统采用模拟温度传感器PT--100作为测温元件,将采集的模拟信号经TL084放大器放大后传递给ADC0832模数转换器。
ADC0832模数转换器将采集得到的模拟信号转换成数字信号传至STC89C52单片机的P2口和P3口。
STC89C52将信号处理后,经过共阴数码管显示出来。
它具有0~255℃范围的温度测量的能力,并且具有超温报警功能,灵敏度较高。
关键词:
TLC0832,TL084,STC89C51。
目录
前言·
·
3
第一章设计内容及设计要求·
4
1.1温度的采集与控制·
第二章硬件电路设计·
5
2.1方案·
2.2复位电路·
6
2.3晶振电路·
6
2.4电桥电路·
7
2.5放大电路·
8
2.6AD转换电路·
9
2.7显示电路·
11
2.8报警电路·
12
第三章作品调试及结果分析·
13
3.1电路的焊接·
3.2实验的调试·
14
3.3设计中遇到的问题与解决方案·
17
第五章实验结论和体会·
18
参考文献·
19
致谢·
20
附录一·
21
附录二·
22
附录三·
23
前言
在工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。
其中,温度控制也越来越重要。
在工业生产的很多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。
采用单片机对温度进行控制不仅具有控制方便、简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而大大提高产品的质量和数量。
因此,单片机对温度的控制问题是工业生产中经常会遇到的控制问题。
目前应用的温度检测系统大多采用由模拟温度传感器、多路模拟开关、A/D转换器及单片机等组成的传输系统。
这种温度采集系统需要大量的测温电缆,才能把现场传感器的信号送到采集卡上.安装和拆卸繁杂,成本也高。
同时线路上传送的是模拟信号,易受干扰和损耗,测量误差也比较大,不利于控制者根据温度变化及时做出决定。
针对这种情况,本文提出一种采用数字化单总线技术的温度采集系统,实现了温度实时测量和显示和报警。
第一章设计要求及设计思路
1.1设计要求
基本要求:
参考原理:
电桥电路、放大电路、AD转换电路、数码管显示电路、继电器报警电路
主要参考器件:
ADC0832,TL084,STC89C51。
1.2设计思路及总体设计框图
利用AT89C52单片机、ADC0832及PT-100温度传感器设计温度的控制与采集。
整个设计包括温度转换模块、A/D转换模块、显示模块和继电器报警模块。
先测温电路模块的作用是将随温度变化的电阻转化为电压变量。
为了提高测温灵敏度,用放大器将电压信号放大为了提高测温灵敏度。
A/D转换模块采用ADC0832转换器现实温度采集。
显示模块显示测温范围0℃-255℃。
继电器报警电路模块通过与单片机P口连接实现,当温度达到设定的温度200℃时,继电器报警电路模块的发光二极管会点亮蜂鸣器会报警。
设计中因为没有PT-100温度传感器,所以采用精密电阻代替。
电桥经过调零,调满后使得放大器输出端模拟电压在0V-5V范围变化,再经过ADC0832转换器得到采集温度在0℃-255℃。
系统原理框图如图1-1所示:
图1-1系统原理框图
第二章模块方案比较与论证
●温度转换电路模块方案比较
由于电桥电路模块将随温度变化的电阻转化为电压变量。
此电压为毫伏级的,非常小。
因此需要采用放大电路。
以下对两种放大电路方案进行分析比较。
方案一分析:
采用TL084差分放大电路,此电路放大倍数为Af=-(1+2R1/Rg)。
电路图如图2-1所示:
图2-1差分放大电路
方案二分析:
采用ICL7650进行一级放大。
放大倍数Af=(R8+R9+Rw3)/(R9+Rw)。
其中Rw为Rw3接入电路的电阻。
电路图如图2-2所示。
图2-2采用ICL7650一级放大电路
对以上两种方案对比分析总结:
差分放大电路可以有效的防止漂移现象,也比较好调试而且电路相对比较简单,最主要的是采用差分放大不必考虑电桥地的问题,所以相对而言采用方案一比较简单,而且方案一只需采用三级放大(放大倍数约为55倍)即可达到要求。
因此最终采用了方案一TL084放大电路。
●报警电路模块
方案一分析:
单片机P1.1口直接连接发光二极管。
当P1.1口为高电平时,发光二极管点亮,否则灯灭。
再通过编程使得当温度到达200℃时发光二极管点亮,当低于200℃时则灯灭。
电路图如图2-3所示。
图2-3直接用P口接发光二极管电路
采用继电器报警,所以设计报警模块如图2-4所示
图2-4继电器报警电路
经过比较,方案一较简单,但是抗干扰能力较差方案二相对比较复杂,但抗干扰能力较强。
由于课设要求采用继电器控制发光二极管报警,再综合其他因素,最终采用了方案二。
第三章系统硬件设计
3.1STC89C52简介
STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
具有以下标准功能:
8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,3个16位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。
另外STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
最高运作频率35MHz,所以本电路采用STC89C52作为电路的单片机来实施控制与输出。
本人使用现有的单片机下载程序,所以其中的复位电路与晶振电路直接采用其原理图
的电路。
并且单片机的管脚如图3-1所示
图3-1STC89C52引脚图
3.2最小系统
主控制系统采用了AT89C52单片机。
单片机最小系统,是指用最少的元件组成的单片机可以工作的系统。
最小系统一般应该包括:
单片机、晶振电路、复位电路。
复位电路和晶振电路是AT89C52工作所需的最简外围电路。
其基本系统电路原理图如下图3-2所示。
图3-2单片机89C52最小系统
3.3复位电路
STC89C52单片机的9脚是复位端,当输入为高电平并保持两个机器周期以上的时间时,单片机复位,复位后,主要特征是各IO口呈现高电平,程序计数器从零开始执行程序。
如图参数符合要求。
上电后,电容电压不能突变,VCC通过复位电容给单片机复位脚加高电平,同时,通过10K电阻向电容反向充电,使复位脚电压逐渐降低,经约10毫秒时间后,复位脚变为0V,单片机开始工作。
复位电路如图3-3所示。
图3-3复位电路
3.4晶振电路
图3-4晶振电路
如图所示,单片机板子是一个可以更换晶振的电路,在实际电路中,本人用的是12M的晶振。
匹配电容是两个30P的瓷片电容。
每种芯片的手册上都会提供外部晶振输入的标准电路,会表明芯片的最高可使用频率等参数,在设计电路时要掌握。
与计算机用CPU不同,单片机现在所能接收的晶振频率相对较低,但对于一般控制电路来说足够了。
晶振电路如图3-4所示。
3.5电桥电路
图3-5电桥电路
此电路采用2个电阻和2个滑动变阻器来实现电桥电路,上面的两个固定电阻都为10k,下面的滑动变阻器阻值范围为0~200。
其中左边的滑动变阻器为参考电阻,右边的滑动变阻器为PT-100,若固定左边的滑动变阻器为100,则调节PT-100的阻值会产生不同的压差,并将其传递给后面的放大电路。
并且最大压差经计算后约为0.09v。
电桥电路如图3-5所示
3.6放大电路
图3-6放大电路
因为前面的电桥电路产生的压差范围为mv级别的,所以要在后面添加一个放大电路,使之产生0~5v范围内的电压。
如图3-6所示,本电路采用的是TL084放大器将电压进行放大,TL084是一款高输入电阻的四运放,精度不高。
管脚信息如图3-7所示,1、2、3脚是通道1的输出端、反相输入端、同相输入端,5、6、7脚是通道2的同相输入端、反相输入端、输出端,8、9、10脚是通道3的输出端、反相输入端、同相输入端,12、13、14脚是通道4的同相输入端、反相输入端、输出端,4脚是正电源,11脚是负电源(或单电源使用时的电源地)。
图3-7TL084管脚图
本人设计的放大电路图的放大倍数为Af=-(1+2R3/RV6)。
改变RV6的阻值,可方便的调节放大器的增益。
根据需要,输出电压为0~5v,最大放大倍数约为55倍。
2.6AD转换电路
图3-8AD转换电路
本电路采用的是ADC0832芯片,ADC0832是美国国家半导体公司生产的一种8位分辨率、双通道A/D转换芯片,体积小,兼容性强,性价比高ADC0832具有以下特点:
8位分辨率;
双通道A/D转换;
输入输出电平与TTL/CMOS相兼容;
5V电源供电时输入电压在0~5V之间;
工作频率为250KHZ,转换时间为32μS;
一般功耗仅为15mW;
芯片接口说明:
CS_片选使能,低电平芯片使能;
CH0模拟输入通道0,或作为IN+/-使用;
CH1模拟输入通道1,或作为IN+/-使用;
GND芯片参考零电位(地);
DI数据信号输入,选择通道控制;
DO数据信号输出,转换数据输出;
CLK芯片时钟输入;
Vcc/REF电源输入及参考电压输入。
ADC0832时序图如图所示:
图3-9ADC0832时序图
当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。
此时芯片开始转换工作;
同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端输入通道功能;
在第1个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。
在第2、3个脉冲下沉之前DI端应输入2位数据用于选择通道功能。
如资料所示,当此2位数据为“1”、“0”时,只对CH0进行单通道转换。
当2位数据为“1”、“1”时,只对CH1进行单通道转换。
当2位数据为“0”、“0”时,将CH0作为正输入端IN+,CH1作为负输入端IN-进行输入。
当2位数据为“0”、“1”时,将CH0作为负输入端IN-,CH1作为正输入端IN+进行输入。
图3-10通道选择图
到第3个脉冲的下沉之后DI端的输入电平就失去输入作用,此后DO/DI端则开始利用数据输出DO进行转换数据的读取。
从第4个脉冲下沉开始由DO端输出转换数据最高位DATA7。
随后每一个脉冲下沉DO端输出下一位数据。
直到第11个脉冲时发出最低位数据DATA0,一个字节的数据输出完成。
也正是从此位开始输出下一个相反字节的数据,即从第11个字节的下沉输出DATA0。
随后输出8位数据,到第19个脉冲时数据输出完成,也标志着一次A/D转换的结束。
最后将CS置高电平禁用芯片,直接将转换后的数据进行处理。
因为采集的温度为0~255,所以可以将采集的数据(0~5v)分为256份,并用数码管显示出来。
2.7显示电路
图3-11显示电路
本电路采用CD4511驱动共阴数码管显示采集的数据。
管脚图和真值表如图所示:
图3-12CD4511管脚图图3-13真值表
其功能介绍如下:
BI:
4脚是消隐输入控制端,当BI=0时,不管其它输入端状态如何,七段数码管均处于熄灭(消隐)状态,不显示数字。
LT:
3脚是测试输入端,当BI=1,LT=0时,译码输出全为1,不管输入DCBA状态如何,七段均发亮,显示“8”。
它主要用来检测数码管是否损坏。
LE:
锁定控制端,当LE=0时,允许译码输出。
LE=1时译码器是锁定保持状态,译码器输出被保持在LE=0时的数值。
A1、A2、A3、A4、为8421BCD码输入端。
a、b、c、d、e、f、g:
为译码输出端,输出为高电平1有效。
CD4511的内部有上拉电阻,在输入端与数码管笔段端接上限流电阻就可工作。
A1、A2、A3、A4输入BCD码,则共阴数码管显示相应的数据。
2.8报警电路
图3-14报警电路
报警电路接在单片机的P1.1口,当P1.1口为低电平时,三极管不导通,继电器不工作,所以LED灯灭,当P1.1口为高电平时,三极管导通,继电器工作,使得LED灯亮。
第四章作品调试及结果分析
4.1电路的焊接
调试过程中用到了直流电压源和数字示波器和调节电位器的起子。
电路安装要注意几个原则:
1.需进行整体布局的构思,使元器件分布合理、整体上更加美观;
2.先装矮后装高、先装小后装大、先装耐焊等等;
3.布线尽量使电源线和地线靠近实验电路板的周边,以起一定的屏蔽作用;
4.最好分模块安装。
此外焊接时不能出现虚焊、假焊、漏焊,更不能出现过焊,因为有些器件,不能耐高温,电烙铁不能停留太久。
图3.1电路焊接图
3.2实验的调试
1、首先调节电桥和放大电路部分。
本人先将电桥部分的左边和右边的滑动变阻器都调为100,此时测得放大电路的输出电压为0.01v,调零成功。
再将右边的滑动变阻器调为198.5,再调节RV1,此时输出电压慢慢增大,当增大为5v时停止,调满成功。
2、调试显示部分和报警部分。
将单片机的P2口,P3口接至CD4511的输入端,P0口接至报警电路端,将调试的子程序下载入单片机,显示如图,显示200,并且LED灯亮,说明显示部分成功(程序在图之后)。
图3.2调试1图
调试1图程序:
ORG0000H
LJMPMAIN
MAIN:
CLRP0.0
L0:
MOVA,#0C8H;
直接给A赋值200并显示
CJNEA,#0C8H,L1
L1:
JCL2
SETBP0.0
L2:
MOVR0,#33H
MOVR7,#03H
LP:
MOVB,#0AH
DIVAB
XCHA,B
MOV@R0,A
DECR0
DJNZR7,LP
MOVA,32H
RLA
RLA
ORLA,31H
MOVP2,A
MOVA,33H
MOVP3,A
SJMPL0
END
修改程序中的A值,显示如图,LED灯灭,调试成功。
图3.3调试2图
3、前面电路和后面的电路没问题就直接将整体电路连接起来,调节PT-100电阻,实验数据如图:
图3.4供电电压图3.5示0电压值
图3.6示50电压值图3.7示100电压值
图3.8示150电压值图3.9示200电压值
图3.10示255电压值
因为供电电压为6.3v,理论上若显示0,则输出电压为0v,所测值为0.04v;
理论上若显示50,则输出电压为6.3/5=1.26v,所测值为1.26v;
理论上若显示100,则输出电压为6.3*2/5=2.52v,所测值为2.51v;
理论上若显示150,则输出电压为6.3*3/5=3.78v,所测值为3.74v;
理论上若显示200,则输出电压为6.3*4/5=5.04v,所测值为4.96v;
综上可得,所测值与理论值相差甚少,误差较小,说明作品较为成功。
3.3设计中遇到的问题及解决方案
第一次接上电源的时候,调节滑动变阻器,放大器TL084的输出端电压最大只会显示3v左右,经过细心的检查调试发现,发现TL084的电源地必须与电桥地共接(因为该放大电路为差分放大),否则根本不会出现预期结果,这与之前传感器电桥不一样,因放大电路采用的芯片不一样,这点要注意!
除了这部分电路的问题外,其余电路的电源地最好是接一起,除电桥和放大电路地方电源接直流稳压源外,其余电路本人是直接采用单片机开发板上的电源,排除问题后,调节电桥电位器,TL084输出端电压值会随着滑动变阻器的阻值改变而改变,调试成功。
软件调试一次性成功。
在一次记录测量数据的时候,突然发现数码管显示部分变成了004,只会不管怎样调节滑动变阻器,显示值都不会变,经过调节测量电桥电路与放大电路的输出电压,发现无问题,再用调节子程序测试数码管部分有无问题,发现也会显示最初设计的初值,所以本人认为是ADC0832芯片出现故障。
在库房里领取了一个新的ADC0832后,调试结果又和之前的一样会显示所测温度,调试成功。
第五章实验结论和体会
通过三周的设计及制作还有调试,可以得到关于设计制作温度的采集与控制的一些结论,比如说原理图和参数确定后并确定无误就开始焊接电路,但在焊接时有虚焊的地方就可能导致电路无法达到预计的要求,因此焊接完后要认真用万用表检测是否有虚焊的地方。
最后就是调试电路了,也是整个系统设计的最后环节,这可就需要细心与耐心了,出现了什么意外情况不能着急,有的时候越着急就越难找出错误,冷静是关键。
通过此次实习,本人了解了温度的采集与控制电路的设计,包括了电桥电路、放大电路、AD转换电路、数码管显示电路、继电器报警电路,此设计中的AD转换电路是本设计的精华部分,这种电路在以后也会有许多用处,可以说是受益匪浅。
此次设计还算是比较成功的,没有出现比较大的错误。
经过此次的课程设计,对单片机的应用有了更深一步的了解。
这对今后的学习以及在以后的工作都会起着很重要的作用,对动手能力的培养也非常的重要,让知识学以致用。
参考文献
(1)张鑫.单片机原理及应用(第2版)[M].电子工业出版社,2010年
(2)张毅刚.单片机原理与应用设计[M].电子工业出版社,2008年
(3)何立民.单片机应用系统设计系统配置与接口技术[M].北京航空航天大学出版社,2001年
(4)周立功.单片机实验与实践教程(三)[M].北京航空航天大学出版社,2006年
(5)胡汉才.单片机原理及其接口技术(第3版)[M].清华大学出版社,2010年
(6)胡汉才.单片机原理及其接口技术学习辅导与实践教程[M].清华大学出版社,2010年
(7)张义和.例说51单片机(C语言版)[M].人民邮电出版社,2008年
(8)周景润等.基于PRO