XCNet-MB-S實(shí)現(xiàn)S7-1200的ModbusTCP客戶機(jī)功能
西門子S7-1200/1500或西門子以太網(wǎng)口PLC如CPU315-2PN/DP,CP343-1等,通過(guò)網(wǎng)口連接北辰XCNet-MB-S協(xié)議網(wǎng)關(guān),既可以實(shí)現(xiàn)ModbusTCP的服務(wù)器和客戶機(jī)功能,又可以實(shí)現(xiàn)2路ModbusRTU的主從站功能。前兩篇已經(jīng)介紹了ModbusRTU的主從站功能,這篇介紹下XCNet-MB-S實(shí)現(xiàn)S7-1200的ModbusTCP客戶機(jī)功能。
一、功能和應(yīng)用
XCNet-MB-S內(nèi)置ModbusTCP客戶機(jī),應(yīng)用于第三方控制系統(tǒng)(如施耐德集成以太網(wǎng)接口的PLC)與西門子PLC之間的以太網(wǎng)數(shù)據(jù)交換。每個(gè)客戶機(jī)最多可配置24條數(shù)據(jù)交換命令,最大可創(chuàng)建8個(gè)客戶機(jī)。
二、通訊連接
配置步驟:新建以太網(wǎng)客戶機(jī)à配置數(shù)據(jù)交換命令。
1、電腦連接X(jué)CNet-MB-S模塊,運(yùn)行BCDevice配置軟件,選擇查找到的XCNet-MB-S模塊,點(diǎn)擊按鈕欄【修改設(shè)備參數(shù)】按鈕。
2、在參數(shù)配置界面左側(cè)選擇【數(shù)據(jù)交換】,鼠標(biāo)右鍵選擇【創(chuàng)建客戶機(jī)】。
3、在彈出的客戶機(jī)設(shè)置中選擇 ModbusTCP,設(shè)置遠(yuǎn)程服務(wù)器設(shè)備的IP地址,端口號(hào)默認(rèn)為502,本地網(wǎng)卡選擇LAN,點(diǎn)擊【確定】按鈕。
4.在左側(cè)導(dǎo)航欄展開(kāi)以太網(wǎng)客戶機(jī),選擇【客戶機(jī)0】,在右面命令表新建數(shù)據(jù)交換命令。
5.點(diǎn)擊【新建命令】,配置命令。
如上,各參數(shù)意義如下:
1)數(shù)據(jù)傳送方向:
遠(yuǎn)程à本地:遠(yuǎn)程ModbusTCP服務(wù)器設(shè)備的數(shù)據(jù),讀取到XCNet所連接的西門子PLC;
本地à遠(yuǎn)程:XCNet所連接的西門子PLC的數(shù)據(jù),寫入到遠(yuǎn)程ModbusTCP服務(wù)器設(shè)備。
2)傳送的數(shù)據(jù)個(gè)數(shù)、數(shù)據(jù)類型和數(shù)據(jù)區(qū)域
位傳送,只能傳送一個(gè)位,數(shù)據(jù)區(qū)域:COIL和INPUT;
字節(jié)傳送,最多連續(xù)的200個(gè)字節(jié),數(shù)據(jù)區(qū)域:COIL和INPUT;字節(jié)傳送只能是遠(yuǎn)程à本地方向。
字傳送,最多連續(xù)的100個(gè)字,數(shù)據(jù)區(qū)域:INPUT REG和HOLDING REG(輸入寄存器和保持寄存器)。
3)本地站點(diǎn)的起始地址:指定XCNet所連接的西門子PLC傳送區(qū)域,對(duì)于S7-200的V區(qū)請(qǐng)選擇DB1。另外對(duì)于S7-200的SM/AI區(qū)只能讀取,不能寫入。
4)遠(yuǎn)程站點(diǎn)的起始地址:指定遠(yuǎn)程ModbusTCP服務(wù)器設(shè)備的站點(diǎn)地址和數(shù)據(jù)區(qū)起始地址。另外對(duì)于INPUT REG只能讀取不能寫入。
6.命令示例
1)遠(yuǎn)程à本地位傳送:讀取ModbusTCP 1號(hào)站的00001(COIL0),傳送到PLC的Q0.0。
2)遠(yuǎn)程à本地字節(jié)傳送:讀取ModbusTCP 1號(hào)站的10001~10008(INPUT 0~7)共8個(gè)位(1個(gè)字節(jié))),傳送到PLC的MB0(每個(gè)位對(duì)應(yīng)一個(gè)INPUT)。
3)遠(yuǎn)程à本地字傳送:讀取Modbus TCP 1號(hào)站的30010(輸入寄存器9)數(shù)據(jù)傳送到PLC的DB1.DBW100。
4)本地à遠(yuǎn)程字傳送:讀取PLC的DB1.DBW102,傳送到ModbusTCP1號(hào)站的40001(保持寄存器0)。
7.配置完成后點(diǎn)擊【下載參數(shù)】按鈕,將參數(shù)下載到XCNet-MB-S。
三、通訊測(cè)試
通過(guò)計(jì)算機(jī)運(yùn)行ModSim32軟件仿真ModbusTCP服務(wù)器來(lái)測(cè)試:
計(jì)算機(jī)運(yùn)行ModSim32軟件,模擬ModbusTCP服務(wù)器設(shè)備,實(shí)現(xiàn)S7-1200與ModSim32軟件的數(shù)據(jù)交換。
測(cè)試步驟:
將XCNet-MB-S用網(wǎng)線連接S7-1200和計(jì)算機(jī),運(yùn)行PortalV16,下載一個(gè)DB1到PLC,數(shù)據(jù)容量為100個(gè)字。設(shè)置計(jì)算機(jī)的IP地址為192.168.1.100。
運(yùn)行BCDeviceV1032_Build3軟件,進(jìn)入XCNet-MB-S參數(shù)配置頁(yè)面,新建以太網(wǎng)客戶機(jī),設(shè)置遠(yuǎn)程服務(wù)器類型為ModbusTCP,IP地址為計(jì)算機(jī)的IP:192.168.1.100。
3、新建客戶機(jī)命令,將遠(yuǎn)程的輸入寄存器0~99(即30001~30100)數(shù)據(jù)傳送到S7-1200的M區(qū);將S7-1200的DB1.DBW0~DBW98傳送到遠(yuǎn)程的保持寄存器0~49(即40001~40050)。
4、運(yùn)行ModSim32軟件。
5、選擇菜單ConnectionàConnectàModbus/TCP Svr。
6、選擇菜單FileàNew,設(shè)置Device Id =1,模擬數(shù)據(jù)區(qū)為INPUT REGISTER,范圍1~100;再次選擇FileàNew,設(shè)置Device Id =1,模擬數(shù)據(jù)區(qū)為HOLDING REGISTER,范圍1~50;
7.用PortalV16監(jiān)控表查看MW0~MW198數(shù)值與30001~30100是否一致;修改DB1.DBW0~DBW98的數(shù)值,查看40001~40050數(shù)值是否一致。
8.打開(kāi)BCDevice的參數(shù)配置界面,點(diǎn)擊【客戶機(jī)監(jiān)視】查看命令執(zhí)行信息。
(完)