System Exec VI 方法
System Exec VI 可在 LabVIEW 中呼叫 Linux 的 shutdown 指令來關機。然而,預設情況下,LabVIEW 沒有執行此指令的權限,因此必須先將 lvuser 新增到 Linux 中名為 shutdown 的使用者群組,授予其執行 shutdown 的權限。
以下步驟將授予 LabVIEW 關機權限,並示範在 LabVIEW 中的關機程式碼:
-
透過 SSH 連線至 RT 目標裝置(例如使用 PuTTY)。
-
執行以下指令:
-
執行以下指令確認 lvuser 是否已正確新增至 shutdown 群組:
-
重新啟動目標裝置以套用變更。
- 從 LabVIEW VI 執行
shutdown 指令。

在此案例中,使用了 -r 參數在關機後重新啟動;若要立即關機,則不加 -r。
如果之後需要將 lvuser 從 shutdown 群組移除,請依下列步驟進行:
- 執行以下指令:
gpasswd -d lvuser shutdown。 - 重新啟動目標裝置以套用變更。
透過執行 groups lvuser 指令,確認 lvuser 的 shutdown 指令權限已正確移除。

呼叫函式庫功能
您可以使用 Call Library Function 節點,在 Linux Real-Time 裝置上呼叫已安裝的標準函式庫 glibc。
libc.so.6 是標準的 Linux 函式庫工具,存在於一般的 Linux 系統中。lvuser 預設已具備執行此函式的權限。
有兩種方式可引用此函式庫:
文件中也附有範例 VI,說明如何結構化您的關機 VI,外觀如下圖所示。
如果您使用完整檔案路徑,可以透過存取裝置上的以下路徑來確認 libc-x.xx.so 檔案:
-
ARM 架構:files > lib
-
Intel 架構:files > lib64
在這些路徑中可找到對應的 libc-x.xx.so 檔案,如下圖所示。

附加資訊
由於 NI Linux Real-Time 裝置採用快閃記憶體硬體,強烈建議在電池電力耗盡前先將裝置關機。您可以參考 Under the Hood of NI Linux Real-Time 以取得更多關於如何透過 LabVIEW 存取 Linux Real-Time 命令列的資訊。
如果您希望遠端關閉 Linux Real-Time 目標裝置(非程式化方式),也可以透過 SSH 手動完成:
-
啟用 Secure Shell Server 並登入您的目標裝置。
-
輸入以下指令以關閉裝置:
