發布日期:2022-07-14 點擊率:69
Modbus 協議已廣泛運用于自動化應用。Modbus RTU 設備因部署和故障排查簡便且成本低,使用者頗多。
然而,隨著越來越多的工業化應用改用以太網,許多系統將Modbus TCP 應用于控制室的SCADA 上位機,導致Modbus RTU 協議與Modbus TCP 協議之間出現通訊問題。
此系列問題整理了Modbus轉換的常見問題,我們將按期推出,敬請關注。
本期問題:為了把Modbus RTU 串口設備連接到以太網,需要使用特定的協議轉換網關嗎?只用一個串口設備聯網服務器可以做到嗎?
在解決這個問題前,首先您要了解您想在SCADA 上位機上使用哪個Modbus 驅動程序。您有4 個選擇:
● SCADA 上位機配備Modbus TCP 驅動程序;
● SCADA 上位機配備Modbus RTU 驅動程序,且有內置串口;
● SCADA 上位機配備Modbus RTU 驅動程序,無內置串口;
● SCADA 上位機配備以太網封裝驅動程序。
上位機配備Modbus TCP 驅動程序
這種情況下,請使用協議轉換網關。有了網關,您就可以使用Modbus TCP 協議實現與Modbus RTU 設備的通訊。
在自動化領域,有許多“Modbus 網關”解決方案支持通過Modbus TCP 協議連接Modbus TCP slave 設備。當網關收到Modbus TCP 請求后,它會將報文包轉換為一個Modbus RTU 報文包,并即刻傳輸至Modbus RTU 設備。
上位機配備Modbus RTU驅動程序,且有內置串口
如果您只是想要把現有的SCADA 上位機和Modbus RTU 設備連接到以太網,可選擇此方案。如果您現有的SCADA 上位機帶有內置串口,一對網關就可以幫您解決問題。
如圖中拓撲所示,網關可以將Modbus RTU 報文包轉換為Modbus TCP 報文包,然后再轉換回ModbusRTU 報文包。但是,如果您的SCADA 上位機上沒有內置串口,這個解決方案就不適用了,請您考慮選項3。
上位機配備Modbus RTU驅動程序,無內置串口
如果您想使用現有的SCADA 系統和設備,但是您的SCADA 上位機又沒有內置串口,則可以使用“串口設備聯網服務器”,為連接串口設備的遠程串口設備聯網服務器上的串口建立一個“虛擬COM 口”。
這一配置可以讓您通過串口設備聯網服務器訪問遠程串口設備,如同SCADA 上位機本身就有一個COM 口。串口設備聯網服務器將在您的SCADA 上位機上安裝“虛擬COM 口驅動”,來創建一個“虛擬COM 口”。
為啟用虛擬COM 口,請務必將您的串口服務器配置為“虛擬COM”模式。所有傳送至這個虛擬COM 口的數據,都將轉送至串口設備聯網服務器的遠程串口。
所有調制解調器信號發送的指令,也會得到同樣的處理。您可以像使用本地自帶COM 口一樣使用這一虛擬COM 口,所以您可以直接將Modbus RTU 請求傳送到COM 口,就像有一個真實的COM 口存在。
上位機配備以太網封裝驅動程序
您的SCADA 上位機上沒有內置串口,您又不想安裝“虛擬COM 口”驅動程序,您可以考慮使用“以太網封裝”驅動程序。但是您的SCADA 軟件必須能夠支持“以太網封裝”驅動程序,而事實往往并非如此。
一般來說,如果您對串口和TCP/IP 有深入的了解,那么“以太網封裝”驅動程序會是最佳選擇。
對于本方案,您需要一個可選“原始套接字模式”或“隧道模式”的“串口設備聯網服務器”。這樣一來,當SCADA 將Modbus RTU 報文包發送至現場設備時,上位機和串口設備聯網服務器之間無需任何協議,就可以通過透明的TCP/IP 或UDP 通訊來連通。
由于Modbus RTU 使用區間超時來決定報文包的終端,因此串口設備聯網服務器必須配置得當。如果Modbus RTU 報文包被分成了兩個或以上的TCP/IP 或UDP 報文包,可能會造成通訊問題。
如果您不能恰當處理串口設備聯網服務器與以太網網絡之間的報文傳輸,那么網關解決方案(選項2)或虛擬COM 驅動解決方案(選項3)可能更適合您。
盡管串口設備聯網服務器也能把Modbus RTU 設備接入以太網,網關解決方案(選項2)卻幾乎可以滿足任何系統的要求。您的上位機必須支持Modbus TCP連接,但這不是問題,因為Modbus TCP 很受歡迎,已得到廣泛使用。在下列情況下,您需要使用特定的網關解決方案:
1. Master 設備多或冗余
以太網不僅支持遠程訪問連接,還支持同時建立多個連接。多數網關最多可支持32 個連接接入,這就意味著最多可以有32 臺SCADA 上位機同時訪問Modbus RTU 設備。
在這種情況下,串口設備聯網服務器很難提供網絡冗余,因為多數串口設備聯網服務器不支持連接多個master 設備,但是使用網關就不會有這個問題。
2. 多個Modbus RTU 設備使用單一連接
有時您可能想通過與SCADA 上位機建立單一連接來查詢多個Modbus RTU 設備。這時,網關是唯一可以處理路由機制的解決方案。
您可以使用多串口網關,經過配置后確保網關根據特有的slave ID 將Modbus請求傳達給正確的串口。而串口設備聯網服務器無法滿足如此復雜的要求。
舊的Modbus RTU HMI 和新的Modbus TCP SCADA 同時訪問設備
盡管以太網連接能提供易于部署的遠程訪問,但有時您可能想要保留現有的本地HMI 連接。問題是設備上的串口已經與網關連接,所以沒有多余的串口可以用來連接HMI。
在這種情況下,一些網關提供的“串口重定向”可以為您解決這一問題。“串口重定向”與路由器非常相似,依靠這一功能,網關就可以根據 slave ID 在不同的串口間傳輸請求。
總結
Conclusion
對于串口轉以太網通訊,有多種不同的解決方案。一些解決方案相當簡單,比如采用透明模式進行串口和以太網端口間的數據傳輸,但是如果您需要處理Modbus 等工業協議,那么選用特定網關通常會是一個更好的選擇。特定網關可以長期提供穩定通訊,并且可以識別Modbus 報文包進而恰當處理整個報文包。
下一篇: PLC、DCS、FCS三大控
上一篇: 關于Modbus 轉換的常