基于单片机的AD590的温度测控系统.docx
- 文档编号:28596628
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:21
- 大小:229.91KB
基于单片机的AD590的温度测控系统.docx
《基于单片机的AD590的温度测控系统.docx》由会员分享,可在线阅读,更多相关《基于单片机的AD590的温度测控系统.docx(21页珍藏版)》请在冰豆网上搜索。
基于单片机的AD590的温度测控系统
课程设计报告书
题目:
基于单片机的AD590的温度测控系统
系名:
信息工程系
专业班级:
姓名:
学号:
指导教师:
2011年12月25日
目录
1.系统方案的设计0
1.1系统结构0
1.2系统结构原理图0
2.硬件设计1
2.1AD5902
2.2运算放大电路2
2.3数字滤波2
2.4A/D转换2
3软件设计3
3.2主程序模块5
3.3数据处理模块5
3.4显示处理5
4.PID算法基本原理5
5.结果分析7
5.1AD590电路实物图7
5.2实验结果分析8
总结8
参考文摘9
附录10
1.系统方案的设计
1.1系统结构
本设计是基于单片机对数字信号的高敏感和可控性、温湿度传感器可以产生模拟信号,和A/D模拟数字转换芯片的性能,以单片机为核心的一套检测系统,其中包括A/D转换、单片机、温度检测、湿度检测、显示、系统软件等部分的设计。
图1-1系统总体框图
本设计由信号采集、信号分析和信号处理三个部分组成的。
(1)信号采集由温度传感器、湿度传感器及多路开关组成;
(2)信号分析由A/D转换器、单片机基本系统组成;
(3)信号处理由串行口LED显示器和报警系统等组成。
1.2系统结构原理图
该系统由温度传感器、湿度传感器、8031嵌入式系统、加热设备、加湿设备几部分组成。
结构原理框图如图2-2所示。
通过温度传感器和湿度传感器测量温室内的温湿度经过AD转换送入8031进行处理,测量结果通过显示电路进行显示。
图1-2系统结构原理图
图1-3电路图
2.硬件设计
2.1AD590
AD590温度传感器是电流型温度传感器,通过对温度的测量可得到所需要的电流值。
根据特性分挡,AD590的后缀以I,J,K,L,M表示。
AD590L,AD590M一般用于精密温度测量电路,它采用金属壳3脚封装,其中1脚为电源正端V+;2脚为电流输出端I0;3脚为管壳,一般不用。
1、流过器件的电流(
)等于器件所处环境的热力学温度(开尔文)度数,即:
式中:
——流过器件(AD590)的电流,单位
。
T——热力学温度,单位K。
2、AD590的测温范围-55℃~+150℃。
3、AD590的电源电压范围为4V-30V。
电源电压可在4V-6V范围变化,电流
变化1
,相当于温度变化1K。
AD590可以承受44V正向电压和20V反向电压,因而器件反接也不会损坏。
4、输出电阻为710MΩ。
5、精度高。
AD590共有I、J、K、L、M五档,其中M档精度最高,在-55℃~+150℃范围内,非线形误差±0.3℃。
2.2运算放大电路
电路需要两路运算放大电路,所以选择双路运算放大器,一路作跟随器另一路作差分放大器,LM358内部包括有两个独立的、高增益、内部频率补偿的双运算放大器,适合于电源电压范围很宽的单电源使用,也适用于双电源工作模式,在推荐的工作条件下,电源电流与电源电压无关。
它的使用范围包括传感放大器、直流增益模块和其他所有可用单电源供电的使用运算放大器的场合。
LM358的封装形式有塑封8引线双列直插式和贴片式,本实训用8引线双列直插式DIP8。
2.3数字滤波
模拟信号都必须经过A/D转换后才能为单片机接受,如果模拟信号受到扰动影响,将使A/D转换结果偏离真实值。
因此仅仅对模拟量采样一次,我们是无法确定该结果是否可信的,必须经过多次采样,得到一个A/D转换的数据序列。
由于数字滤波不需要硬件设备,因而可靠性高、稳定性好,各回路之间
不存在阻抗匹配等问题。
2.4A/D转换
在单片机控制系统中,控制或测量对象的有关变量,往往是一些连续变化的模拟量,如温度、压力、流量、位移、速度等物理量。
但是大多数单片机本身只能识别和处理数字量,因此必须经过模拟量到数字量的转换(A/D转换),才能够实现单片机对被控对象的识别和处理。
完成A/D转换的器件即为A/D转换器。
A/D转换器的主要性能参数有:
(1)分辨率分辨率表示A/D转换器对输入信号的分辨能力。
A/D转换器的分辨率以输出二进制数的位数表示;
(2)转换时间转换时间指A/D转换器从转换控制信号到来开始,到输出端得到稳定的数字信号所经过的时间。
不同类型的转换器转换速度相差甚远;
(3)转换误差转换误差表示A/D转换器实际输出的数字量和理论上的输出数字量之间的差别,常用最低有效位的倍数表示;
(4)线性度线性度指实际转换器的转移函数与理想直线的最大偏移。
目前有很多类型的A/D转换芯片,它们在转换速度、转换精度、分辨率以及使用价值上都各具特色,综合全部因素设计决定采用美国国家半导体公司生产的CMOS工艺8通道,8位逐次逼近式A/D转换器ADC0809。
其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。
是目前国内应用最广泛的8位通用A/D芯片
3软件设计
在微机测控系统中,软件与硬件同样重要。
硬件是系统的躯体,软件则是灵魂,当系统的硬件电路设计好之后,系统的主要功能还是要靠软件来实现,而且软件的设计在很大程度上决定了测控系统的性能。
为了满足系统的要求,编制软件时一般要符合以下基本要求:
(1)易理解性、易维护性要达到易理解和易维护等指标,在软件的设计方法中,结构化设计是最好的一种设计方法,这种设计方法是由整体到局部,然后再由局部到细节,先考虑整个系统所要实现的功能,确定整体目标,然后把这个目标分成一个个的任务,任务中可以分成若干个子任务,这样逐层细分,逐个实现;
(2)实时性实时性是电子测量系统的普遍要求,即要求系统及时响应外部事件的发生,并及时给出处理结果。
近年来,由于硬件的集成度与运算速度的提高,配合相应的软件,实时性比较容易满足设计要求;
(3)准确性准确性对整个系统具有重要意义,尤其是是测量系统,系统要进行一定量的运算,算法的正确性和准确性对结果有着直接的影响,因此在算法的选择、计算的精度等方面都要符合设计的要求;
(4)可靠性可靠性是系统软件最重要的指标之一,作为能够稳定运行的系统,抗干扰技术的应用是必不可少的,最起码的要求是在软件受到干扰出现异常时,系统还能恢复正常工作。
结合上述编制系统软件的基本要求,首先讨论软件的设计思想。
图3-1程序流程图
3.1软件组成
由于整个系统软件相对比较庞大,为了便于编写、调试、修改和增删,系统软件的编制采用了模块化的设计。
即整个控制软件由许多独立的小模块组成,它们之间通过软件接口连接,遵循模块内部数据关系紧凑,模块之间数据关系松散的原则,按功能形成模块化结构。
系统的软件主要由主程序模块、数据采集模块、数据处理模块、控制算法
模块等组成。
主模块的功能是为其余几个模块构建整体框架及初始化工作;数据采集模块的作用是将A/D转换的数字量采集并储存到存储器中;数据处理模块是将采集到的数据进行一系列的处理,其中最重要的是数字滤波程序:
控制算法模块完成控制系统的PID运算并且输出控制量。
3.2主程序模块
主程序模块要做的主要工作是上电后对系统初始化和构建系统整体软件框架,其中初始化包括对单片机的初始化、A/D芯片初始化和串口初始化等。
然后等待温度设定,若温度已经设定好了,判断系统运行键是否按下,若系统运行,则依次调用各个相关模块,循环控制直到系统停止运行。
主程序模块的程序流程图如图3-2所示。
在附录中给出了系统初始化源程序。
3.3数据处理模块
模拟信号都必须经过A/D转换后才能为单片机接受,如果模拟信号受到扰动影响,将使A/D转换结果偏离真实值。
因此仅仅对模拟量采样一次,我们是无法确定该结果是否可信的,必须经过多次采样,得到一个A/D转换的数据序列,通过某种处理,才能得到一个可信度高的结果。
这种从数据序列中提取逼近真值数据的软件算法,通常称为数字滤波算法。
数字滤波克服模拟滤波器的不足。
3.4显示处理
显示处理模块主要完成人机交互作用,具体实现将采样温度值、设定温度值以字符的形式通过液晶显示出来。
4.PID算法基本原理
在工业上,偏差控制又称为PID(ProportionalIntegralandDifferential,比例积分与微分)。
这是工业控制过程中应用广泛的一种控制形式。
PID控制的理想微分方程为:
(4-1)
其中e(t)=r(t)-y(t)称为偏差值,可作为温度调节器的输入信号,其中r(t)为给定值,y(t)为被测变量的值;
为比例系数;
为积分时间常数;
为微分时间常数;u(t)为调节器的输出控制器输出控制信号。
但计算机只能处理数字信号,故上述数学方程必须加以变换。
若设温度的采样周期为T,第n次的采样得到的输入偏差为
,调节器输出为
,则有:
(微分用差分代换)
=
×
(积分用求和代替)
这样式4-1便可写为:
(4-2)
写成递推式为:
把上式改写为:
(4-3)
式4-3可以改写成:
使用增量式PID算法,所谓增量式PID算法就是通过计算相邻两次控制量运算之差,得到的差值就是增量,如果为正则表示要在上一次控制量的基础上增加控制量,反之则在上一次控制量的基础上减少控制量。
对于温度控制来说就是增加或者减少加热比例,可以比较精确的控制。
5.结果分析
5.1AD590电路实物图
图5-1实物图
5.2实验结果分析
(1)连接电路并导入程序
(2)对感应原件加热
因为室温的原因,开始显示的是一条直线;然后开始加热,升温,直线变为上升的曲线;停止加热,因为室温的原因开始降温,所以从最峰点开始变为下降的曲线
图5-2曲线图
总结
回顾起此次单片机课程设计,至今我仍感慨颇多,的确,从选题到定稿,从理论到实践,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。
通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。
在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌得二极管的正负极,对单片机汇编语言掌握得不好……通过这次课程设计之后,一定把以前所学过的知识重新温故。
同时,在老师的身上我学得到很多实用的知识,在次我表示感谢!
同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢!
参考文摘
[1]《新编电子控制电路》.刘修文主编.北京:
机械工业出版社,2006
[2]《传感器原理与应用》.黄贤武编著.桂林:
高等教育出版社,2007
[3]《单片机有效值转换器》刘瑄编著.机械工业出版社,2008
[4]《单片机原理与接口技术》.张士军军编著.电子工业大学出版社,2008
[5]《单片机基础》李广弟,朱月秀,王秀山..北京:
北京航空航天大学出版社
[6]《传感器应用接口电路》何希才,虹敏..机械工业出版社,1997年
附录
1.程序
ORG0000H;
AJMPMAIN;
ORG0100H;
AJMPCT0;
ORG00BH;
AJMPCT1;
ORG001B;
MAIN:
DISM0DATA78H;
DISM1DATA79H;
DISM2DATA7AH;
DISM3DATA7BH;
DISM4DATA7CH;
DISM5DATA7DH;
MOVSP,#50H;50H送SP
CLR5EH;清本次越限标志
CLR5FH;清上次越限标志
CLRA;清累加器A
MOV2FH,A;
MOV30H,A;
MOV3BH,A;
MOV3CH,A;
MOV3DH,A;
MOV3EH,A;
MOV44H,A;
MOVDISM0,A;
MOVDISM1,A;
MOVDISM2,A;
MOVDISM3,A;
MOVDISM4,A;
MOVDISM5,A;
MOVDPTR,#7F00H;
MOVA,#07H,
MOVX@DPTR,A;8155初始化
MOVTMOD,#056H;
MOVTL0,#06H;T0赋初值
MOVTH0,#06H;
CLRPT0;令T0为底中断优先级
SETBTR0;启动T0工作
SETBET0;允许T0中断
SETBEA;开CPU中断
LOOP:
ACALLDISPLY;调用显示程序
ACALLSCAN;调用扫描程序
AJMPLOOP;等待中断
CT0:
PUSHACC;
PUSHDPL;保护现场
PUSHDPH;
SETBD5H;置标志
ACALLSAMP;调用采样子程序
ACALLFILTER;调用数字滤波程序
CJNEA,42H,TPL;若Ui(K)≠Umax则TPL
WL:
MOVC,5EH;
MOV5FH,C;
CLR5EH;清5EH单元
ACALLUPL;转上限处理程序(略)
POPDPH;
POPDPL;
POPACC;
RETI;中断返回
TPL:
JNCTPL1;若Ui(K)>Umax则TPL1
CLR5FH;清上次越限标志
CJNEA,43H,MTPL;若Ui(K)≠Umin
HAT:
SETBP1.1;若温度不越限,则绿灯亮
ACALLPID;调用计算PID子程序
MOVA,2FH;PID值送A
CPLA;
INCA;
NM:
SETBP1.3;另P1.3输出高电平脉冲
MOVTL1,A;
MOVTH1,#0FFH;
SETBPT1;T1高优先级中断
SETBTR1;启动T1
SETBET1;允许T1中断
ACALLTRAST;调用标度转换程序
LOOP:
ACALLDISPLY;显示温度
JBD5H,LOOP;等待T1中断
POPDPH;
POPDPL;
POPACC;
RETI;中断返回
MTPL:
JNCHAT;Ui(K)>Umin则HAT
SETBP1.0;否则,越下限声光报警
MOVA,45H;取PID最大值输出
CPLA;
INCA;
AJMPNM;转NM执行
TPL1:
SETB5EH;若Ui(K)>Umax,则5EH单元置位
JNB5FH,WL;若上次未越限,则转WL
INC44H;越限计数器加1
MOVA,44H;
CLRC;
SUBBA,#N;越限N次吗?
JNZWL;越限小于N次则WL
SETBP1.2;否则越上限报警
CLR5EH;
CLR5FH;清越限标志
POPDPH;
POPDPL;恢复现场
POPACC;
RETI;中断返回
数字滤波子程序:
FILTER:
MOVA,2CH;(2CH)送A
CJNEA,2DH,CMP1;若(2CH)≠(2DH),则CMP1
AJMPCMP2;否则,转CMP2
CMP1:
JNCCMP2;若(2CH)>(2DH),则CMP2
XCHA,2DH;
XCHA,2CH;
CMP2:
MOVA,2DH;(2DH)送A
CJNEA,2EH,CMP3;若(2CH)≠(2DH),则CMP3
MOV2AH,A;否则(2DH)送2AH
RET;返回
CMP3:
JCCMP4;若(2CH)<(2DH),则CMP4
MOV2AH,A;否则(2DH)送2AH
RET;返回
CMP4:
MOVA,2EH;(2EH)送A
CJNEA,2CH,CMP5;若(2EH)≠(2CH),则CMP5
MOV2AH,A;否则(2EH)送2AH
RET;返回
CMP5:
JCCMP6;若(2EH)<(2CH),则CMP6
XCHA,2CH;否则(2EH)(2CH)
CMP6:
MOV2AH,A;
RET;
显示程序:
DIS:
MOVR0,#7EH;显示缓冲区末地址→R0
MOVR2,#01H;
MOVA,R2;
LP0:
MOVDPTR,#7F01H;8155A口地址→DPTR
MOVX@DPTR,A;
INCDPTR;数据指针指向8155PB口
MOVA,@R0;取显示数据
ADDA,#0DH;加上偏移量
MOVCA,@A+PC;取出字形码
MOVX@DPTR,A;送出显示
ACALLD1MS;调延时子程序
DECR0;数据缓冲区减1
MOVA,R2JBACC.5,LP1;扫描到最左面的显示器吗?
RLA;没有到,左移一位
MOVR2,A;
AJMPLP0;
LP1:
RET
DB3FH,06H,5BH,4FH,66H,6DH;
DB7DH,07H,7FH,6FH,77H,7CH;
DB39H,5EH,79H,71H,40H,00H;
D1MS:
MOVR7,#02H;延时1ms子程序
DL:
MOVR6,#0FFH;
DL1:
JNZR6,DL1;
DJNZR7,DL;
RET;
评分项目
评分成绩
1.选题合理、目的明确(10分)
2.设计方案论证严谨、正确(30分)
3.设计过程阐述清晰(25分)
4.设计报告整理规范(10分)
5.答辩(25分)
总分(100分)
答辩记录:
指导教师综合评语:
指导教师(签名)
日期:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 AD590 温度 测控 系统