LabVIEW虚拟仪器数据采集与通信控制35例(txt+pdf+epub+mobi电子书下载)


发布时间:2020-07-03 20:21:47

点击下载

作者:李江全

出版社:电子工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

LabVIEW虚拟仪器数据采集与通信控制35例

LabVIEW虚拟仪器数据采集与通信控制35例试读:

前言

随着微电子技术和计算机技术的飞速发展,测试技术与计算机深层次的结合引起测试仪器领域里一场新的革命,一种全新的仪器结构概念导致了新一代仪器—虚拟仪器的出现。它是现代计算机技术、通信技术和测量技术相结合的产物,是传统仪器观念的一次巨大变革,是产业发展的一个重要方向,它的出现使得人类的测试技术进入了一个新的发展纪元。

虚拟仪器在实际应用中表现出传统仪器无法比拟的优势,可以说虚拟仪器技术是现代测控技术的关键组成部分。虚拟仪器由计算机和数据采集卡等相应硬件和专用软件构成,既有传统仪器的一般特征,又有传统仪器不具备的特殊功能,在现代测控应用中有着广泛的应用前景。

作为测试工程领域的强有力工具,近年来,虚拟仪器软件LabVIEW得到了业界的普遍认可,并在测控应用领域得到广泛应用。

本书从实际应用出发,通过35个典型实例系统地介绍了虚拟仪器编程语言LabVIEW在数据采集和通信控制方面的程序设计方法。主要内容有LabVIEW数据采集和串口通信基础、NI公司数据采集卡测控实例、研华公司数据采集卡测控实例、声卡数据采集实例、LabVIEW串口通信实例、远程I/O模块串口通信控制实例、三菱/西门子PLC串口通信控制实例、单片机串口通信控制实例,以及LabVIEW网络通信与远程测控实例等。提供的实例由实例基础、设计任务、线路连接和任务实现等部分组成,并有详细的操作步骤。

考虑到LabVIEW各版本向下兼容,且各版本编程环境及用法基本相同,因此为使更多读者能够使用本书程序,我们选用了 LabVIEW 8.2中文版作为主要设计平台,并将LabVIEW 2015中文版与其不同的地方予以指出。

本书内容丰富,论述深入浅出,有较强的实用性和可操作性,可供测控仪器、计算机应用、电子信息、机电一体化、自动化等专业的大学生、研究生,以及虚拟仪器研发的工程技术人员学习和参考。

本书由石河子大学李江全编写第1、2章,刘长征编写第3、4、5章,张茜编写第6、7章,刘育辰编写第8、11章;新疆工程学院王玉巍编写第9章;空军工程大学李丹阳编写第10章。

由于编者水平有限,书中难免存在不妥或错误之处,恳请广大读者批评指正。编著者

第1章 LabVIEW数据采集基础

虚拟仪器主要用于获取真实物理世界的数据,也就是说,虚拟仪器必须要有数据采集的功能。从这个角度来说,数据采集就是虚拟仪器设计的核心,使用虚拟仪器必须掌握如何使用数据采集功能。

1.1 数据采集系统概述

1.1.1 数据采集系统的含义

在科研、生产和日常生活中,模拟量的测量和控制是经常遇到的。为了对温度、压力、流量、速度、位移等物理量进行测量和控制,都要先通过传感器把上述物理量转换成能模拟物理量的电信号(即模拟电信号),再将模拟电信号经过处理转换成计算机能识别的数字量,输入计算机,这就是数据采集。用于数据采集的成套设备称为数据采集系统(Data Acquisition System,DAS)。

数据采集系统的任务,就是传感器从被测对象获取有用信息,并将其输出信号转换为计算机能识别的数字信号,然后输入计算机进行相应的处理,得出所需的数据。同时,将计算得到的数据进行显示、储存或打印,以便实现对某些物理量的监视,其中一部分数据还将被生产过程中的计算机控制系统用来进行某些物理量的控制。

数据采集系统性能的优劣,主要取决于它的精度和速度。在保证精度的前提下,应有尽可能高的采样速度,以满足实时采集、实时处理和实时控制对速度的要求。

计算机技术的发展和普及提升了数据采集系统的技术水平。在生产过程中,应用这一系统可对生产现场的工艺参数进行采集、监视和记录,为提高产品质量、降低成本提供信息和手段;在科学研究中,应用数据采集系统可获得大量的动态信息,是研究瞬间物理过程的有力工具。总之,不论在哪个应用领域中,数据的采集与处理越及时,工作效率就越高,取得的经济效益就越大。1.1.2 数据采集系统的功能

由数据采集系统的任务可以知道,数据采集系统具有以下几方面的功能。

1.数据采集

计算机按照预先选定的采样周期,对输入系统的模拟信号进行采样,有时还要对数字信号、开关信号进行采样。数字信号和开关信号不受采样周期的限制,当这类信号到来时,由相应的程序负责处理。

2.信号调理

