使用LabVIEW或LabVIEW Real-Time模組實現Modbus通訊

更新 Dec 18, 2023

環境

軟體

  • LabVIEW Datalogging and Supervisory Control Module
  • OPC Servers
  • LabVIEW
  • LabVIEW Real-Time Module

本文將介紹如何使用LabVIEW或LabVIEW Real-Time模組來實現Modbus通訊,以及NI所支援的Modbus通訊API。

Modbus I/O 伺服器

Modbus I/O伺服器包含在LabVIEW DSC模組LabVIEW Real-Time模組中。通過Modbus I/O伺服器,您可以將Modbus暫存器的值連接到LabVIEW VI中的共享變數。通過Modbus I/O伺服器,可以簡單的在LabVIEW中讀取或者寫入Modbus資料,可是對比LabVIEW Modbus API,對於某些應用程式可能需要的Modbus協定的,Modbus I/O伺服器沒有精細控制。

支援的Modbus API(上面截圖中的藍色框)

Modbus API提供對Modbus協定高性能的精細控制。使用此低級API時,一切都必須自行編寫。支援的Modbus API包含在LabVIEW DSC模組LabVIEW Real-Time模組中。

NI OPC伺服器和DataSockets

如果您在Windows上使用LabVIEW,您還可以使用DataSockets與可通過Modbus通訊的OPC Server進行通訊。如果您沒有OPC Server,可以使用NI OPC Servers,它擁有許多協定的接口,包括Modbus。要了解有關使用DataSockets連接到OPC伺服器的更多信息,請查看使用前面板DataSockets將LabVIEW連接到OPC伺服器的教程。

不支援的Modbus Library(在上面的屏幕截圖中以綠色框起來)

  • LabVIEW 2012或以上版本
    LabVIEW Modbus API是目前最新免費的LabVIEW Modbus Library。它旨在替代和擴充2012年之前版本Modbus Library的功能。
  • LabVIEW 7.1或以上版本
    Modbus Library for LabVIEW是VISA命令的包裝函式,需要一些關於呼叫Modbus函式的知識才能進行編程。該程式館包含的功能不如LabVIEW Modbus API或LabVIEW DSC模組所支援的API那麼多。
注意:NI不支援Modbus Library。您的問題可能會在NI社區論壇上得到回覆。

附加信息

Modbus是一種串列通信協定。這意味著還可以對LabVIEW進行編程以通過串列通信與Modbus設備進行通訊。這也適用於TCP/IP協定的Modbus TCP/IP。