LabVIEW组态编程的五大经验总结,助你开发过程事半功倍

2023-11-17

        虽然NI LabVIEW软件长期以来一直帮助工程师和科学家们快速开发功能测量和控制应用,但不是所有的新用户都会遵循LabVIEW编程的最佳方法。LabVIEW图形化编程比较独特,因为只需看一眼用户的应用程序,就马上可以发现用户是否遵循编码的最佳方法。有些用户会犯这些错误是因为他们没有真正理解LabVIEW框图数据流背后的原理,而有些用户则是不知道哪些特性可提高LabVIEW编程质量。

        小编辛苦总结了经验欠缺的LabVIEW程序员最经常犯的一些编程错误,同时也提供了采用正确LabVIEW编程方法的建议。

        e5b45eb6aeec7d19e388a5c91399de53.png

                                                                  LabVIEW新手典型“杰作”

一、过度使用平铺式顺序结构

        许多LabVIEW新手并不完全了解“数据流”执行背后的概念,而这些概念却是LabVIEW编程的基础。其中一个现象是用户往往在程序框图中过度使用平铺式顺序结构。用户经常依赖平铺式顺序结构来实现程序框图的代码串行执行,而不是使用数据流和节点之间的连线。

8cadd79d98d6cf3e7dd26d8865c2cb51.png

                           用户往往过度依赖平铺式顺序结构,而没有充分理解数据流编程概念。

        数据流编程是指只有在所需的数据输入全部到达时,框图上的节点(子VI、本原、结构等)才开始执行。这对于使用LabVIEW的程序员来说非常有用,因为独立的进程本身就可以实现并行运行,而命令式语言却需要额外的设置才能实行并行执行。

        随着计算机CPU的不断增多,LabVIEW可自动分解并行流程,提高代码性能,而无需用户编写任何额外代码。而强行使用平铺式顺序结构来执行程序框图不仅会限制并行运行,还会丧失这一优势。限制程序框图中不必要的结构有助于提高整体可读性和保持更简洁的框图。

        错误连线可以有效地实现程序框图上的数据流,而不需要依靠平铺式顺序结构,此外错误连线还有助于实现错误处理策略。

二、何时应该使用平铺式顺序结构?

        平铺式顺序结构的数据流不同于其他结构的数据流。 所有连线至帧的数据都可用时,平铺式顺序结构的帧按照从左至右的顺序执行。 每帧执行完毕后,将数据传递至下一帧。 即一个帧的输入可能取决于另一个帧的输出。

                                                   a25e21c78ce82dbc09f8c4605a75c826.png

        与层叠式顺序结构不同,平铺式顺序结构中不必使用顺序局部变量在帧与帧之间传递数据。 平铺式顺序结构在程序框图上显示每个帧,故无需使用顺序局部变量即可完成帧与帧之间的连线,同时也不会隐藏代码。  

图片高亮处理编程_labview组态编程的五大经验总结,助你开发过程事半功倍_weixin_39637924的博客-CSDN博客

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

