共享变量是一种已配置的软件项,能在VI之间传递数据。对共享变量配置完成后,单击“确定”按钮完成共享变量的创建。图11-60 项目管理器窗口共享变量总是存在于某个项目库中。所有与该共享变量相关的前面板控件的连线也会断开。有两种方法使用共享变量。图11-62中的共享变量被设置为写入。图11-64 数值输入控件绑定共享变量默认情况下,多个应用程序可对同一个共享变量进行写操作。......
2023-11-26
1.移位寄存器的使用
移位寄存器用于While循环和For循环。使用移位寄存器可在循环体的循环之间传递数据。其功能是将上一次循环的值传给下一次循环。创建移位寄存器的方法是,右键单击循环框架的左边或右边,在快捷菜单中选择“添加移位寄存器”,此时会在For循环和While循环的左右边框上自动添加一个寄存器对,如图2-40所示。
图2-40 添加移位寄存器对
在框图上移位寄存器用循环边框上的一对端子来表示。右边的端子中存储了一个周期完成后的数据。这些数据在这个周期完成后将被转移到左边的端子,赋给下一个周期。移位寄存器可以转移各种类型的数据,如数值、布尔数、数组、字符串等,它还会自动适应与它相连接的第一个对象的数据类型。移位寄存器的工作过程(以For循环为例)如图2-41所示。
图2-41 移位寄存器工作过程
上图中借用帧的表现手法,演示了移位寄存器(数据)与循环间的关系。需要注意的是,这里为移位寄存器进行了初始化。移位寄存器是多态的,可以接收数值、字符串、数组等数据类型,大多数移位寄存器应用时都必须进行初始化。假如将上图中的初始化值0去掉,就会发现,每重复运行一次,它的输出值都会得到加3的结果。这表明移位寄存器具有记录保存数据的能力,前提是它必须驻留在内存中。
【例2-2】 移位寄存器的使用
目的:用For循环和移位寄存器计算一组随机数的最大值。
具体步骤如下:
(1)选择“文件”→“新建VI”,打开一个新的前面板
1)添加“波形图表”控件(控件选板→Express→波形图表)设置它的标签为随机信号波形图表。这个图表用于实时显示随机数。把图表的纵坐标改为0.0~1.0。右键单击波形图表控件,在图表的快捷菜单中选择“显示项”→“X滚动条”和“数字显示”,并隐藏图例。调整X滚动条的大小和使其波形图表一样宽。
2)添加“数字显示”控件(控件选板→经典→经典数值→数值显示控件)放在前面板,设置它的标签为“最大值”。
前面板如图2-42所示。
图2-42 例2-2前面板
(2)按〈Ctrl+E〉键切换到该VI的程序框图
1)在程序图中放置一个For循环(函数选板→编程→结构)。设置循环执行次数N值为100。在For循环的边框处单击鼠标右键,在快捷菜单中选择添加移位寄存器。
2)添加Random Number(0~1)函数(函数选板→编程→数值),产生0~1之间的某个随机数。
3)添加数值常数(函数选板→编程→数值),在这个练习中需要将移位寄存器的初始值设成0。
4)添加最大值最小值函数(函数选板→编程→比较),该函数输入两个数值,再将它们的最大值输出到右上角,最小值输出到右下角。这里只需要最大值,只用连接最大值输出。
按照图2-43连接各个端子。
图2-43 例2-2程序框图
(3)运行该VI
(4)将该VI保存为Calculate Max.vi
2.多个移位寄存器的建立
添加多个移位寄存器,可以访问前几次循环的数据,令移位寄存器记忆前面多个周期的数值。这个功能对于计算数据均值非常有用。如图2-44所示。
在图2-44中,可以创建多个左侧移位寄存器,但只能有一个右端子。
【例2-3】 利用多个移位寄存器显示多个数据
VI的前面板和程序框图如图2-45所示,在While循环中使用移位寄存器访问前三次的循环值。N[i]表示循环次数,此值在下一次循环开始传给右端子。N[i-1]表示前一次循环的值,N[i-2]表示前两次循环的值,N[i-3]表示前三次循环的值。由于While循环重复端子的初始值为0,步长为1,因此前面板数字指示器按照逐渐递增的顺序显示。
图2-44 多个移位寄存器的建立
图2-45 前面板和程序框图
有关虚拟仪器与数据采集的文章
共享变量是一种已配置的软件项,能在VI之间传递数据。对共享变量配置完成后,单击“确定”按钮完成共享变量的创建。图11-60 项目管理器窗口共享变量总是存在于某个项目库中。所有与该共享变量相关的前面板控件的连线也会断开。有两种方法使用共享变量。图11-62中的共享变量被设置为写入。图11-64 数值输入控件绑定共享变量默认情况下,多个应用程序可对同一个共享变量进行写操作。......
2023-11-26
E-R图是用来描述现实世界的模型,通过E-R图可以更准确、更方便地了解用户的需求。本节将介绍如何将E-R图转换为关系型数据库中的表,在1.4节将介绍如何审核表的结构是否规范。例如,可将“学员”实体转换为一个表,如图1.6所示。图1.9M∶N关系的转换......
2023-10-29
为了帮助用户完成PROFIBUS的简单组态,通常把包含特定设备性能参数的电子表格称为设备数据库文件,即GSD文件。设备数据库文件以精确的格式提供对设备特性的全面描述。GSD文件能使组态系统读入PROFIBUS设备的特性,并在组态系统时利用这个信息。图10-24 安装GSD文件后的CPX DP-V1 FESTO......
2023-06-18
对于LA 和LB,原始尺寸是它们发生联系的环节,被称为公共环节。在这里,尺寸传递过程中只有一个公共环节,以后的各个环节都是单独进行的,所以,称它为独立制造原则。图3-8按相互修配原则制造口盖与蒙皮(放大点)1—设计图纸尺寸;2—口盖样板;3—口盖冲模;4—口盖;5—蒙皮;6—口盖与蒙皮4.三种尺寸传递原则的应用上面讨论了3 种不同的协调原则(或尺......
2023-07-18
关于如何利用中间件集成多数据库,下面举一个使用CORBA集成的例子。参考文献[1]中提出的基于CORBA的多数据库系统体系结构,称为CBMA。CBMA是典型的多数据库系统体系结构,加入CBMA的数据库仍具有自治性,其上原来的应用程序仍能继续运行。MOTM由CORBA的ORB、多数据库系统事务管理器、负载平衡和安全管理等功能模块组成,其中多数据库系统事务管理器、负载平衡和安全管理都是作为ORB的软构件实现的。......
2023-10-28
IEEE 802.1Q 协议IEEE 802.1Q 协议是一套VLAN 协议,它定义了基于端口的VLAN 模型,提供一种标识带有VLAN 标签的以太网帧的方法,从而允许在局域网中实现定义、运行及管理VLAN 拓扑结构的操作。插入VLAN 标签得出的帧称为802.1Q 帧。图4.11802.1Q 帧的数据格式VLAN 标签插入在原以太网MAC 帧的源地址字段和类型字段之间。当网络中存在冗余的VLAN 中继线路时,就会因网络环路的问题而引起广播风暴,降低网络的可靠性。......
2023-10-19
_map属性可以将HTML表单中的元素以别名的方式映射到真实的数据表字段,和其他属性一样,_map属性也必须定义在自定义模型中,该属性的值为二维数组,下面以7.1.3节内容为基础,修改add_article.html表单元素与add动作代码,并在Article模型中创建createAdd方法,用于处理表单数据。接下来在Article模型中使用_map属性将这些元素映射为tpk_article表中的相应字段。......
2023-11-04
本节介绍MySQL支持的数据类型,提供关于每种类型的名称、作用、格式和范围的信息。TIMETIME数据类型负责存储时间信息,支持的范围相当大,不仅足以表示标准和军用时间格式,还可以表示扩展时间间隔。注意,对于MySQL版本4.1及更新版本,不可以指定该数据类型的大小。......
2023-10-29
相关推荐