自己的 NI CompactDAQ 或 NI CompactRIO 應用選擇正確的 CAN 介面

概觀

NI 提供 2 種模組化平台,體積輕巧,適用於多種應用。NI CompactDAQ 與 NI CompactRIO 均配備模組化 CAN 介面,可與機箱整合,並搭配超過 50 款其他 NI C 系列模組使用。每個模組各有不同的特性,因此相當適合某些應用。本文件說明不同的 NI C 系列 CAN 模組,以及這些模組的理想用途與原因。

內容

NI C 系列 CAN 模組 

NI 提供 2 種類別不同的適用於 CAN 的 C 系列模組:NI-XNET 與 NI 985x。 

NI-XNET C 系列 CAN 系列

NI 提供兩個 NI-XNET 系列單埠式、高速/FD 與低速/容錯 C 系列 CAN 模組:NI-9862 與 NI-9861。如同其他 NI-XNET 裝置一樣,這些模組的主要功能不同於其他 NI C 系列 CAN 模組:

  • 可透過高階、簡單易用的 NI-XNET API 與硬體介接,這是一種常見的 CAN 通訊方式 (PCI、PXI、NI CompactDAQ、NI CompactRIO)
  • 相容於 USB、乙太網路與 Wi-Fi NI CompactDAQ 機箱與控制器系統

 

NI 9862.png

圖 1:NI 986x NI-XNET 高速/FD 與低速/容錯 C 系列 CAN 模組可用於 NI CompactDAQ 與 NI CompactRIO 模組化平台。

NI-985x C 系列 CAN 系列

NI 也提供雙埠式低速與高速 C 系列 CAN 模組 NI-9852 與 NI-9853。這些模組的使用者程式設計體驗與平台相容性不同於 NI-986x 模組。它們提供

  • 可透過低階、極度靈活的 LabVIEW FPGA 架構 API 介接模組
  • 所有 NI RIO 平台的相容性 (CompactRIO、NI 單卡式 RIO 等)
  • 透過相同的 FPGA API 與其他 C 系列模組進行通訊與同步化

 

NI 9853 與 9852.png

圖 2:您可在 CompactRIO 平台中使用 NI 9852 與 NI 9853 C 系列 CAN 模組,並搭配靈活的 FPGA 層級控制功能。

理想的 NI-XNET C 系列 CAN 應用

基本 CAN 通訊

透過 NI 986x 模組,即可實作包含讀取/寫入框架與訊號在網路上的基本 CAN 通訊。NI-XNET 模組採用高階 API,提供直覺式 NI-XNET 函式呼叫,可簡化開發流程並縮短開發時間。您可以使用 cRIO-911x 或 cRIO-908x 機箱,在 USB、乙太網路與 Wi-Fi NI CompactDAQ 系統以及 CompactRIO 系統中使用相同的 API。

 

每個連接埠的多工作階段

圖 3:NI-XNET API 提供高階函式呼叫,可用於直覺式讀取與寫入 CAN 框架與訊號。

針對不同設定環境標準化 CAN 通訊

由於 NI 986x 模組為 NI-XNET 模組,因此非常適合用於開發需要針對多種不同環境與設定進行標準化作業的 CAN 應用與專案。只要將相同的 NI-XNET API 套用至兩個平台,即可將 NI 986x 模組用於行動 USB、乙太網路與 Wi-Fi 架構的 NI CompactDAQ 系統,以及無頭嵌入式 CompactRIO 系統。此外,由於相同的 API 用於 PXI 與 PCI CAN 介面,因此您可透過複製與貼上方式,輕鬆將相同的程式碼轉移至任何硬體平台。由於使用 PXI 的實驗室測試系統、使用 NI CompactDAQ 的行動 USB CAN 通訊系統,或是使用 CompactRIO 的無頭 CAN 架構記錄器,因此可大幅縮短開發時間。

即時測試應用