LabVIEW组态编程的五大经验总结,助你开发过程事半功倍 的相关文章

  • LabVIEW FPGA PCIe开发讲解-实战篇:实验61:PCIe DMA+8位ADC(模拟数据采集卡)

    1 实验内容 现在很多电脑PC或者工控机主板上面都集成了PCIe插座 可以直接插入PCIe板卡 优点是卡槽标准 插拔简单 传输速度极快 对于高速采集测试测量领域 PCIe用途非常广泛 最大极限带宽可以到6 6GB s 这个速度可以直接用来做
  • SQL Server远程连接的设置

    SQL Server正常连接时 若不需要远程操控其他电脑 可以用Windows身份验证模式 但是涉及到远程处理时 需要通过SQL Server身份验证登录 具体操作如下 首先 我们在登录时 选择Windows身份验证 然后连接到服务器 图1
  • 64位操作系统(WIN10)+32位LabVIEW(2020)+64位MySQL,Windows10系统下用32位ODBC连接MySQL

    1 首先得安装 Connector ODBC 就是MySQL的ODBC驱动 这个是与应用程序相关的 而不是与操作系统相关的 也就是说 不管你的系统是X64还是X86 只要你的应用程序是X86的那么 Connector ODBC 就要安装X8
  • 第一课:LabView2015中文版安装教程

    1 下载解压缩 双击文件 2015LV WinChn exe 将 点击unzip解压 解压路径为默认为 C National Instruments Downloads LabVIEW Chinese 2015 2 软件成功解压后 自动弹出
  • Tango和ROS在LabVIEW的联合测试

    环境 LabVIEW2018 32位 Tango ROS for LabVIEW Software v2 1 0 2 步骤 目标 变量传递顺序 Tango Client Tango Server ROS Publisher ROS Subs
  • LabVIEW 可配置正交频分复用软件定义无线电收发器

    OFDM 正交频分复用 是使用大量具有谐波频率间隔的调制载波并行传输数据的技术 从而使载波彼此正交 正交性允许以后可以分离的通道的频谱重叠 很像正交调制 SDR 软件定义无线电 是指一种无线电通信系统 可以配置为通过可编程硬件平台在大频谱范
  • Labview+Hsl通讯(与欧姆龙NX1P2通讯)

    通过和欧姆龙客服沟通 NX1P2不支持fins tcp与OPC UA 但是支持FINS UDP通讯 没办将就用吧 这里PLC IP 192 168 250 0 1 端口 9600 下面是测试图 PC端的端口随意填就行 不要和PLC端口重复就
  • 发电机励磁装置LabVIEW 和MATLAB/Simulink联合仿真

    一 主要内容 实现发电机励磁装置的独立运行 测试学习及动态参数优化 开发一款发电机励磁装置虚拟仿真系统 为便于和励磁装置进行控制器域网 Controller Area Network 简称 CAN 通讯并实现友好的人机界面 主程序基于Lab
  • LabVIEW串口通信实际操作

    理论基础 LabVIEW串口通信基础知识 读取串口字节 我们新建一个空白 VI 借助串口调试助手和虚拟串口 在 LabVIEW 中编写的一个最简单的例子 写一个基本的读取串口字节的程序 在程序框图中编程如下 注意这里 串口配置放到循环外 不
  • Arduino和LabVIEW射频校园火警系统

    该项目的目的是设计一个用于校园火灾警报的监控系统 该系统分为两个部分 1 发射器部分和 2 接收器部分 其方式是 它将在发射器部分的火灾传感器的帮助下感应周围的火灾 并与接收器进行通信 使用2 4 GHz RF调制解调器无线连接 在接收端
  • LabView编程基础:隧道和移位寄存器

    目录 一 隧道 二 隧道运行结果 三 移位寄存器添加方法1 从隧道替换为移位寄存器 四 移位寄存器方法1运行结果 五移位寄存器添加方法2 直接添加移位寄存器 六 移位寄存器方法2运行结果 七 切记 移位寄存器必定成对出现 否则程序会出现编译
  • 使用labview 的http协议实现post和get,带解析

    1 创建一个新项目 右键点击我的电脑 新建web服务 然后就弹出web资源和启动VI 2 web资源新建一个VI HTTPMethed 1 vi 用来相应post data的数据 右键可以显示方法url HTTPMethed 1内容如下 3
  • LabVIEW2020 利用LabSQL访问MySQL8.0.17.0数据库方法和注意点

    由于工作需要 需要通过Labview软件访问MySQL 在这之前百度了方法 按照方法一步一步实现 始终无法实现 最后通过各种百度各种方法试 终于成功了 现在将方法记录如下 一 需要软件 MySQL 数据库软件 我的是Mysql 8 0是64
  • vue发展历史简介

    基本介绍 Vue 是一套用于构建用户界面的 渐进式框架 与其它大型框架不同的是 Vue 被设计为可以自底向上逐层应用 最初它不过是个人项目 时至今日 已成为全世界三大前端框架之一 github 上拥有 17 8万 Star 领先于 Reac
  • 如何向我的 C++ 应用程序添加一个简单的 API 以供 LabView 访问?

    我有一个用 C Visual Studio 6 0 编写的数据采集程序 一些客户希望通过自己的定制软件或 LabView 来控制软件 我想提出一个简单的 API 和一个可以分发给他们的 dll 并且想要一些关于如何开始的提示 这将是非常基本
  • 在python中读取TDMS文件如何使用tdms info命令?

    我想知道Labview生成的tdms文件的内容是什么 按照此site 我用Python写 import numpy as np from nptdms import TdmsFile from nptdms import tdms read
  • 使用或不使用 NI Vision 从二进制缓冲区/文件创建 LabVIEW IMAQ 图像

    假设您有一个表示二维图像的二进制缓冲区或文件 如何使用 LabVIEW 将二进制数据转换为 IMAQ 图像以便进一步处理 借助 NI 视觉 对于 LabVIEW 用户已安装 NI 视觉库的人 有一些 VI 允许从 2D 数组复制 IMAQ
  • 如何在 LabVIEW 中的文本框指示器和滑块中显示值?

    有没有办法连接 LabVIEW 前面板上的两个指示器 使它们始终具有相同的值 现在我每次都将两者设置为相同的值 但如果有一种方法可以设置一个来镜像另一个 那就容易多了 您可以使数字显示可见 右键单击滑块并从可见项目中选择 数字显示
  • Labview - 通过数组大小限制增加数组索引

    我正在使用labview XY线图 该图使用随机数生成器生成y值 并使用while循环计数生成x值 当达到阈值 x 值 例如 1000 时 我希望能够迭代过去的 1000 个值并仅每 10 个值显示一次 这具有整理绘图的效果 理想情况下 实
  • 如何解决 Labview 加载冲突

    我正在 Labview 中开发一个数据采集程序 该程序使用多个平移台 相机 高速数字化仪和其他仪器 我正在一台计算机上开发该应用程序 并将其部署到另一台计算机上 开发计算机具有labview 2013 而要部署应用程序的计算机当前具有Lab

