精华内容
下载资源
问答
  • labview总结

    2019-09-03 23:11:20
    labview是NI公司推出的一种图形化编辑编程语言,特点是代码图形化。 数据流是labview编程的核心,字符串输入控件就是数据源,数据最终流入的是显示控件; 文件后缀为VI(虚拟仪器),VI包括前面板和程序框图,控件...

    基本概念

    labview是NI公司推出的一种图形化编辑编程语言,特点是代码图形化。

    1. 数据流是labview编程的核心,字符串输入控件就是数据源,数据最终流入的是显示控件;
    2. 文件后缀为VI(虚拟仪器),VI包括前面板和程序框图,控件放前面板,函数放程序框图,在前面板放置显示控件后,在程序框图会自动出现对应的接线端子,以供数据的流入和流出。
    3. 控件是数据的容器,数据不能离开控件而独立存在(移位寄存器和常量除外),一般的控件具有属性、方法和事件。属性就是一些外观、标签等,“值” 属性
    4. labview中类似记录或结构的数据类型,成为“簇”。

    基本控件

    布尔控件分为按钮型和开关型,对应现实世界,按钮型按下时改变状态,释放后自动恢复到原来的状态;开关型,改变状态时,保持在一个稳定状态,直到下一次改变为止。

    变量

    对于已经存在的局部变量,通过剪贴板复制局部变量是不可行的,这样会生成一个新的控件,最好的方法是按下Ctrl键后用鼠标拖动局部变量来克隆。
    对于控件、常量、局部变量、属性节点、引用和方法的创建中,其中都包括了按下Ctrl键拖动鼠标的方法,这种方式称为克隆,克隆与复制粘贴不同,复制粘贴会创建新的控件,但克隆确实同一控件的局部变量和属性节点等等

    属性节点

    函数

    labview对数据的所有操作都是通过各种基本函数实现的。
    节点是程序框图上的对象,类似于文本编程语言中的语句、运算符、函数和子程序。它们带有输入/输出端,可以在VI运行时进行运算。LABVIEW提供以下类型的节点:

    1. 函数:内置的基本函数
    2. 子VI
    3. Express VI
    4. 结构
    5. 公式节点和表达式节点
    6. 属性节点和调用节点
    7. 通过引用节点调用:调用动态加载的VI的结构
    8. 调用库函数:标准库或DLL的结构
    9. 代码接口节点:调用文本语言的结构
      我们仅讨论常用需要的1、2、8;

    1. 基本函数

    加减乘除、平方、随机、常量、数组运算、簇运算、位运算、关系运算

    2. 子VI

    LABVIEW里面的子VI概念就相当于其它编程语言里面的函数,调用一个函数就相当于一个子vi,不过LABVIEW里面的子VI仍然可以是独立运行的,毕竟子VI的前面板里有相应的输入控件。
    在这里插入图片描述
    在总程序框图里选中想转为子VI的部分,然后在菜单栏中的<编辑>栏中选择<创建子VI>,值得注意的是有输入的控件也被选中成为子VI时,其控件变为内部输入控件,必须存在。当然除了这种方法,单纯的两个VI仍然是可以连接的,链接的渠道就是连接板,在labview右上角,它长这样:
    在这里插入图片描述
    其中连线板上的每个方格都代表一个接线端。使用矩形分配输入和输出。接线端的颜色代表其连接控件,多的白色的接线端预留给其它地方。

    簇运算

    簇中的元素是有独立标签的,标签代表簇中元素的名称。同时簇中的元素是有次序的,因此有两种方法寻址特定的簇元素:按名称和按次序。

    • 按名称接触捆绑
    • 在这里插入图片描述
    • 选好名称后,就能输出其元素。在错误簇传输中,错误簇包含了三个信息:出错与否(布尔型)、代码、源头。因此选bool型就能够通过条件选择器对条件结构进行控制。

    程序运行结构

    while循环

    while循环至少要执行一次。
    在这里插入图片描述
    内部的即为循环结构,左下角的i为计数接线端,右下角为条件接线端。
    如何将计数接线端读出来呢?
    这就要通过结构隧道,对于结构体的结构隧道而言,如果是发送数据,则仅在第一次迭代时发送,输出则是在最后一次迭代式发送。
    在这里插入图片描述

    for循环

    for循环多了一个循环次数,用法都差不多。

    • for 循环与数组
    • for循环与移位寄存器
      labview的移位寄存器实际上是借用了硬件移位寄存器其先进先出的数据结构的概念。
      前面说道,控件是数据的容器,在循环结构里面,隧道也可以存储数据。因为循环有时需要有一个不断更新的中间变量,labview中移位寄存器就充当了这个中间变量的功能。
    • 隧道
      – 索引隧道:每次循环结束后才传输数据
      在这里插入图片描述
      上图两侧的倒三角和正三角就是移位寄存器,循环一圈后,右侧正三角的值会自动传给相应的倒三角,从而起到了输出的值作为中间变量在下一次迭代使用。
    • for循环与continue和break

    while循环与定时

    while循环不仅可以用于数据计算,也是最基本的设计模式。一个while循环相当于能构成c语言中的main主程序,在labview里就是一个完整的顶层VI,并能编译成EXE文件。
    while循环时是以尽可能快的速度运行,但很多时候我们并需要对内存有如此大的占用率,加入延时更符合实际情况,比如步进显微物镜但隔需要一段时间来采集图像。

    • 延时的时间函数有很多种,不一一介绍。
    • 值得注意的是延时的时间和运行一次的时间的冲突。

    定时结构

    while循环定时的一个缺点是无法保证精确的定时,因为操作系统的限制。
    如果定时要求比较高的情况下,定时结构则成为首选。

    独特的条件结构

    1. 布尔型输入
    2. 错误簇输入
    3. 数值型输入
    4. 枚举型输入
    5. 下拉列表输入
    6. 字符串和组合框输入

    不和谐的顺序结构

    labview属于多线程运行,同一程序框图下放两个同等条件下的加法程序,先运行哪个程序完全是一个随机的行为。有时我们想固定程序执行顺序,顺序结构就派上用场了。

    1. 平铺式顺序结构

    2. 堆叠式顺序结构
      顺序局部变量:
      在这里插入图片描述

    局部变量、内置局部变量和功能全部变量

    局部变量

    局部变量作用于当前的VI,局部变量代表控件的值属性,而不是其本身。

    1. 用于初始化;
    2. 间隔数据存储或显示数据。
      2.1 实际工程应用中,一般采集的数据量很大,不需要全部存储,可以按照一定时间间隔存储或者显示一部分数据,不需要随时传递数据,这时用局部变量比较合适

    事件结构

    条件结构

    项目

    参考文献

    1. LABVIEW宝典 第二版
    展开全文
  • labview学习总结

    千次阅读 2017-09-21 08:56:50
     labview中的while循环和for循环具有自动索引功能,只不过for循环的自动索引功能是自动开启的,而while循环的功能是默认不开启的。索引隧道是 Lab VIEW 的一种独特功能。一个循环外的数组通过索引隧道连接到循环...

         数据三种形态:常量、输入控件以及输出控件

         基本元素有:字符、数组、簇(相当于结构体)、矩阵、布尔以及比较(同类型的才能进行比较)

         基本的结构有:条件结构(相当于if语句)、循环结构(while和for),顺序结构(平铺式和层叠式),事件结构(相当于中断),定时结构(定时器),公式节点(在公式节点里可以按照c语言的语法进行公式编程)

          

    关于自动索引:

            labview中的while循环和for循环具有自动索引功能,只不过for循环的自动索引功能是自动开启的,而while循环的功能是默认不开启的。索引隧道是 Lab VIEW 的一种独特功能。一个循环外的数组通过索引隧道连接到循环结构上,隧道在循环内一侧会自动取出数组的元素,依顺序每次循环取出一个元素。用索引隧道传出数据,可以自动把循环内的数据组织成数组,最后输出的是一个数组的形式。

           关于其具体的应用如下: http://wenku.baidu.com/link?url=xoq001F-JK6yt1-wrYlClLxQzkf54AxJN-LlTg6XIuVOvh553w-SNvJWl0-LdcDgUD0wl0KAlcMtyGWPSI9-lSapddnA4f6XZsJ6nKmbR7S


    关于位移寄存器:

          For循环结构和While循环结构添加移位寄存器后的结果移位寄存器在循环结构框的左右两侧是成对出现的,一个寄存器右侧的端子只能有一个元素,而左侧的端子可以有多个元素。每次运算时,会将右边的位移寄存器的值传给左边的寄存器,作为输入值,起到迭代的效果。

           关于其运用的有:http://bbs.elecfans.com/forum.php?mod=viewthread&tid=205184&extra=&page=1

         注意:关于位移寄存器,要注意初始化,不然始终记录的是上一次的值。

          重置:http://zone.ni.com/reference/zhs-XX/help/371361H-0118/lvhowto/initializing_shift_regis


    关于局部变量与全局变量:

         局部变量有两种添加的方法,一是右击控件,选择创建/局部变量,二是在程序框图中直接添加。通过添加局部变量,可以将控件转变成读取和写入两种状态,默认的为写入状态,鼠标右击,选择转变成读取状态来改变状态。

          全局变量与局部变量不同,它是在不同的程序之间进行通信。LabVIEW的全局变量是一个独立的VI,它是一种特殊的程序,没有程序框图只有前面板,功能是保存一个或多个全局变量,所以也把全局变量程序称为“容器”。 创建为在程序框图/结构/全局变量。在它的快捷菜单中执行“打开前面板”,或双击全局变量图标,打开全局变量程序前面板,然后在前面板中添加所需要的全局变量控件,可以添加多个控件。


    关于属性节点中值与值(信号):值属性只是改变了值,但属性值(信号)在被写入后还产生了一个值改变事件,可以被事件结构响应。

    展开全文
  • labview新人错误总结

    2016-09-08 17:09:19
    本文针对labview新人常见错误进行总结,希望能够帮到大家
  • labview超链接,返回按钮,从主界面到子界面,然后从子界面还可以回到主界面中
  • LABVIEW视觉模块总结

    万次阅读 多人点赞 2015-11-24 21:37:27
    LabVIEW这么久,对于视觉模块的应用也是不断清晰,利用闲暇时总结一下。 1、用LabVIEW做视觉开发需要哪些模块? 答:首先你得安装LabVIEW的主框架,也就是你所要安装的版本,然后根据相应的版本需要安装DAQmx、...

    用LabVIEW这么久,对于视觉模块的应用也是不断清晰,利用闲暇时总结一下。
    1、用LabVIEW做视觉开发需要哪些模块?
    答:首先你得安装LabVIEW的主框架,也就是你所要安装的版本,然后根据相应的版本需要安装DAQmx、VDM和VAS。
    DAQmx是采集卡所需要的驱动,安装完不会再后面板上显示,注意它是驱动不是模块;
    VDM就叫Vision Development Module,视觉开发模块,安装之后基本的图像处理差不多了
    VAS是VISION Acquisition Software,视觉采集软件,安装NI Acquisitin software后就会有这个NI-IMAQ和NI-IMAQdx
    VBAI是Vision Builder for Automated Inspection,给智能相机用的吧,功能少,我很少用。
    一般情况下,安装VDM和VAS就够用了,其他的按照需求安装即可。
    2、NI-DAQ和NI-DAQmx的区别?NI-IMAQ和NI-IMAQdx的区别?
    答:NI-DAQ是早期采集卡所用的驱动,现在NI已经废弃了,不在开发了;目前NI推荐使用NI-DAQmx,具体的优点就不多说了;
    NI-IMAQ是传统的。NI-IMAQdx是新型的。NI-IMAQ主要用于一些NI自己的板卡,如CL卡、模拟采集卡。NI-IMAQdx可以用于大部分的第三方的工业相机,如1394相机、GIGE相机、USB相机等。

    展开全文
  • Labview与PLC调试总结

    2016-08-25 10:20:42
    Labview与PLC调试总结,记录了再使用labview通过OPC服务器连接西门子S7-200的方法,需要安装DSC工具包。
  • LabVIEW图像处理总结

    2015-06-23 23:26:48
    直方图 均衡 画光标 线性拉伸等处理方法的简单实现和应用
  • 思考总结 Labview

    2016-12-21 21:34:25
    不得不吐槽,Labview的调试真是不方便,特别是和设备一起用,根本就不能设置断点。  其次,各个部分分开来调试好了,验证正确了,再合到一起。   总结 :1、从修改一个有完整功能的程序开始。  2、...

    12 月21日  Wireless voice Link文件夹

    1、问题:packet receiver 如何连续接收?

    目前能接收正确bit,但只能接收存储120byte,如何修改?

    Packet Array:是一个初始化为零的数组,用来存放正确的bit。。。

    IP Array of pkt Nums Received 是一个标志位(1D数组)。。。

     

    2、问题:有voice link的simulation,如何加入到transmitter和receiver中去,实现声音的发送和接收??

    希望能在放假之前解决上面两个问题

     

             努力的方向性,不可闭门造车,前期在Ni的演示demo上去改,试图将其添加成一个可以传输完整信息的程序,结果失败而告终,学习新的东西时,在一条路上行不通时,不要过于执着,浪费太多精力,尽量在现有的可行程序基础上去修改,然后去发现问题。

             静下心来仔细分析程序,看不懂的子vi,不方便调试,应当复制出来调试,下探针。

    不得不吐槽,Labview的调试真是不方便,特别是和设备一起用,根本就不能设置断点。

             其次,各个部分分开来调试好了,验证正确了,再合到一起。

     

    总结:1、从修改一个有完整功能的程序开始。

             2、分块调试。(一定要分块调试,尽管有时候需要做很多准备工作,但是,方便定位问题的出处。往往分块调试是一种一步步脚踏实地,最稳,最快,最有效的方法)

    3、边分析,边记录(描述分析的结果),在思考如何写分析结果的同时,是一个继续深化的过程,思考如何记录的过程中会发现问题

    展开全文
  • LabVIEW知识点总结

    2021-01-11 13:12:05
    CTRL+E:前后面板的切换
  • labview串口通信总结

    2015-11-19 11:51:37
    很长那时间没有弄 LABVIEW串口通信,昨天有个外系的朋友问起来串口通信的问题,说将下面这个labview自带的范例,打开以后运行出错,截图如下: 刚开始我也看怎么出错了,后来静下来好好想想,无非就是两方面的原因...
  • PDF给出了LabView调用DLL的几种方式!供大家学习参考
  • labview2010基础教程 中国铁道出版社 肖成勇 雷振山 魏丽 课程总结
  • LabVIEW 视觉 学习总结(1)

    千次阅读 2019-09-19 18:49:00
    LabVIEW 视觉 学习总结(1) ** 最近因课题需要,将以前利用Halcon进行图像捕捉和处理的部分改由LabVIEW实现。由于之前仅简单使用过LabVIEW,且对视觉方面基础几乎为零,故过程颇为曲折,参考了NI官方文档、CSDN博客...
  • Labview和PLC通讯总结

    2013-10-24 22:21:11
    Siemens S7-200 PLC与NI OPC Server的连接方法使用总结
  • Labview调用dll动态链接库总结,自己写的总结
  • 06@LabVIEW发布功能总结

    2016-01-02 08:22:00
    在没有接触到LabVIEW强大的发布功能前,我时常发愁如何把自己的工具包给别人装上,有时候为了一些特定的安装,需要自己写一个一键安装的程序,时间长了发现还不如直接复制来的快,就是苦了那些用工具包的人 ...
  • 记一次LabVIEW调用DLL崩溃经验总结

    千次阅读 2018-04-28 10:54:30
    记一次LabVIEW调用DLL崩溃经验总结 故障现象 调用完DLL,关闭应用程序时,提示程序异常结束中止 总结经验: DLL中如果创建了线程、共享内存、信号量、设备文件等,关闭的时候一定要Close所有HANDLE DLL中...
  • 虽然NI LabVIEW软件长期以来一直帮助工程师和科学家们快速开发功能测量和控制应用,但不是所有的新用户都会遵循LabVIEW编程的最佳方法。LabVIEW图形化编程比较独特,因为只需看一眼用户的应用程序...小编辛苦总结了...
  • 注意事项总结: **前提:**本文使用的MySQL(8.0.15),连接器(8.0.15),两者的下载地址:https://downloads.mysql.com Labview(2018/32),labview数据库连接工具LabSQL,下载网址:...
  • labview实现机器学习和深度学习的方法总结机器学习深度学习1. **科研用途**:2. **商业用途****LabVIEW/Python 集成工具包- Enthought**Labview VDM 机器学习 Analytics and Machine Learning Toolkit(分析和机器...
  • 当写、删除或者替换文件时发生错误5“LabVIEW:文件已经打开” 原因 word在后台有进程,没有关闭。 解决方法 关闭 word 进程 代码 Other 准备写 关于 ActiveX 的LabVIEW总结
  • ActiveX 技术总结 LabVIEW 可以调用 MATLAB ActiveX 接口提供的 8 个方法和 1 个属性 1ExecuteExecute方法调用 MATLAB 执行一个合法的 MATLAB 命令并将结果以字 符串的形式输出其输入参数 Name为字符串类型变量表示...
  • labview几种多界面跳转方法总结

    千次阅读 2020-05-03 11:01:03
    labview中实现多界面之间切换,目前个人总结出以下几种方法,后续将继续更新,合理使用以下方法可以大大简化程序流程,如下所示: 方法一:使用选项卡控件; ​ 说明:多个平行事件之间的切换时使用较方便。 ...
  • 1.feedback node的功能和用法; 2.队列的操作,和事件结构的结合,等等;... 5.labview调用dll文件(和CIN的比较); 6.labview中全局变量和局部变量的深入理解; 7.VI的引用是怎么回事;...
  • 描述虽然NI LabVIEW软件长期以来一直帮助工程师和科学家们快速开发功能测量和控制应用,但不是所有的新用户都会遵循LabVIEW编程的最佳方法。LabVIEW图形化编程比较独特,因为只需看一眼用户的应用程序,就马上可以...
  • labview实现机器学习和深度学习的方法总结 机器学习深度学习1. 科研用途2. 商业用途2.1 LabVIEW/Python 集成工具包- Enthought2.2 Labview VDM2.3 Deep Learning Toolkit for Labview2.4 DLHUB2.4 python封装 ...
  • labview宝典

    2016-01-06 16:05:25
    labview讲解细致,labview工程师十年经验总结,700多个vi案例
  • Labview宝典

    2017-12-21 14:29:35
    全书共分为3篇,其中:入门篇归纳总结LabVIEW编程人员必须掌握的基础知识,包括LabVIEW的基本概念、基本函数的用法和常用的运行结构,以及LabVIEW的基本数据结构和文件存储方式;高级篇细致地讲解了引用、属性、...
  • ②写入时有时失败,在LabVIEW中关联的变量数值已经更新了,但是在MX Configure中未更新,经过测试,把LabVIEW程序中包含写入OPC地址的前面板打开,即可正常写入(实际上,只要前面板未打开,几乎都写不进去),所以这...

空空如也

空空如也

1 2 3 4 5 ... 14
收藏数 268
精华内容 107
关键字:

labview总结