《测控系统原理与设计》课程设计报告温度检测系统.docx
- 文档编号:3386646
- 上传时间:2022-11-22
- 格式:DOCX
- 页数:36
- 大小:433.07KB
《测控系统原理与设计》课程设计报告温度检测系统.docx
《《测控系统原理与设计》课程设计报告温度检测系统.docx》由会员分享,可在线阅读,更多相关《《测控系统原理与设计》课程设计报告温度检测系统.docx(36页珍藏版)》请在冰豆网上搜索。
《测控系统原理与设计》课程设计报告温度检测系统
《测控系统原理与设计》课程设计报告
课题:
温度检测系统
班级测控1班学号
学生姓名
指导教师
学院
电子与电气工程学院
2011年12月
一、绪论
1.1课题来源
温度是一个和人们生活环境有着密切关系的物理量,也是一种在生产、科研、生活中需要测量和控制的重要物理量,是国际单位制七个基本量之一,同时它也是一种最基本的环境参数。
人民的生活与环境温度息息相关,物理、化学、生物等学科都离不开温度。
在工业生产和实验研究中,在电力、化工、石油、冶金、机械制造、大型仓储室、实验室、农场塑料大棚甚至人们的居室里经常需要对环境温度进行检测,并根据实际的要求对环境温度进行控制。
比如,发电厂锅炉的温度必须控制在一定的范围之内;许多化学反应的工艺过程必须在适当的温度下才能正常进行。
炼油过程中,原油必须在不同的温度和压力条件下进行分流才能得到汽油、柴油、煤油等产品;没有合适的温度环境,许多电子设备不能正常工作,粮仓的储粮就会变质霉烂,酒类的品质就没有保障。
可见,研究温度的测量具有重要的理论意义和推广价值。
随着现代计算机和自动化技术的发展,作为各种信息的感知、采集、转换、传输相处理的功能器件,温度传感器的作用日益突出,成为自动检测、自动控制系统和计量测试中不可缺少的重要技术工具,其应用已遍及工农业生产和日常生活的各个领域。
本设计就是为了满足人们在生活生产中对温度测量系统方面的需求。
本设计要求系统测量的温度的点数为4个,测量精度为0.5℃,测温范围为-20℃~+80℃。
采用液晶显示温度值和路数,显示格式为:
温度的符号位,整数部分,小数部分,最后一位显示℃。
显示数据每一秒刷新一次。
1.2课题研究的意义
21世纪科学技术的发展日新月异,科技的进步带动了测量技术的发展,现代控制设备的性能和结构发生了巨大的变化,我们已经进入了高速发展的信息时代,测量技术也成为当今科技的主流之一,被广泛地应用于生产的各个领域。
对于本次设计,其目的在于:
(1)掌握数字温度传感器DS18B20的原理、性能、使用特点和方法,利用C51对系统进行编程。
(2)本课题综合了现代测控、电子信息、计算机技术专业领域方方面面的知识,具有综合性、科学性、代表性,可全面检验和促进学生的理论素养和工作能力。
(3)本课题的研究可以使学生更好地掌握基于单片机应用系统的分析与设计方法,培养创新意识、协作精神和理论联系实际的学风,提高电子产品研发素质、增强针对实际应用进行控制系统设计制作的能力。
1.3国内外现状及水平
传感器属于信息技术的前沿尖端产品,尤其是温度传感器被广泛用于工农业生产、科学研究和生活等领域,数量高居各种传感器之首。
温度传感器的发展大致经历了以下三个阶段:
传统的分立式温度传感器(含敏感元件);模拟集成温度传感器/控制器;数字温度传感器。
目前,国际上新型温度传感器正从模拟式向数字式、由集成化向智能化、网络化的方向发展,同时具有抑制串模干扰能力强、分辨力高、线性度好、成本低等优点。
随着我国四个现代化和经济发展,我国在科技和生产各领域都取得了飞速的发展和进步,发展以温度传感器为载体的温度测量技术具有重大意义。
二、总体方案设计
2.1方案介绍
2.1.1基于模拟温度传感器设计方案
该方案由单片机、模拟温度传感器AD590、运算放大器、AD转换器、4×4键盘、LCD显示电路、集成功率放大器、报警器组成,如图2.1所示。
本方案采用模拟温度传感器AD590作为测温元件,传感器将测量的温度变换转换成电流的变化,再通过电路转换成电压的变化,使用运算放大器交将信号进行适当的放大,最后通过模数转换器将模拟信号转换成数字信号,传给给单片机,单片机将温度值进行处理之后用LCD显示,当温度值超过设置值时,系统开始报警。
图2.1基于模拟温度传感器的测量系统方案
本方案使用的测温元件的性能指标如下:
(1)AD590的测温范围为﹣55℃~+150℃。
(2)AD590的电源电压范围为4V~30V,电源电压可在4V~6V范围变化,电流 变化1mA,相当于温度变化1K。
AD590可以承受44V正向电压和20V反向电压,因而器件反接也不会被损坏。
(3)输出电阻为710MW。
(4)精度高,AD590共有I、J、K、L、M五档,其中M档精度最高,在﹣55℃~+150℃范围内,非线性误差为±0.3℃。
集成温度传感器具有线性好、精度适中、灵敏度高、体积小、使用方便,温度测量范围广等优点,得到广泛应用。
集成温度传感器的输出形式分为电压输出和电流输出两种。
电压输出型的灵敏度一般为10mV/K,温度0℃时输出为0,温度25℃时输出2.982V。
电流输出型的灵敏度一般为1mA/K。
本设计方案使用了AT89C51单片机作为控制核心,以智能温度传感器DS18B20为温度测量元件,采用多个温度传感器对各点温度进行检测,通过4×4键盘模块对正常温度进行设置显示电路采用128×64LCD模块,使用LM386作为报警电路中的功率放大器。
采用了数字温度传感器DS18B20,改变了传统温度测试方法。
它能在现场采集温度数据,直接将温度物理量变换为数字信号并以总线方式传送到单片机进行数据处理,并且可根据实际要求通过简单的编程实现9-12位的数字式读数方式,因而使用DS18B20可使系统结构更趋简单,可靠性更高,大大提高系统的抗干扰能力。
DS18B20体积小、经济、使用方便灵活,测试精度高,较高的性能价格比,有CRC校验,系统简明直观。
适合于恶劣环境的现场温度测试,如:
环境控制、设备或过程控制、测温类消费电子产品等。
2.1.2基于数字温度传感器设计方案
该方案使用了AT89C51单片机作为控制核心,以智能温度传感器DS18B20为温度测量元件,采用多个温度传感器对各点温度进行检测,通过4×4键盘模块对正常温度进行设置显示电路采用128×64LCD模块,使用LM386作为报警电路中的功率放大器。
图2.2基于数字温度传感器测量系统方案
本课题采用数字温度传感器DS18B20作为测为测温元件,它具有如下特点:
(1)只要求一个端口即可实现通信。
(2)在DS18B20中的每个器件上都有独一无二的序列号。
(3)实际应用中不需要外部任何元器件即可实现测温。
(4)测量温度范围在-55C到+125C之间。
(5)数字温度计的分辨率用户可以从9位到12位选择。
(6)内部有温度上、下限告警设置。
2.2方案论证
本设计要求测量的点数为4,测温范围为-20℃~+80℃,精度为0.5℃。
采用液晶显示,同时显示路数和温度,每秒刷新1次显示数据。
综合模拟温度传感器和数字温度传感器的性能指标,以上两个方案都能达到设计的要求。
方案一采用模拟温度传感器AD590,转换结果需要经过运算放大器和AD转换器传送给处理器。
它控制虽然简单,成本低,但是后续电路复杂,且需要进行温度标定,集成温度传感器AD590输出为电流信号,且输出信号较弱,所以需要后续放大及A/D转换电路,如采用普通运放则精度难以保证,而测量放大器价格较高,这样会使系统成本升高。
方案二采用了数字温度传感器DS18B20,改变了传统温度测试方法。
它能在现场采集温度数据,直接将温度物理量变换为数字信号并以总线方式传送到单片机进行数据处理,并且可根据实际要求通过简单的编程实现9-12位的数字式读数方式,因而使用DS18B20可使系统结构更趋简单,可靠性更高,大大提高系统的抗干扰能力。
DS18B20体积小、经济、使用方便灵活,测试精度高,较高的性能价格比,有CRC校验,系统简明直观。
适合于恶劣环境的现场温度测试,如:
环境控制、设备或过程控制、测温类消费电子产品等。
方案二程序设计稍微复杂一些,但在电子竞赛期间我用DS18B20做过温度计,也调试过LCD,并且已经用PROTEUS实现了系统的仿真。
因此,该方案完全具有可行性,同时体现了技术的先进性,经济上也有很大的优势。
综上所述,本课题采用方案二对系统进行设计。
三、硬件电路设计
3.1测温电路
DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出北侧温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。
DS18B20的性能特点如下:
①独特的单线接口仅需要一个端口引脚进行通信;
②多个DS18B20可以并联在惟一的三线上,实现多点组网功能;
③无须外部器件;
④可通过数据线供电,电压范围为3.0~5.5V;
⑤零待机功能;
⑥温度以9或12位数字量读出;
⑦用户可定义的非易失性温度报警设置;
⑧报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;
⑨负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;
DS18B20采用3脚PR-35封装或8脚SOIC封装,其内部结构框图如图3.1所示。
图3.1DS18B20内部结构图
64位ROM的位结构如图3.2所示。
开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用一线进行通信的原因。
非易失性温度报警器触发器TH和TL,可通过软件写入户报警上下限。
图3.264位ROM结构图
DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可擦除的EERAM。
高速暂存RAM的结构为8字节的存储器,结构如图3.3所示。
头2个字节包含测得的温度信息,第3和第4字节是TH和TL的拷贝,是易失的,每次上电复位时被刷新。
第5个字节为配置寄存器,它的内容用于确定温度值的数字转换分辨率。
DS18B20工作时按此寄存器中的分辨率将温度转换为相应精度的数值。
该字节各位的定义如图3.4所示。
低5位一直为1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。
在DS18B20出厂时该位被设置为0,用户不要改动,R1和R0决定温度转换得精度位数,即用来设置分辨率,定义方法见表1。
图3.3高速暂存RAM结构图
图3.4配置寄存器
表1DS18B20分辨率的定义规定
由表1可见,DS18B20温度转换的时间比较长,而且设定的分辨率越高,所需要的温度转换时间越长。
因此,在实际应用中要将分辨率和转换时间权衡考虑。
高速暂存RAM的第6,7,8字节保存未用,表现为逻辑1。
第9字节读出前面所有8字节的CRC码,可用来检验数据,从而保证通信数据的正确性。
当DS18B20接收温度转换命令后,开始启动转换。
转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1,2字节。
单片机可以通过单线接口读出数据,读数据时低位在先,高位在后,数据格式以0.0625℃/LSB形式表示。
温度值格式如图3.5所示。
图3.5温度数据值格式
当符号位S=0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位S=1时,表示测得的温度值为负值,要先将补码转换为原码,再计算十进制。
表2是一部分温度值对应的二进制温度数据。
表2DS18B20温度与测得值对应表
DS18B20完成温度转换后,就把测得的温度值与RAM中的TH,TL字节内容作比较。
若T>TH或T 因此,可用多只DS18B20同时测量温度并进行报警搜索。 在64位ROM的最高有效字节中存储有循环冗余检验码(CRC)。 主机根据ROM的前56位来计算CRC值,并和存入DS18B20的CRC值作比较,以判断主机收到ROM数据是否正确。 DS18B20的测温原理如图3.6所示。 图中第温度系数晶振的震荡频率受温度的影响很小,用于产生固定频率的脉冲送给减法计数器1;高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入.图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数震荡器产生的时钟脉冲计数,进而完成温度测量。 计数门的开启时间由高温度系数震荡器来决定,每次测量前,首先将-55℃所对应的一个基数分别置入减法计数器1,温度寄存器中,减法计数器1和温度寄存器被预置在-55℃所对应的一个基数值。 减法计数器1所对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法计数器1的预置值将被重新装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值就是所测温度值。 图3.6中的斜率累加器用于补偿和修正测温过程中的非线形性,其输出用于减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直到温度寄存器值达到被预测值。 另外,由于DS18B20单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要,系统对DS18B20的各种操作必须按协议进行。 操作协议为: 初始化DS18B20→发ROM功能命令→发存储器操作命令→处理数据。 图3.6DS18B20测温原理图 DS18B20与单片机的接口电路 DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。 另一种是寄生电源供电方式,如图3.7所示.单片机端口接单线总线,为为保证有效DS18B20时钟周期内提供足够的电流,可用一个MOSFET管来完成对总线的上拉。 图3.7DS18B20采用寄生电源的电路图 当DS18B20处于写存储器操作和温度A/D转换操作时,总线上必须有强的上拉,上拉开启时间最大为10us。 采用寄生电源供电方式时VDD和GND端均接地。 由于单线制只有一根线,因此发送接口必须是三态的。 3.2键盘电路设计 3.2.1行列式键盘与单片机接口电路 根据本设计需要,本系统采用了4×4键盘实现对温度值和功能键的设定。 行列式键盘与单片机的接口电路如图3.8所示,H0-H3为行线,接单片机P2口的高4位,L0-L3为列线,接单片机P2口的低4位。 初始化时键盘行线为高电 平,列线为低电平。 键盘的行线接4输入与门,4输入与门的输出接单片机的外部中断0引脚P3.2口。 当有键按下时,将产生中断,在中断程序里对按键进行扫描,得到按键的键值。 图3.84×4键盘结构 3.2.2键盘面板 键盘面板如图3.9所示,本系统使用的键盘有10数字键,5个功能按键。 在系统启动时,先按“设置”键,然后按相应的数字键,按“左移”或者“右移”键改变其他温度的值。 按“确认”键之后系统正式启动。 系统在运行过程之中可以通过按“重新设置”键,对温度重新进行设置。 图3.9键盘面板 3.3显示电路设计 3.3.1LCD引脚分布及功能 (1)12864液晶显示屏共有20个引脚,其引脚名称及引脚编号的对应关系如图3.10所示: 图3.1012864液晶显示模块引脚分布图 (2)引脚功能如表3所示: 表312864液晶显示模块引脚功能 引脚 符号 引脚功能 引脚 符号 引脚功能 1 VSS 电源地 15 CS1 CS1=1芯片选择左边64*64点 2 VDD 电源正+5V 16 CS2 CS2=1芯片选择右边64*64点 3 VO 液晶显示驱动电源 17 /RST 复位(低电平有效) 4 RS H: 数据输入; L: 指令码输入 18 VEE LCD驱动负电源 5 R/W H: 数据读取; L: 数据写入 19 A 背光电源(+) 6 E 使能信号。 20 K 背光电源(-) 7-14 DB0-DB7 数据线 有些型号的模块19、20脚为空脚 3.3.2单片机与图形液晶的接口电路 LCD与单片机的接口电路如图3.11所示 : 图3.11LCD与单片机的接口电路 3.4报警电路设计 图3.12 本系统设计中有报警器,使用LM386作为报警器的功率放大器,如图3.12所示。 LM386是一种音频集成功放,具有自身功耗低、电压增益可调整、电源电压范围大、外接元件少和总谐波失真小等优点,广泛应用于录音机和收音机中。 LM386的输入端接单片机的引脚P3.4,输出端接扬声器。 当实际温度超过设置的温度值时,单片机引脚输出一定频率的信号,信号经过音频功放放大之后,发出报警声。 3.5电源电路设计 电源是整个系统的能量来源,它直接关系到系统能否运行。 在本系统中单片机、液晶显示、报警等电路需要5V的电源,因此电路中选用稳压芯片7805,其最大输出电流为1.5A,能够满足系统的要求,其电路如图3.13所示。 图3.13电源电路 四、软件设计 4.1主程序 主程序先对系统资源进行初始化,调用LCD显示子程序,显示启动画面。 然后进入键盘设置界面。 当设置键按下后,开始设置各点的温度,设置完之后,如果确认键按下,则系统开始工作。 首先调用DS18B20初始化子程序,再发送ROM命令,读取DS18B20转换的温度值。 当读取的温度大于设置的温度值时,报警器开始报警,LCD显示温度的实际值、设置值、路数、状态。 接下来对第二、三、四路温度进行采集,处理,显示。 主程序流程如图4.1所示: 4.1主程序流程图 4.2子程序 4.2.1DS18B20程序流程设计 由上一章单片机对DS18B20的控制方法,设计出如下程序流程: 图4.2写命令子程序流程图图4.3DS18B20复位子程序流程图 图4.4DS18B20读温度子程序流程图 4.2.2显示程序流程 显示是实现人机对话的重要部分,在这里选用12864LCD显示器可实现对汉字、字符和图片的显示,LCD的引脚功能在上面已经做了说明,下面是其相关指令的介绍。 (1)读取状态字 D/I R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 1 BUSY 0 ON/OFF RST 0 0 0 0 当R/W=1,D/I=0时,在E信号为高的作用下,状态分别输出到数据总线上。 状态字是了解模块当前工作状态的唯一的信息渠道,在每次对模块操作之前,都要读出状态字,判断BUSY是否为“0”。 若不为“0”,则单片机需要等待,直至BUSY=0为止。 (2)显示开关设置 D/I R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 0 1 1 1 1 1 D D=1: 开显示;D=0关显示。 (3)显示起始行设置 D/I R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 1 1 显示起始行(0~63) 指令表中DB5~DBO为显示起始行的地址,取值在0~3FH(1~64行)范围内,它规定了显示屏上最顶一行所对应的显示存储器的行地址。 (4)页面地址设置 D/I R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 1 0 1 1 1 Page(0~7) 页面地址是DDRAM的行地址,8行为一页,DDRAM共64行即8页,DB2-DB0表示0-7页。 (5)列地址设置 D/I R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 0 0 0 1 Yaddress(0~63) 列地址是DDRAM的列地址。 共64列,DB5-DB0取不同值得到0-3FH(1-64),代表某一页面上的某一单元地址,列地址计数器在每一次读/写数据后它将自动加一。 (6)写显示数据 D/I R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 1 0 显示数据 该操作将8位数据写入先前已确定的显示存储器的单元内。 操作完成后列地址计数器自动加一。 (7)读显示数据 D/I R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 1 1 显示数据 该操作将12864模块中的DDRAM存储器对应单位中的内容读出,然后列地址计数器自动加一。 根据上面指令结合系统要实行的功能,其显示子程序流程如图4.5所示。 图4.5显示子程序流程图 4.2.3键盘程序流程 键盘中断程序是用来设在系统起动时各环境温度的极值,其程序流程图如图4.6所示: 图4.6键盘程序流程 五、系统仿真调试 5.1Proteus仿真环境介绍 Proteus是英国Labcenterelectronics公司研发的EDA设计软件,是一个基于ProSPICE混合模型仿真器的,完整的嵌入式系统软、硬件设计仿真平台。 Proteus不仅可以做数字电路、模拟电路、数模混合电路的仿真,还可进行多种CPU的仿真,涵盖了51、PIC、AVR、HC11、ARM等处理器,真正实现了在计算机上从原理设计、电路分析、系统仿真、测试到PCB板完整的电子设计,实现了从概念到产品的全过程。 下面介绍一下PROTEUS的编辑环境。 (1)工作界面 ProteusISIS的工作界面是一种标准的Windows界面,如图5.1所示。 包括: 标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。 图5.1ProteusISIS的工作界面 (2)主菜单 PROTEUS包括File、Edit、View等12个菜单栏,如图5.2所示。 每个菜单栏又有自己的菜单,PROTEUS的菜单栏完全符合WINDOWS操作风格。 图5.2ProteusISIS的菜单栏 (3)工具栏 工具栏包括菜单栏下面的标准工具栏和图5.1右边的绘图工具栏,标准工具栏的内容与菜单栏的内容一一对应,绘图工具栏有丰富的操作工具,选择不同的按纽会得到不同的工具。 5.2原理图绘制 (1)新建文件: 打开PROTEUS,点FILE,在弹出的下拉菜单中选择NEWDESIGN,在弹出的图幅选择对话框中选LandscapeA4。 (2)元器件选取: 按设计要求,在对象选择窗口中点P,弹出PICKDEVICES对话框,在KEYWORDS中填写要选择的元器件,然后在右边对话框中选中要选的元器件,则元器件列在对象选择的窗口中。 本设计所需选用的元器件如下: 1AT89C51: 单片机 2LGM12641BS1R: 图形液晶 ③RES、RESPACK-8: 电阻、上拉电阻 ④CRYSTAL: 晶振 ⑤CAP、CAP-ELEC: 电容、电解电容 ⑥SOUNDER: 扬声器 ⑦DS18B20: 数字温度传感器 ⑧BUTTON: 按键 ⑨AND_4: 四输入与门 (3)放置元器件、电源和地、连线,得到如图5.3所示的系统电路图,最后进行电气检测。 5.3程序加载 5.3.1程序编译 (1)启动KEIL,选择Project->NewProject,在弹出的对话框
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 测控系统原理与设计 测控 系统 原理 设计 课程设计 报告 温度 检测