随机推荐

  • php 随机生成指定金额范围内的随机数

    function random bag money total personal num min money money total 20 personal num 19 min money 1 money right money tota
  • CSS之设置图片宽度100%,高度等于宽度

    html代码如下 div class left div class img img src static img face 2 jpg div div stulus语法 img position relative width 100 hei
  • DDD-笔记

    先说下传统系统设计 大部分从数据库开始 自底向上的设计 这种设计会使系统的设计受到数据库的影响 会有比较大的局限性 比如说 数据库仅有数据 没有行为 而对现实世界的描述则会更加抽象 更加远离业务 开发团队通过与产品或客户的沟通 直接设计表模
  • Python 快速验证代理IP是否有效

    有时候 我们需要用到代理IP 比如在爬虫的时候 但是得到了IP之后 可能不知道怎么验证这些IP是不是有效的 这时候我们可以使用Python携带该IP来模拟访问某一个网站 如果多次未成功访问 则说明这个代理是无效的 代码如下 import r
  • mysql到hive调度工具_调度工具(ETL+任务流)

    1 区别ETL作业调度工具和任务流调度工具 kettle是一个ETL工具 ETL Extract Transform Load的缩写 即数据抽取 转换 装载的过程 kettle中文名称叫水壶 该项目的主程序员MATT 希望把各种数据放到一个
  • RMAN.DBMS_RCVCAT 版本错误处理

    oracle xml oms rman target sys oracle1 emdb catalog rman rman emdb Recovery Manager Release 10 2 0 5 0 Production on Wed
  • Java中的函数使用

    Java中函数是一段可重复使用的代码块 可接受输入参数并返回结果 函数的定义通常包括函数名 参数列表和返回类型 在Java中 函数也被看作是对象 具有属性和方法 本文将从多个方面详细阐述Java中函数的使用和注意事项 一 函数的定义和使用
  • Oracle---day01

    一 简单查询语句 1 去重查询 和mysql的一样 select distinct job from emp select distinct job deptno from emp 去除job相等且deptno相等的结果 2 查询员工年薪
  • Hanlp本地化安装

    环境说明 系统 centos7 x python版本 3 9 0 这里安装完整版本hanlp full 精简版会有不少问题出现 没有找到解决方案 官网安装地址 https hanlp hankcs com install html 2 x
  • HTML简介

    目录 话不多说 先上一个HELLO WORLD 什么是 HTML HTML 标签 HTML 文档 网页 例子解释 话不多说 先上一个HELLO WORLD h1 我的第一个标题 h1 p 我的第一个段落 p 什么是 HTML HTML 是用
  • octave 机器学习_使用Octave开发机器学习算法

    octave 机器学习 Octave is an open source high level programming language designed to perform efficient numerical computation
  • 深度学习大数据

    CAFFE深度学习交流群 532629018 国内数据 链接 http pan baidu com s 1i5nyjBn 密码 26bm 好玩的数据集 链接 http pan baidu com s 1bSDIEi 密码 25zr 微软数据
  • java调用自己写的类型_Java基础——自定义类的使用

    自定义类 我们可以把类分为两种 1 一种是java中已经定义好的类 如之前用过的Scanner类 Random类 这些我们直接拿过来用就可以了 2 另一种是需要我们自己去定义的类 我们可以在类中定义多个方法和属性来供我们实际的使用 什么是类
  • Android ViewGroup提高绘制性能

    如果下面有很多子View 绘制的时候 需要开启其子View的绘制缓存功能 从而提高绘制效率 public void setChildrenDrawingCacheEnabled boolean enabled final int count
  • 全国职业院校技能大赛云计算技术与应用大赛国赛题库答案(1)

    文章目录 IaaS 云计算基础架构平台 IaaS 云平台搭建 IaaS 云平台运维 IaaS 云计算基础架构平台 IaaS 云平台搭建 1 设置主机名 防火墙设置以及 SELinux 设置如下 1 设置控制节点主机名 controller
  • 产业AI公开课正式开播!60分钟解读AI对金融科技的全新破局

    京东数科 产业AI公开课 第一季第一期 重 磅 开 播 行业热门话题 实力业内大咖 深度解读 经典对话 绝对让你这1个小时的时间欲罢不能 干货满满 从SARS到这次新冠肺炎 黑天鹅 事件对资本市场造成极大影响 不同时期的应对之道有何不同 疫
  • 欧拉函数(数论)

    include
  • 团队的远程管理_远程团队指南:如何管理您的远程软件开发团队

    团队的远程管理 Guides to help you work remotely seem to have swept through the Internet these days 这些天来 帮助您远程工作的指南似乎席卷了Internet
  • GPIO相关知识点注解

    一 GPIO工作方式 1 1 GPIO输入 输入工作方式 输入路径 输入浮空模式 I O I O I O端口 gt
  • LabVIEW组态编程的五大经验总结,助你开发过程事半功倍

    虽然NI LabVIEW软件长期以来一直帮助工程师和科学家们快速开发功能测量和控制应用 但不是所有的新用户都会遵循LabVIEW编程的最佳方法 LabVIEW图形化编程比较独特 因为只需看一眼用户的应用程序 就马上可以发现用户是否遵循编码的