文章目录
定时结构
定时结构功能在LabVIEW中,可以用延时函数或时间延迟函数等来实现,而定时结构的优势在于它可以选择哪个时钟源来定时,尤其是当LabVIEW程序运行在RT、FPGA等设备上时,通过硬件设备来定时,使得定时更加精准。
在Windows中时钟源只能选择1kHz,其他的时钟源需要硬件才能实现。
练习
使用定时结构,实现在1s后数值+1。
- 在程序框图中,鼠标右键-结构-定时结构-定时循环,然后双击左边的边框,即可看到定时结构中的一些设置。
- 在前面板中,放置数值输入控件,然后实现在程序框图中实现1s后数值+1。
运行结果如下:
注意:定时结构的时间误差比使用定时控件的时间误差要小。
条件禁用结构
条件禁用结构包括一个或多个子程序框图,LabVIEW在执行时依据配置的条件只使用里面的一个分支,条件禁用结构是静态的。
条件禁用结构的符号说明:
练习
使用条件禁用结构,当LabVIEW的版本为32位时,数值+2,否则禁用。
- 在前面板中放置数值输入控件,然后在程序框图中,鼠标右键-结构-条件禁用结构,选中该结构,鼠标右键-编辑本子程序框图的条件,最后进行相应的设置即可。
- 再次选择该结构,鼠标右键-在后面添加子程序框图,进行相应的设置
- 最后在LabVIEW版本等于32位的条件下设置数值+2。
- 运行结果:
框图禁用结构
框图禁用结构相当于一个屏蔽罩,类似于文本语言中的注释功能(使得编译器在编译时将其忽略掉)可以将不需要或在调试时暂不要执行的代码屏蔽掉,labview将会跳过“禁用”分支进入到“启用”分支。
公式节点
当我们去实现一些复杂的计算时,输入参数较多时,可以考虑使用公式节点,其中的语法与C语言很相似。它的优点:使得程序更加简洁、可读性和可维护性更强。
练习
使用公式节点,实现 Z=(X+2)*5/y 的操作。
在程序框图中,鼠标右键-结构-公式节点,然后选中公式节点,鼠标右键-添加输入,相同的操作,添加输出,填写好公式即可。
运行结果:
元素同址操作结构
元素同址结构主要是用来提升代码的效率,通过设定边框节点类型(数值、簇、变体或波形中的数据,在对这些数据元素进行运算时,使用元素同址结构可以避免labview编译器在内存中进行数据的复制和保存。
练习
使用元素同址操作,实现数组的0、1索引的元素进行位置的交换。
在前面板中创建一个数组,在程序框图中鼠标右键-结构-元素同址操作结构,然后选中该结构,鼠标右键-添加数组索引/替换元素,。
运行结果:
原理是通过元素同址操作,找到该数组的内存地址后进行操作,即相当于操作了数组本身,而不是复制了一个副本,所以不存在内存的复制。