圖5 服務(wù)器功能塊庫(kù)程序結(jié)構(gòu)
注意:Modscan32軟件可以從網(wǎng)上免費(fèi)下載得到,本例中使用的版本為V7.0版,由于各版本的功能不盡相同,因此需要注意版本問(wèn)題。
本例中所用的硬件設(shè)備如下表:
名稱 |
數(shù)量 |
訂貨號(hào) |
S7-400電源模塊PS 407 10A |
1 |
6ES7407-0KA01-0AA0 |
S7-400 CPU414-3PN/DP |
1 |
6ES7414-3EM05-0AB0(V5.2) |
S7-400 CP443-1 |
1 |
6GK7443-1EX41-0XE0(V1.0) |
S7-400 機(jī)架 |
1 |
6ES7400-1JA00-0AA0 |
網(wǎng)線 |
若干 |
|
筆記本電腦 |
1 |
|
表1 服務(wù)器硬件清單
所用到軟件如下表:
名稱 |
訂貨號(hào) |
STEP7 V5.5 組態(tài)編程軟件 英文版 |
|
“ ModbusTCP CP V4.3” 軟件選項(xiàng)包 |
2XV9450-1MB00 |
Modscan32 V7.0 |
|
表2 服務(wù)器軟件清單
打開(kāi)Step7軟件,新建一個(gè)工程項(xiàng)目文件,命名為“M_TCP_CP_V43(Server)”, 在項(xiàng)目下插入一個(gè)S7-400站,如下圖6所示:
圖6 新建S7-400 Station
雙擊插入的SIMATIC 400 Station的“Hardware”,打開(kāi)硬件組態(tài),在硬件組態(tài)界面下分別插入機(jī)架,電源PS407、CPU414-3PN/DP、CP443-1,本例中將CP的IP地址設(shè)為192.168.70.2,如下圖7所示:
圖7 硬件組態(tài)并設(shè)置CP443-1的IP地址
打開(kāi)Netpro網(wǎng)絡(luò)組態(tài),選中CPU414-3PN/DP,插入一個(gè)新連接,連接伙伴為Unspecified,連接類型為TCP Connection,如下圖8所示:
圖8 網(wǎng)絡(luò)組態(tài)-新建TCP connection
打開(kāi)連接屬性對(duì)話框中的“General Inbation”,由于CP443-1做Server被動(dòng)連接,因此不勾選“Active connection estabishment”選項(xiàng),ID保持缺省即可,在“Address”欄中同樣由于CP443-1做Server,因此填入連接的Port號(hào)設(shè)置為502,組態(tài)完成后,編譯保存,將例程站點(diǎn)“SIMATIC 400(Server)”中的程序(System data不需要拷貝)拷貝到該項(xiàng)目中并下載(注意:OB100中調(diào)用的FB108的id和laddr需根據(jù)組態(tài)確認(rèn))。對(duì)于通訊伙伴Remote的IP地址可以不填,即允許任意IP地址的客戶端發(fā)起連接,如下圖9所示:
圖9 S7-400為服務(wù)器的TCP connection參數(shù)設(shè)置
對(duì)于服務(wù)器和客戶端的端口號(hào)(下述中以Port代替)的選擇需要注意以下幾點(diǎn):
1)一般情況下服務(wù)器端的Port號(hào)modbus TCP規(guī)范缺省為502,客戶端的Port號(hào)設(shè)置為客戶端允許的號(hào)即可,另外各廠商產(chǎn)品也有一些限制,對(duì)于SIMATIC產(chǎn)品一般從2000之后開(kāi)始。
2)對(duì)于一個(gè)系統(tǒng)來(lái)說(shuō),當(dāng)創(chuàng)建多個(gè)TCP連接時(shí),要保證IP地址和Port號(hào)不重合,即同一個(gè)IP地址下創(chuàng)建多個(gè)TCP連接時(shí)Port號(hào)必須不同,而不同的系統(tǒng)因IP地址不同可以使用相同的Port號(hào),例如本例中如果需要?jiǎng)?chuàng)建多個(gè)TCP連接作為Server時(shí)因只有一個(gè)IP,因此Port號(hào)必須不同。
由于“ ModbusTCP CP V4.3”選項(xiàng)包支持功能碼FC1,2,3,4,5,6,15,16,不同的功能碼測(cè)試過(guò)程中類似,因此下面以FC03(讀寫保持寄存器)為例來(lái)說(shuō)明通訊測(cè)試的整個(gè)過(guò)程,對(duì)于其他功能碼的測(cè)試將不再重復(fù)描述,對(duì)于Modbus的數(shù)據(jù)類型可參考下表3: