日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

S7-1500系统内使用ET200S 1SI模块实现Modbus 从站通信

發布時間:2023/12/10 windows 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 S7-1500系统内使用ET200S 1SI模块实现Modbus 从站通信 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

S7-1500系統內使用ET200S 1SI模塊實現Modbus 從站通信

1.硬件列表

2.組態和配置

3.編寫通信程序

4.設備連接

5.通信測試

6.常見問題

1 硬件列表


表1 實驗所需硬件列表

設備名稱

設備型號

CPU 1518-4PN/DP

6ES7 518-4AP00-0AB0

S7-1500 存儲卡

6ES7 954-8LF03-0AA0

ET200S 接口模塊

6ES7 151-3AA23-0AB0

ET200S PM-E電源模塊

6ES7 138-4CA01-0AA0

ET200S 1SI串口模塊

6ES7 138-4DF11-0AB0

功率模塊的終端模塊6ES7 193-4CC20-0AA0
1 SI模塊的終端模塊6ES7 193-4CA40-0AA0

2 組態和配置

1、打開軟件TIA PORTAL STEP7 V16,點擊項目->新建...創建一新項目,項目名稱為S7-1500_ET200S_ModbusSlave。


???????????????????????????????????????????????????????????????? 圖1 新建項目

2、用鼠標點擊“添加新設備”,選擇SIMATIC S7-1500->CPU->CPU 1518-4 PN/DP->6ES7 518-4AP00-0AB0。


???????????????????????????????????????????? 圖2 添加站點CPU 1518-4PN/DP

3、雙擊“設備組態”進入設備視圖。雙擊以太網接口,進入以太網接口屬性界面,新建一個子網“PN/IE_1”,并分配IP地址。


???????????????????????????????????????????????????????????????????????????? 圖3 組態硬件

4、點擊菜單欄"在線"->"硬件檢測"->"網絡中的PROFINET設備",在線檢測所連接的ET200S站點,如圖4所示。


??????????????????????????????????????????? 圖4 在線檢測ET200S站

在彈出的"PROFINET 設備的硬件檢測"窗口內勾選搜索到的ET200S站點,并點擊添加設備。


??????????????????????????????????????????????????????? 圖5 添加ET200S站

5、設備添加成功后,在"網絡視圖"內,可以看到新添加的ET200S站。另外,用戶也可以從選件目錄中找到正確的ET200S接口模塊型號,將它拖拽到網絡視圖中,添加模塊時需要注意組態的模塊版本應與實際一致。


???????????????????????????????????????????????????????????????????? 圖6 添加ET200S站法二

6、點擊ET200S站左側“未分配”,選擇IO控制器“PLC_1.PROFINET接口_1”,為ET200S分配好IO控制器。


?????????????????????????????????????????????????????????????????????? 圖7 Profinet網絡配置

同時為ET200S的以太網接口分配好IP地址,注:此時給ET200S分配了一個設備名稱為"im151-3pn"(該名稱不唯一,以實際項目為準),確保離線和在線的設備名稱一致。

下面介紹如何修改設備名稱。 如需離線修改該設備名稱,可以進入ET200S模塊的屬性-〉以太網地址。


??????????????????????????????????????????????? 圖8 離線修改ET200S的設備名稱

下面介紹如何在線分配IO設備名稱。如ET200S的實際設備名稱與組態設置的不一致,可以在線修改。右擊網絡“PN/IE_1”,點擊“分配設備名稱”,在線修改ET200S的設備名稱。


???????????????????????????????? 圖9 分配設備名稱

確保ET200S的設備名稱的狀態是“確定”,如果出現不一致的情況,選擇問題站點后點擊“分配名稱”,確保該站點最后的狀態是“確定”,如下圖所示。


?????????????????????????????????????????????????? 圖10 確認ET200S設備名稱在線與離線一致

7、雙擊“im151-3pn”,進入ET200S組態界面,(自動檢測已經將電源模塊PM-E和ET200S 1SI串口模塊組態到1、2槽;手動組態時需要用戶手動從選件目錄中拖拽添加),雙擊1SI_1串口通信模塊,進入屬性框,協議選擇"Modbus Slave",波特率為9600,地址區為32字節。


??????????????????????????????????????????????????????????? 圖11 1SI_1選擇協議

8、點擊“報文”,進行報文設置,從站地址:2,停止位:1,奇偶校驗:無。


??????????????????????????????????????????????????????????????? 圖12 報文設置

9、點擊“接口”,接口選擇“半雙工(RS-485兩線制模式)”,接收線路初始狀態選擇“信號R(A)0V/信號R(B)5V”。


?????????????????????????????????????????????????????????? 圖13 接口設置

3 編寫通信程序

1、雙擊"添加新塊",創建數據塊DB10,如下圖所示,按照圖中所示,設置各個變量的啟動值。注:有關每個變量的含義,可以參考手冊"SIMATIC ET200S 串行接口模塊"的3.6.3章節和3.6.18章節。

