当前位置:首页 > 测试测量 > 测试测量
[导读]除了MATLAB节点,LabVIEW还提供了公式节点。在公式节点中可以用非常接近C的语法编写代码实现计算。之所以说是“非常接近C”是因为在一些细节上它和C还是有些许差别。 这次拿之前在《学习LabVIEW(八)&md

除了MATLAB节点,LabVIEW还提供了公式节点。在公式节点中可以用非常接近C的语法编写代码实现计算。之所以说是“非常接近C”是因为在一些细节上它和C还是有些许差别。
这次拿之前在《学习LabVIEW(八)——用循环处理数组》中给出的代码做实验,将最内层的循环改用公式节点来实现。之前的最内层循环如下图所示:


其实现的运算相当于:
z = 0
for k in range(128):
z = z * z input;
if abs(z) > 2:
break

还没有习惯G语言的时候看到这个框图还真是一眼难以看出运算的表达式。对于常年使用文本形式的编程语言的人而言,用公式节点改写这个迭代过程的话一定会直观很多吧。
但是一旦用起来才发现一个严重的问题:公式节点不支持复数!想来也在意料之中,毕竟是基于C的语法,而C在C99标准之前没有内置的复数支持。也许对复数的支持是未来语言的趋势,已经有越来越多的语言或是内置,或是以库的方式提供了对复数的支持。但不管怎么样,我们现在用的公式节点是没有复数支持的,如http://digital.ni.com/public.nsf/allkb/9A31DC2FF5C7C5DF86256B45007AA115所述。如果用极坐标的方式描述复数,我们就得手动展开复数的加法,如果用直角坐标的形式描述,就得手动展开复数的乘法。想想还是用直角坐标的形式吧。
一开始写了如下的一段代码,可是运行怎么也不对:


复数的展开怎么看也没有错误啊。
最后在MATLAB中试着算了一下,终于发现出问题的地方了:在for循环内部,将实部的计算结果赋值给了zReal,在下一行计算zImag时,用的zReal就已经是新的zReal值了,而这里所需要的是上一次的zReal值。居然会犯这种错误,难道是很多年前写Verilog代码的后遗症?
解决方法很简单,在第一行计算实部的时候,将计算结果保存在另一个变量temp中,等zImag计算完成之后,再将temp中存储的值赋给zReal。修正的程序如下图所示:


还有一点需要注意的就是公式节点似乎没有“double”,取而代之的是“float64”。
总结一下感想,公式节点不支持复数,Array Programming也不及MATLAB,对其描述能力有点失望。但因为不用像MATLAB节点那样通过ActiveX通道进行进程间的通信,效率应该还是可以的。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

NI提供的软件包经济省时,不仅帮助开发人员节省时间,还为创客提供了新的机遇

关键字: LabVIEW 自动化测试系统

强大的图形化编程工具使整个测试和测量过程的各个方面实现可视化

关键字: LabVIEW 图形化编程工具

摘要:对于每一型新机试飞,或者是重大的研究性试飞和验证试飞,都必须实施遥测监控。现基于TTS(TextToSpeech)语音合成技术,结合飞行试验遥测监控系统的不足,利用TTS引擎在LabVIEW开发环境下设计并实现了遥...

关键字: 飞行试验遥测监控系统 TTS LabVIEW

在科研以及应用软件领域,LabVIEW和MATLAB作为比较常用的2款工具,相信很多人都用过吧。简单的概括一下,LabVIEW侧重测试测量和数据采集,MATLAB侧重科学计算和数据分析。

关键字: LabVIEW matlab 混合编程

摘要:利用单片机和虚拟仪器LabVIEW在PC端设计了温湿度测量及控制系统,用于温湿度数据监测。该系统上位机为PC端监控界面,下位机为单片机,单片机采集温湿度数据,并将采集到的数据通过串口发送给监控界面进行监测和管理。该...

关键字: DHT11 LabVIEW 单片机

摘要:当前闭环步进电机在自动化设备中的应用越来越广泛,故为了进一步满足闭环步进电机的应用需求,采用LabVIEW上位机+运动控制卡+驱动器模块的控制方案进行了多轴运动系统的设计,通过设计的上位机软件实现闭环步进电机的实时...

关键字: 闭环步进电机 精度测试 LabVIEW

摘要:为满足某扭矩检测试验标准要求,基于LabView设计开发了一款扭矩检测装置,该装置能检测某类零部件的断裂力矩,满足试验标准要求,其他零部件的扭矩也可在该装置上检测。类似的扭矩装置可参考该装置进行设计。

关键字: 伺服电机 LabVIEW PLC

在下述的内容中,小编将会对LabVIEW的相关消息予以报道,如果LabVIEW是您想要了解的焦点之一,不妨和小编共同阅读这篇文章哦。

关键字: LabVIEW 测试测量 NI

一直以来,LABVIEW都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来LABVIEW的相关介绍,详细内容请看下文。

关键字: LabVIEW 测试测量 测试仪器

摘 要 :为了实现对患者的远程诊断或监测,设计了相应的硬件模块采集心电、心率、脉搏、血氧饱和度和体温等生理信号,采集到的用户生理参数通过 WiFi 传输至上位机。上位机采用 LabVIEW 实现对用户生理参数的处理与显示...

关键字: 无线传输 生理参数监测 LabVIEW QRS 波形检测 微信小程序 单片机
关闭
关闭