信号调理是对从传感器输出的信号做进一步的加工和处理,包括对信号的转换、放大、滤波、储存、重放和一些专门的信号处理。另外,传感器输出信号往往具有机、光、电等多种形式。而对信号的后续处理往往采取电信号的方式和手段,因而必须把传感器输出的信号进一步转化为适宜于电路处理的电信号,其中包括电信号放大。通过信号的调理,获得最终便于传输、显示和记录的,以及可做进一步后续处理的信号。

3.二次数据计算

通常把直接由传感器采集到的数据称为一次数据,把通过对一次数据进行某种数学运算而获得的数据称为二次数据。二次数据计算主要有求和、最大值、最小值、平均值、累计值、变化率、样本方差与标准方差统计方式等。

4.屏幕显示

显示装置可把各种数据以方便于操作者观察的方式显示出来,屏幕上显示的内容一般称为画面。常见的画面有相关画面、趋势图、模拟图、一览表等。

5.数据存储

数据存储就是按照一定的时间间隔,如1小时、1天、1月等,定期将某些重要数据存储在外部存储器上。

6.打印输出

打印输出就是按照一定的时间间隔,如分钟、小时、月的要求,定期将各种数据以表格或图形的形式打印出来。

7.人机联系

人机联系是指操作人员通过键盘、鼠标或触摸屏与数据采集系统对话,完成对系统的运行方式、采样周期等参数和一些采集设备的通信接口参数的设置。此外,还可以通过它选择系统功能,选择输出需要的画面等。1.1.3 数据采集系统的输入与输出信号

实现计算机数据采集与控制的前提是,必须将生产过程的工艺参数、工况逻辑和设备运行状况等物理量经过传感器或变送器转变为计算机可以识别的电信号(电压或电流)或逻辑量。计算机测控系统经常用到的信号主要分为模拟量信号和数字量信号两大类。

针对某个生产过程设计一套计算机数据采集系统,必须了解输入输出信号的规格、接线方式、精度等级、量程范围、线性关系、工程量换算等诸多要素。

1.模拟量信号

在工业生产控制过程中,特别是在连续型的生产过程(如化工生产过程)中,经常会要求对一些物理量如温度、压力、流量等进行控制。这些物理量都是随时间而连续变化的。在控制领域,把这些随时间连续变化的物理量称为模拟量。

模拟信号是指随时间连续变化的信号,这些信号在规定的一段连续时间内,其幅值为连续值,即从一个量变到下一个量时中间没有间断。

模拟信号有两种类型:一种是由各种传感器获得的低电平信号;另一种是由仪器、变送器输出的4~20mA的电流信号或1~5V的电压信号。这些模拟信号经过采样和A/D转换输入计算机后,常常要进行数据正确性判断、标度变换、线性化等处理。

模拟信号非常便于传送,但它对干扰信号很敏感,容易使传送中的信号的幅值或相位发生畸变。因此,有时还要对模拟信号进行零漂修正、数字滤波等处理。

当控制系统输出模拟信号需要传输较远的距离时,一般采用电流信号而不是电压信号,因为电流信号在一个回路中不会衰减,因而抗干扰能力比电压信号好;当控制系统输出模拟信号需要传输给多个其他仪器仪表或控制对象时,一般采用直流电压信号而不是直流电流信号。

模拟信号的常用规格如下。

1)1~5V电压信号

此信号规格有时称为DDZ-Ⅲ型仪表电压信号规格。1~5V电压信号规格通常用于计算机控制系统的过程通道。工程量的量程下限值对应的电压信号为lV,工程量上限值对应的电压信号为5V,整个工程量的变化范围与4V的电压变化范围相对应。过程通道也可输出1~5V电压信号,用于控制执行机构。

2)4~20mA电流信号

4~20mA电流信号通常用于过程通道和变送器之间的传输信号。工程量或变送器的量程下限值对应的电流信号为4mA,量程上限对应的电流信号为20mA,整个工程量的变化范围与16mA的电流变化范围相对应。过程通道也可输出4~20mA电流信号,用于控制执行机构。

有的传感器的输出信号是毫伏级的电压信号,如 K 分度热电偶在 l000℃时输出信号为41.296mV。这些信号要经过变送器转换成标准信号(4~20mA),再送到过程通道。热电阻传感器的输出信号是电阻值,一般要经过变送器转换为标准信号(4~20mA),再送到过程通道。对于采用4~20mA电流信号的系统,只需采用250Ω电阻就可将其变换为1~5V直流电压信号。

需要说明的是,以上两种标准都不包括零值在内,这是为了避免和断电或断线的情况混淆,使信息的传送更为确切。这样也同时避开了晶体管器件的起始非线性段,使信号值与被测参数的大小更接近线性关系,所以受到国际的推荐和普遍的采用。

2.数字量信号

数字量信号又称为开关量信号,是指在有限的离散瞬时上取值间断的信号,只有两种状态,相对于开和关一样,可用“0”和“1”表达。

在二进制系统中,数字信号是由有限字长的数字组成,其中每位数字不是“0”就是“1”。数字信号的特点是,它只代表某个瞬时的量值,是不连续的信号。

