基于DS18B20的温度场可视化测绘系统毕业论文.doc_第1页
基于DS18B20的温度场可视化测绘系统毕业论文.doc_第2页
基于DS18B20的温度场可视化测绘系统毕业论文.doc_第3页
基于DS18B20的温度场可视化测绘系统毕业论文.doc_第4页
基于DS18B20的温度场可视化测绘系统毕业论文.doc_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于DS18B20的温度场可视化测绘系统 基于DS18B20的温度场可视化测绘系统专业班级:电气工程及其自动化3班 姓 名: 黄 锦 指导教师: 李 啸 轮机工程学院摘 要本文介绍了基于DS18B20和STC89C52RC单片机的多点温度测量的方法和原理,以及利用matlab软件运用插值法对数据进行处理,实现温度的可视化。首先,利用DSI8B20温度传感器和单片机与其它外围硬件结合在一起,实现温度的测量和显示;然后,通过MATLAB对数据进行处理绘图,模拟温度场的可视。该设计主要分为以下几个部分:硬件设计、软件设计、系统的调试与实现以及matlab对温度场的模拟测绘。其中硬件设计主要是由Proteus软件进行电路的设计和仿真,软件设计采用C语言编写实现,绘图通过matlab进行。采用这种解决方案,实现了基于DS18B20进行的各项软硬件软件的设计,实现了多点温度测量和显示以及温度场的模拟可视化。关键词:温度测量;温度传感器DS18B20;STC89C52RC单片机;MATLABAbstractThis article describes the multi-point temperature measurement method and principle based on DS18B20 and STC89C52RC,To make the temperature field visual ,interpolation method and matlab software are used for data processingFirst,combine DS18B20 and the MCU and other peripheral equiphments to make the measuring temperature is displayed. Then using matlab plot it.The design is mainly divided into the several parts as follows:the hardware design,the software design and the debugging and implementation of the entire system and the matlab plottingAmong the design,the hardware design and circuits drawing by means of Proteus software and the software design is realized by using C language programming,picture drawing by matlabThe DS18B20 based design,debugging and dispose of the all software and hardware items and even the multi-point temperature measuring and displaying have been realized by adopting the solutionKeywords: Temperature Measurement; Temperature sensor DS18B20; STC89C52RC; MATLAB目 录第1章 绪论11.1概述1 1.1.1选题背景及意义11.1.2温度检测技术的研究现状及发展趋势11.2 系统方案论证2第2章 硬件基础介绍32.1 DS18B20温度传感器介绍32.1.1 DS18B20温度传感器概述32.1.2 DS18B20接口电路52.1.3 DS18B20工作原理62.1.4 DS18B20工作时序92.2 STC89C52RC单片机简介112.3 LCD1602液晶显示屏简介12第3章 硬件电路设计133.1单片机驱动电路设计133.2 温度测量模块电路设计143.3 温度显示模块电路设计143.4温度报警电路设计153.5系统硬件电路设计163.6小结17第4章 软件程序设计17主要讨论温度显示、测量、及报警子程序的设计和调试174.1 DS18B20的测量温度程序设计174.2 LCD1602的显示程序设计184.3 报警控制电路软件设计204.4系统软件程序设计214.5本章小结22第5章 利用matlab实现温度场数据可视化235.1可视化的方法235.2 数据的采集和处理235.3 本章小结30结 论30参 考 文 献31致 谢32附 录1附录1 测温系统实物图1附录2 本设计测温系统电路图(基于proteus)1附录3 本设计的系统总程序源代码(基于Keil Vison4)2IV第1章 绪论1.1概述 本章讨论的主要是本课题的选题背景意义,还有研究现状和发展趋势以及测温系统方案设计。 1.1.1 选题背景及意义温度是我们每天都能感受到的一个物理量,冷了要多穿衣服,热了就少穿点。它也是一种在科技生产中需要准确测量和适当控制的物理量。同时它又是环境的一个基本参数。温度对人民生活生产的影响无处不在,在许多科学领域的研究也都离不开温度这个参数。例如,许多物理和化学的反应过程必须在合适的温度范围下才能进行;在石油的分离过程中,原油必须在适当的不同的温度范围内和压力等条件下才能进行分流得到汽油、柴油、煤油等不同产品;在环境恶劣条件下,温度过高或过低,许多电子设备是不能正常工作的;没有合适的温度,粮仓的储粮就会变质霉烂,酒类的发酵过程和品质也会没有保障等等。由此可见,温度的检测与控制对产品的质量,生产的效率,操作的安全,能源的节约等许多方面都有很大的影响。对国民经济的发展更是起到至关重要的作用。所以对温度检测进行研究,具有很重要的社会生产意义和推广应用的价值。1.1.2 国内外研究现状及发展趋势国外对温度的检测技术早在20世纪70年代就开始了。刚开始采用的是组合仪表式的模拟方式,采集记录现场的数据,然后再进行指示和控制,自动化程度比较低。后来到了80年代末期有了分布式的控制系统。目前一些国家正开发和研制一种基于计算机采集数据和控制的多因子综合控制系统。现在一些发达国家的温度检测技术发展很迅速,在实现自动化的同时,有向着完全自动化、无人化的方向发展趋势。我国对温度检测技术的研究始于20世纪80年代,与国外相比属于起步较晚的状况。所以总体上我国是靠引进吸收国外的技术为前提,从消化吸收,到简单应用,然后过渡到综合应用和发展。与此同时,我国也积极研究开发拥有自主知识产权的温度检测系统。目前,我们国家的温度测监控设施还是以单片机控制的单参数单回路为主,真正意义上的多参数的综合控制系统还没有实现。由于工业水平的限制,在实际生产中仍然有许多问题困扰着我们。例如环境控制水平落后,软硬件资源技术不足,系统可靠性差等缺点使得我们与发达国家相比,还存在较大的差距。随着近些年来电子技术、计算机技术等软硬件技术的快速发展,现场温度的检测和控制也由过去的模拟化手动化向现在的数字化智能化发展。并且,温度测量的精度也越来越高。下面就温度检测的发展趋势做下简单介绍。第一,检测范围扩大。在工业上温度的检测范围一般为-2003000,今后要求还要能对超低温和超高温进行检测。例如,液化气体的极低温度检测。第二,测温对象扩大。温度检测技术已经由点测温发展到线、面,今后就会要求到立体的测量了。应用范围也已经从工业发展到了家用电器。第三,新材料及工艺的开发。近些年来已经开发的厚膜、薄膜铂电阻温度传感器,炭化硅薄膜热敏电阻温度传感器,硅单晶热敏电阻温度传感器等都是新型的温度检测传感器。第四,向智能化方向的发展。新材料也意味着新技术。新型产品不仅具有检测功能,而且还具有逻辑判断和指令执行等诸多功能。采用微机控制,向智能化、机电一体化方向发展的趋势。1.2 系统方案论证本课题研究的是基于DS18B20的温度场可视化测绘,涉及到的主要理论知识有单片机原理,DS18B20温度传感器的多点温度测量技术,LCD1602的显示原理以及matlab对数据可视化处理的方法。经过论证,在实现设计要求的前提下,控制器选取STC89C52RC单片机,这款单片机功能灵活,焊接件简单,内存空间也足够,价格还便宜。电路系统的可行性设计采用Proteus 软件进行仿真,程序编程采用可读性较强的C语言来进行编写,程序编程的开发环境在Keil Vison4界面上进行。系统的组成框图如图1.1所示。它主要由五部分组成:Matlab实现可视化多点温度测量温度值显示单片机驱动温度报警图1.1 系统的组成框图第2章 硬件基础介绍2.1 DS18B20温度传感器介绍本节主要讨论DS18B20的接线方式、运行原理及工作时序。2.1.1 DS18B20温度传感器概述DS18B20是达拉斯(Dallas)公司出品的数字温度传感器,其使用1-wire总线接口,DS18B20的主要技术特点如下:(1) 工作电压范围广。33.5V,并且可以使用寄生电容供电方式。(2) 集成度高。所有的应用模块都集中在一个和普通三极管大小相同的芯片内,应用的过程中不需要任何外围器件,使用1-wire总线接口和51单片机进行数据通讯。(3) 温度测量范围大。可测温区间为-55125。其中-1085的区间内测量精度为0.5。(4) 测量分辨率可变。测量分辨率可设置为912位。对应的最小刻度为0.5、0.25、0.125和0.0625。(5) 转换速度快。在9位精度时最快,耗时93.75ms。在12位精度时则为750ms。(6) 支持多个设备。支持在同一条1-wire总线上接多个DS18B20器件形成多点测试,在数据传输过程中可以跟随CRC校验。因为Dallas公司生产的温度传感器DS18B20具有以上的技术特点,加上价格便宜,电路接线简单等优点,所以本课题的设计决定选用数支DS18B20温度传感器来完成多点温度的测量。图2.1是DS18B20芯片的封装结构。表2.1是DS18B20的引脚说明。图 2.2是DS18B20 的内部结构方框图。 图2.1 温度传感器DS18B20封装图表2.1 DS18B20引脚说明 图2.2 DS18B20内部结构方框图2.1.2 DS18B20接口电路DS18B20主要有两种供电方式。一种是从VDD引脚接入一个外部电源供电,或者是可以工作于寄生电源的模式。寄生模式下传感器可以不需接外部电源,适合远距离测温,如图2.3。从VDD引脚接入一个外部电源的供电方式见图2.4。这样做单总线上可以不需要强上拉。并且在温度转换期间总线不用一直保持高电平。图2.3 寄生供电模式图2.4 外部电源供电方式 本设计决定采用DS18B20的典型接口电路。选择外部电源作为它的供电方式。具体电路图将在第3章硬件电路设计中讨论。2.1.3 DS18B20工作原理每个DS18B20内部都有一个64位的ROM空间用于存放序列号。序列号由8位产品种类编号(0X28)、48位产品序列号和8位CRC校验位组成。每个DS18B20的序列号都是不同的。用于区别其他的DS18B20.DS18B20可以将温度转换成两个字节的数据,其可以配置设定为912位精度。S为符号为。当温度高于0时S为0,此后位的数据直接乘以温度分辨率,所得结果即为实际温度值。当温度低于0时S为1,此后位数据为温度数据的补码,需要取反加一之后再乘以温度分辨率才能得到实际温度值。也就是说,用这两个字节的转换结果乘以对应的分辨率就可以得到温度值(注意符号位)。其内部存储格式见表2.2.表2.2 DS18B20的温度数据存储结构BIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0低位高位SSSSS1-wire总线的工作流程包括总线初始化、发送ROM命令+数据及发送功能指令+数据3个步骤。即 (1)初始化;(2)ROM操作指令;(3)DS18B20功能指令。其中功能命令由具体的器件决定,用于器件内部进行相应功能操作。DS18B20的功能指令见表2.3。表2.3 DS18B20功能指令表DS18B20功能指令表指令说明协议单总线发出协议后备注温度转换指令Convert T (温度转换指令)开始温度转换44h读温度忙状态1存储器指令Write Scratchpad (写暂存器指令)读取暂存器和CRC字节4Eh读数据直到第9字节2Read Scratchpad (读暂存器指令)把字节写入暂存器的2,3和4(TH,TL和配置寄存器)BEh写入3个字节到DS18B203Copy Scratchpad (拷贝暂存器指令)把TH,TL和配置寄存器拷贝到EEPROM中48h无1指令说明协议单总线发出协议后备注Recall E2 (召回EEPROM指令)把非易失性存储器中的值召回存储器(TH,TL和配置寄存器)B8H传送拷贝标识给总线控制器Read Power Supply (读电源模式指令)标识DS18B20的供电模式B4h返回供电状态备注:(1)对于寄生电源模式下的DS18B20,在温度转换和拷贝数据到EEPROM期间,必须给单总线一个强上拉。总线上在这段时间内不能有其它活动。(2)总线控制器在任何时刻都可以通过发出复位信号中止数据传输。(3)TH,TL和配置寄存器这3个字节的写入必须在复位信号发起之前。控制DS18B20的5条ROM指令如下:Search ROM F0h (搜索ROM指令)。执行这条指令后返回步骤1。READ ROM 33h(读取ROM指令)。只有一个DS18B20时才使用这条指令。MATH ROM 55h(匹配ROM指令)。总线上有多个DS18B20时使用这个指令。SKIP ROM CCh (忽略ROM指令)。也是只有一个DS18B20时才能使用该指令。ALARM SEARCH ECH(报警搜索指令)。满足温度报警条件时才对该指令做出响应。DS18B20的详细操作流程如下:(1) 复位1-wire总线;(2) 当同一条总线上有多个DS18B20时,进行ROM匹配,否则跳过;(3) 设置DS18B20的报警温度上限和下限;(4) 启动采集并且等待采集结束;(5) 读取温度数据低位,读取温度数据高位。每次对DS18B20的操作都必须按以上步骤进行,如果顺序错乱或者缺少步骤,器件都不会有返回值。根据以上的ROM指令和功能指令对DS18B20进行编程,实现温度转换功能,具体编程流程将在第4章讨论。2.1.4 DS18B20工作时序DS18B20的1-wire工作协议流程是:初始化ROM操作指令存储器操作指令数据传输。其工作时序包括初始化时序、写时序和读时序,如图2.5,图2.6所示。DS18B20必须严格按照1-wire协议进行通讯,以确保数据准确没有冲突。图2.5 DS18B20初始化时序图图2.6 DS18B20的读/写时序图2.2 STC89C52RC单片机简介STC89C52RC/RD+系列单片机是宏晶科技公司制造的一款高速、抗扰、低功耗单片机。基于Intel标准的8052。指令代码全兼容8051系列。工作电压:3.45.5V(5V单片机)/2.03.8V(3V单片机)。有DIP-40,PLCC-44,PQFP-44 三种封装(PLCC、QFP 有P4 口)。STC89C52RC具有以下标准功能:512字节RAM,8k字节Flash,内置4KB EEPROM,32 位I/O 口线,三个16位定时器/计数器,看门狗定时器,MAX810复位电路,全双工串行口,和一个6向量2级中断结构。最高运作频率35MHZ,6T/12T可选。STC89C52单片机作为嵌入式系统的控制器,具有灵活性高,操作简单方便等优点。因此本设计决定采用DIP-40封装的89C52单片机作为处理器,选它最大的好处是焊接方便、价格便宜,同时存储空间也合适。STC89C52的封装如图2.7所示。 图2.7 STC89C52单片机管脚图2.3 LCD1602液晶显示屏简介LCD1602是字符型液晶显示模块。一种专门用于显示数字、字母、符号等点阵式的液晶显示屏。目前常用型号有161,162,202和402行等的模块。下面以162型号的1602字符型液晶显示器为例,介绍其一般用法。2.3.1 LCD1602的基本参数及引脚功能LCD1602分为带背光和不带背光两种。基控制器一般都为HD44780。带背光的要比不带背光的厚一点。是否带背光在使用中并无影响。两者尺寸差别如下图2.8所示:图2.8 1602的尺寸图(1)1602LCD主要技术参数: 显示容量:162个字符; 芯片工作电压:4.55.5V; 工作电流:2.0mA(5.0V); 模块最佳工作电压:5.0V; 字符尺寸:2.954.35(WH)mm。(2)引脚功能说明1602LCD各引脚接口说明如表2.4所示,分14引脚(无背光)和16引脚(有背光)两种标准。表2.4 1602引脚接口说明表编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极 LCD1602的硬件电路接法相比于LED数码管来说并不算复杂,甚至还会更简单一些,而且用于多点温度的测量还可以显示每个DS18B20的位置名称,可以一个屏显示多个温度值。程序的编写相对数码管也没有很复杂,在满足本设计的要求下,还可以让显示模块有很大的拓展空间。所以,本设计决定采用16引脚的LCD1602作为温度的显示装置。第3章 硬件电路设计本课题的硬件电路设计分为单片机驱动电路设计、LCD1602温度显示模块电路设计、DS18B20温度测量模块电路设计及温度超出上下限的报警电路设计。单片机驱动电路即为单片机的最小系统。包括电源、外部晶振、复位等电路。温度显示模块是本设计的关键部分,可以选用数码管作为显示装置也可以用LCD1602液晶显示屏。经过综合考虑,本设计决定采用LCD1602液晶屏作为温度显示装置。温度测量模块是本系统的重点部分,是基于DS18B20温度传感器来实现。DS18B20与单片机的通信可以是单总线通信,也可以是并口通信。为了使测温效果明显和简化编程,本设计采用8个DS18B20与单片机并口通讯的方式。相比于单总线通讯方式,并口通讯更快,实时性强,而且没有数据冲突的情况,编程也不会很复杂。温度报警模块是用于提醒用户温度超出了设定的范围,为了从视觉和听觉上提醒用户,本设计采用蜂鸣器的声响信号和LED灯的闪烁信号来同步实现此功能。各模块的具体电路设计如下文。 3.1单片机驱动电路设计单片机作为控制器要能正常工作,就必须要有它的驱动电路,也就是使它正常工作的最小系统。单片机最小系统主要包括电源,晶振和复位电路。本系统单片机为手动复位。驱动电路设计如图3.1所示。图3.1 单片机驱动电路3.2 温度测量模块电路设计每个DS18B20内部都有一个属于自己的64位序列号,1-wire总线的通讯方式可以在一条总线上连接多支DS18B20,然后分别读取它们的温度。但要完成这个操作过程,软件程序设计比较麻烦,同时还有一个缺点就是速度太慢,每次只能读取一个温度值,这对于一些要求测温实时性很强的场合很不适用。而且本系统是对温度场进行测绘,要求所测得的肯定是同一时刻各点的温度值。所以本系统的设计采用的是与单片机并口通讯的方式,同步快速读取8支DS18B20的数据,然后利用matlab根据特定的算法再进行温度场的绘制。本系统的测温模块电路设计如图3.2所示:8支温度传感器DS18B20都采用外部供电方式,第2脚及第3脚接电源,2号脚为数据传输口,与单片机的P0端相连。P0 图3.2 系统测温模块电路设计3.3 温度显示模块电路设计根据LCD1602的基本参数和引脚功能的说明与单片机连接,数据传输选用单片机的P1口。本系统的显示模块接口电路设计如图3.3所示:电路图的详细说明如下:LCD1602的第1、16脚接地;LCD1602的第2、15脚接电源;LCD1602的第3脚串联一个10k的可调电阻器接地,用于调节对比度;LCD1602的第4、5、6脚分别接单片机的P3.5、P3.6及P3.4口LCD1602的第714脚分别接单片机的P1.0P1.7; 图3.3 系统显示模块电路设计3.4温度报警电路设计温度报警分低温报警和低温报警。实现报警的方法有很多种。本设计采用常见的蜂鸣器发声报警和LED闪烁报警的方式。视觉和听觉上的双重提醒效果更佳。具体电路设计如图3.4所示。详细的元件接线说明如下:(1)本设计中,PNP三极管采用的型号是S8550;(2) PNP三极管的e极管脚连接电源;(3) PNP三极管的b极管脚串联一个2k电阻连接单片机的P2.4口;(4) PNP三极管的c极管脚与蜂鸣器的第1管脚相连;(5)蜂鸣器的第2管脚接地;(6)LED灯与蜂鸣器并联。图3.4 系统温度报警电路设计3.5系统硬件电路设计由DS18B20、STC89C52RC单片机以及LCD1602液晶显示屏等外围器件组成的多点温度测量系统电路如图3.5所示。通过采用8支DS18B20来模拟构成一个小型的温度场测绘系统。温度传感器DS18B20获得温度信息后,通过并行通讯方式与STC89C51单片机进行数据传输。单片机将处理后的温度信息通过LCD1602显示出来,如果所测量的温不在定值范围内,蜂鸣器就会发出声响,同时LED灯也会闪烁起来进行报警。图3.5 系统的硬件电路设计3.6小结本章主要介绍了系统硬件的设计方法,介绍了各模块的连接方式。重点讨论了DS18B20传感器在多点测温时与单片机的接法。根据外围模块的电路连接设计出系统的电路图,这些电路图是做出实物电路板和软件编写并成功运行的基础。第4章 软件程序设计 本章主要讨论显示、测量、报警子程序及系统程序的设计和调试。4.1 DS18B20的测量温度程序设计根据前面DS18B20与单片机的连接方式、工作原理、及工作时序的介绍,编写DS18B20的温度测量程序。4.1.1 初始化子程序设计 DS18B20初始化程序流程如图4.1: 图4.1 DS18B20初始化程序流程图DS18B20复位及初始化程序:void dsreset(void) /给DS18B20发送初始化及复位信号uint i; /DS18B20 初始化DS=0;i=103;while(i0)i-;DS=1;i=4;while(i0)i-;4.1.2 读温度子程序读温度数据子程序的主要功能是从DS18B20中读出温度数据,然后移入温度暂存器保存。其程序流程如图4.2: 图4.2 温度子程序流程图读取DS18B20寄存器中存储的温度数据需要通过调用DS18B20初始化程序、延时子程序、写一个字节程序等编写完成:uint tmp() /读取DS18B20寄存器中存储的温度数据float tt;uchar a,b;dsreset();delayms(2);tmpwritebyte(0xcc);tmpwritebyte(0xbe); /发送读取数据命令a=tmpread(); /连续读两个字节数据,读取低8位b=tmpread(); /读取高8位temp=b;temp=8; /两字节合成一个整型变量。temp=temp|a; tt=temp*0.0625; /得到真实十进制温度值,DS18B20在寄存器中 /默认是12位,可以精确到0.0625 度, /所以读回数据的最低位代表的是0.0625 度。temp=tt*10+0.5; /放大十倍,这样做的目的将小数点后第一位 /也转换为可显示数字,同时进行一个四舍五入操作。return temp; /返回温度值4.2 LCD1602的显示程序设计根据LCD1602的指令说明、工作时序及其DDRAM地址和屏幕的对应关系,以及与单片机端口的连线关系,编写显示功能的软件程序。显示流程如图4.3: 图4.3 温度显示子程序设计流程下面是LCD1602的初始化(复位)过程:用LCD1602显示之前都要对其进行初始化处理,否则模块是无法正常显示的。LCD1602的一般初始化方法是通过利用内部的复位电路进行。下面是初始化过程需要用到的指令。(1)清屏(DISPLAY CLEAR);(2)功能设置(FUNCTION SET)DL=1:8Bin 接口数据N=0:1 行显示;F=0:57dot 字形;(3)显示开/关控制(Display ON/OFF Conrtol)D=0:显示关;C=0:光标关;B=0:消隐关(4)输入方式设置(ENTRY MODE SET)I/D=1:(增量);S=0:无移位。根据以上信息,LCD1602的部分显示程序如下:(1)LCD1602初始化程序:void init_lcd()/液晶初始化write_com(0x01);/清屏write_com(0x38);/设置16*2显示,5*7点阵write_com(0x0c);/开显示,不显示光标write_com(0x06);/光标左移(2)LCD1602写命令子程序:void write_com(unsigned char com)/写命令rs=0;wr=0;P0=com;lcden=0;delayms(10);lcden=1;delayms(10);lcden=0;(3)LCD1602的写数据子程序:void write_data(unsigned char dat)/写数据rs=1;wr=0;P0=dat;lcden=0;delayms(10);lcden=1;delayms(10);lcden=0;4.3 报警控制电路软件设计当测得的温度值超过设定上下限时,单片机的P2.4端口就会输出低电平信号“0”,PNP晶体管导通,蜂鸣器和LED获得+5V电压从而发出报警信号。当P2.4口输出高电平信号“1”时,三极管截止,LED灯停止闪烁蜂鸣器停止发声。报警流程图如图4.4所示: 结束N显示值超出设定的报警值?Y 发出报警设定信号报警值图4.4 报警子程序流程图4.4系统软件程序设计 图4.5 系统主程序执行流程图主程序执行流程如图4.5所示,主函数通过调用初始化子程序对各DS18B2O和LCD1602进行初始化,然后反复调用DS18B20的写命令子程序和读温度数据子程序,最后调用LCD的显示子程序,将数据送到LCD1602上显示。若温度值超出设定值范围,则调用报警程序,LED灯闪烁蜂鸣器发出声响报警信号。4.5本章小结本章主要讨论了系统各模块的软件设计和执行流程,包括LCD1602显示流程,DS18B20测温流程以及声响及灯光闪烁报警的流程。最后对系统总程序的设计流程做了简要说明。具体的程序编写和调试请见附录3。第5章 通过Matlab实现温度场数据可视化 基于DS18B20测量出来的温度只是一些数据,而要将其可视化还得借助于其他软件。Matlab是美国Mathworks公司开发的一款具有超强计算能力、仿真能力、图形处理及交互式程序设计的超级软件。利用matlab的数据处理能力可以实现温度场的可视化。5.1可视化的方法 温度场,其定义为物质系统内个点温度的集合,其数值是个标量,空间内的温度场是连续分布的,而通过测量计算所得到的数据是离散的。对于有限个数据,可根据实际需要及温度分布特点采用不同的可视化方法。最常用的一种方法是等值线法,该方法操作简单,效果也很明显。另一种主要方法是利用色彩图形来表示某区域内的温度场分布情况。5.2 数据的采集和处理为采集数据的方便,我就学校宿舍A1-1108寝室某一时刻(2015/5/23、19:28)的温度数据进行采集并模拟出温度场的分布情况。寝室的长宽高大致为:670cm,360cm,300cm。在没有空气流动的情况下温度的差别主要在不同的高度上。所以数据采集主要在同一纵切面的不同高度上进行。由于采集的数据量有限,但是通过应用插值法和适当的拟合函数可以大致再现不同层面的温度分布。在此构建一个三维模型,用第三维表示传感器DS18B20所在层面的温度。传感器的分布排列矩阵表示如下:x=100 200 300 (X:宽 Y:高 单位:cm)Y=50 150 250Z=25.8 25.9 25.8; 26.0 26.1 25.9; 26.5 26.4 26.3 (传感器所测得的实时温度,单位:)利用网格坐标矩阵的生成函数:meshgrid(xi,yi,zi,.)生成网格坐标矩阵。按一定的均差产生网格矩阵,均差数值越小得到的数据越多,模拟的结果也就越准确。这里为作图方便和数据处理简单均差取值10cm。Matlab编程及运行结果如下: xi yi=meshgrid(100:10:300,50:10:250)xi = Columns 1 through 13 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 100 110 120 130 140 150 160 170 180 190 200 210 220 Columns 14 through 21 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300 230 240 250 260 270 280 290 300yi = Columns 1 through 13 50 50 50 50 50 50 50 50 50 50 50 50 50 60 60 60 60 60 60 60 60 60 60 60 60 60 70 70 70 70 70 70 70 70 70 70 70 70 70 80 80 80 80 80 80 80 80 80 80 80 80 80 90 90 90 90 90 90 90 90 90 90 90 90 90 100 100 100 100 100 100 100 100 100 100 100 100 100 110 110 110 110 110 110 110 110 110 110 110 110 110 120 120 120 120 120 120 120 120 120 120 120 120 120 130 130 130 130 130 130 130 130 130 130 130 130 130 140 140 140 140 140

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论