news 2026/2/28 19:48:35

基于LabVIEW的监控系统设计

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于LabVIEW的监控系统设计

第二章 程 序 结 构
计算机编程的实践证明,仅仅有顺序执行的语法和语义是不够的,还必须有循环、分支等特殊的控制程序流程的程序结构才可能设计出功能完整的应用程序。
这一章将要介绍LABVIEW远程监控系统为所常用的程序结构,包括While loop(While循环)、 Case Structure(分支结构)、顺序结构、For循环以及公式节点等。前三种可以在Functions->Execution Contorl子模板上找到,其余的可以在Functions->All Functions->structures子模板上找到.
2.1循环结构
2.1.1 While循环
如图(2-1)所示为Functions->Execution Contorl子模板,While循环是该子模板上的第一个模块.在这个子模板上还有Flat Sequence和Case Structure两种程序结构,Tume Delay 和Elapsed Time两个Express VI用于程序的时间控制.这里先介绍While循环.

图(2-1) Execution Contorl子模板和While循环模块
2.3顺序结构
在LABVIEW中,得用数据流机制可以实现很多顺序执行功能.但是只有数据流控制的顺序执行机制是不够的,在某些情况下,需要更强的顺序执行控制结构.Suquence就是为了满足这一需求而引入的.下面以平铺顺序结构来对顺序结构作简单的介绍.
2.3.1平铺顺序结构
平铺顺序结构电初建立只有一帧,需要在边框上弹出快捷菜单中选取择Add Frame After,将这一帧的后面添加一个空白帧, 平铺顺序结构在Functions->Execution Contorl和Functions->All Functions->structures子模板上都能找到,其结构如图2-11所示.

下面以一个不铺结构的例子来对其进行说明,如图3-12所示:

图(2-12)平铺顺序结构示例
第三章 图形显示
3.1 概述
图形显示对于虚拟仪器面板设计是一个重要的内容。LabVIEW为此提供了丰富的功能。在前面几章我们已经接触了这个问题,现在较系统地介绍一下。
我们不从图形的实现方法上去讨论问题,那是计算机图形学的课题。但我们需要从用户的可能的需求角度探求一下,如果你需要做虚拟仪器方面的开发,那么可能遇到些什么图形问题。LabVIEW在这方面所做的工作是非常值得借鉴的。
在LabVIEW的图形显示功能中Graph和Chart是两个基本的概念。一般说来Chart是将数据源(例如采集得到的数据)在某一坐标系中,实时、逐点地显示出来,它可以反映被测物理量的变化趋势,例如显示一个实时变化的波形或曲线,传统的模拟示波器、波形记录仪就是这样。而Graph则是对已采集数据进行事后处理的结果。它先将被采集数据存放在一个数组之中,然后根据需要组织成所需的图形显示出来。它的缺点是没有实时显示,但是它的表现形式要丰富得多。例如采集了一个波形后,经处理可以显示出其频谱图。现在,数字示波器也可以具备类似Graph的显示功能。
LabVIEW的Graph子模板中有许多可供选用的控件,其中常用的见下表:

3.6 数字波形图控件(Digital Waveform Graph)
该控件的例子见图3-5。面板上有一个输入控制,共输入了7个十进制数,还有一个二进制显示对象,显示了这些十进制数对应的二进制数,最右边是一个Digital Waveform Graph。注意这个图中数据应当从纵方向读出,在横坐标上的刻度是数据的序号(0到6),其中最后一个数的序号是6,纵坐标从下向上读是11111111,第一个数的序号是0,其值从上向下读是00000001,而第二个数(序号1)是00000010。

