建立或遷移至 Linux_64 64 位 VeriStand 2021 自訂裝置 LabVIEW 專案

更新 Mar 4, 2024

環境

軟體

  • VeriStand
  • VeriStand Custom Devices
  • LabVIEW

本文件將向您展示如何從 VeriStand 自訂裝置專案精靈中建立 LabVIEW 2021 64 位專案,或遷移現有的自訂裝置專案,以適應 VeriStand 2021 的 64 位應用程式遷移,並針對在 Linux 64 位 CompactRIO、sbRIO 或 PXI 控制器上使用的 Linux 64 位實時目標進行目標設定。

請注意,針對 NI LinuxRT PXI 的 VeriStand 自訂裝置也將在 64 位 Linux CompactRIO 目標上運作。要在 LabVIEW 2021 中編譯針對 Linux64 目標的自訂裝置,我們需要將生成的目標之一更改為 LinuxRT PXI 目標。要做到這一點,請按照以下步驟進行操作:

如果要建立新的自訂裝置:
  1. 安裝 LabVIEW 2021 的 release of the VeriStand Custom Device Wizard
  2. 在 LabVIEW 2021 64 位中生成自訂裝置專案模板。
如果遷移現有自訂裝置:
  1. 下載或以其他方式獲取自訂裝置的原始程式碼
  2. 如果需要,備份來源檔案儲存並關閉項目
  3. 儲存並關閉項目
  4. 在文字編輯器(例如 Notepad++)中開啟 .lvproj
  5. 在生成的 RT CompactRIO 目標 - 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 專案和自訂裝置 XML 中刪除任何不支援或不需要的目標。
    1. 這是透過從 XML 內的 <CustomDevice>\<CustomDeviceVI>\SourceDistribution 部分刪除具有 Pharlap、VxWorks 或 Linux_32_ARM SupportedTarget 屬性的 <Source> 部分來完成的。
  4. 在新的 Linux64 目標下,展開 "Build Specifications" -> "Engine Release" 並確保「原始檔案」部分將「RT Driver VI.vi」設定為Always Included。
  5. 像往常一樣開發您的自訂設備程式碼。
  6. 在 Linux PXI 目標下建構引擎建置規範,這將在 LinuxRT PXI 和 LinuxRT 64 位元 CompactRIO 目標上成功運作。