学习LabVIEW(三)——观念的转变

发布者:JoyfulJourney最新更新时间:2015-08-20 来源: eefocus关键字:LabVIEW  观念  转变 手机看文章 扫描二维码
随时随地手机看文章
    昨天在《学习LabVIEW(二)——操作.NET泛型类》给出的代码,实际上是有错误的。按照我们的设想,首先调用了Add,将Key-Value对“eleven”-11放入了Dictionary中,然后调用TryGetValue,查找Key: "eleven"对应的Value。所以查询必然应该是成功的。然而,反复执行昨天的代码,偶尔会出现查询失败的情况,如下图所示:
学习LabVIEW(三)——观念的转变

明明已经用Add添加了Key: "eleven",为什么有时候会查询失败呢?原因在于我们使用了错误的观念编写LabVIEW程序。
    传统的计算机语言,本质上以指令的流动为核心编写代码,写出来的代码按照顺序被一条一条执行。但是像LabVIEW和Simulink这样的图形化编程语言,是以数据的流动为核心构造程序的。当程序以数据的流动为核心构造时,有时指令的执行先后顺序就不那么明显了,甚至在不知不觉中一些指令会自动的被并行化执行。关于这一点我曾经咨询过NI的客服,他们曾明确表示过,LabVIEW的运行时内部会自动利用多线程来处理可以并行执行的函数,无需用户的干预。这是一个非常好的特性,而且也是非常符合图形化编程这种以数据流动和核心的编程方式的特点的。
    然而,当我们还是带着以前的以指令为核心编程的观念画LabVIEW程序时,就会不知不觉犯下错误。昨天写入和查询Dictionary的代码段如下图所示:
学习LabVIEW(三)——观念的转变

看起来,从左到右执行的话,似乎Add是先于TryGetValue的。这实际上是图形的绘制方式迷惑了我们。如果简单调整一下各个节点的位置,如下图所示:
学习LabVIEW(三)——观念的转变

以数据流动为核心的LabVIEW就不一定会先执行哪一个函数了。如果先执行的是TryGetValue,就会出现查询失败的情况。
     现在应该怎么解决这个问题呢?LabVIEW以数据流动为核心的编程思想,一方面使自动化的并行编程称为可能,另一方面,使“顺序执行”成了一种需要显示声明的结构;这与传统的语言是非常不同的,传统语言写代码,一行一行的码,一行一行的被执行,自然就是顺序结构。
    我们在工具箱的编程这一栏中找到了用以表示顺序结构的工具:
学习LabVIEW(三)——观念的转变

用这个平铺式顺序结构将需要先于TryGetValue调用的部分框起来,如下图所示:
学习LabVIEW(三)——观念的转变

这样一来,只有框内所有的动作执行完成之后,数据才会继续往下流动,于是再也没有出现查询失败的情况了。
关键字:LabVIEW  观念  转变 引用地址:学习LabVIEW(三)——观念的转变

上一篇:学习LabVIEW(四)——MATLAB script节点
下一篇:学习LabVIEW(二)——操作.NET泛型类

推荐阅读最新更新时间:2024-03-30 23:03

