在水廠自控係統中,經常用到485接口的Modbus-RTU通訊設備,例如配電室的多功能電量采集儀表、進出水站房的水質分析儀表、各種液體或氣體流量計等。自控係統采集這些Modbus-RTU設備數據的方法一般有兩種:常用的方法是利用CPU的485接口或配置485通訊模塊,通過編寫Modbus通訊程序讀取數據;另外一種簡單方法是利用Modbus-RTU轉Modbus-TCP模塊,通過上位機軟件直接讀取數據。第一種方法需要 plc帶有485接口並支持Modbus通訊,或者采購專用的485接口模塊,造價較高且需要編寫Modbus輪詢程序,程序處理不好的話容易發生故障或者刷新較慢的情況;第二種方法實現簡單,但是讀取的數據通常是原始數據,需要利用上位機進行轉換,且多台上位機並行時需要重複向子站讀取數據,容易產生通訊衝突造成通訊失敗。 本次給大家分享的HJ6302模塊是一款國產的通訊網關模塊,它支持Modbus-RTU與ProfiNet的雙向通訊,並且該模塊不需要在PLC內編寫Modbus通訊程序,隻需要利用專用軟件配置通訊參數和命令後導出GSDML文件,然後將文件導入PLC硬件配置,數據會自動映射到PLC的輸入輸出地址,使用非常方便。 測試環境 1. HJ6302模塊1個(充當Modbus主站和PN-IO) 2. Modbus-RTU接口通訊溫濕度 傳感器2個(充當Modbus子站) 3. 西門子1214PLC一台(充當PN主站) 4. HJ6302配置軟件PROFINET-6300-配置軟件+V-1.3.E-1 測試目標 1. 通過HJ6302配置Modbus-RTU參數和通訊命令。 2. 通過TIA編程軟件導入HJ6302配置文件,實現PLC讀取溫濕度數據。 測試步驟 一、HJ6302模塊設置 1. 將電腦IP地址設置為與要測試的PLC和HJ6302模塊同一個網段,本次測試給電腦配置的IP地址是192.168.10.200,計劃給PLC配置的IP地址是192.168.10.100,給HJ6302模塊配置的IP地址是192.168.10.101。將電腦、PLC和6302模塊連接到同一個局域網內。 2. 關於6300網關的IP地址:打開6302配置軟件如下,6302網關沒有默認IP,選擇電腦指定網卡點擊“搜索”軟件將自動搜索局域網內的6300網關設備並根據電腦IP地址段自動分配一個臨時IP地址給6300網關,該IP地址隻用於配置網關參數,重新上電後將消失。正式通訊時,PLC會根據網關名稱自動將硬件配置的正式IP地址分配給6300網關,因此不需要通過配置軟件給6300設置固定IP地址,隻需要設置網關設備的名稱,並在TIA編程時配置相同的名稱和需要的IP地址即可。
3. 關於網關命名:搜索到6300網關後,先點擊設備並右鍵選擇“讀取<從設備>”將網關配置上載到電腦,並在“設備名稱”處根據需要重新命名網關。PN通訊需要使用設備名稱和IP地址,此處配置的設備名稱必須與TIA軟件中配置的一致,PLC才能搜索到網關設備並分配正式IP。
設備命名規則如下: (1)必須以字母開頭,可以使用英文字母(建議小寫)和阿拉伯數字; (2)可以使用中橫線“-”,不能使用下劃線“_”; (3)命名不能與同網絡的其他設備衝突, 4. 設置Modbus-RTU參數和命令
a) 根據需要設置COM1和COM2的類型、波特率和數據結構,通訊模式選擇“RTU/Master”表示6300網關作為Modbus主站。也可以根據需要選擇其他通訊模式,本次實驗未做測試。 b) 點擊右下角的“新加”按鈕添加Modbus通訊命令。網關支持常用的Modbus命令。其中設備ID代表子站的通訊站號(十進製),寄存器地址為偏移地址(十進製),數量為從寄存器地址開始需要讀取的字數(十進製)。本次使用的溫濕度傳感器地址信息如下表:
c) Profinet斷網關閉輸出:使能後如果PN通訊中斷網關將輸出命令複位。
d) PN在線輪詢:使能後隻有PN在線時才執行Modbus通訊命令;不使能則一直執行Modbus通訊命令。 e) 實時寫:使能後每次輪詢都執行寫命令;不使能則隻有在寫數據變化後才執行寫命令,以提高485總線利用率。 5. MODBUS-TCP/IP地址:作為Modbus-TCP網關使用時可以通過該菜單設置固定IP,本次測試不使用。 6. 下載參數:配置結束後,選擇網關模塊,右鍵選擇“更新<到設備>”即可將配置下載到6300網關,下載後可以通過“重新啟動設備”重啟網關模塊使配置生效。可以再次搜索網關模塊,讀取配置信息檢查是否配置成功。
7. 生成GSD文件:配置結束後,選擇生成GSDML文件,軟件將自動生成TIA配置所需的GSD文件。
二、TIA編程配置 1. 新建項目,選擇1214CPU,並配置IP地址等參數。
2. 安裝GSD文件:點擊菜單欄“選項”,選擇“管理通用站描述文件”彈出下圖窗口,選擇剛才生成的GSD文件所在的文件夾,並在識別的GSD文件中選擇“安裝”。 3. 導入6300網關:在右側硬件目錄中“其他現場設備”目錄中找到HJ6300網關,並拖入項目,並把其分配給1214CPU。
4. 配置6300參數:名稱必須與上一步驟中設置的網關名稱一致,並根據需要設置正式IP地址。
5. 查看地址映射:配置完畢並編譯後,可以通過地址總覽查看係統分配的地址映射信息,2個測試溫濕度傳感器的數據分別映射到IW2~IW25和IW26~IW49。
6. 查看通訊數據:下載PLC程序,並在變量表中建立數據變量,在線監控,可以看到數據已經成功讀取到PLC。 測試總結 1. 經過測試,實現了通過PN網絡采集Modbus-RTU數據,通訊穩定,不需要編寫輪詢程序。 2. 不同485通道可以設置不同的波特率等參數,使用比較靈活。 3. 網關名稱命名非常重要,必須保證網關名稱和TIA軟件內配置的一致,否則通訊失敗。 4. 網關IP地址在配置階段可以不設置,當網關與PLC連接後PLC將自動把設置的正式IP地址配置給網關。 5. 網關與PLC通訊正常後不要再用指定網卡的方式搜索網關,這樣電腦會再次給網關配置臨時IP造成通訊中斷,要選擇所有網卡模式。 6. 修改網關配置之前需首先上載配置,修改完畢需重啟網關使配置生效。 7. 如果PLC連接的PN模塊較多,可加大更新時間至8~10ms。 8. 網關將數據映射到PLC的過程映像區,1200係列PLC的IO過程映像區分別隻有1024字節,1500係列PLC的IO過程映像區至少32K字節,這個算是這種方式的一個缺點,如果要通訊的數據量大於PLC的IO過程映像區就不能用這種方式了。 通過測試發現PN網絡還是具有很強大的通用性和兼容性,西門子係統也變得越來越開放,我們可以選擇不同廠家的設備尤其是國產設備,可以讓我們的係統有更高的性價比。 來源:西門子工業技術論壇 |