6SL3210-5BE15-5CV0西門子V20變頻器380V
上海麗丞工業(yè)自動(dòng)化設(shè)備有限公司
全新原裝,質(zhì)量保證,保修一年
專業(yè)銷售及維修西門子各類工控自動(dòng)化配件;
:S7-200CN、S7-200SMART、S7-300、S7-400、 S7-1200、S7-1500、ET200、LOGO邏西門子可編程控制器輯控制模塊
西門子HMI人機(jī)界面:觸摸屏
西門子變頻器:MM420、MM430、MM440、G110、G120、6SE70
西門子工業(yè)以太網(wǎng):通訊網(wǎng)卡、通訊電纜、通訊接頭、總線連接器 工控機(jī)、交換機(jī)、自動(dòng)化軟件等系型號(hào)齊全,快速報(bào)價(jià),買我們的產(chǎn)品無憂所值,我們的產(chǎn)品都承諾質(zhì)保一年,讓您買的省心舒心,用的放心!
TIA V13 SP1版本軟件中提供了2個(gè)版本的Modbus RTU指令:
圖1. 兩個(gè)版本Modbus RTU指令
早期版本的Modbus RTU指令(圖1. 中 MODBUS (V2.2))僅可通過CM1241通信模塊或CB1241通信板進(jìn)行Modbus RTU通信。
新版本的 Modbus RTU指令(圖1. 中 MODBUS(RTU) V3.0)擴(kuò)展了Modbus RTU的功能,該指令除了支持CM1241通信模塊、CB1241通信板,還支持 PROFINET 或 PROFIBUS 分布式 I/O 機(jī)架上的PTP通信模塊實(shí)現(xiàn)Modbus RTU通信。
新版本 Modbus RTU指令所支持的PTP模塊如下圖2.所示:
圖2. 新版本 Modbus RTU指令所支持的PTP模塊
新版本Modbus RTU指令中包含Modbus RTU 主站指令和從站指令。本文以 CPU1217C+CM1241 RS422/485+ET200SP CM PTP 模塊為例,介紹新版本 Modbus RTU 指令主從通信的編程步驟。
其中CPU 機(jī)架CM1241 RS422/485作為Modbus RTU從站,分布式機(jī)架ET200SP 中 CMPTP 模塊作為Modbus RTU主站。網(wǎng)絡(luò)結(jié)構(gòu)圖如下:
圖3. Modubus RTU 網(wǎng)絡(luò)通信結(jié)構(gòu)圖
本項(xiàng)目中使用到的硬件和軟件如下:
硬件:
① CPU1217C (訂貨號(hào): 6ES7 217-1AG40-0XB0),固件版本V4.1.3
② CM1241 RS422/485模塊 (訂貨號(hào):6ES7 241-1CH32-0XB0),固件版本V2.1
③ 24V 電源PS307(訂貨號(hào):6ES7307-1KA02-0AA0)
④ ET200 SP IM155-6PN HF(訂貨號(hào):6ES7155-6AU00-0CN0)
⑤ CM PTP模塊(訂貨號(hào):6ES7137-6AA00-0BA0)
軟件:
① TIA V13 SP1 UP 9
打開設(shè)備視圖,添加S7-1200CPU,并在硬件目錄里找到“通信模塊”→“點(diǎn)到點(diǎn)”→“CM1241(RS422/485)”,拖拽此模塊至CPU左側(cè)即可,如下圖4.所示:
圖4. 添加 CM 1241 RS422/485模塊
注意:
固件版本>=V2.1 的CM 1241 RS422/485模塊,才支持新版本Modbus RTU指令。
接下來,在“設(shè)備視圖”中用鼠標(biāo)選中CM1241(RS422/485)模塊,在“屬性”→“端口組態(tài)”中配置此模塊硬件接口參數(shù),
本例以傳輸率=9.6Kbps,奇偶校驗(yàn)=無奇偶校驗(yàn),數(shù)據(jù)位=8位字符,停止位=1為例。如CM 1241 端口組態(tài)設(shè)置如下圖5.所示:
圖5. CM1241 RS422/485 模塊端口組態(tài)
最后在“硬件標(biāo)識(shí)符”里確認(rèn)一下硬件標(biāo)識(shí)符為269(該參數(shù)在程序編程中會(huì)被使用),如下圖6.所示:
圖6 硬件標(biāo)識(shí)符
另外,S7-1200 還提供了系統(tǒng)和時(shí)鐘存儲(chǔ)器功能,為了便于后續(xù)指令,建議使能該功能。在CPU “屬性”→“常規(guī)”→“系統(tǒng)和時(shí)鐘存儲(chǔ)器”使能系統(tǒng)和時(shí)鐘存儲(chǔ)器功能,如圖7. 所示。
圖7. 系統(tǒng)和時(shí)鐘存儲(chǔ)器功能
打開網(wǎng)絡(luò)視圖并拖入一個(gè)ET200SP站點(diǎn),并將其分配給相應(yīng)的IO 控制器(本例CPU1217C 為 IO 控制器),如圖8.所示。
圖8. 插入ET200SP站點(diǎn)
在ET200SP的"設(shè)備視圖"環(huán)境下,為ET200SP 站點(diǎn)添加信號(hào)、通信模塊和服務(wù)器模塊,在本例中只添加了CM PTP模塊和服務(wù)器模塊。
注意:
ET200SP站點(diǎn)中,服務(wù)器模塊是必須組態(tài)的。服務(wù)器模塊隨接口模塊一起采購(gòu),無需單獨(dú)購(gòu)買。
ET200SP接口模塊需要為其分配IP地址和Device Name, 有關(guān)ET200 SP 分布式IO 組態(tài)詳細(xì)步驟,請(qǐng)參考《ET200 SP 使用快速入門》,本例不再描述Profinet IO通信的相關(guān)設(shè)置與步驟。
《ET200 SP 使用快速入門》下載鏈接:
https://support.industry.siemens.com/cs/cn/zh/view/78304711
在ET200SP"設(shè)備視圖"中用鼠標(biāo)選中CM PTP,在“屬性”→“常規(guī)”→“接口”→“操作模式”中配置此模塊硬件接口參數(shù),
本例設(shè)定“指定工作模式":"半雙工(RS485)2線制操作";"接收線路的初始狀態(tài)":"無"。如下圖9.所示:
圖9. CM PTP 操作模式
接下來,在“屬性”→“常規(guī)”→“接口”→“端口組態(tài)”中配置此模塊端口組態(tài)參數(shù),
本例設(shè)定"協(xié)議":"Freeport/Modbus";"端口參數(shù)"設(shè)置:傳輸率=9.6Kbps,奇偶校驗(yàn)=無奇偶校驗(yàn),數(shù)據(jù)位=8位字符,停止位=1為例。端口組態(tài)設(shè)置如下圖10.所示:
圖10. CM PTP 端口組態(tài)
最后需要在“硬件標(biāo)識(shí)符”里確認(rèn)一下CM PTP 模塊硬件標(biāo)識(shí)符,該參數(shù)在程序編程中會(huì)被使用。
Modbus RTU主站編程需要調(diào)用Modbus_Comm_Load 指令和Modbus_Master 指令,其中Modbus_Comm_Load 指令通過 Modbus RTU 協(xié)議對(duì)通信模塊進(jìn)行組態(tài),Modbus_Master 指令可通過由 Modbus_Comm_Load 指令組態(tài)的端口作為 Modbus 主站進(jìn)行通信, Modbus_Comm_Load 指令的 MB_DB 參數(shù)必須連接到 Modbus_Master 指令的(靜態(tài))MB_DB 參數(shù)。
本例中分布式機(jī)架ET200SP 中 CM PTP 模塊作為Modbus RTU主站,其相關(guān)編程步驟如下:
圖11. 拖入Modbus RTU 主站指令
Modbus_Comm_Load指令各參數(shù)意義如下表1所示:
引腳 |
說明
|
---|---|
REQ |
上升沿觸發(fā)
|
PORT |
通信端口的硬件標(biāo)識(shí)符
|
BAUD |
波特率選擇:3600,6000,12000,2400,4800,9600,19200,38400,57600,76800,115200
|
PARITY |
奇偶檢驗(yàn)選擇:0-無;1-奇校驗(yàn);2-偶校驗(yàn)
|
FLOW_CTRL |
流控制選擇:0-(默認(rèn)值)無流控制
|
RTS_ON_DLY |
RTS延時(shí)選擇:0-(默認(rèn)值)
|
RTS_OFF_DLY |
RTS關(guān)斷延時(shí)選擇:0-(默認(rèn)值)
|
RESP_TO |
響應(yīng)超時(shí): 默認(rèn)值 = 1000 ms。MB_MASTER 允許用于從站響應(yīng)的時(shí)間(以毫秒為單位)。 |
MB_DB |
對(duì) Modbus_Master 或 Modbus_Slave 指令的背景數(shù)據(jù)塊的引用。 |
DONE |
如果上一個(gè)請(qǐng)求完成并且沒有錯(cuò)誤,DONE 位將變?yōu)?TRUE 并保持一個(gè)周期。 |
ERROR |
如果上一個(gè)請(qǐng)求完成出錯(cuò),則 ERROR 位將變?yōu)?TRUE 并保持一個(gè)周期。 STATUS 參數(shù)中的錯(cuò)誤代碼僅在 ERROR = TRUE 的周期內(nèi)有效。 |
STATUS |
端口組態(tài)錯(cuò)誤代碼,請(qǐng)參考TIA 軟件在線幫助或S7-1200 系統(tǒng)手冊(cè)。
|
表1 MB_COMM_LOAD指令參數(shù)意義
Modbus_Master指令各參數(shù)意義如下表2所示:
引腳 |
說明
|
---|---|
EN |
使能端
|
REQ |
TRUE = 請(qǐng)求向 Modbus 從站發(fā)送數(shù)據(jù) ,建議采用上升沿觸發(fā)
|
MB_ADDR |
Modbus RTU從站地址。默認(rèn)地址范圍:0至247;擴(kuò)展地址范圍:0至65535。值0被保留用于將消息廣播到所有Modbus從站。 |
MODE |
模式選擇: 指定請(qǐng)求類型(讀取或?qū)懭耄?
|
DATA_ADDR |
從站中的起始地址:指定Modbus從站中將供訪問的數(shù)據(jù)的起始地址。
|
DATA_LEN |
數(shù)據(jù)長(zhǎng)度:指定要在該請(qǐng)求中訪問的位數(shù)或字?jǐn)?shù)。
|
DATA_PTR |
數(shù)據(jù)指針: 指向要進(jìn)行數(shù)據(jù)寫入或數(shù)據(jù)讀取的標(biāo)記或數(shù)據(jù)塊地址。
|
DONE |
完成位:上一請(qǐng)求已完成且沒有出錯(cuò)后,DONE 位將保持為 TRUE 一個(gè)掃描周期時(shí)間。
|
BUSY |
FALSE – Modbus_Master 無激活命令: |
ERROR |
對(duì) Modbus_Master 或 Modbus_Slave 指令的背景數(shù)據(jù)塊的引用。 |
STATUS |
如果上一個(gè)請(qǐng)求完成并且沒有錯(cuò)誤,DONE 位將變?yōu)?TRUE 并保持一個(gè)周期。 |
ERROR |
如果上一個(gè)請(qǐng)求完成出錯(cuò),則 ERROR 位將變?yōu)?TRUE 并保持一個(gè)周期。 STATUS 參數(shù)中的錯(cuò)誤代碼僅在 ERROR = TRUE 的周期內(nèi)有效。 |
STATUS |
錯(cuò)誤代碼
|
表2 Modbus_Master指令參數(shù)意義
6SL3210-5BE15-5CV0西門子V20變頻器380V