多通道采样系统的LabView实现方案

2017-06-29 09:02轻工业钟表研究所时控部
电子世界 2017年11期
关键词:编程语言图形化采集卡

轻工业钟表研究所时控部 李 斌

多通道采样系统的LabView实现方案

轻工业钟表研究所时控部 李 斌

本文针对某型号多通道压力信息监测系统的上位机监控模块软硬件设计展开讨论。该系统上位机模块以NI的可视化编程语言LabView为基础进行开发,同时采用了市面上技术成熟的数据采集卡集成到工控机主机箱,有效降低了开发周期和维护成本。从开发过程和测试结果来看,使用该软件技术既可以满足多通道信号采样结果的直观显示要求,又能很好的达到灵活调节显示方式和显示内容的效果。

多通道;LabView;数据采集卡

1 引言

随着检测技术开发的发展进步,开发工具趋于多元化、人性化、智能化。这些技术进步使工程师的精力更多放在了开发对象的功能实现上,而不是去挖空心思研究代码报错的细枝末节。除了开发效率显著提高,在众多工程开发过程中,UI(User Interface,用户界面)成为功能需求之后最受客户关注的性能之一。好的操作界面是提高用户体验的重要因素,同时也是企业产品拉拢消费者的重要手段。

本文主要讨论LabView软件在某多通道信号监测系统中的应用。通过该技术手段可以实现上位机对信号的采集、处理、显示等各类功能,并且开发效率极高。

2 系统构成

该系统主要结构的原理框图如图1所示。

图1 多通道压力信息监测系统构成

图1 所示中上位机是本论文所讨论LabView的工作主战场,这里集中了人机交互界面、数据采集卡、通讯卡等模块,最终显示给用户的信息处理基本上要在上位机主机完成。主控单元是利用基于ARM7内核的LPC2194芯片研发的工控设备,用来接收、处理传感器信号,直接驱动执行机构动作,上报相关信息给上位机。在该单元通信部分充分利用了其内嵌的CAN控制模块,提高了研发效率[1]。信号采集单元包含了多种先进的传感器,并且包含了自主研发的信号调理板卡,与选购的数据采集卡兼容。各模块之间通过CAN通讯卡交互,可以很好地满足当前普遍存在的分布控制需求[2]。

3 硬件设计

本系统为大幅缩短研发周期,选用了研华CAN通讯卡PCI-1680U。这是一款专用于CAN网络,可与PC主板通过PCI总线方式连接的通信卡。通过其内置的CAN控制器,利用一系列成熟的总线仲裁技术,极大的降低了失帧现象的发生。在实际控制中,两个CAN控制器可分别独立运行,还兼容3.3 V和5V的信号系统,扩展性很好。

同时,根据对系统各类信号的检测要求,本论文选配了同样支持PCI总线的研华数据采集卡PCI-1741。其采样速率最快可达200KS/s、分辨率达16位,完全满足本系统对模拟信号采样的要求。它还提供16路单端或8路差分输入的模拟信号通道,1路16位D/ A输出通道,16路数字量输出通道,以及1个10MHz的16位多功能计数器通道,在运动控制方面也有强大扩展性。

4 软件设计

4.1 LabView简介

LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一种由美国国家仪器(National Instrument,NI)公司研制开发的图形化编程语言的开发环境,类似于C和BASIC开发环境。它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW集成了与满足 GPIB、VXI、RS-232和RS-485协议的硬件及数据采集卡通讯的全部功能。它还内置了便于应用TCP/IP、ActiveX 等软件标准的库函数。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。它可以增强构建个性化科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用该软件进行原理研究、设计、测试并实现仪器系统时,大大提高了工作效率。

LabVIEW是一个软件开发平台,同时也是一个功能强大且灵活的编程语言。LabVIEW作为一种用图标代替文本行创建应用程序的图形化编程语言,又称为 “G” 语言。它既定义了数据类型、结构类型、语法规则等编程语言的基本要素,也提供了包括断点设置、单步调试和数据探针在内的程序调试工具。传统文本编程语言根据语句和指令的先后顺序决定程序执行顺序,而LabVIEW则采用数据流编程方式,程序框图中节点之间的数据流向决定了VI及函数的执行顺序。使用这种语言编程时,基本上不写程序代码,取而代之的是流程图或框图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW是一个面向最终用户的工具。LabVIEW采用编译方式运行32位应用程序,解决了其它按解释方式工作的图形化编程平台运行速度慢的问题,其运行速度与编译C语言的速度相当,在功 能上和应用上不逊于任何高级语言[3]。

4.2 数据处理模块

本论文涉及大量信号的监测,因此特别设计了多通道采样模块,针对系统中需要对各种快、慢信号进行采样的功能需求进行相应的信号采集与处理。如图2和 图3所示分别为该采样模块的快信 号采样子程序和慢信号采样子程序。

图2 快信号采集与处理子程序

图3 慢信号采集与处理子程序

图4 多通道采样主界面

对于采用了多核处理器的系统,我们也可以针对设计目标对实时性的不同需求,分别规划各个定时循环模块的CPU运行策略。例如实时性较高的快信号采样处理,我们可以采用多核同时运行的方式,而实时性要求较低的模块,手动选择单个处理器内核运算,这样既保证了快信号的实时性,又降低了系统负荷。

上位机通过CAN总线报文得到多通道实时信息,在本论文设计的系统主界面显示结果如图4所示:

5 结束语

从现场测试结果来看,无论是对采样信号处理实时要求高的场景,还是并行采集信息量较大的场景,用Labview都可以完美解决。

在信号处理应用方面,Labview具有先天优势,再加上市场上已经非常成熟的配套硬件也容易获得,使得该软件得到了广泛应用。只是由于成本相对较高,对于价格敏感的工业产品需要慎重采用。

[1]周立功,等编著.ARM嵌入式系统基础教程[M].北京:北京航空航天大学出版社,2005,1(1): 132-379.

[2]程武山.分布式控制技术及其应用[M].北京:科学出版社,2008:1-3.

[3]杨乐平,李海涛,等,LabVIEW高级程序设计[M].北京:清华大学出版社,2003:1-389.

李斌,男,硕士研究生,轻工业钟表研究所时控部助理工程师。

猜你喜欢
编程语言图形化采集卡
高精度AD采集卡性能测试及评价方法研究
压力-体积转换在CFC编程语言中的实现解析
Java编程语言的特点与应用
LKJ自动化测试系统图形化技术研究
浅谈不同编程语言对计算机软件开发的影响
面向数控机床的多通道传感数据采集卡设计
并行高速采样在地震物理模拟采集中的应用
面向对象Web开发编程语言的的评估方法
运用图形化听写式复习,构建高效地理课堂
PCI-e高速数据采集卡的驱动与上位机软件设计