舉例說明:F01_MOD_STRT_ADR_1表示設置功能碼01、05、15的Modbus起始地址,本例中設置為16#0,即表示00001;F01_MOD_END_ADR_1表示設置功能碼01、05、15的Modbus終止地址,本例中設置16#ff,即表示為00256;F01_CNV_TO_FLAG_A表示設置PLC的M地址的起始地址,本例設置為16#0,即表示M0.0,說明M0.0與00001是對應關系,往下依次類推。

舉例說明:FC03_06_16_DB_NO表示設置與功能碼03、06、16的Modbus地址對應的DB 塊,本例中設置16#B,即表示DB11,說明DB11.DBW0與40001是對應關系,往下依次類推。


??????????????????????????????????? 圖14 新建發送數據塊

創建2個數據塊,如下圖所示,DB11(命名FC030616)、DB12(命名FC04),這2個數據塊都創建1個數據類型Array的變量,數組元素的數據類型為Word,數量為201。注:DB11的數據變量用于功能碼03、06、16;DB12的數據變量用于功能碼04。用于下面的測試。


???????????????????????????????????????????? 圖15 新建FC030616功能碼數據塊

1.注意以上兩個DB塊,右鍵其屬性對話框,一定要確保"優化的塊訪問"參數未勾選。

2、進入主程序OB1,從通信->通信處理器->ET200S串行接口,調用發送功能塊S_MODB。


??????????????????????????????????????????????????????????????????????????????? 圖16 調用功能塊

關于功能塊S_MODB的管腳說明,請見表2。


表2 功能塊S_MODB 參數表

管腳

解釋描述

LADDR

模塊的硬件標識符,本例中為264,具體查找方法見常見問題1。

START_TIMER

超時初始化定時器,本例中為T0

START_TIME

超時初始化時間值,本例中為S5t#5s

DB_NO

地址映射DB塊,本例中為DB10

OB_MASK

外設訪問錯誤屏蔽位,本例中為M0.0

CP_START

FB初始化始能位,該位需要置1。本例中為M0.1

CP_START_FM

CP_START初始化的上升沿位,本例中為M0.2

CP_START_NDR

從CP寫操作位,本例中為M0.3

CP_START_OK

初始化成功標志,本例中為M0.4

CP_START_ERROR

初始化失敗標志,本例中為M0.5

ERROR_NR

錯誤號,本例中為MW2

ERROR

錯誤位,為TRUE說明有錯誤。

ERROR_INFO

錯誤信息,本例中為MW4,可以查看“Simatic ET200S串行接口模塊”手冊,第3章節

4 設備連接

以RS485的方式接線為例說明,ET200S 1SI 模塊按照RS485的接線方式連接到電腦的USB口,連接示意圖如下。


???????????????????????????????? 圖17 硬件結構和接線示意圖

5 通信測試

前面使用 TIA Step7 軟件已經將通信ET200S的通信工作做完,下面進行通信測試。這里使用串口通訊測試軟件ModSim32軟件來測試ET200S和計算機的通信,步驟如下:

1、首先將硬件配置和程序下載到CPU1518-4PN/DP中。將項目程序在線,本示例中手動將M0.1(即:CP_START)置1,M0.2(即:CP_START_FM)和M0.4(即:CP_START_OK)也會為1。


???????????????????????????? 圖18 CP_START管腳置1情況

2、在計算機上打開MODBUS主站仿真軟件Modscan32。


??????????????????????????????????????????????????? 圖19 打開Modscan32

3、點擊Modscan32上的Connection->Connect,顯示畫面如下,選擇計算機和ET200S相連的COM口COM1(與實際所使用的COM口一致),設好波特率,數據位,停止位,校驗方式,注:這些設置要與1SI_1的設置一致,如下圖。


???????????????????????????????????????????? 圖20 設置連接端口

4、設置完成,點擊OK,顯示畫面如下。


????????????????????????????????????????? 圖21 ET200S的03功能碼發送數據

5、Modscan32軟件界面03的地址40001~40005分別設置為1~5,打開監控表,監控功能碼030616對應的數據塊DB11,創建前5個字,查看所接收的數據(此處既可以接收Modscan32的數據,也可以修改Modscan32的數據)。


??????????????????????????????????????????????????????? 圖22 功能碼030616數據測試結果

6、打開監控表,監控功能碼04對應的數據塊DB12,創建前5個字,修改數據分別為11~15,Modscan32軟件界面04的地址30001~30005分別顯示11~55的數據(此處收功能碼04的限制只能寫入數據到Modscan32)。


???????????????????????????????????????????????????????????????????? 圖23 功能碼04數據測試結果

常見問題

1.為什么功能塊報錯"16#1E0E"?

可能的原因是:功能塊的“LADDR”管腳設置錯誤,正確的應該設置該模塊的硬件標識符,而不是模塊的I/O起始地址,具體查找步驟參考下表。


表3 模塊硬件標識符查找方法

方法一

方法二

??

http://www.ad.siemens.com.cn/productportal/prods/1500published/Comm/Comm_10.3/Comm_10.3.html?

總結

以上是生活随笔為你收集整理的S7-1500系统内使用ET200S 1SI模块实现Modbus 从站通信的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。