该程序的框图中值得注意的问题有以下几点:
十进制数可以直接送给Digital Waveform Graph,不必事先转化为二进制数。
在送给Digital Waveform Graph之前,需要经过一个捆绑(bundle函数)。
捆绑的顺序是x0、deltx 、输入数据,最后是Number of Ports。这里的Number of Ports将反映二进制的位数或字长,为1时是8位,为2时变为16位,余类推。
第四章 数 据 采 集
数据采集是LABVIEW的核心技术之一。LABVIEW提供了与NI公司的数据采集硬件相配合的丰富的软件资源,使得它能够方便地将现实世界中各种物理量数据采集到计算机中,从而为计算机在测量领域发挥强大的功能奠定了基础。本章主要介绍LABVIEW的数据采集功能。
4.1数据采集基础
4.1.1数据采集系统的构成
要将数据采集到计算机里,并对共进行全理的组织,需要建一个完整的数据采集(Data AcQuisition,DAQ)系统。它包括:传感器和变换器、信号调理设备、数据采集卡、驱动程序、硬件配置管理软件、应用软件、计算机等。使用不同的传感器和变换器可以测量各种不同的物理量,并将它们转化成最信号;信号调节设备可对采集到的电信号进行加工,使它们适合数据采集卡等设备的需求;计算机通过数据采集卡等获得测量数据;软件则控制着整个测量系统,它告诉采集设备什么时候从那个通道获取数据,同时还要对原始数据进行分析处理,并将最后结果表示成容易理解的方式,例如图表、文件等。
传感器和变换器的种类繁多,客观存在们直接与各种物理量打交道,并将这些物理量转换为DAQ系统可以采集的电信号。在设计自动化测量系统前,必须要对侍测对象和测量需求作出详细的分析,从而正确选择合适的传达室感器和变换器。
信号调量设备对传感器和变换器送来的信号采取放大、滤波、隔离等措施,将它们转化成采集设备容易读取的信号。如果实际的信号符合数据采集卡等采集设备的要求,则信号调理模块可以省略。
采集设备将信号传达室送到计算机中,比较常见的是插入式数据采集卡,它可以直接插到台式机的PCI插槽上;还有基于PXI规范的采集设备,它内部可以插入多个数据采集卡,相当于扩展了计算机的PCI插槽;另外还有通过各种其他总线与计算机相连的外置式DAQ设备,总线形式包括并口、串口、USB口以用笔记本电脑中常用的PCMCIA口等;很多仪器也可以通过GPIB等总线与计算机相连,实现数据采集的功能。
要与硬件打交道,首先需要有驱动程序,如NI—DAQmx、传统NI—DAQ、NI—VISA等;根据需要提供应用程序编程接口,再上一层就是LABVIEW等编程环境软件;最后是用户自已根据需要构建的应用程序。
提及的是,NI自LABVIEW7.0以来,提供了二种驱动程序:Traditional NI—DAQ(传统NI—DAQ)和NI—DAQmx.这两种驱动程序分别提供了不同的应用程序编程结构\软硬件设置方法和编程方式,并且在LABVIEW环境中不能同时运行.
4.4 DAQ波形模入
波形采集是指从一个或者多个通道分别采集多个点,从而组成波形。相对单点集来说,波形采集需要使用更多的计算机资源,并且还需要使用缓冲区。以下对使用易用函数和中级模入VI进行波形采集介绍。
4.4.1使用易用函数进行波形采集
本例使用AI Acquire Waveform VI从通道0采集一个波形,其程序如图4-7
所示。
4.4.2 使用中级模入VI进行波形采集
例:使用中级模入VI采集波形
图4-8是该例的程序框图,其功能与上一例相同。
第五章 信号处理与分析
5.1 概述
数字信号在我们周围无所不在。因为数字信号具有高保真、低噪声和便于信号处理的优点,所以得到了广泛的应用,例如电话公司使用数字信号传输语音,广播、电视和高保真音响系统也都在逐渐数字化。太空中的卫星将测得数据以数字信号的形式发送到地面接收站。对遥远星球和外部空间拍摄的照片也是采用数字方法处理,去除干扰,获得有用的信息。经济数据、人口普查结果、股票市场价格都可以采用数字信号的形式获得。因为数字信号处理具有这么多优点,在用计算机对模拟信号进行处理之前也常把它们先转换成数字信号。本章将介绍数字信号处理的基本知识,并介绍由上百个数字信号处理和分析的VI构成的LabVIEW分析软件库。
目前,对于实时分析系统,高速浮点运算和数字信号处理已经变得越来越重要。这些系统被广泛应用到生物医学数据处理、语音识别、数字音频和图像处理等各种领域。数据分析的重要性在于,无法从刚刚采集的数据立刻得到有用的信息,如下图所示。必须消除噪音干扰、纠正设备故障而破坏的数据,或者补偿环境影响,如温度和湿度等。

