從自定義儀表板寫入 TSM 全域和每個站點數據

更新 Aug 30, 2023

產品資訊

軟體

  • TestStand Semiconductor Module
  • TestStand
  • LabVIEW

問題敘述

我可以使用 TestStand 半導體模組 (TSM) 全域數據和每個站點數據在程式碼模組之間正確地傳遞數據。但是,當我嘗試在自定義儀表板中使用它在程式碼模組和面板之間進行通信時,我在除錯期間看到自定義儀表板中的值在更新,但是當面板關閉並且我返回到 TestStand 時,Global 和 每一個站點數據值與執行自定義儀表板之前的值相同。

解決方案

TSM 全域數據和站點數據 VI 不能用於在程式碼模組和自定義儀表板之間共享數據。自定義儀表板有自己的SemiconductorModuleContext副本,它是程式碼模組中的快照。因此,您可以看到代碼模塊設置的值,但面板中所做的更改不會寫回程式碼模組。

自定義儀表板和程式碼模組之間沒有標準的通信解決方案。作為解決方法,LabVIEW 的共享變量或 DVR 可以被程式碼模組和自定義儀表板等訪問、寫入和讀取,可用於在它們之間共享所需的數據。

相關資訊

實施 LabVIEW 共享變量簡單方便,因為它可以被系統中的任何 VI 訪問,但需要去部署。有關詳細信息,請參閱相關鏈接和範例查找器中的Shared Variable.lvproj shipping example。

DVR 可能需要更多的工作,但對於復雜的架構來說效率更高、功能更強大。在這種情況下實現它們的簡易方法是在過程設置期間在 LabVIEW 中創建 DVR,並將參考存儲在 TSM 中作為站點或全域數據。然後可以在自定義儀器面板的 LabVIEW 中檢索和修改 DVR。

缺點是 DVR 需要在過程清理期間釋放,自定義儀表板需要在與測試程序相同的上下文中運行(LabVIEW 應用程序開發環境與 LabVIEW 運行時引擎)。