labview串口数据处理_labview串口通信
介绍了一个最简单的串口通信的上位机的例子。单片机不断向串口发送数据。上位机之显示串口发来的数据。 添加上之后前面板会出现 在后面板会出现 一.在后面板添加一个串口配置的控件 接下来对对串口配置控件进行配置 1.“启用终止符”------------配置布尔型变量“T”,就是取真。 2.“终止符”------------我们不对其进行配置,选择默认终止符——“n” 3.’’超时’----------为其配置10000的常量 4.资源名称与“VISA资源名称“控件相连接 5.波特率这里我们为其配置大小为“115200“的常量 6.其余各项不进行配置,默认系统设置 上图为配置完成的结果
[测试测量]
<font color='red'>labview</font>串口数据处理_<font color='red'>labview</font>串口通信
LabVIEW设计模式系列——功能全局变量
标准化:1、图标的标准化 2、模式的标准化Operation:Write & Read 3、xx为变量名称,w为write括号中为默认值,r为read 4、错误输入输出端子 标准: 1、写操作后,读操作也发生,这样就更新了输出值,和变量保持同步 2、有错误输入,输出可控3、有错误输入,不会出现写操作,导致改变功能全局变量的值 3、有多个变量需要同步读写时可以考虑是否用簇打包
[测试测量]
环球资源黄谭伟:中国OEM厂商正在加速向ODM、OBM转变
集微网4月19日报道(记者 张轶群)近日,2018环球资源移动电子展在香港揭幕,环球资源电子组总裁黄谭伟在展会现场接受集微网记者采访时表示,更多中国本土OEM企业开始重视提升生产质量,由OEM向ODM、OBM转型。 作为全球规模最大的移动电子展会,此次展会通过2,800个展位向全球买家展示来自已核实供应商最新的移动电子装置及配件、扬声器和耳机、AR/VR设备及可穿戴产品。 此次展会的一大亮点是首次设立了品牌专区,汇聚100个中国移动电子行业的顶尖及崛起中的品牌。据黄谭伟介绍,设立品牌专区的初衷是能够给更多企业品牌集中展示的机会,同时也反映出经过多年的发展,中国OEM厂商开始注重品牌化建设,向ODM、OEM进阶的过程。 据黄谭伟
[手机便携]
[]LabVIEW应用-Read Excel use ActiveX
在LabVIEW中利用ActiveX读取Excel数据 网络上有很多关于读取Excel的例子,但一直没有找到读取文件中整sheet的数据,所以在这里介绍一下在LabVIEW中利用ActiveX读取文件中整张表格的内容. LabVIEW中利用ActiveX打开Excel分Open Application, Open Workbook & Open Worksheet三个步骤,以下详细描述实现方法: 1. 前面板中放下'自动化引用句柄': 引用句柄 自动化引用句柄; 2. 前面板中右击'自动化引用句柄',在'选择ActiveX类'下选择'Excel._Applicatio
[测试测量]
[]<font color='red'>LabVIEW</font>应用-Read Excel use ActiveX
labview的深入探索----利用DDE实现进程间的数据交换之二
我在 利用DDE实现进程间的数据交换之一 中,谈到了服务器端发送数据和客户端接收数据的方法. 客户端采用REQUEST方式是无法实现服务器发送和客户端接收同步的,如果想要实现,可以采用ADVISE方式,这种方式下,客户端类似于中断方式,服务器发送端ITEM没有数据变化时,接收端一直处于等待状态,一旦服务器端发生数据变化,立即执行数据接收. 服务器端程序框图:(发送数据,100MS更新一次) 客户端接收数据未采用任何DELAY,同样保持100MS的接收速度. 打开对话-- START ADVISE ITEM--- CHECK ADVISE--- STOP ADVISE-- 关闭对话 这样就实现了发送和接收的数据交换
[测试测量]
<font color='red'>labview</font>的深入探索----利用DDE实现进程间的数据交换之二
labview的深入探索----整型数据类型和内存映射
首先要区分的是控件和数据类型的区别. 控件是数据类型的容器,或者说数据类型是控件的一个属性,控件都有一个值的属性,这个值的类型就是控件所代表的数据类型. 描述一个控件是通过类型描述符实现的,它包括控件的名称、控件类型及控件所代表的数据类型等等。 今天要谈的与控件本身无任何关系,是数据类型在内存中如何存储的,或者称作数据的内存映射。 我们知道,无符号整型数有U8、U16、U32、U64 U8 是指8位(BIT),一个字节(BYTE), 值范围:0X00---- 0XFF U16是指16位(BIT),二个字节(BYTE), 值范围:0x0000--- 0XFFFF U32是指32位(BIT),四个字节(BYTE), 值范
[测试测量]
<font color='red'>labview</font>的深入探索----整型数据类型和内存映射
基本 BMS 测试系统
"NI PXI 平台搭配 LabVIEW 开发环境,可迅速设计并建立 BMS 测试平台,其弹性足以测试多组消费性产品,其精确度更可符合 BMS 测试需求。" - Grant Gothing, Bloomy Controls 挑战: 设计并开发弹性、高成本效益的生产测试系统,用于电池平衡 (Battery balancing) 与管理电路板的多项设计,包含模拟锂电池的封装 (最多 12 组电池)、执行高精确度的电压与电流量测,并透过序列/Controller Area Network (CAN) 以沟通受测单位。 解决方案: 以 NI PXI 平台与 NI LabVIEW 开发环境为架构,建立模块化仪控
[测试测量]
基本 BMS 测试系统
基于LabVIEW的气垫船模试验平台测试系统
应用领域: 研发/实验室自动化 挑战: 建立气垫船模试验平台的测试系统,对多通道超低频实验信号进行数据采集、存储、在线分析和离线后处理。 应用方案: 使用NI公司的LabVIEW6.1数据处理软件,配合16位16通道的A/D转换卡—PCI-6034E、SCXI-1102B信号调理模块等硬件设备,开发一个多通道、大数据流的测试系统,对船模的升沉、横摇及纵摇等频响信号加以采集分析处理,为气垫船的设计提供有效的试验参考 使用的产品: LabVIEW6.1 PDS,PCI-6034E,SCXI-1102B及其它配套硬件。 介绍 在气垫技术实验室的建设中采用虚拟仪器技术,基于LabVIEW的强大功能,开发了一套信号采集处理系统
[测试测量]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved