创建一个LabVIEW 2021 64-bit VeriStand Custom Device的LabVIEW工程

更新 Nov 2, 2023

环境

软件

  • VeriStand
  • VeriStand Custom Devices
  • LabVIEW

本文将向您展示如何从VeriStand Custom Device Project Wizard创建LabVIEW 2021 64-bit工程或迁移现有custom device工程,以匹配VeriStand 2021到64-bit应用的迁移,并以Linux 64-bit实时系统为目标,包括Linux 64-bit CompactRIO、sbRIO和PXI控制器。

请注意,为NI 64-bit LinuxRT PXI创建的VeriStand Custom Devices也适用于64-bit Linux CompactRIO。为了用LabVIEW 2021给Linux64目标编译Custom Device,我们需要将生成的目标之一更改为LinuxRT PXI目标。为此,请按照以下步骤操作:

如果创建新的自定义设备:
  1. 安装适用于LabVIEW 2021的NI VeriStand Custom Device Wizard
  2. 用LabVIEW 2021 64-bit生成Custom Device项目模板
如果迁移现有的Custom Device:
  1. 下载或以其他方式获取Custom Device的源文件。
  2. 如果需要,请备份源文件。
  3. 保存并关闭工程。
  4. 在文本编辑器中打开.lvproj,例如Notepad++。
  5. 在生成的RT CompactRIO Target - Linux x64上,将属性替换为LinuxRT PXI机箱的正确属性。为此,请替换XML中的以下行:
<Item Name="RT CompactRIO Target - Linux x64" Type="RT CompactRIO">
        <Property Name="alias.name" Type="Str">RT CompactRIO Target - Linux x64</Property>
        <Property Name="alias.value" Type="Str">0.0.0.0</Property>
        <Property Name="CCSymbols" Type="Str">TARGET_TYPE,RT;OS,Linux;CPU,x64;DeviceCode,7735;</Property>
        <Property Name="crio.ControllerPID" Type="Str">7735</Property>
        <Property Name="host.ResponsivenessCheckEnabled" Type="Bool">true</Property>
        <Property Name="host.ResponsivenessCheckPingDelay" Type="UInt">5000</Property>
        <Property Name="host.ResponsivenessCheckPingTimeout" Type="UInt">1000</Property>
        <Property Name="host.TargetCPUID" Type="UInt">9</Property>
        <Property Name="host.TargetOSID" Type="UInt">19</Property>
        <Property Name="host.TargetUIEnabled" Type="Bool">false</Property>
        <Property Name="target.cleanupVisa" Type="Bool">false</Property>
          用以下几行:
<Item Name="RT PXI Target - Linux x64" Type="RT PXI Chassis">
        <Property Name="alias.name" Type="Str">RT PXI Target</Property>
        <Property Name="alias.value" Type="Str">0.0.0.0</Property>
        <Property Name="CCSymbols" Type="Str">TARGET_TYPE,RT;OS,Linux;CPU,x64;</Property>  
        <Property Name="host.ResponsivenessCheckEnabled" Type="Bool">true</Property>
        <Property Name="host.ResponsivenessCheckPingDelay" Type="UInt">5000</Property>
        <Property Name="host.ResponsivenessCheckPingTimeout" Type="UInt">1000</Property>
        <Property Name="host.TargetCPUID" Type="UInt">9</Property>
        <Property Name="host.TargetOSID" Type="UInt">19</Property>                           
        <Property Name="target.cleanupVisa" Type="Bool">false</Property>
  1. 将.lvproj 文件保存在文本编辑器中。
  2. 重新打开LabVIEW工程。CompactRIO Linux64目标将变成受支持的PXI Linux64目标,并将包含Linux64目标正确的创建规范。
  3. 从LabVIEW工程和Custom Device XML中删除任何不支持或不需要的目标。
          a.在XML内,通过从<CustomDevice>\<CustomDeviceVI>\SourceDistribution区域删除Pharlap,VxWorks或者Linux_32_ARM
          的<Source>部分。
  1. 在新的Linux64目标下,展开“Build Specifications"->"Engine Release",确保”Source Files“区域把RT Driver VI.vi作为Always Included。
  2. 像往常一样开发您的Custom Device代码。
  3. 在Linux PXI目标下创建Engine规范,这将在LinuxRT PXI和LinuxRT 64-bit CompactRIO目标上成功运行。