如何識別我的 cRIO/sbRIO 是否正在運行?

更新 Feb 17, 2024

環境

軟體

  • LabVIEW Real-Time Module

程式語言

  • LabVIEW G

其他

Hardware : cRIO, sbRIO

我已在 cRIO 中執行了 VI 或 start-up executable,如何檢查程式是否正在執行?

在 LabVIEW 中運行代碼

檢查您的代碼是否在 cRIO 上運行的最簡單方法就是運行 VI。確保 VI 位於項目總管中的實時目標下。打開 VI 並點擊運行按鈕將代碼部署到 cRIO 並在 cRIO 上運行。如果配置了前面板,則前面板將顯示 cRIO 前面板上的實際值。頂部的運行按鈕將是灰色的,而不是像本地主機上的任何其他運行的 VI 一樣是白色的。

或者,cRIO 上提供了各種 LED 指示燈,用於顯示硬件的內部狀態。這些 LED 的顏色和閃爍模式用於傳達這些狀態。請參閱您的 cRIO 用戶手冊以了解這些模式。例如,cRIO 9068 的 LED 指示燈的不同模式和含義在此處提供。

使用 User1 LED

cRIO 控制器上的 User1 LED 可以從您的 RT VI 中控制,該 LED 指示 cRIO 控制器上運行的 VI 是否正在執行。在您的 RT 代碼中實現一個切換邏輯,該邏輯將使 User1 LED 閃爍。這種閃爍表示您的 RT VI 正在運行。



如果 User1 LED 不閃爍,則 RT VI 可能未運行,或者閃爍代碼被激活(因為 RT CPU 利用率為100%)。要進一步排除為什麼您的 RT start-up VI 未運行的問題,請參閱此鏈接


使用主應用程式

您的 RT 代碼中還應該有一個循環,該循環在每次執行時都會增加其 iteration count。從主機程式中讀取 RT VI 中的 while/for 循環的 iteration terminal,以檢查您的 RT 代碼是否正在執行。使用 using Network Buffered Shared Variable 將從 RT VI 讀取的數據傳輸到 Host VI 中。



隨後,在Host VI 中讀取 iteration count 以了解您的 RT 代碼的執行狀態。​​​​​​​


同樣,可以傳輸不同的數據類型,如布林 (boolean)、數字和字串,以在不同時間點從 Host VI 中探測不同的值並驗證 RT 代碼的功能。

附加信息

基於數據傳輸的性質和速率,還可以使用不同的協議,如 Network Streams、UDP 和 TCP/IP。如果要傳輸大量標籤值,請使用 CVT Client Communication (CCC) Reference Library