开关量信号反映了生产过程、设备运行的现行状态,又称为状态量。例如,行程开关可以指示出某个部件是否达到规定的位置,如果已经到位,则行程开关接通,并向工控机系统输入1个开关量信号;又如工控机系统欲输出报警信号,则可以输出1个开关量信号,通过继电器或接触器驱动报警设备,发出声光报警。如果开关量信号的幅值为TTL/CMOS电平,有时又将一组开关量信号称之为数字量信号。

有许多的现场设备往往只对应于两种状态,开关信号的处理主要是监测开关器件的状态变化。例如,按钮、行程开关的闭合和断开,马达、电动机的起动和停止,指示灯的亮和灭,继电器或接触器的释放和吸合,晶闸管的通和断,阀门的打开和关闭等,可以用开关输出信号去控制或者对开关输入信号进行检测。

开关(数字)量输入有触点输入和电平输入两种方式;开关(数字)量输出信号也有触点输出和电平输出两种方式。一般把触点输入/输出信号称为开关信号,把电平输入/输出信号称为数字信号。它们的共同点是都可以用“0”和“1”表达。

电平有“高”和“低”之分,对于具体设备的状态和计算机的逻辑值可以事先约定,即电平“高”为“1”,电平“低”为“0”,或者相反。

触点有常开和常闭之分,其逻辑关系正好相反,犹如数字电路中的正逻辑和负逻辑。工控机系统实际上是按电平进行逻辑运算和处理的,因此工控机系统必须为输入触点提供电源,将触点输入转换为电平输入。

对于开关量输出信号,可以分为两种形式:一种是电压输出,另一种是继电器输出。电压输出一般是通过晶体管的通断来直接对外部提供电压信号,继电器输出则是通过继电器触点的通断来提供信号。电压输出方式的速度比较快且外部接线简单,但带负载能力弱;继电器输出方式则与之相反。对于电压输出,又可分为直流电压和交流电压,相应的电压幅值有5V、12V、24V和48V等。

1.2 数据采集卡概述

为了满足PC(个人计算机)用于数据采集与控制的需要,国内外许多厂商生产了各种各样的数据采集板卡(或 I/O 板卡)。用户只要把这类板卡插入计算机主板上相应的 I/O(ISA或 PCI)扩展槽中,就可以迅速、方便地构成一个数据采集系统,既节省大量的硬件研制时间和投资,又可以充分利用PC的软、硬件资源,还可以使用户集中精力对数据采集与处理中的理论和方法、系统设计以及程序编制等进行研究。1.2.1 数据采集卡的类型

基于 PC 总线的板卡是指计算机厂商为了满足用户需要,利用总线模板化结构设计的通用功能模板。基于PC总线的板卡种类很多,其分类方法也有很多种。按照板卡处理信号的不同,可以分为模拟量输入板卡(A-D 卡)、模拟量输出板卡(D-A 卡)、开关量输入板卡、开关量输出板卡、脉冲量输入板卡、多功能板卡等。其中多功能板卡可以集成多个功能,如数字量输入/输出板卡将数字量输入和数字量输出集成在同一个板卡上。根据总线的不同,可分为PCI板卡和ISA板卡。各种类型板卡依据其所处理的数据不同,都有相应的评价指标,现在较为流行的板卡大都是基于PCI总线设计的。

数据采集卡的性能优劣对整个系统举足轻重。选购时不仅要考虑其价格,更要综合考虑、比较其质量、软件支持能力、后续开发和服务能力。

表1-1列出了部分数据采集卡的种类和用途,板卡详细的信息资料请查询相关公司的宣传资料。表1-1 数据采集卡的种类和用途

还有其他一些专用I/O板卡,如虚拟存储板(电子盘)、信号调理板、专用(接线)端子板等,这些种类齐全、性能良好的I/O板卡与PC配合使用,使系统的构成十分容易。

在多任务实时控制系统中,为了提高实时性,要求模拟量板卡具有更高的采集速度,通信板卡具有更高的通信速度。当然可以采用多种办法来提高采集和通信速度,但在实时性要求特别高的场合,则需要采用智能接口板卡。某智能CAN接口板卡产品图如图1-1所示。图1-1 某智能CAN接口板卡产品图

所谓“智能”,就是增加了CPU或控制器的I/O板卡,使I/O板卡与CPU具有一定的并行性。例如,除了PC主机从智能模拟量板卡读取结果时是串行操作外,模拟量的采集和PC主机处理其他事件是同时进行的。1.2.2 数据采集卡的选择

要建立一个数据采集与控制系统,数据采集卡的选择至关重要。

在挑选数据采集卡时,用户主要考虑的是根据需求选取适当的总线形式,适当的采样速率,适当的模拟输入、模拟输出通道数量,适当的数字输入、输出通道数量等。并根据操作系统以及数据采集的需求选择适当的软件。主要选择依据如下。

1.通道的类型及个数

根据测试任务选择满足要求的通道数,选择具有足够的模拟量输入与输出通道数、足够的数字量输入与输出通道数的数据采集卡。

2.最高采样速度