通过分析和处理数字信号,可以从噪声中分离出有用的信息,并用比原始数据更全面的表格显示这些信息。下图显示的是经过处理的数据曲线。

5.6 曲线拟合
曲线拟合(curve fitting)技术用于从一组数据中提取曲线参数或者系数,以得到这组数据的函数表达式。
通常,对于每种指定类型的曲线拟合,如果没有特殊说明,都存在两种VI可以使用。一种只返回数据,用于对数据的进一步操作,另一种不仅返回系数,还可以得到对应的拟合曲线和均方差(MSE)。
LabVIEW的分析软件库提供了多种线性和非线性的曲线拟合算法,例如线性拟合、指数拟合、通用多项式拟合、非线性Levenberg-Marquardt 拟合等。
曲线拟合的实际应用很广泛。例如:
消除测量噪声
填充丢失的采样点(例如,如果一个或者多个采样点丢失或者记录不正确)
插值(对采样点之间的数据的估计;例如在采样点之间的时间差距不够大时)
外推(对采样范围之外的数据进行估计,例如在需要在试验以后或者以后的数值时)
数据的差分(例如在需要知道采样点之间的偏移时,可以用一个多项式拟合离散数据,而得到的多项式可能不同)
数据的合成(例如在需要找出曲线下面的区域,同时又只知道这个曲线的若干个离散采样点的时候)
求解某个基于离散数据的对象的速度轨迹(一阶导数)和加速度轨迹(二阶导数)
下面是使用LabVIEW提供的算法得到的三种拟合的例子:线形拟合(左上)、指数拟合(右上)、多项式拟合(左下)。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/26 3:06:31

《把脉行业与技术趋势》-82-一个系统是封闭系统,必是熵增系统,走向混乱是必然。一个系统如果要想维持有序与增长,必然是开放系统,从外界吸收额外的多余的能量。地球/太阳是所有地球上的子系统公共的外部能量

命题科学依据关键说明① 封闭系统必熵增(走向无序)热力学第二定律(克劳修斯表述 统计解释)“封闭”指无物质、无能量交换(仅理论模型)。真实宇宙可能近似封闭,但局部皆非。熵增是时间箭头的物理…

作者头像 李华
网站建设 2026/2/26 15:56:48

直接上干货!今天咱们聊聊用西门子S7-200 PLC给豆浆机整流量控制的骚操作,手把手教你从接线到梯形图再到组态画面怎么玩转这套系统

S7-200 MCGS 基于S7-200PLC的豆浆机流量控制 带解释的梯形图程序,接线图原理图图纸,io分配,组态画面先说IO分配这个基础活。豆浆机需要接水位传感器(AIW0)、流量计脉冲信号(I0.0)、温度传感器&a…

作者头像 李华
网站建设 2026/2/26 12:19:25

使用Docker Compose搭建LibreNMS网络监控系统

使用Docker Compose搭建LibreNMS网络监控系统引言一、什么是LibreNMS?二、为什么需要网络监控系统?1. **主动预警,防患未然**2. **快速定位问题**3. **容量规划和趋势分析**4. **满足合规要求**三、LibreNMS能解决什么问题?四、使…

作者头像 李华
网站建设 2026/2/22 23:07:35

Java毕设项目:基于springboot的智园管家果园数字化管理领航系统(源码+文档,讲解、调试运行,定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/2/27 5:12:39

QT软件外包的开发费用

QT(跨平台C图形界面框架)软件外包的开发费用受技术门槛、行业需求及商业许可等多重因素影响。2026年,随着国产化替代(如信创项目)和嵌入式设备的普及,QT开发者的身价依然处于行业高位。以下是QT软件外包费用…

作者头像 李华