即時測試需要使用即時環境來執行測試應用。工程師會使用即時測試技術,主要是為了提高測試系統的穩定性與/或精確度。這些技術也在現今許多產品與系統的開發中發揮相當重要的作用。範例包括耐久性、生命週期,以及其他長時間或長時間運作的測試系統,需要即時執行平台提供優異的穩定性。環境測試單元、動力計、硬體迴路 (HIL) 模擬器,以及使用閉迴路控制執行 (即時執行平台的低抖動精確度) 的類似測試系統,也需要達到優異的穩定性。

NI 提供的軟體產品可協助您更有效率地執行即時測試應用。NI VeriStand 是一種設定架構的軟體環境,可提供可立即使用且可客制化的工具,以建立即時測試系統。許多即時測試應用都涉及 CAN 通訊,而 NI VeriStand 則對所有 NI-XNET 產品提供原生支援,也就是對 NI 986x 模組的原生支援。NI VeriStand 不僅可提供適用於 CAN 應用的常見功能,更提供擴充軟體所需的靈活性,以滿足您的應用目標。

 

CAN Communication.bmp

圖 4:您可以在 NI VeriStand 中設定 NI-XNET CAN 介面,用於進行許多常見的 CAN 通訊作業與函式。

適用於 NI 985x C 系列 CAN 模組理想用途

基本 CAN 通訊

NI 985x C 系列 CAN 模組就像 NI 986x 介面一樣,可用於基本的 CAN 通訊。主要差異在於不同模組的使用體驗。您不需要使用 NI-XNET API 來程式化模組,例如 NI 986x 介面,而是使用 LabVIEW FPGA API 提供 NI 985x 模組的低階軟體 API,以進行硬體程式設計。有了這個 API,您就能完全掌控讀取與寫入 CAN 框架的時序,同時套用適用於 CompactRIO 其他 C 系列模組的相同 LabVIEW FPGA API。

985x FPGA API.png

圖 5:NI 985x CAN 介面是以 LabVIEW FPGA API 進行程式設計,可讓您以較低層級的方式控制硬體,包括框架傳輸與接收時間。

CAN 通訊的 FPGA 觸發

由於您可透過 LabVIEW FPGA Module 設計 NI 985x C 系列 CAN 介面的程式,因此您可以使用與其他 C 系列模組相同的 FPGA API 進行一般 I/O 程式設計,並且善用 CompactRIO 平台中的 FPGA 背板速度與彈性。在同一個 FPGA 應用程式中結合一般的資料採集與 CAN 通訊功能,您可以運用 CAN 硬體加快觸發與所需時間。舉例來說,相較於將資料從一般類比輸入模組的 FPGA 應用傳送至即時主機,以進行 CAN 函式呼叫,您可以直接從 FPGA 應用呼叫 NI 985x CAN 介面。

自 analog.png 觸發的 CAN

圖 6:在 FPGA 應用中使用 NI 985x CAN 模組與其他 I/O 模組,即可快速靈活地達到 CAN 觸發。

CAN 資料的 FPGA 位元操作

此外,您還可以使用適用於 NI 985x CAN 模組的 LabVIEW FPGA 程式設計 API,針對硬體所傳送與接收的 CAN 資料,快速執行位元層級操作。您可以在 LabVIEW FPGA 應用程式中讀取及修改 CAN 框架中的資訊,不必將任何資料傳送至系統的即時控制器,因此可針對這類資料操作發揮效率與速度。 

 

985x 位元層級 info.png

圖 7:您可以使用 NI 985x CAN 介面與 LabVIEW FPGA,以個別位元層級快速操作 CAN 框架內的所有資料。

結論

您可以根據自己的應用需求選擇多種 NI 模組化平台與 CAN 介面,這些介面具有適用於特定環境與 CAN 相關專案的主要功能與優勢。了解每個 CAN 介面的優勢,以及 NI C 系列平台,可協助您選擇適合應用的 CAN 模組,並順利達成專案目標。