数据采集卡的最高采样速度决定了能够处理信号的最高频率。

根据耐奎斯特采样理论,采样频率必须是信号最高频率的2倍或2倍以上,即f2f,采集到的数据才可以有效地复现出原始的采集s≥max信号。工程上一般选择 f=(5~10)f。一般的过程通道板卡的采smax样速率可以达到30~100kHz。快速A-D卡可达到1000kHz或更高的采样速率。

3.总线标准

数据采集卡有PXI、PCI、ISA等多种类型,一般是将板卡直接安装在计算机的标准总线插槽中。需根据计算机上的总线类型和数量选择相应的采集卡。

4.其他

如果模拟信号是低电压信号,用户就要考虑选择采集卡时需要高增益。如果信号的灵敏度比较低,则需要高的分辨率。同时还要注意最小可测的电压值和最大输入电压值,采集系统对同步和触发是否有要求等。

数据采集卡的性能优劣对整个系统的影响举足轻重。选购时不仅要考虑其价格,更要综合考虑各种因素,比较其质量、软件支持能力、后续开发和服务能力等。1.2.3 基于数据采集卡的测控系统

1.测控系统组成

基于数据采集卡的计算机测控系统的组成如图1-2所示。

1)计算机主机

它是整个计算机控制系统的核心。主机由CPU、存储器等构成。它通过由过程输入通道发送来的工业对象的生产工况参数,按照人们预先安排的程序,自动地进行信息处理、分析和计算,并做出相应的控制决策或调节,以信息的形式通过输出通道,及时发出控制命令,实现良好的人机联系。目前采用的主机有PC及IPC(工业PC)等。图1-2 基于数据采集卡的控制系统组成框图

2)传感器

传感器的作用是把非电物理量(如温度、压力、速度等)转换成电压或电流信号。例如,使用热电偶可以获得随着温度变化的电压信号;转速传感器可以把转速转换为电脉冲信号。

3)信号调理器

信号调理器(电路)的作用是对传感器输出的电信号进行加工和处理,转换成便于输送、显示和记录的电信号(电压或电流)。例如,传感器输出信号是微弱的,就需要放大电路将微弱信号加以放大,以满足过程通道的要求;为了与计算机接口方便,需要A/D转换电路将模拟信号变换成数字信号等。常见的信号调理电路有电桥电路、调制解调电路、滤波电路、放大电路、线性化电路、A/D转换电路、隔离电路等。

如果信号调理电路输出的是规范化的标准信号(如4~20mA、1~5V 等),这种信号调理电路称为变送器。在工业控制领域,常常将传感器与变送器做成一体,统称为变送器。变送器输出的标准信号一般传输到智能仪表或计算机系统。

4)输入/输出板卡

应用IPC对工业现场进行控制,首先要采集各种被测量,计算机对这些被测量进行一系列处理后,将结果数据输出。计算机输出的数字量还必须转换成可对生产过程进行控制的量。因此,构成一个工业控制系统,除了IPC主机外,还需要配备各种用途的I/O接口产品,即I/O板卡(或数据采集卡)。

常用的I/O板卡包括模拟量输入/输出(AI/AO)板卡、数字量(开关量)输入/输出(DI/DO)板卡、脉冲量输入/输出板卡及混合功能的接口板卡等。

各种板卡是不能直接由计算机主机控制的,必须由I/O接口来传送相应的信息和命令。I/O接口是主机和板卡、外围设备进行信息交换的纽带。目前绝大部分 I/O 接口都是采用可编程接口芯片,它们的工作方式可以通过编程设置。

常用的I/O接口有并行接口、串行接口等。

5)执行机构

它的作用是接受计算机发出的控制信号,并把它转换成执行机构的动作,使被控对象按预先规定的要求进行调整,保证其正常运行。生产过程按预先规定的要求正常运行,即控制生产过程。

常用的执行机构有各种电动、液动、气动开关,电液伺服阀,交直流电动机,步进电机,各种有触点和无触点开关,电磁阀等。在系统设计中需根据系统的要求来选择。

6)驱动电路

要想驱动执行机构,必须具有较大的输出功率,即向执行机构提供大电流、高电压驱动信号,以带动其动作;另一方面,由于各种执行机构的动作原理不尽相同,有的用电动,有的用气动或液动,如何使计算机输出的信号与之匹配,也是执行机构必须解决的重要问题。因此为了实现与执行机构的功率配合,一般都要在计算机输出板卡与执行机构之间配置驱动电路。

7)外围设备

主要是为了扩大计算机主机的功能而配置的。它用来显示、存储、打印、记录各种数据。包括输入设备、输出设备和存储设备。常用的外围设备有:打印机、图形显示器(CRT)、外部存储器(软盘、硬盘、光盘等)、记录仪、声光报警器等。

8)人机联系设备

操作台是人机对话的联系纽带。计算机向生产过程的操作人员显示系统运行状态、运行参数,发出报警信号;生产过程的操作人员通过操作台向计算机输入和修改控制参数,发出各种操作命令;程序员使用操作台检查程序;维修人员利用操作台判断故障等。

