基于LabVIEW的库房温湿度监测系统的设计Word版_第1页
基于LabVIEW的库房温湿度监测系统的设计Word版_第2页
基于LabVIEW的库房温湿度监测系统的设计Word版_第3页
基于LabVIEW的库房温湿度监测系统的设计Word版_第4页
基于LabVIEW的库房温湿度监测系统的设计Word版_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

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

文档简介

基于LabVIEW的库房温湿度监测系统的设计第一章引言 11.1本文研究的目的及意义 11.2传统的温湿度监测方法 21.3课题的来源及研究内容 2第二章LabVIEW软件及其监控功能的介绍 42.1虚拟仪器技术 42.1.1虚拟仪器的概念及系统结构 42.2LabVIEW软件介绍 52.2.1LabVIEW概述 52.2.2LabVIEW软件的组成 52.2.3LabVIEW软件的优势及实现监测功能的可行性 6第三章系统总体方案设计 73.1设计方案的选择 73.2设计方案 73.3设计的实现的任务与目标 7第四章系统硬件设计 94.1硬件设计原理 94.2主要器件介绍 104.2.1STC89C52介绍 104.2.2系统温度传感器DS18B20 104.2.3湿度传感器HS1101介绍 114.2.4液晶1602A介绍 124.3硬件电路设计 134.3.1温度采样原理及电路 134.3.2湿度采集原理及电路 144.3.3单片机与PC的串行通信电路 15第五章下位机设计 165.1温度传感器DS18B20程序设计 165.2液晶1602A子程序设计 165.3上、下位机数据通信子程序设计 175.4报警子程序设计 18第六章上位机程序设计 196.1设计思路 196.2温湿度平均值的计算 196.3LabVIEW中温湿度串口通讯 206.4LabVEW温湿度报警模块程序 236.5LabVIEW中温湿度滤波程序 236.6上位机整体程序 24第七章系统的仿真与调试 267.1系统调试 267.1.1温湿度报警调试 267.1.2温湿度波形调试 277.1.3温度滤波测试 297.2系统演示 30结论 32致谢 33参考文献 34第一章引言1.1本文研究的目的及意义库房是存放物品的重要地点,环境因素对库房物品影响非常大,在高温与高湿的环境下,库房容易滋生霉菌,害虫等[3],使得物品寿命减短,损坏严重。因此科学的监测调节库房温湿度,加强对库房的监测,保护库房物品是一项有重要意义的工作。我国的大部分地区一年中有很长一段时间的高温高湿气候,适合细菌生长繁殖,对库房物品的保管非常不利,库房中的物品会受到外界空气温湿度变化的影响,会使库房物品发生变质,腐化,失效等问题[3],在有些地区,夏季库外最高温度可达40度,相对湿度达80%以上,即使在密闭的条件下,库房内温度仍然达到30度以上,而在库房管理中,30度及视为高温,相对湿度达到70%即为高湿。目前,各库房普遍采取密闭、通风与吸潮相结合的手段控制和调节库房温湿度。但这种方法需要依靠大量人力资源,控制精度低、实时性差,而且操作人员的劳动强度大。即使有些用户采用半导体二极管作为温度传感器,但由于其互换性差,效果也不理想。由于温度过高或过低引起的库存品失效或由于环境湿度过高而引起的事故时有发生,甚至危及到人员的安全。所以实施对温湿度的监控十分重要,同时有利于促进企业管理建设与高新科技的结合,把企业库房监测等监控管理行业发展成为功能丰富多彩的数字家园。对库房温湿度监测系统除了应用于库房还可以应用于其他行业。例如像纺织工艺对温湿度有严格要求,纺织厂空调系统的可靠性和安全性直接影响正常生产和经济效益。目前纺织厂大部分空调系统控制方式落后、操作不方便。而且空调系统能耗大、机器受损严重、运行成本较高。因此,设计一个操作方便、功能完善、工作可靠的温湿度监测系统,对提高设备的工作效率、降低事故率有积极作用。本设计即以上述问题为出发点,设计了温度、湿度的监测系统,该系统不仅能实时的采集各抽样点的温度值与湿度值,而且能迅速处理,友好的将数据结果显示给用户。1.2传统的温湿度监测方法最早的库房温湿度监测采用人工的方式,每天读取库房的温度计和湿度计,这种方式不仅效率低,劳动时间长,而且会由于抽样的不具代表性使得监测结果失去意义。随着传感器技术和测量测试技术的发展,为了更好地了解特殊要求库房的温湿度变化规律,传统的测试装置已经不能适应高标准的需要,需要研发新的监测装置,计算机技术的发展,出现了以计算机为核心的新一代仪器—虚拟仪器。由美国NI公司推出的虚拟仪器开发平台软件LabVIEW是实验室虚拟仪器集成环境的简称,具有简洁图形化编程环境和强大的功能。它广泛应用于数据采集与控制、信号处理、数据显示、数据分析等领域。采用虚拟仪器技术,有以下优点:(1)突破了传统仪器在数据处理、显示、存储等方面的限制;(2)利用计算机丰富的软件资源,增加了系统灵活性;(3)通过软件技术和相应数值算法,实时、直接地对测试数据进行各种分析和处理,通过图形用户界面(GUI)技术,真正做到界面友好,人机交互。虚拟仪器利用通用的硬件平台(计算机、数据采集卡等)结合专用的硬件(如传感器、调理电路)实现数据的采集,再用相应的仪器功能软件对数据进行处理,实现传统仪器的功能,而且只要改变软件中的参数就能实现不同仪器的功能。同时界面友好,可视化软件LabVIEW工具,更是向着效率高、功能强大的方向努力。1.3课题的来源及研究内容本文利用LabVIEW软件设计并实现一个温湿度监控系统,实现温湿度的测量和显示和控制。在虚拟仪器的思想为工业界逐渐接受的今天,人们越来越认识到“软件就是仪器”的先进思想的含义。本课题的研究内容就是利用虚拟仪器软件LabVIEW实现库房温湿度监测。采用LabVIEW作为监测软件,采用数字温度传感器DS18B20、湿度传感器HS1101测量温湿度[1],利用单线检测信号将温湿度的值送到单片机进行相应的处理,然后经过串口通信,将温湿度的检测值经过RS-232送到计算机上,然后经过DAQ数据采集将数据送到LabVIEW,进行数据在LabVIEW将数据送到数据处理程序进行数据的处理,然后将数据送到报警程序与设定值进行比较,在设定值之间将在LabVIEW前面显示工作正常。如果工作不再设定值之内,将会产生报警,在前面板将会有报警信号提示,同时在下位机将会有报警信号,同时将驱动相应的电路控制风扇和加湿器工作,使库房的温湿度能够工作在我们设定的理想状态。第二章LabVIEW软件及其监控功能的介绍2.1虚拟仪器技术测量仪器发展至今,大体经历了四代发展历程[2],即模拟仪器、分立元件式仪器、数字化仪器和智能仪器。随着电子技术、计算机和网络技术的高速发展,及其在电子测量技术与仪器领域中的应用,新的测量理论、新的测量方法、新的仪器结构不断出现。其中计算机处于核心地位,计算机软件技术和测量系统更紧密地结合,导致仪器的结构、概念和设计观点等也发生突破性的变化,在这一背景下,出现了新的仪器概念-虚拟仪器。2.1.1虚拟仪器的概念及系统结构所谓虚拟仪器,就是在以计算机为核心的硬件平台上,其功能由用户设计和定义,具有虚拟面板,其测量功能由测量软件实现的一种计算机仪器系统。虚拟仪器的实质是利用计算机显示器的显示功能来模拟传统仪器的控制面板,以多种形式表达输出监测结果,利用计算机的软件功能实现信号数据的运算、分析和处理。利用I/O接口设备完成信号的采集、测量与调理,从而完成各种功能的一种计算机仪器系统。虚拟仪器与传统仪器的比较如下表2-1。表2-1传统仪器和虚拟仪器的对比传统仪器虚拟仪器功能由仪器厂商定义功能由用户自己定义与其他仪器连接有限可方便的与网络外设及多种仪器连接图形界面小,人工读取数据信息量小界面图形化,计算机直接读取数据并分析处理数据无法编辑数据可编辑、存储、打印硬件是关键部分软件是关键部分价格昂贵价格低廉系统封闭、功能固定,可扩展性差基于计算机技术开发的功能模块可构成多种仪器技术更新慢技术更新快2.2LabVIEW软件介绍LabVIEW是实验室虚拟仪器集成开发平台的简称,它是目前国际上应用最广泛的虚拟仪器开发环境之一,它是主要用于开发数据检测、数据测量采集系统、工业自动控制系统和数据分析系统等领域的专用软件开发平台。2.2.1LabVIEW概述LabVIEW的最大特色是采用编译型图形化编程语言——G语言,它与C、pascal、Basic等传统语言有着相似之处,如:相似的数据类型、数据流控制系统、程序调试工具,以及模块化的编程特点。但二者最大的区别在于:传统编程语言用文本语言编程,程序的执行依赖于文本所描述的指令;而LabVIEW使用图形语言以框图的形式编写程序。用LabVIEW编程无需具备太多编程经验,因为LabVIEW使用的都是测试工程师熟悉的术语和图标,如各种按钮、开关、波形图等,界面非常直观形象。LabVIEW语言具有丰富的扩展函数库,集成了大量的生成图形界面的模板,如各种表头、旋钮、开关、LED指示灯、图表等,界面直观、形象,相对于传统的编程方式而言,它简单易学而且执行效率高,与传统的编程方式比,使用LabVIEW设计的虚拟仪器,可以提高效率4-10倍。LabVIEW的核心是VI。VI有一个人机对话的用户界面—前面板和类似于源代码功能的方框图。前面板接收来自方框图的指令。在VI的前面板中,空间模拟了仪器的输入装置并把数据提供给VI的框图;而指示器则模拟了仪器的输出装置并显示由方框图获得或产生的数据。用LabVIEW编制出的图形化VI是分层次和模块化的。我们可以将之用于顶层程序,也可用作其他程序或子程序的子程序。一个VI用在其他VI中,称为subVI,subVI在调用它的程序中同样是以一个图标的形式出现的。2.2.2LabVIEW软件的组成一个完整的LabVIEW开发环境包括基本模块和扩展模块两部分,引擎部分是整个图形化开发环境的核心,包括编辑模块、运行模块和调试模块。LabVIEW环境下开发的程序称为虚拟仪器VI[1]。程序VI由一个前面板,程序流程图和一个接口板组成。接口板用于上层的VI调用该VI。2.2.3LabVIEW软件的优势及实现监测功能的可行性1、简单的方案使得可以很方便的使用LabVIEW,因为它使用可视化技术建立人机界面,提供了大量仪器面板中的控制对象。2、LabVIEW提供了先进的网络技术。3、先进的ActiveX技术融合了简单的拖放编程方法,仪器控制和数据采集免得非常简单。4、灵活的仪器将LabVIEW与一般的数据采集加以组合,可以设计出更灵活的虚拟仪器。5、LabVIEW拥有大量NI公司或第三方公司提供的支持软件。第三章系统总体方案设计3.1设计方案的选择库房温湿度控制在国内外设计比较多,很多都是直接采用单片机进行设计的,所有的数据处理都是有单片机来处理,这样就会增加单片机的负担。本次的设计是基于LabVIEW来进行设计的,将检测的数据送到上位机LabVIEW进行数据处理,这样就会减少单片机的处理数据的负担,而且在LabVIEW的图形界面可以看的很清楚,数据的变化过程,比较方便。而且设计起来比较方便,因为LabVIEW都是图形化的程序,设计程序的时候比较直观,而且易懂,设计起来比较容易,在它的前面板上就直接可以看到数据的变化过程。3.2设计方案该系统整体上分为三大部分:一部分为基本的硬件电路;二是检测部分电路;三是上位机现场数据处理和管理.在库房的关键部分设置温度传感器(DSl8B20)湿度传感器(HSll01),利用Dsllas公司的单总线协议和单线检测信号将温湿度的值送到单片机进行相应的处理,然后经过串口通信,将温湿度的检测值经过RS-232送到计算机上,然后经过DAQ数据采集将数据送到LabVIEW,LabVIEW将数据送到数据处理程序进行数据的处理,然后将数据送到报警程序与设定值进行比较,在设定值之间将在LabVIEW前面显示工作正常。如果工作不再设定值之内,将会产生报警,在前面板将会有报警信号提示,同时在下位机将会有报警信号,同时将驱动相应的电路控制风扇和加热器工作,使库房的温湿度能够工作在我们设定的理想状态。3.3设计的实现的任务与目标设计的任务主要实现库房温湿度的测量与控制。数据采集模块利用单片机实现温度实时采集、湿度实时采集、电路状态信号采集及数据预处理;数据传输模块将检测信号传输到计算机;计算机I/O接口为计算机与外部数据连接的硬件支持。当数据进入计算机后,在LabVIEW平台上,经数据处理子程序、温湿度控制子程序输出系统控制信号,并通过计算机I/O接口输出;输出信号驱动相应的驱动电路,分别控制加热电路及风扇电路,实现对库房温、湿度的实时监测及控制;程序实时监测系统状态;同时在前面板实时显示输出温度、湿度控制曲线。设计的目标是上位机的监测程序需利用LabVIEW设计,包括温湿度测量数据、曲线实时显示,报警指示,上下限设定、数据分析判断和下位机通信,同时,系统提供历史数据回读、历史数据打印功能,以便用户查看系统的历史状态;单片机部分需要编制测量、数据转换、滤波、标度变换、通信、显示、报警、控制等程序。第四章系统硬件设计4.1硬件设计原理下位机的硬件设计主要是依据单片机[8],所以要进行数据的采集,温度的采集用DS18B20进行温度数据的采集,湿度的数据采集用HS1101元件,将采集的数据送到单片机STC89C52进行数据的处理,处理后经数据送到1602A显示出当前的温湿度,和温湿度的报警的上下限,并将温湿度的数据送到上位机LabVIEW进行数据的处理,当超过温湿度的上限或者低于温湿度的下限时,上位机发出信号控制下位机的风扇或者加热器进行工作,保持库房的温湿度达到我们需要的范围。工作框图如图4-1所示。图4-1工作框图4.2主要器件介绍4.2.1STC89C52介绍STC89C52是美国ATMEL公司生产的低电压[9],高性能CMOS的8位单片机,片内含有8Kbytes的可反复檫写的只读程序存储器和256bytes的随机存取数据存储器,器件采用ATMEL公司的高密度,非意识性存储技术生产,与标准MCS-51指令系统及8052系列残品引脚兼容,片内置通用的8位中央处理器和Flash存储单元,功能强大STC89C52单片机适用于许多较为复杂控制应用场合。其主要的性能参数:(1)与MCS-51产品指令和引脚完全兼容。(2)8K字节可重复擦写。4.2.2系统温度传感器DS18B20温度传感器很多,可分为模拟温度传感器和数字温度传感器[8]。DS18B20是世界上第一片支持单总线接口的温度传感器[9],单总线独特而其经济的特点,使用户可以轻松的组建传感器网络,为测量系统的构建引入全新概念。新一代的DS18B20体积更小,更经济、更灵活,而其由于芯片输出的是数字信号,省去外部A/D转换,简化硬件电路。其特性如下:(1)独特的单线接口方式,只需一个接口引脚即可通信;(2)每一个DS18B20都有一个唯一的64位ROM序列码;(3)在使用中不需要任何外围元件;(4)可使用数据线供电,电压范围:+3.0V~+5.5V;(5)测温范围:—55℃~+125℃,在—10℃~+85℃范围内精度为±0.5,分辨率0.0625℃。等效的华氏温度范围—67℉(6)通过编程可实现9~12位的数字读书方式。(7)告警搜索命令可识别和定位那些超过报警限制的DS18B20;(8)支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现多点测温。电源接反不会烧毁,但不能工作。其引脚说明如下表4-1所示。表4-1引脚说明引脚8脚SOIC引脚PR35符号说明51GND地42DQ单线运用的数据输入/输出引脚:漏极开路见“寄生电源”一节。33Vdd可选Vdd引脚。有关连接的细节见“寄生电源”一节。4.2.3湿度传感器HS1101介绍[5]湿度传感器HS1101/HS1100基于独特工艺设计的电容元件,这些相对湿度传感器可以大批量生产。可以应用于办公自动化,车厢内空气质量控制,家电,工业控制系统等。在需要湿度补偿的场合他也可以得到很大的应用。其特点:全互换性在标准环境下不需校正长时间饱和下快速脱湿可以自动化焊接,包括波峰焊或水浸高可靠性与长时间稳定性专利的固态聚合物结构可用于线性电压或频率输出回炉最大参数值(Ta=25℃工作温度Ta-40~100储存温度Tstg-40~125℃其系统参数特性如下:测量范围是3~99%RH,电源电压DC5V(max7V),等效电容175~185PF(54.4%RH,10KHz),恢复时间10s,湿度迟滞±1.5%RH,稳定期0.5RH/yr,响应时间10s(33%—76%HR,流速1m/Sec),线性度±1%RH。HS1101为电容传感器,在电路构成中等效于一个电容器件,其电容量随着所测空气湿度的增大而增大。将电容的变化量准确地转变为计算机易于接受的信号,常用两种方法:一是将该湿敏电容置于运放与阻容组成的桥式振荡电路中,所产生的正弦波电压信号经整流、直流放大、再A/D转换为数字信号;另一种是将该湿敏电容置于555振荡电路中,将电容值的变化转为与之呈反比的电压频率信号。湿度与频率的典型值如表4-2所示。表4-2湿度与频率的典型值湿度(%RH)频率(Hz)湿度(%RH)频率(Hz)0735160660010722470646820710080633030697690618640685310060335067284.2.4液晶1602A介绍[11]1.主要参数介绍如下表4-3所示。表4-3主要参数显示容量16X2字符芯片工作电压4.5-5.5V工作电流2.0mA(5.0V)模块最佳工作电压5.0V字符尺寸2.95X4.35(WXH)mm2.接口信号说明如下表4-4所示。表4-4接口信号编号符号引脚说明编号符号引脚说明1VSS电源地9D2DataI/O2VDD电源正极10D3DataI/O3VL液晶显示偏压信号11D4DataI/O4RS数据/命令选择端(H/L)12D5DataI/O5R/W读/写选择端(H/L)13D6DataI/O6E使能信号14D7DataI/O7D0DataI/O15BLA背光源正极8D1DataI/O16BLK背光源负极3.指令说明:显示模式设置如下表4-5所示。表4-5显示设置指令码功能00111000设置16×2显示,5×7点阵,8位数据接口00000DCBD=1开显示;D=0关显示C=1显示光标;C=0不显示光标B=1光标闪烁;B=0光标不显示000001NSN=1当读或写一个字符后地址指针加一,且光标加一N=0当读或写一个字符后地址指针减一,且光标减一S=1当写一个字符,整屏显示左移(N=1)或右移(N=0),以得到光标不移动而屏幕移动的效果。S=0当写一个字符,整屏显示不移动数据控制区内部设有一个数据地址指针,用户可以通过它们来访问内部的全部的80字节RAM其数据指针的设置如下表4-6所示。表4-6指令设置指令码功能80H+地址码(0-27H,40H-67H)设置数据地址指针01H显示清屏:1.数据指针清零2所有显示清零02H显示回车:1.数据指针清零4.3硬件电路设计4.3.1温度采样原理及电路利用DS18B20温度传感器进行温度采样.[11]它用单总线协议和单片机实现通讯.单总线协议是采用单根信号线,既可传输时钟,又能传数据,而且数据传输是双向的,因而这种单总线技术具有线路简单.温度采样电路如下图4-2所示。

图4-2温度采集电路4.3.2湿度采集原理及电路原理分析:电源电压工作范围是UCC=+3.5~+12V。利用一片CMOS定时器TLC555。配上HSll01和电阻R2、R4构成单稳态电路,将相对湿度值变化转换成频率信号输出。输出频率范围是7351-6033Hz,所对应的相对湿度为0~100%。当RH=55%时,f=6660Hz。输出的频率信号可送至数字频率计或检测系统,经整理后送显示。R3为输出端的限流电阻,起保护作用。通电后,电源沿着Uc→R4→R2→C对HS1101充电。经过t1时间后湿敏电容的压降Uc就被充电到TLC55的高触发电平(Uh=0.67Ucc),使内部比较器翻转,OUT的输出变成低电平。然后C开始放电,放电回路为C→R2→D→内部放电管脚。经过t2时间后,Uc降到低触发电平(Ul=0.33Ucc),内部比较器再次翻转,使OUT端的输出变成高电平。这样周而复始的进行充、放电,形成了振荡。湿度采集电路如下图4-3所示。图4-3湿度采集电路4.3.3单片机与PC的串行通信电路串行通讯是数据通讯的主要方式之一。由于其联线少、成本低、有多种可供选择的传送速率,并遵循统一的标准而得到广泛的应用。目前利用单片机开发的各种监控设备大多都需要与PC机进行数据通讯。PC机中一般都有现成的1~2个标准RS-232C串行口,利用这些串行口,PC机可以与单片机进行数据通讯,通讯距离可达15m左右。STC89S52单片机内提供了一个全双工的串行口,P3.0管脚是串行数据接收端RXD,P3.1管脚是串行数据发送端TXD。但是,由于单片机的串行口不是标准的RS232C接口,它接收发送的电平是TTL电平。TTL电平的逻辑“1”和逻辑“0”分别是2.4V和0.4V,而串行通讯接口RS-232C采用负逻辑,即逻辑“1”为-5~-15V,逻辑“MAX232AESE是MAXIM公司生产的低功耗、单电源(+5V)的双RS-232C发送器与接收器[12]。MAX232芯片内部有一个电源电压变换器,可以把输入的+5V电源变换成RS-232C输出电平所需±10V电压,所以采用此芯片接口的串行通信系统只要单一的+5V电源。外围需接4个0.1μF/25V电解电容,供内部电压变换之需。MAX232AESE芯片引脚T1IN、T2IN、R1OUT、R2OUT接TTL电平,引脚T1OUT、T2OUT,R1IN、R2IN为EIA电平。MAX232的接口电路如图4-4所示。图4-4MAX232接口电路第五章下位机设计5.1温度传感器DS18B20程序设计DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。其设计流程图如图5-1所示:图5-1DS18B20工作时序流程图5.2液晶1602A子程序设计1602A的设计主要是首先对其自身初始化设置,主要包括显示模式设置、显示开/关及光标设置、读写数据设置,设置完以后,1602A可以正常的工作,然后将给出要显示数据的指定的地址,给出地址以后,在送要显示的数据,1602A的读写时序也要严格的遵守,否则1602A不会工作正常。有以上的分析可得程序读写时序流程图如图5-2所示:图5-2读写时序流程图5.3上、下位机数据通信子程序设计上位机和下位机的通讯主要通过RS-232,来进行通讯的,在本次的设计里,由于要单片机向上位机发送数据,因此要设计发送数据子程序,因此要设置串口的工作方式,这次设计采用了串口工作方式1,由于串口工作方式1的波特率是由定时器控制的,因此还要有定时器程序,产生需要的波特率来控制串口的功能工作方式。设计的程序如下所示:voidsend_init(){TMOD=0x20;//定时器1工作方式为方式1 TH1=0xfd;//置入T1的计数初值 TL1=0xfd; TR1=1;//定时器开始计数 REN=1;//串口中断打开 SM0=0;//设串口工作方式为方式1 SM1=1; EA=1;//开总中断 ES=1;//开串口中断}5.4报警子程序设计当温湿度不在设定值区间的时候就要发出报警信号,这样可以起到提示的作用,首先要给上下限的值,这样就可以进行比较,然后经过判断语句判断是否在设定的区间,当不在设定的区间是就发出报警信号,一直进行循环判断,设计流程图如下图5-3所示。图5-3报警子程序流程图第六章上位机程序设计6.1设计思路上位机的程序设计主要接受来自下位机的温湿度的数据,然后将温湿度数据送到数据处理子程序进行数据的处理,然后把处理后的数据送到报警子程序,与设定的上下限进行比较,如果工作早设定的区间就显示正常工作,如果不在设定的区间就提示工作不正常,由于要有历史数据的存储,所以应当设计数据存储子程序,这次设计的LabVIEW存储子程序,当有数据送到上位机时,会自动生成报表形式的历史数据,以便历史回读。其设计流程图如下图6-1所示。图6-1上位机LabVIEW程序设计流程图6.2温湿度平均值的计算在库房中,经常需要知道所测温度的平均值及实时温度与平均值之间的偏差以便更好的控制温度,从而使它能够更好的影响产品的数量与质量。而在统计学中,取平均是最常用的改进期望值的标准技术。有两种取平均值的方法:1.RMS平均或称“功率平均”,即均方根值平均[6]。它是将所有采集到的数据值平方之后相加,然后除以数据个数,再取该平均值的平方根,其数学表达式如式(6-1)所示:(6-1)式中:N为数据个数,xi为各次数据值。2.叠加平均,它可用来改善叠加的信噪比。它对一点数据连续采用多次,然后计算其平均值,以平均值作为该点的采样结果。对温度数据的处理用算术平均值的方法,将采集到的数据用软件的方法来实现。其程序框图如图6-2所示。图6-2平均值VI6.3LabVIEW中温湿度串口通讯1.RS-232简介串行通信端口(SerialCommunicationPort)在系统控制的范畴中一直占有极重要的位置,不仅没有因为时代的进步而淘汰,反而是在规格上越来越向其极限挑战。现在,计算机上的串行通信端口(RS-232)是标准配置,用途上则以连接调制解调器(Modem)作通信传输,尤其是因特网成为潮流后,接上因特网取得数据是相当重要的一个收集方法,最为常见。当然,它的重要性还不仅如此,在本文中还会对通信端口的应用作一个深入的介绍。RS-232通信端口是每部计算机上的必要配置,通常含有COM1与COM2两个信道,一般的计算机将COM1以9针的接头接出,而将COM2以25针的接头接出。新一代的计算机均以9针的接头接出所有的RS-232通信端口。在计算机上的RS-232均是公头,即使是25针也是公头,千万不要与其他的设备弄混淆了(打印机连接端口也是25针,不过它是母头,请仔细分辨)。通常与计算机连接的设备,一般都是RS-232接口,不仅使用简单,而且价格上也便宜很多:在市面上可见的数码相机、调制解调器等大都以RS-232作为与计算机沟通的接口。仔细检查计算机的后面接线不部分,大大小小的接头一堆,有两个9针的接头(以较新的计算机来说,旧型计算机可能有25针的型式),这就是串行通信端口。2.串行通讯终端与计算机之间或者计算机与计算机之间进行交换信息时,除了采用并行通讯方式之外,还经常采用串行通讯方式。并行通讯是指数据的各位同时进行传送,其优点是传送数据速度快,缺点是有多少位数据就需要多少根传输线,这在数据位数较多,传送距离较远时就不宜采用。串行通讯是指数据一位一位地按顺序传送,其突出优点是只需一根传输线,特别适应于远距离传输,缺点是传送速度较慢。在微机测量,控制系统中,目前串行数据的传输大多采用异步通讯的方式。(1)同步通讯和异步通讯串行通讯分为同步传送和异步传送两种方式:同步传送方式要求通信双方以相同的速率进行,而且要准确地协调。它通过共享一个单个时钟或定时脉冲源以保证发送方和接受方准确同步。其特点是允许连续发送一组字符序列(而非单个字符),每个字符数据位数相同,没有起始位和停止位,效率高。异步传送方式不要求通信双方同步,发送方和接收方可以有各自的时钟源。为了能够实现通信,双方必须都遵循异步通信协议。在异步通信中,通信双方必须规定两件事:一是字符格式,即规定字符各部分所占的位数,是否采用奇偶校验,以及校验的方式;二是采用的波特率,以及时钟率与波特率之间的比例关系。由此可见,异步通信方式的传输效率比同步通信方式低,但它对通信双方的同步要求大大降低,因而成本也比同步通信方式低。(2)DTE和DCE在串行通讯中,用于发送和接收数据的设备称为数据终端设备(DataTerminalEquipment简写为DTE)。DTE既可以是一台计算机,也可以是一台只接收数据的打印机。用于连接DTE与数据通信网络的设备称为数据通信设备(DataCommunicationsEquipment简写为DCE),或称为数据电路终接设备。DCE既可以是一个调制解调器,也可以是简单的线路驱动器。(3)波特率在串行通讯中还有一个重要的指标——波特率(又称调制速率)。波特率定义为每秒钟传送二进制数码的位数,以位/秒(bit/s)为单位,亦称“波特”。在异步通讯中,波特率为每秒传送的字符数和每个字符位数的乘积,例如每秒传送的速率为120字符/秒,而每个字符又包含10位(1位起始位,7位数据位,1位奇偶校验位,1位停止位),则波特率为:120字符/秒×10位/字符=1200位/秒=1200波特LabVIEW中的串行通讯,它位于Allfunction→InstrumentI/O→Serial。3.LabVIEW实现数据收发的程序[15]在LabVIEW中,实现数据的收发,其程序前面板与后面板如图6-3和图6-4所示。图6-3程序后面板图6-4程序前面板6.4LabVEW温湿度报警模块程序在LabVIEW中,温湿度当高于或者低于上限或者下限的时候都要发出警报,下位机的电路就要产生进行相应的控制。其报警模块程序后面板如图6-5所示。图6-5程序前面板图6.5LabVIEW中温湿度滤波程序由于有下位机传输到上位机的数据时,避免不了要产生杂波信号,这样会干扰上位机对温湿度的判断这样,就会就会造成温湿度的报警不是很准确,对库房的温度控制不准确,造成不必要的损失,所以要数据传输到上位机的时候要将这些杂波信号经过滤波电路过滤掉,这样就会可以对温湿度进行实时的控制和检测。在LabVIEW中,实现温湿度数据的滤波电路,其温湿度滤波程序[4]前面板如图6-6所示。图6-6程序前面板图6.6上位机整体程序上位机的整体程序如图6-7和图6-8所示。图6-7上位机主程序前面板图6-8上位机主程序后面板第七章系统的仿真与调试7.1系统调试整个温度测控系统的主界面只有一个屏,它充分利用了计算机在运算、显示、存储、回放、调用等方面的功能构成了一台从外观到功能都完全与传统硬件仪器相同,同时又充分结合PC机优点的全新仪器系统。其中仪器的按键功能和面板、控件都是由软件形成的,因此整个温度测控系统的监控界面就是一个典型的虚拟仪器。它可以实现对温度数据的实时采集与显示,温度报警系统的建立、温度概率分布的显示、温度平均值的计算等。因为该测控系统的数据需要进行保存,而且事后还需要进行分析以确定温度数据对整个系统的影响,所以需要用数据库的形式来存储温度数据。由于条件与时间限制,本次设计所以调试都是在模拟的条件下进行的,通过产生随机温度可以很直观的看到整个温度数据分布的情况。使用这一个界面就能很好的实现整个测控系统的功能。可以看出LabVIEW强大的数据处理功能。7.1.1温湿度报警调试利用随机数产生一个1-50随机温度和随机湿度,测试温湿度报警的程序,测试结果见下图。图7-1温度报警后面板图7-2温湿度报警前面板图7-3温湿度报警前面板根据测试,系统可以正确的判断温湿度,并实施报警。此部分程序符合设计要求。7.1.2温湿度波形调试依然采用随机数的原理产生一个20-35的温度,进行模拟测试。测试结果见下图。图7-4随机温度的产生程序图7-5随机温度的变化波形利用随机数产生一个40-60的湿度,进行调试图7-6随机湿度的产生程序图7-7湿度的变化波形图7-8温湿度的变化波形图7.1.3温度滤波测试温度测试也是采用产生的模拟温度进行测试。测试结果见下图。图7-9温度滤波电路程序框图图7-10温度滤波前面板7.2系统演示将上位机和下位机连接好以后,进行温湿度的检测和处理,上位机前面板显示数据如图7-11所示。图7-11上位机前面板报表生成格式如下图7-12所示。图7-12报表格式生成报表如图7-13所示。图7-13生成报表结论本次设计经过多次的修改,能够基本实现设计的功能,在这次毕业设计中,我深深感觉到了自己基本知识的不足,以及自己没有深入课题的实际调查和研究,由于时间和实际的条件限制,通过模拟测试,各项指标基本达到了设计的要求,实现了温湿度的采集与报警,温湿度的波形显示与滤波。而温湿度的数据采集比较准确,系统工作良好,各部分都已经过测试,设计基本达到预期的目标,但是由于条件有限,并没有进行现实条件下的测试,所以现实条件下的测试还有待于进一步的论证。本次设计基本可以达到所有要求,但还是存在一些缺陷,由于上下位机采用的是串口通讯方式,温度传感器DS18B20和湿度传感器HS1101采集的数据要实时的传送到上位机,让上位机的程序进行实时的处理数据,因此上位机处理的信号就不能将上位机的控制信号发送到下位机进行对风扇和加热器的控制了,否则由于只有一个串口,所以需要分时序进行数据的传输,这样温湿度的数据传输就有间隔了,就达不到实时控制的要求,为了解决这一个问题,将对风扇和加热器的控制改为对用单片机进行控制,这样就不会出现冲突,控制的也会比较准确。同时风扇和加热器对于温度与湿度的调节作用不强,所以将改用空调与加湿器进行调节温湿度。参考文献:[1]林静,林振宇.LabVIEW虚拟仪器程序设计从入门到精通[M].北京:人民邮电出版社.2010[2]张强.数字温度传感器DS18B20在化工领域的应用[J].仪器仪表智能化.2004[3]强锋.库房防潮与除湿[M].北京:高等教育出版社.1991[4]谭浩强.C程序设计(第三版)[M].北京:清华大学出版社.2005[5]李邓化,彭邓化.智能检测技术及仪表[M].北京:科学出版社.2008[6]杨乐平,李海涛,肖相生.LABVIEW程序设计与应用[M].北京:电子工业出版社.2004[7]阎石.数字电子技术(第五版)[M]北京:高等教育出版社.2005[8]窦振中.单片机外围部件实用手册输出通道器件分册[M].北京:北京航空航天大学出版社.2003[9]武庆生,仇梅.单片机原理与应用[M].四川:电子科技大学出版社.2010[10]胡汉才.单片机及接口技术[M].清华大学出版社.1996[11]杨振江,杜铁军,李群.流行单片机实用子程序及应用实例[M].西安:西安电子科技大学出版社.2004[12]刘国荣,梁景凯.计算机控制技术与应用[M].北京:机械工业出版社.2008[13]张重雄.虚拟仪器技术分析与设计[M].北京:电子工业出版社.2007[14]詹惠琴.虚拟仪器设计[M].北京:高等教育出版社.2007[15]张凯.LabVIEW虚拟仪器工程开发与设计[M].北京:国防工业出版社.2004[16]杨乐平.LabVIEW程序设计与应用[M].北京:电子工业出版社.2001[17]刘其和,李云明.虚拟仪器程序设计与应用[M].北京:化学工业出版社.2011[18]杨运强,测试技术与虚拟仪器[M].北京:机械工业出版社.2010[19]赵国忠,陶宁.虚拟仪器设计实训入门[M].北京:国防工业出版社.2008[20]赵会兵.虚拟仪器技术规范与系统集成[M].北京:清华大学出版社.2003附录A下位机主程序#include<reg52.h>#defineucharunsignedchar#defineuintunsignedintsbitrs=P0^7;//数据/命令选择端(H/L)sbitrw=P0^6;//读/写选择端(H/L) sbitlcden=P0^5;//定义1602端口sbitDQ=P3^6;//定义温度传感器DS18B20通信端口sbitBZ=P3^7;sbitkey1=P3^4;sbitkey2=P3^5;sbitkey3=P1^0;sbitkey4=P1^1;sbitkey5=P1^2;sbitkey6=P1^3;sbita=P1^4;sbitb=P1^5;sbitc=P1^6;sbitd=P1^7;uintt,temp,flag;uintnum1=200,num2=400;ucharcodetable[]="Tempis";ucharcodetable1[]="Dampis";voidsend_init(){TMOD=0x20;//定时器1工作方式为方式1 TH1=0xfd;//置入T1的计数初值 TL1=0xfd; TR1=1;//定时器开始计数 REN=1;//串口中断打开 SM0=0;//设串口工作方式为方式1 SM1=1; EA=1;//开总中断 ES=1;//开串口中断}voiddelay(uintz){uintx,y; for(x=z;x>0;x--) for(y=125;y>0;y--);}voiddelay1(uinti){while(i--);}voidwrite_com(ucharcom){rs=0; lcden=0; P2=com; delay(5); lcden=1; delay(5); lcden=0;}voidwrite_date(uchardate){rs=1; lcden=0; P2=date; delay(5); lcden=1; delay(5); lcden=0;}voidinit_1602(){ucharnum; lcden=0; rw=0; write_com(0x38); write_com(0x0c); write_com(0x06); write_com(0x01); write_com(0x80); for(num=0;num<8;num++) {write_date(table[num]); delay(5); } write_com(0x80+0x40); for(num=0;num<8;num++) {write_date(table1[num]); delay(5); }}voidD_init(){ucharx=0;DQ=1; delay1(8);DQ=0; delay1(80);DQ=1; delay1(14); x=DQ; delay1(20);}voidD_w(uchars){uchari=0; for(i=8;i>0;i--) {DQ=0; DQ=s&0x01; delay1(5); DQ=1; s=s>>1; }}uintD_r(void){

温馨提示

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

评论

0/150

提交评论