2.配置S7-300單站系統(tǒng)通過CPU集成PN口作為Client進(jìn)行Modbus TCP通訊
下面以S7-300單站系統(tǒng)及Modbus Slave軟件為例,詳細(xì)介紹如何將S7-300單站系統(tǒng)CPU的集成PN口配置為Client,Modbus Slave作為Server進(jìn)行Modbus TCP通訊。
2.1硬件設(shè)備及軟件
本例中所用的硬件設(shè)備如下表:
名稱 |
數(shù)量 |
訂貨號 |
S7-300電源模塊PS 307 10A |
1 |
6ES7307-1KA02-0AA0 |
S7-300 CPU317-2PN/DP |
1 |
6ES7317-2EK14-0AB0(V3.2) |
網(wǎng)線 |
若干 |
|
筆記本電腦 |
1 |
所用到軟件如下表:
名稱 |
訂貨號 |
STEP7 V16Update3 組態(tài)編程軟件 |
|
Modbus Slave免授權(quán)版本 |
可從網(wǎng)上免費獲取 |
2.2 S7-300單站系統(tǒng)與Modbus Slave軟件組態(tài)
打開TIA軟件,新建一個工程項目文件,命名為“PN_MODBUS TCP Client”,在項目下插入一個S7-300站,如下圖1所示:
圖1新建S7-300 Station
打開設(shè)備視圖,修改CPU的IP地址,本例中將CPU的PN口IP地址設(shè)為192.168.0.220,如下圖17所示:
圖3新增工藝對象
②設(shè)置“連接設(shè)置”
連接ID:連接引用標(biāo)識符(范圍1~4095),在之后調(diào)用指令時會使用該參數(shù)
連接建立:PLC做MODBUS TCP客戶端,選擇主動。
遠(yuǎn)程IP地址:圖中的IP地址(192.168.0.228)為 筆記本電腦的IP地址
本地設(shè)備ID:選擇PLC的設(shè)備類型
本地端口:作為客戶端,可不指定固定端口
伙伴端口:圖中502端口為Modbus Slave的端口號
圖4組態(tài)工藝對象
③Modbus 設(shè)置“內(nèi)部”
圖5組態(tài)工藝對象
③Modbus 設(shè)置“數(shù)據(jù)區(qū)域”
下圖中設(shè)置了4個Modbus數(shù)據(jù)區(qū)域
圖6組態(tài)工藝對象
2.4根據(jù)工藝對象中創(chuàng)建的數(shù)據(jù)區(qū)域添加數(shù)據(jù)塊
根據(jù)步驟3.3工藝對象中設(shè)置的數(shù)據(jù)區(qū)域,添加四個數(shù)據(jù)塊,如下圖所示
圖7創(chuàng)建數(shù)據(jù)塊
圖8創(chuàng)建存放MODBUS 線圈數(shù)據(jù)的數(shù)據(jù)塊
圖9創(chuàng)建存放MODBUS 數(shù)字量輸入類型的數(shù)據(jù)塊
圖10創(chuàng)建存放MODBUS 保持寄存器數(shù)據(jù)的數(shù)據(jù)塊
圖11創(chuàng)建存放MODBUS 輸入寄存器據(jù)的數(shù)據(jù)塊
2.5創(chuàng)建具有可用于授權(quán)的注冊表項的數(shù)據(jù)塊
創(chuàng)建授權(quán)密鑰數(shù)據(jù)塊DB3(名稱REG_KEY),選擇類型為“全局DB”,打開該DB塊,創(chuàng)建變量“REG_KEY”,數(shù)據(jù)類型為“String[17]”,如圖所示:
圖12創(chuàng)建存放授權(quán)碼的數(shù)據(jù)塊
授權(quán)密鑰的獲取方法,參考//www.ad.siemens.com.cn/productportal/Prods/published/Comm/Comm_9.4/Comm_9.4.html
2.6調(diào)用OB121
由于在獲取授權(quán)密鑰前,“MODBUSPN”指令是無授權(quán)狀態(tài),會使CPU報錯而停機。而為了讀取CPU 的“IDENT_CODE”碼,需要CPU運行起來,則必須添加編程錯誤組織塊OB121,如下圖所示:
圖13調(diào)用OB121
2.7調(diào)用通信指令
調(diào)用MODBUS TCP指令(通信---其他---MODBUS_TCP---MODBUSPN),填寫參數(shù)。
為了在通信故障時查找原因,編寫程序段2捕獲錯誤代碼。
圖14調(diào)用“MODBUSPN”指令
2.8初始化指令
創(chuàng)建啟動組織塊OB100(名稱COMPLETE RESTART),語言為“STL”,打開該OB塊,置位初始化位輸入管腳寄存器,如圖所示:
圖15初始化“MODBUSPN”指令
2.9通信測試
示例1:客戶端讀取服務(wù)器【 數(shù)字量輸入】,偏移量3,長度為2的數(shù)據(jù)
圖16通信測試示例
示例2:客戶端讀取服務(wù)器【輸入寄存器】,偏移量0,長度為3的數(shù)據(jù)
圖17通信測試示例
示例3:客戶端讀取服務(wù)器【線圈寄存器】,偏移量0,長度為8的數(shù)據(jù)
圖18通信測試示例
示例4:客戶端讀取服務(wù)器【保持寄存器】,偏移量0,長度為3的數(shù)據(jù)
圖19通信測試示例
示例5:客戶端寫入數(shù)據(jù)到服務(wù)器【保持寄存器】,偏移量5,長度為5的數(shù)據(jù)
圖20通信測試示例
示例6:客戶端寫入數(shù)據(jù)到服務(wù)器【線圈寄存器】,偏移量0,長度為8的數(shù)據(jù)
圖21通信測試示例
3.配置S7-300單站系統(tǒng)通過CPU集成PN口作為Server進(jìn)行Modbus TCP通訊
下面以S7-300單站系統(tǒng)及ModScan32軟件為例,詳細(xì)介紹如何將S7-300單站系統(tǒng)CPU的集成PN口配置為Server,ModScan32作為Client進(jìn)行Modbus TCP通訊。
3.1例子中使用的硬件設(shè)備及軟件
本例中所用的硬件設(shè)備如下表:
名稱 |
數(shù)量 |
訂貨號 |
S7-300電源模塊PS 307 10A |
1 |
6ES7307-1KA02-0AA0 |
S7-300 CPU317-2PN/DP |
1 |
6ES7317-2EK14-0AB0(V3.2) |
網(wǎng)線 |
若干 |
|
筆記本電腦 |
1 |
所用到軟件如下表:
名稱 |
訂貨號 |
STEP7 V16Update3 組態(tài)編程軟件 |
|
ModScan32免授權(quán)版本 |
可從網(wǎng)上免費獲取 |
3.2 S7-300單站系統(tǒng)與ModScan32軟件組態(tài)
打開TIA軟件,新建一個工程項目文件,命名為“PN_MODBUS TCP Server”,在項目下插入一個S7-300站,如下圖所示:
圖22新建S7-300 Station
打開設(shè)備視圖,修改CPU的IP地址,本例中將CPU的PN口IP地址設(shè)為192.168.0.220,如下圖17所示:
圖23設(shè)備視圖中設(shè)置CPU的IP地址
3.3組態(tài)工藝對象
①新增工藝對象,選擇“Modbus”---"其他"---“MODBUS_TCP”---"MB_PN_PARAM"
圖24新增工藝對象
②設(shè)置“連接設(shè)置”
連接ID:連接引用標(biāo)識符(范圍1~4095),在之后調(diào)用指令時會使用該參數(shù)
連接建立:PLC做MODBUS TCP服務(wù)器,選擇被動。
遠(yuǎn)程IP地址:可以指定或者不指定連接伙伴的IP地址。
本地設(shè)備ID:選擇PLC的設(shè)備類型
本地端口:指定固定端口
伙伴端口:可不指定
圖25組態(tài)工藝對象
③Modbus 設(shè)置“內(nèi)部”
圖26組態(tài)工藝對象
④Modbus 設(shè)置“數(shù)據(jù)區(qū)域”
下圖中設(shè)置了4個Modbus數(shù)據(jù)區(qū)域
圖27組態(tài)工藝對象
3.4根據(jù)工藝對象中創(chuàng)建的數(shù)據(jù)區(qū)域添加數(shù)據(jù)塊
根據(jù)步驟3.3工藝對象中設(shè)置的數(shù)據(jù)區(qū)域,添加四個數(shù)據(jù)塊,如下圖所示
圖28創(chuàng)建數(shù)據(jù)塊
圖29創(chuàng)建存放MODBUS 線圈數(shù)據(jù)的數(shù)據(jù)塊
圖30創(chuàng)建存放MODBUS 數(shù)字量輸入類型的數(shù)據(jù)塊
圖31創(chuàng)建存放MODBUS 保持寄存器數(shù)據(jù)的數(shù)據(jù)塊
圖32創(chuàng)建存放MODBUS 輸入寄存器據(jù)的數(shù)據(jù)塊
3.5創(chuàng)建具有可用于授權(quán)的注冊表項的數(shù)據(jù)塊
創(chuàng)建授權(quán)密鑰數(shù)據(jù)塊DB3(名稱REG_KEY),選擇類型為“全局DB”,打開該DB塊,創(chuàng)建變量“REG_KEY”,數(shù)據(jù)類型為“String[17]”,如圖所示:
圖33創(chuàng)建存放授權(quán)碼的數(shù)據(jù)塊
授權(quán)密鑰的獲取方法,參考//www.ad.siemens.com.cn/productportal/Prods/published/Comm/Comm_9.4/Comm_9.4.html
3.6調(diào)用OB121
由于在獲取授權(quán)密鑰前,“MODBUSPN”指令是無授權(quán)狀態(tài),會使CPU報錯而停機。而為了讀取CPU 的“IDENT_CODE”碼,需要CPU運行起來,則必須添加編程錯誤組織塊OB121,如下圖所示:
圖34OB121
3.7調(diào)用通信指令
調(diào)用MODBUS TCP指令(通信---其他---MODBUS_TCP---MODBUSPN),填寫參數(shù)。
為了在通信故障時查找原因,編寫程序段2捕獲錯誤代碼。
圖35調(diào)用“MODBUSPN”指令
3.8初始化指令
創(chuàng)建啟動組織塊OB100(名稱COMPLETE RESTART),語言為“STL”,打開該OB塊,置位初始化位輸入管腳寄存器,如下圖所示:
圖36初始化“MODBUSPN”指令
3.9建立和客戶端的連接
按照如下設(shè)置,使能服務(wù)器端,并使用ModScan32建立連接
圖37建立和客戶端的連接
3.9通信測試
示例1:客戶端讀寫服務(wù)器【 線圈寄存器 】,偏移量0,長度為10的數(shù)據(jù)
圖38通信測試示例
示例2:客戶端讀取服務(wù)器【 數(shù)字量輸入寄存器 】,偏移量0,長度為10的數(shù)據(jù)
圖39通信測試示例
示例3:客戶端讀寫服務(wù)器【 保持寄存器 】,偏移量0,長度為10的數(shù)據(jù)
圖40通信測試示例
示例4:客戶端讀取服務(wù)器【 模擬量輸入寄存器 】,偏移量0,長度為10的數(shù)據(jù)
圖41通信測試示例
審核編輯 :李倩
-
TCP
+關(guān)注
關(guān)注
8文章
1378瀏覽量
79301 -
S7-300
+關(guān)注
關(guān)注
8文章
225瀏覽量
34407
原文標(biāo)題:S7-300/400集成PN口 MODBUS TCP 通訊(TIA)
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
基于S7-1500 CPU集成PN口的Modbus TCP通信快速入門
西門子s7-300和s7-400集成PN口的s7通信
![西門子<b class='flag-5'>s7-300</b>和<b class='flag-5'>s7-400</b><b class='flag-5'>集成</b><b class='flag-5'>PN</b><b class='flag-5'>口</b>的<b class='flag-5'>s7</b>通信](https://file.elecfans.com/web2/M00/49/FC/pYYBAGKhvIOAfQJMAABku6-f3ZI463.png)
基于S7-300400 CPU集成PN接口的Modbus TCP在TIA Portal的使用入門教程
S7-1200與S7-300 PN/S7-400 PN UDP STEP7通信
如何將S7-400單站系統(tǒng)通過CPU集成PN口配置
S7-400作為PROFINET IO控制器(TIA)
S7-300集成DP口與S7-200的DP主從通信設(shè)計實現(xiàn)
S7-300集成PN口作為Profinet智能設(shè)備
S7-1200和S7-300集成DP口的主從通信(1200做主站,300做從站)
S7-300集成PN口作為Profinet智能設(shè)備
S7-400集成PN口如何進(jìn)行Modbus TCP通訊呢?
天拓分享:西門子plc S7-300/400系列的PLC通訊
![天拓分享:西門子plc <b class='flag-5'>S7-300</b>/<b class='flag-5'>400</b>系列的PLC<b class='flag-5'>通訊</b>](https://file1.elecfans.com//web2/M00/8F/16/wKgaomTLZr6AK4eeAAFWji4BzcQ231.jpg)
淺談S7-300 CPU集成PN口配置的Modbus TCP通訊技術(shù)
![淺談<b class='flag-5'>S7-300</b> CPU<b class='flag-5'>集成</b><b class='flag-5'>PN</b><b class='flag-5'>口</b>配置的<b class='flag-5'>Modbus</b> <b class='flag-5'>TCP</b><b class='flag-5'>通訊</b>技術(shù)](https://file1.elecfans.com/web2/M00/A8/AC/wKgaomUuOj6AdPtgAABNHnF4nFQ808.png)
評論