9)网络通信接口

对于复杂的生产过程,通过网络通信接口可构成网络集成式计算机控制系统。系统采用多台计算机分别执行不同的控制功能,既能同时控制分布在不同区域的多台设备,同时又能实现管理功能。

数据采集硬件的选择要根据具体的应用场合并考虑到自己现有的技术资源。

2.数据采集卡测控系统特点

随着计算机和总线技术的发展,越来越多的科学家和工程师采用基于 PC 的数据采集系统来完成实验室研究和工业控制中的测试测量任务。

基于PC的DAQ系统(简称PCs)的基本特点是输入、输出装置为板卡的形式,并将板卡直接与个人计算机的系统总线相连,即直接插在计算机主机的扩展槽上。这些输入、输出板卡往往按照某种标准由第三方批量生产,开发者或用户可以直接在市场上购买,也可以由开发者自行制作。一块板卡的点数(指测控信号的数量)少的有几点,多的有64点甚至更多。

构成PCs的计算机可以用普通的商用机,也可以用自组装的计算机,还可以使用工业控制计算机。

PCs主要采用Windows操作系统,应用软件可以由开发者利用C、VC++、VB等语言自行开发,也可以在市场上购买组态软件进行组态后生成。

总之,由于PCs价格低廉、组成灵活、标准化程度高、结构开放、配件供应来源广泛、应用软件丰富等特点,是一种很有应用前景的计算机控制系统。

1.3 LabVIEW数据采集系统

基于LabVIEW的数据采集系统结构一般如图1-3所示。

数据采集系统的硬件平台由计算机和其I/O接口设备两部分组成。I/O接口设备主要执行信号的输入、数据采集、放大、模/数转换等任务。根据I/O接口设备总线类型的不同,系统的构成方式主要有五种:PC-DAQ/PCI插卡式虚拟仪器测试系统、GPIB虚拟仪器测试系统、VXI总线虚拟仪器测试系统、PXI总线虚拟仪器测试系统和串口总线虚拟仪器测试系统。图1-3 基于LabVIEW的数据采集系统结构

其中,PC-DAQ/PCI插卡式是最基本、最廉价的构成形式,它充分利用了PC计算机的机箱、总线、电源及软件资源。图1-4是PC-DAQ/PCI插卡式系统应用示意图。图1-4 PC-DAQ插卡式系统示意图

在使用前要进行硬件安装和软件设置。硬件安装就是将DAQ卡插入PC计算机的相应标准总线扩展插槽内,因采用 PC 本身的 PCI 总线或 ISA 总线,故称由它组成的虚拟仪器为PC-DAQ/PCI插卡式虚拟仪器。

PC-DAQ/PCI插卡式系统受PC计算机机箱环境和计算机总线的限制,存在诸多的不足,如电源功率不足、机箱内噪声干扰、插槽数目不多、总线面向计算机而非面向仪器、插卡尺寸较小、插槽之间无屏蔽、散热条件差等。美国NI公司提出的PXI总线,是PCI计算机总线在仪器领域的扩展,由它形成了具有性能价格比优势的最新虚拟仪器测试系统。

一般情况下,DAQ 硬件设备的基本功能包括模拟量输入(A/D)、模拟量输出(D/A)、数字I/O(Digital I/O)和定时(Timer)/计数(Counter)。因此,LabVIEW环境下的DAQ模板设计也是围绕着这4大功能来组织的。

1.4 DAQ助手的使用

LabVIEW 为用户提供了多种用于数据采集的函数、VIs和Express VIs。这些函数、VIs和Express VIs大体可以分为两类,一类是Traditional DAQ VIs(传统DAQ函数),另外一类是操作更为简便的NI-DAQmx,这些组件主要位于函数选板中的测量I/O和仪器I/O子选板中。

其中最为常用的选板是位于测量I/O选项中的Data Acquisition(数据采集)子选板,如图1-5所示。

LabVIEW是通过DAQ函数来控制DAQ设备完成数据采集的,所有的DAQ函数都包含在函数选板中的测量I/O选项中的“DAQmx-数据采集”子选板中。

在所有的DAQ函数中,使用最多的是DAQ助手,DAQ助手是一个图形化的界面,用于交互式地创建、编辑和运行NI-DAQmx虚拟通道和任务。

一个NI-DAQmx虚拟通道包括一个DAQ设备上的物理通道和对这个物理通道的配置信息,例如输入范围和自定义缩放比例。一个NI-DAQmx任务是虚拟通道、定时和触发信息以及其他与采集或生成相关属性的组合。下面对DAQ助手的使用方法进行介绍。

DAQ助手在函数选板测量I/O选项中的“DAQmx-数据采集”子选板中,如图1-6所示。图1-5 数据采集子选板图1-6 DAQ助手位置

将DAQ助手节点图标放置到框图程序上,系统会自动弹出如图1-7所示对话框。

下面以DAQ模拟电压输入为例来介绍DAQ助手的使用方法。

选择“模拟输入”,如图1-8所示。图1-7 新建任务对话框图1-8 选择“模拟输入”

