在MathScript节点中传递数据(MathScript RT模块)

LabVIEW 2012 MathScript RT模块帮助

版本日期:June 2012

产品编号:373123C-0118

»查看产品信息
下载帮助
(仅限Windows)

如将一个一维字符串数组或一维字符串簇连接至MathScript节点,节点将把这些数据视为MathScript环境中不同的数据类型。

将簇传递至MathScript节点

可将LabVIEW簇传递至MathScript节点。如满足下列条件,簇将转换为MathScript环境下的结构。结构中字段的类型和值与簇元素的类型和值一致。

  • 所有簇元素都必须有独立的标签。标签名称必须以字母开头,而且只能由字母、数字和下划线组成。
    注:可使用函数is_validvarname验证簇元素的标签。
  • 簇元素的数据类型转换如下:
    • 下列数据类型的标量、一维数组、二维数组:
      • 布尔
      • 数值
      • (Control Design and Simulation模块) 状态空间模型、零极增益模型、传递函数模型。
    • 字符串标量、一维字符串数组
    • 实数矩阵
    • 复数矩阵
    • 满足簇元素条件的簇

如不满足这些条件,MathScript节点的输入连线将断开。

将结构从MathScript节点传出

如将结构传出MathScript节点,结构会变为LabVIEW环境下的簇。如按照下列数据类型要求使用结构中的元素,可将结构从MathScript节点中传出。

  • 下列数据类型的标量、一维数组、二维数组:
    • 布尔
    • 数值
    • (Control Design and Simulation模块) 状态空间模型、零极增益模型、传递函数模型。
  • 一维或二维字符串数组
  • 满足结构元素条件的结构

如不满足这些条件,MathScript节点的输出连线将断开。

避免在结构数组的相关字段中使用不同的数据类型

将结构传出MathScript节点时,不能为结构数组相关字段使用不同的数据类型。否则,输出接线端将断开。下图显示了两个元素的结构数组的不同字段数据类型:

a(1).b = 5;

a(2).b = 'string';

在结构a(1)中,字段b的数据类型是整型。在结构a(2)中,字段b的数据类型是字符串。LabVIEW不将整型强制转换为字符串,所以结构不能传出节点。

将字符串数组传递进入MathScript节点

在程序框图上将一维字符串数组传递至MathScript节点时,字符串数组变为MathScript环境下的二维填充数组。下列范例显示了MathScript节点如何将长度不等的字符串数组转换为二维填充数组:



注:  上述前面板的字符串输出显示控件的显示模式为反斜杠('\' )代码显示。在该模式下,不可打印字符均显示为反斜杠代码格式

在该例中,LabVIEW字符串数组变为一个3行13列的二维字符数组。MathScript以空白符填充前两行。如将填充的二维数组传递出MathScript节点,数组成为LabVIEW环境下的一维数组。但是,数组仍保留了填充的空白。

将字符串数组作为单元格数组传递

可将一维字符串数组传递至MathScript节点,指定每个字符串保留原长度。右键单击MathScript节点的输入接线端,从快捷菜单中选择字符串表示法»单元格数组

下列范例显示了MathScript节点如何接受不等长的一维字符串数组,字符串的表示方法为单元格数组



将字符串数组传递至MathScript环境后,数组变为1行3列的单元格数组。每个字符串长度不变。单元格数组从MathScript节点中传出后,变为LabVIEW环境下的一维字符串数组。

文章是否对您有帮助?

没有帮助