基于LabVIEW和单片机的虚拟温度检测系统设计(共47页).doc
《基于LabVIEW和单片机的虚拟温度检测系统设计(共47页).doc》由会员分享,可在线阅读,更多相关《基于LabVIEW和单片机的虚拟温度检测系统设计(共47页).doc(48页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上 1 引 言1.1 设计背景随着计算机技术尤其是单片微型机技术的发展,人们已越来越多地采用单片机来对一些工业控制系统中如温度、流量和压力等参数进行检测和控制。PC机具有强大的监控和管理功能,而单片机则具有快速及灵活的控制特点,通过PC机的RS-232串行接口与外部设备进行通信,是许多测控系统中常用的一种通信解决方案。LabVIEW是一个划时代的图形化编程系统,应用于数据采集与控制、信号分析等方面,它为不熟悉文本语言编程的专业科技工作者在测控领域建立计算机仪器系统虚拟仪器,提供了一个便捷、轻松的图形化设计环境。由于其灵活、简单易用、开发效率高等特点,正逐渐成为科技工作者
2、进行仪器应用与开发的得力工具。数据采集是开发过程中一个重要的环节,采用以8位单片机STC89C51作为前端数据采集,通过串口进行与LabVIEW的数据通讯,就可实现低成本、灵活方便、接口简单的数据采集系统1。这对于许多信号频率不是太高的场合,此方案无疑非常便利。本文所介绍的就是这样一种利用LabVIEW 对STC89C51的数据进行分析处理,并通过串口实现二者之间的数据交换、经济实用的数据采集。1.1.1 温度的研究背景 传统靠人工控制的温度、湿度、液位等信号的测压力控系统,外围电路比较复杂,测量精度较低,分辨力不高,需进行温度校准(非线性校准、温度补偿、传感器标定等);且它们的体积较大、使用
3、不够方便,更重要的是参数的设定需要有其它仪表的参与,外界设备多,成本高,因而越来越适应不了社会的要求。在对多类型、多通道信号同时进行检测和控制中,传统的测控系统能力有限。如何将计算机与各种设施、设备结合,简化人工操作并实现自动控制,满足社会的需求,成为一个很迫切的问题。温度检测是现代检测技术的重要组成部分,在保证产品质量、节约能源和安全生产等方面起着关键的作用。由单片集成电路构成的温度传感器的种类越来越多,测量的精度越来越高,响应时间越来越短,因其使用方便、无需变换电路等特点已经得到了广泛的应用。随着社会的发展、科技的进步以及人们生活水平的逐步提高,各种方便于生产的自动控制系统开始进入了人们的
4、生活,以单片机为核心的温度采集系统就是其中之一。同时也标志了自动控制领域成为了数字化时代的一员。它实用性强,功能齐全,技术先进,使人们相信这是科技进步的成果。温度是工业控制中主要的被控参数之一,特别是在冶金、化工、建材、食品、机械、石油等工业中,具有举足重轻的作用2。随着电子技术和微型计算机的迅速发展,微机测量和控制技术得到了迅速的发展和广泛的应用。单片机具有处理能强、运行速度快、功耗低等优点,应用在温度测量与控制方面,控制简单方便,测量范围广,精度较高。1.1.2 国内外发展现状 虚拟仪器技术是仪器技术和计算机技术深层次相结合的产物。从20世纪80年代,虚拟仪器逐渐为工业界和学术界所认可。经
5、过了近20年的发展,它已经成为21世纪测试技术和仪器技术发展的主要发现。所谓虚拟仪器(Virtuallnstrument,简称),就是用户在通用计算机平台上,根据需求定义和设计仪器的测试功能,使得使用者在操作这台计算机时,就像是在操作一台他自己设计的测试仪器一样。虚拟仪器概念的出现,打破了传统仪器由厂家定义,用户无法改变的工作模式,使得用户可以根据自己的需求,设计自己的仪器系统。在测试系统和仪器设计中尽量用软件代替硬件,充分利用计算机技术宋实现和扩展传统测试系统与仪器的功能。“软件就是仪器”是虚拟仪器概念最简单,也是最本质的表述3。VI技术的发展和应用源于1986年美国NI公司设计的LABVI
6、EW。这是一种基于图像的开发、调试和程序的集成开发环境,实现了VI的概念。它的出现,使用户可以自己定义仪器,灵活地设计仪器系统,满足多样化的实际需求。随着虚拟仪器技术软件开发平台及硬件的发展,基于虚拟仪器的测试系统开发周期缩短,费用降低,测试速度、准确度及可复用性提高,且更便于维护和扩展。目前国内外这种软件主要有美国DSP公司的DADISP软件,和以实验后数据处理分析和表示见长的美国NI公司的系列虚拟仪器开发平台。美国UATECH公司的DASLab软件包和惠普公司的VEE软件平台,它们都是可以搭建虚拟测试系统的软件平台,以图形化编程和界面灵活见长。华中理工大学的VI98虚拟仪器系统和哈尔滨工业
7、大学的仪器王以虚拟的单个仪器或仪器库见长。其中,美国NI公司的LabVIEW软件功能最为完善,LabVIEW软件以简单、直观的图形化编程方式、强大的图形显示和数据处理能力见长,运行速度快、开发周期短、界面灵活是其又一大优势,所以基于LabVIEW的虚拟仪器应用相当广泛。虚拟仪器作为新兴的仪器仪表,用户可以定义其结果和功能,构建灵活,转变容易,因此它在各个领域都得到广泛的应用。国内单位和院校正加紧步伐研究和开发自己的虚拟仪器系统。中国国防科技大学进行了虚拟数字示波器的设计研究,其结果与HP公司的双通道台式数字存储示波器HP54603B相比,增加了频域分析,测试结果和波形直接打印输出等功能。东方振
8、动和噪声技术研究所研制成了INV303/306智能信号自动采集处理分析仪系统,并推出了DASP软件;重庆大学开发了虚拟实时噪声倍频程分析仪,实现了对噪声总声压级、各种记权声压级及相应倍频程的实时测量和分析;清华大学利用虚拟仪器技术构建汽车发动机检测系统,用于汽车发动机出厂前的自动检测。虚拟仪器已经在超大规模集成电路测试,现代家用电器测试以及军事、航天、工厂测试等领域得到应用4。1.2 温度检测系统设计研究的意义温度是生产过程和科学实验中普遍而且重要的物理参数,随着社会的发展,科技的进步,以及测温仪器在各个领域的应用,智能化已是现代温度控制系统发展的主流方向。特别是近年来,温度控制系统已应用到人
9、们生活的各个方面,但温度控制一直是一个未开发的领域,却又是与人们息息相关的一个实际问题。针对这种实际情况,设计一个温度检测系统,具有广泛的应用前景与实际意义。温度是一个重要的物理量,它反映了物体冷热的程度,与自然界中的各种物理和化学过程相联系。在工、农业生产和日常生活中,各个环节都与温度紧密相联,温度的准确监测及控制占据着极其重要地位。比如,发电厂锅炉的温度必须控制在一定的范围之内;许多化学反应的工艺过程必须在适当的温度下才能正常进行等。没有合适的温度环境,许多电子设备就不能正常工作,粮仓的储粮就会变质霉烂,酒类的品质就没有保障。可见,温度的测量和控制是非常重要的5。1.3 温度检测系统的设计
10、方案本论文大致包括两部分,labview部分(上机部分)和单片机部分(下机部分)。上机部分包括labview人机交换页面和温度采集,显示和报警等方面,主要是将采集到得温度显示出来,并与设置的温度上下限相比较,进而启动警报。下机部分主要完成温度的采集。需要通过单片机驱动温度传感器,采集当前温度,并通过串口通信将温度传给labview温度采集平台。2 温度检测系统设计思路2.1 温度检测系统工作原理基于LabVIEW和DS1820的温度测试系统可分为上位机和下位机两部分。上位机采用LabVIEW编程,PC通信自带串行口,和单片机进行串口通信;下位机选用51系列单片机,C语言编程,单片机外围电路将采
11、集到的温度信息传给单片机,单片机再将其传导上位机。上位机部分是利用LabVIEW开发环境设计PC机上位机的监控界面,上位机通过串行口与下位机的单片机通信,从而实现对过程参数的测量和采集。该温度检测系统设计简单,简化了系统与硬件结构,并且易于修改,具有很好的可扩展性6。系统组成框图如图2.1。 图2.1 系统组成框图上位机主要包括串口通信程序、温度预警系统、数据存储。上位机程序组成框图入图2.2所示。图2.2 上位机程序组成框图下机位则是驱动DS18B20,进行数据的采集,而后将采集到的数据通过串口通信传给上机位。2.2 温度检测系统的运行步骤温度提取:从传感器出来的信号要经过单片机才能送至计算
12、机中进行数据的采集,所以在本次设计中单片机是不可或缺的一部分,它起到了连接纽带的作用。从传感器出来的信号接到单片机的输入口。利用C语言编程,使得单片机将温度传感器的温度信号转换为数字量。温度采集:将单片机输出的温度进行采集,并通过labview的图表将得到的温度实时显示在上面,从而发现规律以便以后的使用。温度处理:单片机传入到计算机里的数据就需要进行采集处理了。因为此温度系统的核心其实就是利用这一系统能够根据温度的变化给出相应的处理,比如说外部温度比设定的温度高,那么我就需要降低温度,反之,则需要升高温度,因此对得到的温度进行相应的处理是这个系统的核心部分。利用labview将采集到的温度与设
13、定值进行比较,来判断警报灯是否显示警报。温度存储:当警报灯发出警报时,利用labview的表格将超过预定值得温度记录下来,以便查看该情况是否由于意外造成,还是系统发生故障7。3 温度检测系统硬件设计方案温度检测系统使用到的硬件有单片机89C51和温度传感器(DS18B20)。3.1 单片机3.1.1 单片机概述单片机也被称作“单片微型计算机”、“微控制器”、“嵌入式微控制器”。单片机一词最初是源于“Single Chip Microcomputer”,简称SCM。随着SCM在技术上、体系结构上不断扩展其控制功能,单片机已不能用“单片微型计算机”来表达其内涵。国际上逐渐采用“MCU”(Micro
14、 Controller Unit)来代替,形成了单片机界公认的、最终统一的名词。为了与国际接轨,以后应将中文“单片机”一词和“MCU”唯一对应解释。在国内因为“单片机”一词已约定俗成,故而可继续沿用8。3.1.2 STC89C51单片机简介STC89C51是宏晶科技公司生产的低电压,高性能的CMOS8位单片机片内4Kbytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机存储器(RAM),器件采用ATMEL公司的高密度、非易失存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大。AT89C51单片机可为你提供许多高性价
15、的应用场合,可灵活的应用于各种控制领域。图3.1 单片机AT89C51主要性能参数:与MCS-51产品指令系统的全兼容 4k字节可重擦写Flash闪速存储器1000次可擦写周期全静态操作:0Hz-24MHz三级加密程序存储器1288字节内部RAM 32个可编程I/O口线2个16位定时/计数器6个中断源可编程串行UART通道低功耗空闲和掉电模式 STC89C51提供以下标准功能:4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量中断结构,一个全双工串行通信口,片内震荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件
16、的可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,窜行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但震荡器停止工作并禁止所有部件工作直到下一个硬件复位9。3.2 单片机的串行通信MCS-51单片机内部有一个全双工的串行接收和发射缓冲器(SBUFF),这两个在物理上独立的接收发射器,即可以接收也可以发射数据,但接收缓冲器只可以读出不能写入,而发送缓冲器只能写入不能读出,它们的地址是99H。这个通信口即可以用于网络通信,亦可以实现串行异步通信,还可以构成同步移位寄存器使用。如果在串行口的输入输出引脚上加上电平转换器,就可以方便的构成标准的RS-232接口10。下
17、面我们分别介绍。3.2.1 基本概念数据通信的传输方式:常用于数据通信的传输方式有单工、半双工、全双和工方式。A 单工方式:数据仅按一个固定的方向传送。因为这种传输方式的用途有限,常用于串行口的打印数据传输与简单系统间的数据采集。B 双工方式:数据可以实现双向传送,但不能同时进行,实际的应用采用某种协议实现收发开关转换。C 全双工方式:允许双方同时进行数据双向传送,但一般全双工电路的线路和设备比较复杂。D 多工方式:以上三种传输方式都是同一线路传输一种频率信号,为了充分的利用线路资源,可通过使用多路复用器或多路集线器,采用频分、时分、或码分复用技术,即可实现在同一线路上资源共享功能,我们称之为
18、多工传输方式。串行通信的两种通信形式A. 异步通信 在这种通信方式中,接收器和发射器有各自的时钟,他们的工作是非同步的,异步通信用一帧来表示一个字符,其内容如下:一个起始位,紧接着是若干个数据位,图 是传输45H的数据格式。B. 同步通信 同步通信格式中,发送器和接收器由同一个时钟源控制,为了克服在异步传输中,每传输一帧字符都必须加上起始位和停止位,占用了传输时间,在要求传送的数据量较大的C. 串行数据通信的传输速率:串行数据传输率有两个概念,既美秒传送的位数bps(Bit per second)和每秒符号数-波特率(Band rate),在具有调治解调器的通信中,波特率与调治速率有关。3.2
19、.2 MCS-51的串行和控制寄存器3.2.2.1 串行口和控制寄存器MCS-51单片机串行口专用寄存器结构如下。SBUF为串行口的收发缓冲器,它是一个可寻址的专用寄存器,其中包含了接收器和发射器寄存器,可以实现全双工通信。但这两个寄存器具有同一地址(99H)。MCS-51的串行数据传输很简单,只要向缓冲器写入数据就可发送数据。而从接收缓冲器读出数据既可接收数据。此外,接收缓冲器前还加上一级输入移位寄存器,MCS-51这种结构的目的在于接收数据时避免发生重叠现象,文献称这种结构为双缓冲结构。而发送数据就不需要这样设计,因为发送时,CPU是主动的,不可能出现这种情况。A:串行通信寄存器在上一节我
20、们已经分析了SCON控制寄存器,它是一个可寻址的专用寄存器,用于串行数据通信的控制,单元地址是98H,其结构格式如下:表3.1 SCON寄存器结构表1 寄存器SCON结构SCOND7D6D5D4D3D2D1D0SM0SM1SM2RENTB8RB8TIRI位地址9FH9EH8DH9CH9BH9AH99H98H下面我们对个控制位功能介绍如下:(1)SM0、SM1:串行口工作方式控制位 SMO SM1 工作方式 功能说明 0 0 方式0 移位寄存器方式(用于I/O扩展) 0 1 方式1 8位UART,波特率可变(T1溢出率/ n) 1 0 方式2 9 位UART,波特率为fosc/64或fosc/3
21、21 1 方式3 9位UART,波特率可变(T1溢出率/ n) (2)SM2:多机通信控制位多机通信是工作方式2和方式3,SM2位主要用于方式2和方式3。接收状态,当串行口工作方式2或3,以及SM2=1时,只有当接收到第9位数据(RB8)为1时,才把接收的前8位数据送入SBUF,且置位RI发出中断申请,否则会将收到的数据放弃。当SM2=0时,只有在接收到有效停止位时才启动RI,若没接收到有效停止位,则RI清“0”。在方式0中SM2应该为“0”。REN:允许接收控制位。由软件置“1”时,允许接收;软件置“0”时,不许接收。TB8:在方式3和方式3中要发送的第9位数据,需要时用软件置位和清零。TB
22、8:在方式2和方式3中是接收到的第9位数据。在方式1时,如SM2=0,RB8接收到的停止位。在方式0中,不使用RB8。TI:发送中断标志。由硬件在方式0发送完第8位时置“1”,或在其它方式中串行发送停止位的开始时置“1”。必须由软件清“0”。RI:接收中断标志。由硬件在方式0串行发射第8位结束时置“1”B:特殊功能寄存器PCONPCON:主要是是CHMOS型单片机的电源控制而设置的专用寄存器,单元地址为87H其机构格式如下表:表3.2 特殊功能寄存器PCON PCOND7D6D5D4D3D2D1D0位符号SMODGF1GF0PDIDL在CHMOS型单片机中,除SMOD位外其它位均为虚设的,SM
23、OD是串行波特率倍增位,当SMOD=1时串行口波特率加倍,系统复位默认为SMOD=0。C:中断允许寄存器IE中断允许寄存器这里重述一下对串行口有影响的位ES。ES为串行中断允许控制位,ES=1允许串行中断,ES=0,禁止串行中断。3.3.2.2 串行口工作方式串行口具有4种工作方式,我从应用和毕业设计的角度,重点讨论方式1发送。串行口定义为方式1时传送1帧数据为10位,其中1位起始地址、8位数据位(先低位后高位)、1位停止位方式1的波特率可变,波特率=(T1的溢出率)11.12.13。表3.3 中断允许寄存器符号EAESET1EX1ETOEX0位地址AFHAEHADHACHABHAAHA8HA
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 LabVIEW 单片机 虚拟 温度 检测 系统 设计 47
限制150内