《基于虚拟仪器的温度测量系统大学本科毕业论文.doc》由会员分享,可在线阅读,更多相关《基于虚拟仪器的温度测量系统大学本科毕业论文.doc(39页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、辽东学院本科毕业论文(设计)基于虚拟仪器的温度测量系统The Design of Temperature Measurement System Based on Virtual Instrument Technology 学 院(系): 机电学院 专 业: 测控技术与仪器 学 生 姓 名: 梁宇 学 号: 0614110415 指 导 教 师: 赵娜 评 阅 教 师: 完 成 日 期: 2015年4月 辽 东 学 院Eastern Liaoning University辽东学院本科毕业论文(设计)题目摘 要 测控技术跟随时代的发展,正在变得更加数字化,自动化,智能化和网络化。随着“软件就是仪器
2、”这个概念被美国NI公司率先提出,LabVIEW也随之产生。如今社会的工业中不能缺少检测,尤其是在恶劣环境下更加需要远程检测系统。本设计分为两部分,上位机部分由PC机的LabVIEW软件对检测界面进行开发,可以对温度变化曲线进行直观的观察,还可以在需要的情况下把检测数据保存在Excel中,利用记录的温度数据对比设定值来提示温度报警;下位机部分由89E52单片机读取温度数据,利用RS-232转到USB接口,由上位机分析处理。本设计对不适于人进入的场所的测量工作问题进行了有效的解决。在V3.0版本之后LabVIEW通信模块(NI-VISA)开始支持USB串口,这使下位机可以不用接收数据采集卡的数据
3、就可以和LabVIEW进行通信,不仅减低了硬件的成本,也使LabVIEW在实用性和灵活性上得到加强。关键词:LabVIEW;温度;接口技术- I -基于虚拟仪器的温度测量系统The Design of Temperature Measurement System Based on Virtual Instrument Technology AbstractWith the continuous development of measurement and control technology, and its technology is toward automation, intellige
4、nt, digital and network development. The company put forward the NI software is instrument concept, so LabVIEW arises at the historic moment.Detection in todays society in many of the industry with or lack of, some environmental bad place is also can not get away from remote detection system.This de
5、sign is solved some heavy industry, pharmaceutical industry, etc in between some of place is not fit for human in, still need to temperature detection problem. This design has two sides, the PC is in the PC platform using the LabVIEW software development testing interface, and intuitive observe temp
6、erature curve, according to need to also can be in the form of form to Excel, save detection of historical data, according to the real-time data acquisition data and the temperature of the set value comparison, tip temperature alarm; The machine is through a single chip computer 89 E52 read temperat
7、ure data, through the RS-232 turn USB interface, move as a machine for analysis.This design is used to RS232 serial line USB for PC and a machine under the communication. The communication module LabVIEW NI-VISA in V3.0 version began after support USB serial ports, make the next place machine and ca
8、n not through LabVIEW communication data acquisition card takes a machine under the monitoring data, make the flexibility and practical better LabVIEW, save the hardware part of the cost.Key words: LabVIEW; temperature; Interface technology- IV -目 录摘 要IAbstractII引 言11 绪论11.1 课题的研究目的及意义21.2 课题的国内外研究现
9、状21.3 课题研究的主要内容32 虚拟仪器概述42.1 虚拟仪器的概念42.2 虚拟仪器的主要特点42.3 虚拟仪器的体系结构52.3.1 虚拟仪器的硬件构成52.3.2 虚拟仪器的软件构成62.4 LabVIEW的概述62.5 LabVIEW的应用现状73 总体设计93.1 系统实现的功能93.2 总体设计方案94 上位机LabVIEW的程序设计104.1 USB接口设计104.2 USB系统的结构104.2.1 USB系统概述104.2.2 USB主机114.3 NI-VISA概述124.3.1 N1-VISA简介124.3.2 配置NI-VISA的过程124.3.3 与Nl-VISA相
10、配合的LabVIEW模板中VI子节点124.3.4 USB设备读写的操作次序124.4 LabVIEW2010中串口的配置134.5 上位机LabVIEW程序的前面板和程序框图154.5.1 数据处理154.5.2 LabVIEW的前面板和各个部分的功能164.5.3 LabVIEW的程序框图和各个部分的功能175 下位机硬件和程序设计195.1 温度测控仪表的硬件组成195.2 单片机的使用195.2.1 MPC89E52AE单片机应用195.2.2 MPC89E52AE单片机的主要特点205.3 MAX232电平转换芯片215.3.1 MAX232电平转换芯片应用215.3.2 MAX23
11、2电平转换芯片的引脚介绍215.3.3 MAX232电平转换芯片的主要特点225.4 DS18B20温度传感器225.4.1 DS18B20温度传感器应用225.4.2 DS18B20的主要特性235.5 单片机程序的编写235.5.1 Keil编译器软件应用235.5.2 下位机程序设计246 整体调试266.1 LabVIEW上位机程序调试266.1.1 找出语法错误266.1.2 设置执行程序高亮266.1.3 断点与单步执行266.1.4 探针276.2 下位机调试28结 论29参 考 文 献30附录A 电路图31附录B 下位机C语言程序31致 谢37引 言理工文科所有专业本科生的毕业
12、论文(设计)都应有“引言”的内容。如果引言部分省略,该部分内容在正文中单独成章,标题改为文献综述,用足够的文字叙述。从引言开始,是正文的起始页,页码从1开始顺序编排。针对做毕业设计:说明毕业设计的方案理解,阐述设计方法和设计依据,讨论对设计重点的理解和解决思路。针对做毕业论文:说明论文的主题和选题的范围;对本论文研究主要范围内已有文献的评述;说明本论文所要解决的问题。建议与相关历史回顾、前人工作的文献评论、理论分析等相结合。注意:是否如实引用前人结果反映的是学术道德问题,应明确写出同行相近的和已取得的成果,避免抄袭之嫌。注意不要与摘要内容雷同。书写格式说明:标题“引言”选用模板中的样式所定义的
13、“引言”;或者手动设置成字体:黑体,居中,字号:小三,1.5倍行距,段后1行,段前为0行。引言正文选用模板中的样式所定义的“正文”,每段落首行缩进2字;或者手动设置成每段落首行缩进2字,宋体,小四,多倍行距 1.25,段前、段后均为0行,取消网格对齐选项。 1 绪论1.1 课题的研究目的及意义大多化学性质和物理现象都与温度密切相关,温度更是科学研究和工业生产中重要的参数之一,需要对温度进行测量的工作和场合很多,大多生产的过程都需要对温度进行控制。温度测量系统目前一般都采用通过固化软件或硬件来测量的传统仪器,这样的框架结构使得用户无法改变它已经固定的功能和结构。随着科学技术和计算机技术的快速发展
14、,传统仪器已不能满足现代测控系统的需要。虚拟仪器 (Virtual Instrumentation)由美国国家仪器公司(NI)率先提出,这打破了传统仪器固定以及用户无法更改的模式,引发了测控仪器的一场重大变革。上世纪末我国开始开发和应用虚拟仪器,现在已经渗透到很多行业中,如:航空航天、医疗、铁路等行业,被广泛应用,拥有着巨大的市场潜力。虚拟仪器不仅是现在测控技术的热点,也是未来仪器技术的发展方向。虚拟仪器是一种全新的测控仪器系统,它可以使计算机通过应用程序与功能模块硬件结合。用户就像操作一台自定义的专用传统仪器一样,通过拥有友好图形界面的显示器操作计算机,进行对被测数据的采集、分析、处理等测试
15、工作。与传统仪器比较,虚拟仪器所需的硬件更少、价格低而且可以重复利用;虚拟仪器的优点是其软件可以自定义、开发与维护费用低、技术更新快、方便与外设或网络连接、系统开放。这些优点使各国越来越重视虚拟仪器技术,近年来,虚拟仪器的发展迅速,在一些发达国家被普遍应用于测量、电信、监控及教育等领域,现在正向着标准化、模块化、网络化和智能化的方向发展。如今,虚拟仪器的概念已经在电子测量仪器的发展中被很多领域所接受,推动了柔性测控系统的发展。1.2 课题的国内外研究现状虚拟仪器在国内外的发展飞快,以 NI 公司为代表的厂商已经推出了基于虚拟仪器的商品化仪器产品。在美国,虚拟仪器和它的图形编程语言已经成为理工科
16、学生的必修课程。近些年,各国虚拟仪器公司开发出了很多虚拟仪器开发软件,以便使用者可以设计适合于自己的测量系统。NI公司的Labwindows/CVI和LabVIEW是最有影响力和最早的开发软件。LabVIEW非常实用,它采用的是图形化编程方案;Labwindows/CVI是在Windows环境下的标准ANSIC开发软件,它专为熟悉C语言的开发人员设计。处了以上几种开发软件,美国HP公司的HPTIG和H-VEE软件,美国Tektronix公司的Tek-TNS和Ez-Test软件也都是优秀虚拟仪器开发软件,在国际上得到公认。虚拟仪器的系统开发可以采用多种总线,如传统的RS-232串行总线、PXI总
17、线、VXI总线、GPIB通用接口总线、IEEE1394总和被广泛采用在PC机上的USB总线。为了使虚拟仪器能过灵活的适用于各种配置的总线,各国公司开发了大量软件和硬件,以便组建各种复杂程度不同的虚拟仪器自动测控系统。虚拟仪器的开发厂商在测量结果的表达模式、数据处理等方面也进行了优化,建立了开发工具库和高级数据分析库,这扩大了虚拟仪器的功能,使其能够组建更加复杂的自动测控系统。国内部分院校实验室已经引入虚拟仪器,有国内专家预测:在未来的几年里,我国虚拟仪器将占所有仪器的50%。随微机技术的发展,虚拟仪器将取缔传统仪器成为主要的测试仪器。1.3 课题研究的主要内容本文重点介绍使用LabVIEW开发
18、环境来设计上位机的监控界面,上位机通过USB转RS232串行口与89E52单片机通信, DS18B20温度传感器读取温度数据,从而实现对温度参数的实时检测。本文主要进行以下几方面的工作:(1)论述智能温度测控系统的课题目的及意义,智能温度测控系统的国内外发展概况及本论文的主要内容。(2)详细介绍了虚拟仪器技术的概念、特点和体系结构,虚拟仪器开发软件LabVIEW及图形化编程语言的特点及应用现状。(3)温度检测系统的设计思路及方案,对系统软件开发平台进行选择。(4)介绍智能温度测控系统硬件组成,电烤箱的功率调节方式及各硬件电路的设计。(5)电烤箱温度控制系统软件整体设计方案,及上位机和下位机的设
19、计过程。(6)对所做工作进行了总结,对未来的研究作了展望。2 虚拟仪器概述2.1 虚拟仪器的概念随着科学技术和计算机技术的快速发展,传统仪器已不能满足现代测控系统的需要。虚拟仪器 (Virtual Instrumentation)由美国国家仪器公司率先提出,这打破了传统仪器固定以及用户无法更改的模式,引发了测控仪器的一场重大变革。虚拟仪器是指具有虚拟仪器面板的个人计算机仪器,即是在通用计算机上加上一组软件或硬件,使得使用者在操作这台计算机时,就像在操作一台他自己设计的专用传统电子仪器。实际上就是把计算机技术与一起技术结合起来,将传统仪器的三大功能,都放在计算机上完成。利用友好的计算机界面可以容
20、易的模拟出各种仪器的控制面板,并以各种形式表达输出的检测结果;利用计算机软件实现多种信号分析、处理和存储,完成多种测试功能;用计算机外设替代传统仪器的按键和旋钮等,使人可以不碰仪器本身,又能完成测量工作。虚拟仪器利用计算机技术实现和拓展了其本身的功能,并逐渐替代了传统仪器对数据采集、分析等功能,达到了取代的目的。2.2 虚拟仪器的主要特点相比传统仪器,虚拟仪器有如下几个主要特点(1)强调新概念“软件就是仪器”,取代旧概念“硬件为主体”。虚拟仪器的核心是软件,硬件的作用只在于信号的输入、输出问题上,这对于传统仪器而言,虚拟仪器在概念上取得了重大突破。软件决定了虚拟仪器的智能化程度和处理能力,使用
21、者根据需要,可把新的算法、专家系统或者人工智能应用在仪器的设计与集成上,从而提升了仪器的技术水平。另外,虚拟仪器通过丰富的计算机图形做到了人机互交与界面友好。(2)用户可自行定义虚拟仪器的功能,并在用户机上产生,这使仪器可不由硬件决定,打破了传统仪器的弊端。如果需要,用户可以通过编程添加所需功能,而不是购买新的设备,从而使仪器的灵活性大大提高。(3)虚拟仪器容易建立网络化,与网络及电脑设备互联,具有方便、灵活的互联性。网络虚拟仪器随网络技术的发展逐步形成,这种新型虚拟仪器基于WEB技术,这使虚拟仪器变成了Inter网的一部分,可以方便的进行构建远程测控系统,实现了测量、控制的网络化。(4)虚拟
22、仪器对硬软件的制定具有开放的工业标准,并且采用模块化结构,使系统具有了良好的扩展性和开放性。被高度集成的如数据采集电路等是系统必须的基本硬件,实现了硬件模块的即插即用。软件开发基于模块化设计思想,并运用了大量函数库、类库和动态链接库,使代码具有了良好的可重复性。系统组建用时短,功能更易拓展,软硬件的开发、生产和维护的费用低。2.3 虚拟仪器的体系结构通常测量仪器都具有的三大部分:数据采集、数据测试和分析以及结果的输出显示。相同的是虚拟仪器也具有这三大部分,不同的是对于数据分析和结果输出部分虚拟仪器是通过计算机软件系统完成的。只要具有一定的数据采集硬件,就能构成基于计算机的虚拟测量测试仪器。通常
23、虚拟仪器具有的三部分:计算机、硬件接口电路以及软件部分。2.3.1 虚拟仪器的硬件构成虚拟仪器硬件由硬件接口电路和计算机仪器构成。作为虚拟仪器核心的计算机要对数据进行分析处理以及结果的显示,而硬件接口电路要对被测量信号进行采集、放大以及模数转换等工作,对于构成不同的虚拟仪器接口总线,可分为下几种方案,如图2.1所示。图2.1 虚拟仪器的硬件构成框图(1)数据采集卡,它的仪器硬件平台是信号调理电路、数据采集卡(DAQ)和PC机,采用ISA或PCI计算机本身的总线,将DAQ插入PC机的总线扩展插槽,因此又称为PC-DAQ/PCI插卡式虚拟仪器。(2)通用接口总线GPIB(General Purpo
24、se Interface Bus)接口,它的仪器硬件平台是GPIB接口仪器、GPIB接口卡和PC机,GPIB的仪器操作界面具有独立性,可脱离计算机使用,也可通过标准GPIB电缆连接到计算机实施程序控制。(3)串行口仪器,它的仪器硬件平台是Serial标准总线仪器和PC机,符合RS-422或者RS-232标准的PLC和单片机系统。(4)VXI仪器,它的仪器硬件平台是VXI(VME bus Extension for Instrumentation)标准总线仪器模块以和PC机,由主机箱、控制器和仪器模块构成。它包括嵌入式PC控制器、外置工作站控制器和嵌入式工作站控制器,选用时要根据测试功能的要求。
25、(5)PXI仪器,它的硬件平台是PXI(PCI Extension for Instrumentation)标准总线仪器模块和PC机,标准的PXI模块化仪器系统可以 Compact PCI交互操作,也可与VXI或GPIB集成,组成多用途、大规模系统。(6)现场总线,它的仪器硬件平台是 Field Bus标准总线仪器和PC机。上述的几种方案中,VXI、PXI、GPIB方案适合大型高精度测试系统; 串行口方案I、PCI-DAQ/PC适合大规模的网络测试系统。 2.3.2 虚拟仪器的软件构成软件是虚拟仪器的核心技术,通过修改程序来实现不同功能的测量测试仪器,去满足各种不同的需求。“软件即是仪器”的意
26、义就是软件可被定义为各种仪器。使硬件软件化,降低系统成本,增强系统功能及其灵活性。计算机易与网络、外设和其他应用连接,对于系统控制、数据采集、远程传送都很方便。我们只要利用数据采集电路或数据采集卡,就可以在计算机上构建新的仪器系统,通过软件编程实现不同功能。从底层到顶层可分虚拟仪器系统的软件可分为三个层次,分别是VISA库、仪器驱动程序以及应用程序。(1)VISA(Virtual Instrumentation Software Architecture)库,VISA库的实质是标准的I/O函数库以及相关规范的总称,存在于仪器和仪器驱动程序之间,并为它们提供信息传递,是开放实现的、统一的虚拟仪器
27、系统的基础与核心。(2)仪器驱动程序,数据的采集与控制要涉及到硬件操作,所以需要对应的硬件驱动程序。驱动程序使仪器与通信软件集合,连接应用程序与VISA库,每个仪器模块都有其对应的仪器驱动程序,用户可方便的调用仪器驱动程序,而不必重新设计。(3)应用软件,它建立在仪器驱动程序之上,由用户编写,通过友好的测控操作界面和丰富的数据分析与处理来完成测控任务。2.4 LabVIEW的概述LabVIEW是实验室虚拟仪器集成环境 (Laboratory virtual Instrument Engineering workbench)的简称,是目前发展最快、应用最广、功能最强的图形化软件开发环境。得到了学
28、术界和工业界的普遍认可和好评。它把复杂的文本语言简化成用图标或菜单提示的方法选择功能,利用线条把各种功能连接起来的编程方式,为用户进行编程、调试提供了方便的工具和环境。LabVIEW是一种虚拟仪器开发平台软件,能够以其直观简便的编程方式、众多的源代码级的设备驱动程序、多种多样的分析和表达功能支持,为用户快捷地构筑自己在实际工程中所需要的仪器系统创造了基础条件。而且LabVIEW相比其它计算机语言,有一个重要的不同点:就是其它计算机语言都是采用文本语言产生代码,而LabVIEW采用的是图形化编程语言(G语言),以框图的形式产生程序,简单易学,可在短时间内掌握并运用到实践中。从宏观上讲LabVIE
29、W的运行机制以不是传统上的冯诺依曼的计算机体系结构执行方式。在LabVIEW中传统计算机语言顺序执行结构被并行机制代替:从本质上看,它是图形控制流结构的数据流模式。按照数据流程序的设计规定,当函数的所有输入有效时才能够执行;而当目标输出的功能完成时,它才是有效的。所以在这种数据流程序的概念中,数据驱动驱使程序执行,它并不受到计算机、操作系统等因素影响。VI是LabVIEW的核心。VI拥有人机对话用户界面,前面板(Front Panel)和程序图(Diagram)。程序图发指令前面板接收。在前面板中,输入控件 (Controls)模拟仪器的输入装置并将数据提供给程序图;显示控件(Indicato
30、rs)则模拟仪器的输出装置并显示由程序图获得的数据。当把一个显示或输入控件放置到前面板上时,程序图中会相应地放置一个端口(Terminals)。用LabVIEW编程不受计算机语法限制。首先,在功能菜单中选取所需功能节点,并至于何时位置;然后,在程序图中的端口用线(Wires)连接各功能节点,用来传输各节点质检数据。这些节点包括简单算术功能、高级数据采集和分析以及存储和检索数据功能的和网络功能。这样的图形化程序设计编程有着简单、直观、开发效率高等特点。2.5 LabVIEW的应用现状LabVIEW广泛应用于包括通信、航空、自动化、半导体、过程控制、电路设计及生物医学等各种工业领域中,使应用系统的
31、开发效率得到提升。协调使用LabVIEW,信息资源及共享软件,可大量节省金钱和时间。LabVIEW的应用大致可分为以下几个主要方面:(1)应用于生产检测: LabVIEW己经成为用于测试测量领域的工业标准化开发工具。LabVIEW结合NITestStand测试执行环境和该领域中最大的仪器驱动程序库,为整个系统建立稳固完整的检测管理平台。 (2)应用于研究与分析:运用LabVIEW,可在汽车、能源研究和其它众多工业领域的应用系统中进行实时数据的分析和处理、对于图像处理、时频分析、小波和数字滤波的应用系统,LabVIEW特别提供各种附加工具包以加速系统的开发。(3)应用于过程控制和工厂自动化:可利
32、用LabVIEW来建立过程控制和工业自动化应用系统。在LabVIEW平台下,可以实现多通道的高速测量和控制。对于大型复杂的工业自动化和控制系统,有专门的LabVIEW数据记录和监控模块,用于监控多通道I/O、与工业控制器和网络进行通信,以及提供基于PC机的控制。(4)应用于机器监控:对于要求有实时控制、视觉和图像分析或运动控制的机器监视和预先维护的应用系统,LabVIEW是理想的选择。LabVIEW系列产品,包括用于可靠、确定性控制的实时 LabVIEW (LabVIEW RT)软件,能够快速、准确的建立起功能强大的机器监视和自动控制应用程序。(5)应用于测控系统:LabVIEW有着强大的功能
33、和广阔的应用前景,但就目前国内的现状来看,大多数的用户还是把LabVIEW作为虚拟仪器,仅仅利用它来进行数据的处理、分析和显示,忽略了LabVIEW强大的数据采集和控制功能,特别是基于PC机的实时控制,在国内应用较少。3 总体设计3.1 系统实现的功能本论文针对传统测控仪器功能由仪器厂商定义,图形界面小,设备连接有限,读取数据信息量小,无法编辑、存储,功能固定、系统封闭、可扩展性差,技术更新速度慢,开发、维护费用高等特点,设计一个基于LabVIEW的温度检测系统。该温度检测系统主要实现以下几个功能:(1)实现单片机与PC机的串口通信,能及时将温度数据传给PC机,并在上位机界面行程曲线,直观表现
34、温度变化。(2)检测参数显示:如测试时间、设定温度等,当温度超出范围进行报警等。(3)温度实时监测曲线显示,具有数字显示和波形图显示。(4)保存结果数据:用户可将采集到的数据保存在Excel表格中,方便打印和查询。3.2 总体设计方案本论文是基于LabVIEW2010的温度检测系统的设计开发,采用从总体到局部的设计原则,逐步分析系统功能,分解整个系统为几个部分且能实现不同功能,然后对每部分别设计。为实现温度检测系统的各项功能,可将整个系统分为上位机和下位机两部分:上位机是装有LabVIEW2010软件的PC机,下位机是单片机和外围电路组成的小系统。通过PC机USB串口进行通信。下位机部分实现温
35、度信号的采集和温度数据的输出;上位机部分实现对硬件的驱动,数据显示、处理与存储,超温报警及人机交互操作界面的生成。系统总体设计框图如图3.1所示。图3.1 总体设计框图4 上位机LabVIEW的程序设计4.1 USB接口设计按总线的类型虚拟仪器系统的通信方式可分为三种方式:RS-232串行总线体系结构、通用仪器总线GPIB,VXI,PXI体系结构和USB通用串行通信总线体系结构。RS-232总线是于1969年由美国电子工业协会EIA推出的一个串行通信标准,可实现计算机与计算机或外设之间的数据通讯,它也是目前最常用的串行接口标准。它结构简单,绝大部分计算机都配有RS-232总线接口。它编程简单,
36、绝大部分开发软件都可对其提供良好的支持。但它总线传输距离短,一般小于15m而且最大波特率小于20Kbps,所以不适合于高速场合。通用串行总线 (USB)是一种新的计算机串行总线。高速传输时,传输速率最高可达482Mbps,全速方式时为12Mbps,低速方式时为1.5Mbps。可使用USB Hub来实现系统的扩展,拓扑结构为树状结构,最多可连接127个外设。标准USB电缆长3m,低速传输时为5m,通过中继器或Hub可以使传输距离增加到30m。USB支持热插拔,所有USB设备随时可接入和拔离系统。另外,USB支持错误检测和恢复处理功能,可以自动检测并隔离设备。USB具有使用方便灵活、速度快、支持即
37、插即用、成本较低、易于扩展等一系列优点,使USB逐步取代了传统并行或串行接口,广泛应用于音频和视频传输、人机交互接口、宽带接入、量高速外存接口、数据采集以及虚拟仪器等领域。由于USB总线具有传输速度高,扩展性好,连接方便等众多优点,而且价格适中,非常适合本设计的温度检测系统,因此我们采用了USB总线作为系统的通信方式。虽然USB驱动程序的调试比较复杂,但可以应用集成度较高的专用芯片,很大程度上简化程序的开发工作。所以本设计的通信方式采用USB接口。4.2 USB系统的结构4.2.1 USB系统概述USB系统由USB主机和USB设备两部分构成,由主机发起传输事务,除非主机的允许,USB设备不能主
38、动传输任何数据到主机。如图4.1是USB系统的结构,被分为了三个逻辑层:功能层、USB设备层、USB接口总线层,且每一层都由主机和USB设备的不同功能模块组成。图4.1 USB系统的分层4.2.2 USB主机USB系统中只能有一个主机,并分为三个功能模块:客户软件、系统软件、USB总线接口。(1)客户软件:负责与USB设备功能单元进行通信,来实现其特定功能。客户软件不可直接访问USB设备,必须经过USB总线接口和USB系统软件才能够实现其与功能单元间的通信。它包括界面应用程序和USB设备驱动程序两部分:USB设备驱动程序负责与USB系统软件进行接口;界面应用程序负责与USB设备驱动程序进行接口
39、,来操纵USB设备。界面应用程序是最上层的软件,只能看到向USB设备发送的原始数据和从USB设备接收的最终数据。这部分是接口设计的重点。(2)USB系统软件:负责与USB逻辑设备进行配置通信和管理客户软件启动的数据传输。它包括USB主控制器驱动程序、USB总线驱动程序和非USB主机软件三部分,这些软件由操作系统提供。(3)USB总线接口:包括主控制器与根集线器两部分。主控制器负责实现主机与USB设备间的数据传输;根集线器提供连接起点给USB系统。主控制器的硬件完成该模块与USB系统软件的接口。4.2.3 USB设备清楚USB设备的架构才能为USB设备写驱动程序。USB设备具有三个功能模块:US
40、B逻辑设备、USB总线接口、功能单元。USB系统软件把USB逻辑设备看作是一个端点的集合;USB总线接口是USB设备的串行接口引擎(SIE);客户软件把功能单元看作是接口的集合。这里的端点、SIE、接口都是USB设备的组成部分4.3 NI-VISA概述4.3.1 N1-VISA简介VISA(Virtual Instrument Software Architecture)是用来和各种仪器总线进行通讯的高级应用编程接口(API)。它不受总线、平台和环境的限制。也就是说,与GPIB 设备进行通讯的程序时,都可以使用同一个API,在运行 Mac OS X的PC机上用C语言编写或在运行Win 2000
41、的PC机上用LabVIEW开发出来的。通用串行总线(USB)是一种基于信息的通讯总线。所以PC机与USB设备是通过发送指令和数据进行通讯的,通讯总线以二进制或文本数据的形式发送这些指令和数据。从3.0版本开始NI-VISA支持USB通讯, 它的两种VISA类函数可以控制两类USB设备:USB RAW设备与USB INSTR设备。USB RAW设备指除了符合USBTMC规格仪器之外的所有USB设备,通信时需配置NI-VISA;而USB INSTR设备指只符合USBTMC协议的USB设备,使用USB INSTR类函数控制,通信时不需配置NI-VISA;4.3.2 配置NI-VISA的过程(1)通过
42、Driver Development wizard(驱动程序开发向导)新建INF文档;(2)安装INF文档,并安装使用INF文档的USB设备;(3)通过NI-VISA Interactive Control(NI-VISA互动控制工具)测试设备,来证实USB设备的正确安装,并获取USB设备的各个属性值。4.3.3 与Nl-VISA相配合的LabVIEW模板中VI子节点ViOpen,打开并指定VISA resource name的设备的连接。ViProperty,VISA设备的属性子节点,可以设置端点或传输方式。ViWrite,向VISA resource name指定的设备写入数据。ViRea
43、d,从VISA resource name指定的设备读出数据。ViClose,结束设备读写并关闭与指定设备的连接。4.3.4 USB设备读写的操作次序USB设备的读写次序如图4.2所示。图4.2 USB设备读写框图4.4 LabVIEW2010中串口的配置VISA配置串口控件如图4.3所示。图4.3 VISA配置串口控件通过VISA资源名称指定连接的USB设备,初始化已连接USB设备的各项数据,准备接受上位机LabVIEW发送指令。VISA写入控件如图4.4所示。图4.4 VISA写入控件此控件功能是把写入缓冲区的数据写入VISA资源名称指定的接口或设备。VISA读取控件如图4.5所示。图4.
44、5 VISA读取控件此控件功能是从VISA资源名称指定的接口或设备中读取指定数量的字节,并使数据返回到读取缓冲区。VISA清空I/O缓冲区控件如图4.6所示。图4.6 VISA清空I/O缓冲区控件此控件功能是清空由屏蔽指定的I/O缓冲区。VISA关闭控件如图4.7所示。图4.7 VISA关闭控件该控件功能是关闭VISA资源名称指定的设备会话句柄或事件对象,实现一次数据采集的过程。4.5 上位机LabVIEW程序的前面板和程序框图4.5.1 数据处理实质上VISA是I/O接口软件库及其规范的总称。存在于仪器和仪器驱动程序之间的I/O接口软件实现对仪器内部寄存器数据直接储存,并提供信息传递底层软件
45、给仪器和仪器驱动程序。运用labVIEW的图标设置串口,读串口数据。由于全部串口采用默认设置(9600bps 8位数据,1位停止,1位起始,无握手信号) ,下位机遵守上述协议采集程序,直接使用图标读取串口的数据。上位机的流程图如图4.8所示。图4.8 上位机的流程图该图是最基本也是最重要的流程图。转换ASCII字符部分应该值得注意,想要得到数据,还需要一个子VI,该子VI的前面板和程序框图如图4.9所示。图4.9 子VI前面板和程序框图4.5.2 LabVIEW的前面板和各个部分的功能前面板由两部分组成:输入控件以及显示控件,它们分别是VI的输入输出端口。输入控件是指转盘、按钮、旋钮等输入装置
46、;而显示控件是指指示灯、图表等显示装置。输入控件模拟输入装置,提供数据给VI的程序框图;而显示控件模拟输出装置,显示程序框图获取数据。上位机使用LabVIEW2010设计,图4.10所示为上位机程序的前面板,即温度检测界面。功能是接收下位机采集的温度数据,并对数据进行显示及记录,前面板可以限定温度值,若温度超出范围时,系统就会发出报警。图4.10 温度监测系统前面板前面板各部分功能介绍如下:(1)温度实时显示框及温度记录表,记录温度,也可生成Excel表格保存。(2)VSIA配置控件的前面板的采集次数显示控件,可直接读取温度采集次数。(3)操作框选择端口,设置温度报警值的上下限,停止运行程序。运行程序前,先在下位机选择连接端口,才能从下位机读取检测数据。(4)时间显示框,显示实时时间。(5)温度波形图表,显示温度变化曲线。(6)温度报警指示灯,温度大于上限或小于下限,指示灯变红;温度在上下限之间时,两个指示灯都为绿色。(7)实时温度表,检测温度变化。4.5.3 LabVIEW的程序框图和各个部分的功能创建前面板后,使用图形化函数添加源代码控制前面板对象。程序框图即图形化源代码的集合,图形化源代码又称程序框图代码或G代码。前面板对象在程序框图中显示成接线端。 本程序的程序框图如图4.11所示。图4.11 温度检测系统程序框图接下来介绍