2011-08-10 21 views
2

因此,我對Modbus沒有太多經驗,但我的問題基本上是標題中的內容。我需要一個控制器與盒子交談,然後重新格式化消息並將其推送到服務器?或者服務器可以直接與盒子交談?順便說一下,我的雲應用程序使用Rails(如果有幫助)。我不確定需要哪些其他信息,請隨時通知我。需要使用通過基於雲端服務器的TCP/IP上的Modbus進行通信

謝謝。

回答

1

Modbus作爲具有兩種不同模式的串行主/從協議發起; 'ASCII'和'RTU'。不同的模式有不同的數據包格式(一個使用ASCII字符,另一個使用二進制),檢測數據包開始和結束的不同規則以及不同的錯誤檢測(校驗和或CRC)。基於TCP/IP的Modbus基本上採用'RTU'數據包,丟棄CRC,添加一些額外的尋址,並將其封裝在TCP數據包中。假設您很樂意實施代碼來構建(和解釋)雲應用程序中的數據包,那麼服務器無法直接與該數據包交談的理由是沒有道理的。

你需要牢記的一件事情是'Modbus客戶端'向'Modbus服務器'發出命令,然後'Modbus服務器'響應。所以你需要確定你的盒子是'Modbus客戶端'還是'Modbus服務器'。

我不確定的唯一事情是IP地址。如果您的基於雲的服務器在每次運行時都獲得不同的IP地址,那麼如果它充當'Modbus服務器',或者您的機箱具有訪問控制機制,則可能會出現問題。

所有文檔可從www.modbus.org

相關問題