选择“电压”,用于采集电压信号。然后系统弹出如图1-9所示的对话框。

选择“ai0”(通道0),单击“完成”按钮,将弹出如图1-10所示对话框。图1-9 选择设备通道图1-10 输入配置

按照图1-10所示配置完成后,单击“确定”按钮,系统便开始对DAQ进行初始化。

初始化完成后就可利用DAQ助手采集电压信号。

设计程序前面板和框图程序分别如图1-11和图1-12所示。图1-11 程序前面板图1-12 框图程序

第2章 NI公司数据采集卡测控实例

在虚拟仪器中应用的数据采集卡有两种:NI 公司生产的数据采集卡和非 NI 公司生产的数据采集卡。

本章通过实例,详细介绍采用LabVIEW实现NI公司PCI-6023E数据采集卡数字量输入、数字量输出以及温度测控的程序设计方法。

实例基础 NI公司PCI-6023E数据采集卡

1.PCI-6023E数据采集卡简介

PCI-6023E 是 NI 公司 E 系列多功能数据采集卡之一,是一种性能优良的低价位的适合PC及其兼容机的采集卡。它可与PC的PCI总线相连,能够完成模拟量输入(A/D)、数字I/O及计数I/O等多种功能,非常适合搭建虚拟仪器系统。

PCI-6023E 数据采集卡产品如图2-1所示,与其配套进行数据采集的接线端子板是CB-68LP型,如图2-2所示。图2-1 PCI-6023E数据采集卡图2-2 CB-68LP接线端子板

将 PCI-6023E 数据采集卡插入计算机主板上 PCI 扩展插槽内,通过 R6868数据电缆与CB-68LP接线端子板相连,就可在PC的控制下完成模拟信号输入输出,数字信号输入/输出等功能。

基于PCI-6023E板卡的测控系统框图如图2-3所示。图2-3 基于PCI-6023E板卡的测控系统框图

图2-4是CB-68LP接线端子板端口图,下面对其接线作简要说明。图2-4 CB-68LP接线端子板端口图

AI为模拟信号输入端口,当选择单端(single-ended)测量方式时,接线方式就是把信号源的正端接入AI n(n=0,1,…15),信号源的负端接入AI GND。

当选择差分(differential)测量方式时,接线方式是把信号源的正端接入AIn(n=0,1,…, 7),信号源的负端接入AI n+8。

例如,单端时,通道0的正负接入端就分别是AI0和AI GND;通道1的正负接入端就分别是AI1和AI GND。

差分时,通道0的正负接入端就分别是AI0和AI8;通道1的正负接入端就分别是AI1和AI9。

P0.0~P0.7为8个数字信号输入输出通道,可以通过软件设置每个数字通道为输入或者输出,对应接开关量的输入或输出。

PCI-6023E有2个计数器:CTR 0和CTR 1,如果您的计数器信号只有1个,并希望实现简单的计数功能,那么只需要把计数器信号接到CTR 0 SRC或者CTR 1 SRC。

2.安装PCI-6023E数据采集卡驱动程序

设备驱动程序是完成对某一特定设备的控制与通信的软件程序集合,是应用程序实现设备控制的桥梁。每个设备都有自己的驱动程序。硬件驱动程序是应用软件对硬件的编程接口,它包含着对硬件的操作命令,完成与硬件之间的数据传递。

对于市场上的大多数计算机内置插卡,厂家都配备了相应的设备驱动程序。用户在编制应用程序时,可以像调用系统函数那样,直接调用设备驱动程序,进行设备操作。

NI公司为其全部的DAQ产品提供了专门的驱动程序库,因此,在虚拟仪器软件下应用NI的DAQ产品无须专门考虑驱动程序问题。虚拟仪器软件提供了各种图形化驱动程序,使用者不必熟悉PCI计算机总线、GPIB总线、VXI总线、串口总线,利用虚拟仪器软件提供的图形化驱动程序就可以驱动上述各种总线的 I/O 接口设备,实现对被测信号的输入、数据采集、放大与模/数转换,进而供计算机进一步分析处理。

虚拟仪器软件开发环境安装时,会自动安装NI-DAQ软件,它包含NI公司各种数据采集硬件的驱动程序。如果购买NI公司数据采集硬件,它还会免费提供一个 NI-DAQ 软件,目的是使用户得到最新版本的设备驱动程序。安装完 NI-DAQ 后,函数模板中会出现DAQ子模板。图2-5 查看PCI-6023E板卡资源设置

由于虚拟仪器软件的广泛应用,许多其他厂商也将虚拟仪器软件驱动程序作为其DAQ产品的标准配置。

Windows系统设备管理器会自动跟踪计算机中所装的硬件。如果有一块即插即用型的DAQ卡(PCI-6023E数据采集卡就是即插即用型)被正确插入计算机PCI扩展插槽,驱动正确安装后,Windows设备管理器就会自动检测到该DAQ卡,如图2-5所示。右击板卡名称,选择“属性”项,可以查看计算机分配给板卡的各项资源设置。

