如何實現兩臺PLC之間的MODBUS無線通信?
在工業現場可能會遇到這樣的情況,分布在不同地方(車間、控制室場所等)的PLC之間需要進行遠程相互控制,通常是采用RS485總線,通過MODBUS協議完成此功能。
如果現場布線不方便的話,也可以采用無線方式進行通信。這里以達泰DTD433無線模組和臺達DVP-80EH為例進行說明。
一、兩DVP-80EH臺達PLC之間的遠程控制
實現的功能:
l PLC1的8個開關量輸入,X0~X7與PLC2的開關量輸出Y0~Y7一一對應,也就是說上圖中的A1開關按下時,PLC1的開關量輸入X0閉合,PLC2的輸出繼電器觸點Y0導通,L2點亮。
l PLC1與PLC2之間的通信是通過RS485總線連接的,其中采用了Modbus協議。
二、臺達PLC通信中的Modbus協議編程方法
假設把PLC1作為主站,PLC2作為從站,分別編寫主站和從站程序,主要掌握以下要點:
Modbus主站讀寫程序
l Modbus RTU主站功能是通過指令庫中預先編好的內存值實現的,該內存值可以用WPL軟件:幫助->輔助編程->通信格式設置,在這個工具中輸入你想要的通信格式,然后生成對應的內存值。
Modbus RTU主站中一定要設置通信模式,模式編號請查閱WPL軟件的幫助文檔。
上述程序解析:
l M1002常開觸點,當系統RUN以后*次掃描為:ON,之后都為:OFF;該脈沖的寬度為一次掃描周期;
l MOV H81 D1120為設置通信格式為:9600-8-n-1;
l 通信格式保持應用命令;
l 設置通信逾時300ms;
l 設置主站的通信模式為Modbus RTU
Modbus從站讀寫程序
上述程序解析:
l M1002常開觸點,當系統RUN以后*次掃描為:ON,之后都為:OFF;該脈沖的寬度為一次掃描周期;
l MOV H81 D1120為設置通信格式為:9600-8-n-1;
l 通信格式保持應用命令;
用戶出現的問題:PLC無法與DTD433模塊通信
用戶程序:
原因分析:
本程序無法通信主要原因是:
1.PLC的通信格式和DTD433C的數據通信格式不一樣,上圖用戶程序里設置的通信格式為:9600 7-E-1;而DTD433模塊通信格式為:9600 8-N-1;
2.PLC沒有選擇正確的通信模式,上圖程序中沒有設置,一般是要設置的。
解決方法:
1.改變用戶PLC程序中通信格式設置,設置為9600 8-N-1;也就是說采用的波特率為9600、8位的數據位、無校驗、1位的停止位;上圖中用戶程序設置通信格式的語句為MOV H80 D1120,其中MOV為數據傳送指令,將H80傳送到D1120,而H80對應的數據格式為9600 7-E-1(波特率是9600、數據位是7位、偶校驗、停止位1位)查詢方法如下圖:
D1120是設置通信的功能口,所以只要把通信格式設置為9600、8-N-1對應該的內存值,如下圖所示:
所以設置通信格式的命令應該改為:MOV H81 D1120
2.加入設置通信模式的語句,設置為Modbus RTU模式(RTU模式只能是8位的數據位);設置通信模式的指令需要用到SET指令,當SET指令被驅動,其的元件被設置為On,且被設置的元件會維持On,不管SET指令是否仍被驅動;設置Modbus RTU模式時,因為本次設置的主機用的是COM2口(D1120也是用在COM2口的),所以設置Modbus RTU模式的特殊繼電器為:M1143;因此設置通信模式的命令應該為:SET M1143。
通過上述兩個方面的修改,PLC和DTD433模塊通信成功!
三、無線Modbus通信的實現方法
以上說明了采用有線RS485總線實現多臺PLC之間的遠程控制方法,有時由于現場條件的限制,重新布設通信線路很不方便,例如山上與山下,或者橫跨馬路的情況,尤其對于工程改造項目二次布線幾乎是甲方無法接受的。在這種情況下,可以采用DTD433無線通信模組代替通信電纜,實現起來非常方便,不需要編程。
無線通信模組采用中心頻率為433MHz開放的ISM頻段,內部使用全數字RF通信芯片與單片機組成無線數傳系統,外部通信接口與RS485總線**,為了使用方便,通信實現所發即所得,也就是說數據通信是*的透明方式,這樣的話,用兩個DTD433模組能夠直接代替有線的RS485通信導線。需要注意的是:
l PLC的Modbus通信速率要與無線數傳模組的波特率設置*,例如通信參數可以設置為9600bps,8位數據,無效驗位。
l DVP-80EH的RS485+連接DTD433的RS485_A;
l DVP-80EH的RS485-連接DTD433的RS485_B;
l 無線數傳模組的供電電源為直流24V,與PLC可以共用電源;
l 無線通訊距離在200米左右選用DTD433A模組;
l 無線通訊距離在1000米左右選用DTD433B模組;
l 無線通訊距離在3000米左右選用DTD433C模組;
l 保證通信距離,提高通信質量要選擇高增益的吸盤天線,天線安放高度離地面越高效果越好。
四、PLC與DTD433無線模組通訊成功的案例
l 西門子PLC與DTD433C-S4 9600bps,8,N,1,RS485口
l 海為PLC與DTD433C-S4 9600bps,8,N,2,RS485口
臺達PLC與DTD433A_S4 9600bps,8,N,1,RS485口