原創 2018年01月24日 10:30:32
本文檔我們通過一款支持Modbus RTU協議的RS485溫濕度變送器來做測試實驗說明。YDL-TH01 溫濕度變送器是一款帶液晶顯示的、通過RS485 RTU通訊方式實時獲取當前溫濕度值的、高性價比的RS485 型溫濕度變送器。
硬件連接方法:把YDL-TH01的RS485的A(圖中藍線)線接SSCWF03的“A”端子上,把YDL-TH01的RS485的B(圖中白線)接SSCWF03的“B”端子上,如下圖所示:

為了便於只針對modbus RTU功能的測試,這里我們續接上面的測試流程,即此時SSCWF03已經以STA的身份接入到我們的路由器了(SSCWF03如何連接路由器設置請參考上文),在該前提下,測試步驟如下:
(1)打開IOT配置設置軟件---點擊“設備編輯”選擇設置串口參數,由於我們的RS485Modbus RUT溫濕度傳送器設置的波特率為9600,所以我們這里也要選SSCWF03的波特率為9600,以便兩者波特率匹配能正取通訊。再點擊“高級設置”在“UART協議”里選擇modbus,分別如下圖所示:

(2)設置SSCWF03的TCP通訊身份,由於modscan或者modpoll都只支持TCP的Client,所以這里我們必須要把SSCWF03設置為TCP的Server,,開啟的端口號為:8888,如下圖所示:
注意:參數需要重啟SSCWF03才能生效。

(3)RS485溫濕度傳送器YDL-TH01原來是基於有線的RS485口通訊,數據輸出是標准的modbus RTU協議,現把該溫濕度傳送器的modbus RTU傳輸協議轉述如下:
(4)Modscan測試軟件測試,Modscan 是一款免費的支持Modbus TCP/IP協議的上位機測試軟件,在測試電腦上運行Modscan軟件,點擊“連接設置”---“連接”,選擇“Remote modbus TCP Server”,然后IP Address填入我們設置的SSCWF03局域網IP地址“192.168.1.110,服務器端口:8888”,點擊“確認”如下圖所示:

在功能寄存器“MODBUS Point Type”選擇“03 HOLDING REGISTER”,就可以看到Modbusan軟件上可以正確接收到YDL-TH01液晶顯示界面上同樣值得溫濕度,如下圖所示:

(5)Modbus Poll測試軟件測試,Modbus Poll測試軟件的測試和Modscan類似,只需要在“Connection”---選擇“TCP/IP”,然后填入正確的IP Address和Port即可,如下圖所示: