北辰BCNet-S7300Plus(以下簡稱BCNet),在BCNet-S7300的基礎上,以太網口增加了支持與西門子帶網口PLC(S7-200SMART 、S7-1200、S7-1500、S7300PN)之間的通訊功能。這些通訊功能包括基于S7TCP協議的數據交換、ModbusTCP服務器功能、ModbusTCP客戶機功能,且多種協議可以同時并存和應用。

本示例介紹BCNet-S7300Plus(以下簡稱BCNet)的ModbusTCP客戶機功能,以西門子S7-300(CPU315-2DP)與三菱FX5U交換數據為例。本數據交換采用ModbusTCP協議實現,其他支持ModbusTCP從站協議的PLC(如施耐德PLC、西門子PLC等),均可實現該數據交換,步驟類似不再重復介紹。對于支持ModbusTCP從站協議的儀表,S7-300可直接通過BCNet進行儀表的數據采集。
BCNet的DB9公口(X1)連接S7-300的MPI/DP口,FX5U自帶以太網口與BCNet的以太網口通過交換機連接,BCNet通過BCDevice工具配置交換命令,實現實時高效的S7-300與FX5U之間的數據交換。
該功能基于BCNet-S7300Plus(固件版本0.1.5.2及以上)的ModbusTCP主站功能實現,通過BCDevice(軟件版本V1023及以上)進行主站命令配置,無須PLC編程,提高了應用開發的速度和便捷性。
一、配置FX5U
1、打開GX Work3,新建項目,以太網配置(內置以太網口)中,配置“Modbus/TCP連接設備”。

2、編輯PLC軟元件分配,按下表配置所示,D0映射的Modbus地址為40001(HoldingRegister的0地址);

二、配置BCNet模塊數據交換命令
1、打開BCDevice,搜索到BCNet-S7300Plus后,選擇【修改設備參數】;

2、新建客戶機;

【1】點擊數據交換,右鍵創建新的客戶機0;
【2】選擇ModbusTCP協議,用于連接遠端的ModbusTCP從站設備,此例中為FX5U網口,該網口通過上一章的配置,已經支持ModbusTCP服務器功能,且PLC的數據和Modbus地址映射關系也已配置;
【3】遠程服務器的IP地址為FX5U的IP地址,這里設置為192.168.1.130;遠程服務器的通訊端口號,默認為502;連接超時時間默認為10s;
【4】點擊確認,創建客戶機。
3、在客戶機中配置數據交換命令;

【1】 點擊新建命令(S7-300的DB1.DBW100讀取FX5U的D0)
【2】 選擇[遠程→本地],傳輸1個字;傳輸超時設置層2s;
【3】 本地站點(S7-300)設置BCNet所在總線的PLC的站地址,數據 區域選擇DB塊,DB號為1,字節偏移為100,位偏移忽略;
【4】 遠程站點(FX5U)的D0由上一章映射表可知被映射成HoldingRegister的0地址;故數據區域選擇HoldingRegsiter,偏移地址填0,站點地址是ModbusTCP協議中的單元號,這邊由于FX5U不是網關,故可忽略;
【5】 點擊“檢查”按鈕可進行規則檢查,點擊“確認”按鈕即可生成命令。
4、客戶機監視;

點擊客戶機監視按鈕,【錯誤信息】為無錯誤,且【正確】有數據跳動,說明通信成功。
三、驗證數據交換
1、打開GX Work3變量監視表,對D0進行數據修改為BC12H;

2、打開SIMATIC Manager變量表,對DB1.DBW100進行數據監視,值為BC12H;

注:BCNet-S7300 Plus 直通型,擴展的九針母口,支持MPI/DP通訊功能,可以連接觸摸屏和西門子主站。BCNet-S7300 Plus 橋接型,擴展的九針母口,支持ModbusRTU的主從站功能,相當于西門子以太網模塊CP343+西門子Modbus主從模塊CP341的功能組合。兩個型號的模塊,以太網網口的功能完全一致。