实例1 PCI-6023E数据采集卡数字量输入

一、设计任务

采用LabVIEW语言编写程序实现PC与PCI-6023E数据采集卡数字信号输入。

任务要求如下:利用开关产生数字(开关)信号(0或1),作用于板卡数字量输入通道,使PC程序界面中信号指示灯颜色改变。

二、线路连接

PC与PCI-6023E数据采集卡组成的数字量输入线路如图2-6所示。

首先将PCI-6023E数据采集卡通过R6868数据电缆与CB-68LP接线端子板连接,然后将其他元器件连接到接线端子板上。

图2-6中,由光电接近开关(也可采用电感接近开关)控制1个继电器KM,继电器有2个常开开关,其中1个常开开关KM1接信号指示灯L,另一个常开开关KM2接数据采集卡数字量输入6通道(端口16,50)或其他通道。

也可直接使用按钮、行程开关等的常开触点接数字量输入端口16和50。图2-6 PC与PCI-6023E数据采集卡组成的数字量输入线路

其他数字量输入通道信号输入接线方法与通道6相同。

实际测试中,可用导线将数字量输入端口(如16端口)与数字地(50端口)之间短接或断开,产生数字量输入信号。

注意:在进行LabVIEW编程之前,首先必须安装NI数据采集卡驱动程序以及传统DAQ函数。

三、任务实现

方法1:采用读写一条数字线的方式实现数字量输入

1.设计程序前面板

新建VI。切换到LabVIEW的前面板窗口,通过控件选板给程序前面板添加控件。(1)为了显示数字量输入状态,添加1个指示灯控件:控件→布尔→圆形指示灯。将标签改为“端口状态”。(2)为了输入数字量输入端口号:添加1个数值输入控件:控件→数值→数值输入控件。标签为“端口号”,将初始值设为“6”。(3)为了设置办卡通道号,添加1个通道设置控件:控件→I/O→传统DAQ通道。标签改为“Traditional DAQ Channel”(传统DAQ通道)。初始值设为0,并设为默认值。(4)为了关闭程序,添加1个停止按钮控件:控件→布尔→停止按钮。

设计的程序前面板如图2-7所示。图2-7 程序前面板

2.框图程序设计

切换到LabVIEW的程序框图窗口,添加节点与连线。(1)添加1个While循环结构:函数→结构→While循环。

以下在While循环结构框架中添加节点并连线。(2)添加1个读数字量函数:函数→测量I/O→Data Acquisition→Digital I/O→Read from Digital Line.vi,如图2-8所示。该函数读取用户指定的数字口上的某一位的逻辑状态。图2-8 添加Read from Digital Line.vi函数(3)添加1个数值常量:函数→数值→数值常量。将值设为“1”(板卡设备号)。(4)将前面板添加的所有控件对象的图标移到While循环结构框架中。(5)将数值常量“1”(板卡设备号)与Read from Digital Line.vi函数的输入端口“Device”相连。“Device”端口表示数字输入输出应用的设备编号。(6)将传统DAQ通道控件与Read from Digital Line.vi函数的输入端口“digital channel”相连。“digital channel”端口表示数字端口号或在信道向导中设置的数字信道名。(7)将数值输入控件(标签为“端口号”)与Read from Digital Line.vi函数的输入端口“Line”相连。“Line”端口表示数字端口中的数字线号或位。(8)将Read from Digital Line.vi函数的输出端口“Line state”与指示灯控件(标签为“端口状态”)相连。“Line state”端口表示数字线或位的状态。这个参数对于Read from Digital Line.vi是一个输出量,当数字线处于关的状态就返回“False”,当数字线处于开的状态就返回“True”。(9)将停止按钮控件与循环结构的条件端口相连。

设计的框图程序如图2-9所示。

3.运行程序

单击快捷工具栏“运行”按钮,运行程序。

通过接近开关打开/关闭数字量输入6通道“开关”(或用导线将16和50端口短接或断开),产生开关(数字)输入信号,程序画面中信号指示灯颜色改变。

程序运行界面如图2-10所示。图2-9 框图程序图2-10 程序运行界面

方法2:采用读写一个数字端口的方式实现数字量输入

1.设计程序前面板

新建VI。切换到LabVIEW的前面板窗口,通过控件选板给程序前面板添加控件。(1)为了显示各数字量输入端口状态,添加1个数组控件:控件→数组、矩阵与簇→数组。标签改为“输入端口显示”。往数组框里放置“方形指示灯”控件。将数组中的指示灯个数设置为8个。(2)为了设置板卡通道,添加1个通道设置控件:控件→I/O→传统DAQ通道。标签改为“Traditional DAQ Channel”(传统DAQ通道)。初始值设为0,并设为默认值。(3)为了关闭程序,添加1个停止按钮控件:控件→布尔→停止按钮。

设计的程序前面板如图2-11所示。图2-11 程序前面板

2.框图程序设计

切换到LabVIEW的程序框图窗口,添加节点与连线。(1)添加1个循环结构:函数→结构→While循环。

以下在While循环结构框架中添加节点并连线。(2)添加1个读数字量函数:函数→测量I/O→Data Acquisition→Digital I/O→Read from Digital Port.vi,如图2-12所示。图2-12 添加Read from Digital Port.vi函数

Read from Digital Port.vi 函数用于读一个用户指定的数字口。它与 Read from Digital Line.vi在参数上的不同是,由于它是对整个端口操作,所以没有line和line state这两个参数,而增加了一个波形样式参数 Pattern,它返回一个端口所有数字线的状态。其余参数的意义相同。

Pattern参数是一个整型数,它的二进制形式各个位上的0和1对应数字端口8个数字线的状态。用布尔函数子选板的“数值至布尔数组转换”函数和“布尔数组至数值转换”函数,可以将整型数与布尔数组之间进行转换。转换为布尔数组之后,整型数二进制格式各个位的0和1,转换为数组各个成员的FALSE和TRUE,这样与数字线的对应关系更为直观(数组成员索引号与数字端口的数字线序号一一对应)。(3)添加1个数值常量:函数→数值→数值常量。将值设为“1”(板卡设备号)。(4)添加1个数值转布尔数组函数:函数→数值→转换→数值至布尔数组转换。(5)将前面板添加的所有控件对象的图标移到循环结构框架中。(6)将数值常量“1”(板卡设备号)与Read from Digital Port.vi函数的输入端口“Device”相连。(7)将传统DAQ通道控件与Read from Digital Port.vi函数的输入端口“digital channel”相连。(8)将Read from Digital Port.vi函数的输出端口“Pattern”与数值至布尔数组转换函数的输入端口“数字”相连。(9)将数值至布尔数组转换函数的输出端口“布尔数组”与数组控件(标签为“输入端口显示”)的输入端口相连。(10)将停止按钮控件与While循环结构的条件端口相连。

设计的框图程序如图2-13所示。图2-13 框图程序

3.运行程序

单击快捷工具栏“运行”按钮,运行程序。

通过接近开关打开/关闭数字量输入6通道“开关”(或用导线将16和50端口短接或断开),产生开关(数字)输入信号,程序画面中信号指示灯颜色改变。

程序运行界面如图2-14所示。图2-14 程序运行界面

实例2 PCI-6023E数据采集卡数字量输出

一、设计任务

采用LabVIEW语言编写程序实现PC与PCI-6023E数据采集卡数字信号输出。

任务要求:在 PC 程序画面中执行“打开/关闭”命令,画面中信号指示灯变换颜色,同时,线路中数字量输出端口输出高/低电平,信号指示灯亮/灭。

二、线路连接

PC与PCI-6023E数据采集卡组成的数字量输出线路如图2-15所示。图2-15 PC与PCI-6023E数据采集卡组成的数字量输出线路

首先将PCI-6023E数据采集卡通过R6868数据电缆与CB-68LP接线端子板连接,然后将其他元器件连接到接线端子板上。

图2-15中,数据采集卡数字量输出1通道(PO.1,端口17)接三极管基极,当计算机输出控制信号置17端口为高电平时,三极管导通,继电器KM常开开关KM1闭合,指示灯L亮;当置17端口为低电平时,三极管截止,继电器KM常开开关KM1打开,指示灯L灭。

也可使用万用表直接测量各数字量输出1通道与数字地(如端口17与端口53)之间的输出电压(高电平或低电平)来判断数字量输出状态。

其他数字量输出通道信号输出接线方法与1通道相同。

也可不连线,使用万用表直接测量数字量输出1通道(端口17与端口53)之间的输出电压(高电平或低电平)。

注意:在进行LabVIEW编程之前,首先必须安装NI板卡驱动程序以及传统DAQ函数。

三、任务实现

方法1:采用读写一条数字线的方式实现数字量输出

1.设计程序前面板

新建VI。切换到LabVIEW的前面板窗口,通过控件选板给程序前面板添加控件。(1)为了显示数字量输出状态,添加1个指示灯控件:控件→布尔→圆形指示灯。标签为“指示灯”。(2)为了改变数字量输出状态,添加1个滑动开关控件:控件→布尔→垂直滑动杆开关。标签为“置位按钮”。(3)为了设置数字量输出端口号,添加1个数值输入控件:控件→数值→数值输入控件。标签为“端口号”。(4)为了设置板卡通道号,添加1个通道设置控件:控件→I/O→传统DAQ通道。标签改为“Traditional DAQ Channel”(传统DAQ通道)。初始值设为0,并设为默认值。(5)为了关闭程序,添加1个停止按钮控件:控件→布尔→停止按钮。

设计的程序前面板如图2-16所示。

2.框图程序设计

切换到LabVIEW的程序框图窗口,添加节点与连线。(1)添加1个循环结构:函数→结构→While循环。

以下在While循环结构框架中添加函数并连线。(2)添加1个写数字量函数:函数→测量 I/O→Data Acquisition→Digital I/O→Write to Digital Line.vi,如图2-17所示。该函数用于把用户指定的一个数字口上的某一位设置为逻辑1或0。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载