大地资源网视频在线观看新浪,日本春药精油按摩系列,成人av骚妻潮喷,国产xxxx搡xxxxx搡麻豆

上海朕鋅電氣設(shè)備有限公司

免費會員
您現(xiàn)在的位置: 上海朕鋅電氣設(shè)備有限公司>>西門子PLC>>S7-300>> 6ES73225GH000AB0西門子模塊6ES73225GH000AB0
6ES73225GH000AB0西門子模塊6ES73225GH000AB0
參考價: 面議
具體成交價以合同協(xié)議為準(zhǔn)
  • 6ES73225GH000AB0 產(chǎn)品型號
  • 西門子/SIEMENS 品牌
  • 代理商 廠商性質(zhì)
  • 上海市 所在地

訪問次數(shù):292更新時間:2017-06-26 11:23:25

聯(lián)系我們時請說明是智能制造網(wǎng)上看到的信息,謝謝!
免費會員·9年
聯(lián)人:
鄭鑫

掃一掃訪問手機商鋪

產(chǎn)品簡介
西門子模塊6ES73225GH000AB0
《銷售態(tài)度》:質(zhì)量保證、誠信服務(wù)、及時到位!
《銷售宗旨》:為客戶創(chuàng)造價值是我們永遠(yuǎn)追求的目標(biāo)!
《服務(wù)說明》:現(xiàn)貨配送至全國各地含稅(17%)含運費!
《產(chǎn)品質(zhì)量》:原裝*,*!
《產(chǎn)品優(yōu)勢》:專業(yè)銷售 薄利多銷 信譽好,口碑好,價格低,貨期短,大量現(xiàn)貨,服務(wù)周到!
產(chǎn)品介紹

西門子模塊6ES73225GH000AB0

6ES7322-5GH00-0AB0

SIMATIC S7-300,數(shù)字輸出 SM 322,電位隔離, 16 DA(固態(tài)繼電器), AC/DC 24-48V;0.5A mit 一個一組,1x 40極

SIEMENS西門子上海朕鋅電氣設(shè)備有限公司

:鄭鑫 :

www.zhenxindianqi。。cn

工作 (同步)

1 概述
S7-1200 與 S7-300 之間的以太網(wǎng)通信方式比較多,可以采用ISO on TCP、TCP和 S7 的方式進(jìn)行通信。在S7-1200 CPU 中采用ISO on TCP和TCP這兩種協(xié)議進(jìn)行通信所使用的指令是相同的,都使用 T-block ( TSEND_C, TRCV_C, TCON, TDISCON, TSEN, TRCV ) 指令編程。S7-300 CPU一側(cè)如果使用的是CPU集成的PN接口,連接不在STEP7的NetPro中建立連接,而是使用西門子提供的OPEN IE 的方式來實現(xiàn)。
本文主要介紹了如何實現(xiàn)在S7-1200 和S7-300 CPU集成PN口之間的ISO on TCP通信,包括通信的基本步驟、配置及編程等內(nèi)容。具體的實現(xiàn)方法有多種,比如在S7-1200中可以使用不帶連接的通信指令(TCON, TDISCON, TSEN, TRCV),也可以使用帶連接的通信指令(TSEND_C, TRCV_C);在S7-300中可以采用功能塊編程的方式來實現(xiàn),也可以使用Open Communication Wizard工具(OPEN IE向?qū)В┑姆绞絹斫PEN IE的通信。
為了方便理解,本文在S7-1200中使用不帶連接的通信指令TCON, TDISCON, TSEN, TRCV,在S7-300側(cè)通過功能塊編程的方式來實現(xiàn)。
關(guān)于S7-1200和S7-300 OPEN IE通信的文檔可以登錄西門子自動化與驅(qū)動集團(tuán)的下載中心,:http://www.ad.siemens.com.cn/download/ ,根據(jù)如表1提供的文檔編號搜索并下載相關(guān)文檔。

文檔編號中文標(biāo)題
A0426西門子 S7-1200 PLC 技術(shù)參考Version 1.5
A0416S7-1200與S7-300 的以太網(wǎng)TCP 及ISO on TCP通信
A0421如何實現(xiàn)兩個S7-1200 CPU之間的以太網(wǎng)通信
A0415通過S7協(xié)議實現(xiàn)S7-1200 與S7-300的通信
A0414S7-1200基本以太網(wǎng)通信使用指南
A0284使用西門子PLC集成的PN口實現(xiàn)S5 兼容通信使用入門
A0345使用 Open Communication Wizard 建立開放式 ISO on TCP 通信
A0346使用 Open Communication Wizard 建立開放式 UDP 通信
A0347使用 Open Communication Wizard 建立開放式 TCP 通信
A0344S7-300和S7-400集成PN口的S7通信
A0334PN CPU/CP的開放式通訊-Open IE

表1 下載中心文檔列表

2 軟硬件及所要完成的通信任務(wù)

2.1硬件設(shè)備

實驗的硬件設(shè)備:
1、S7-1200 CPU,CPU1212 AC/DC/RLY(6ES7 212-1BD30-0XB0)
2、S7-300 PN CPU,CPU317-2PN/DP(6ES7 317-2EH13-0AB0 V2.6.7)
3、PC機(帶以太網(wǎng)卡)
4、SCALANCE X216交換機,S7-1200、S7-300和PC通過交換機互連起來
5、TP以太網(wǎng)電纜

2.2 軟件環(huán)境

1、STEP7 Basic V10.5 SP2
2、STEP7 V5.4 SP5
3、通信所需的功能塊,請參見附件提供的例程 ”Sample_1 ( 50 KB ) ” 或參考下載中心文檔:《A0284 使用西門子PLC集成的PN口實現(xiàn)S5 兼容通信使用入門》提供的程序。下載鏈接:80490650

2.3 所要完成的通信任務(wù)
本例中所要完成的通信任務(wù)定義為:
1、 將S7-1200的發(fā)送數(shù)據(jù)塊DB3里的8個字節(jié)數(shù)據(jù)發(fā)送到S7-300的DB3中。
2、 將S7-300 DB3里接收到的8個字節(jié)數(shù)據(jù)再發(fā)送到S7-1200的接收數(shù)據(jù)塊DB4中。


3 S7-1200 CPU的組態(tài)編程

3.1創(chuàng)建新項目

1、打開STEP 7 Basic 軟件并新建項目
在STEP 7 Basic 的 “Portal View”中選擇“Create new project”創(chuàng)建一個新項目,項目名稱為“GS_ISO”。


2、添加硬件并命名PLC
然后進(jìn)入 “Project view”,在“Project tree” 下雙擊 “Add new device”,在對話框中選擇所使用的S7-1200 CPU(6ES7 212-1BD30-0XB0)添加到機架上,設(shè)備名為 PLC_1,如圖1所示。


圖1 添加新的PLC站

為了編程方便,我們使用 CPU 屬性中定義的時鐘位,定義方法如下:
在“Project tree> PLC_1 > Device configuration” 中,選中 CPU ,然后在下面的屬性窗口中,“Properties > System and clock memory” 下,將系統(tǒng)位定義在MB1,時鐘位定義在MB0,如圖2所示。程序中我們主要使用 M0.3,它是以2Hz 的速率在0和1之間切換的一個位,可以使用它去自動激活發(fā)送任務(wù)。


圖2 系統(tǒng)和時鐘存儲器

3、為 S7-1200 CPU的PROFINET 通信口分配以太網(wǎng)地址
在 “Device View”中點擊 CPU 上代表PROFINET 通信口的綠色小方塊,在下方會出現(xiàn)PROFINET 接口的屬性,在 “Ethernet addresses”下分配IP 地址為 192.168.0.2 ,子網(wǎng)掩碼為255.255.255.0,如圖3所示。


圖3為 S7-1200 CPU的PROFINET 接口分配IP地址

3.2調(diào)用并配置通信指令

1、在 PLC_1 的 OB1 中調(diào)用 “TCON”通信指令
進(jìn)入“Project tree > PLC_1 > Program blocks > OB1” 主程序中,從右側(cè)窗口 “Instructions > Extended Instructions > Communications” 下調(diào)用 “TCON” 指令,并選擇 “Single Instance” 生成背景 DB塊,如圖4所示。


圖4 調(diào)用TCON指令

2、定義PLC_1 的 “TCON” 連接參數(shù)
PLC_1 的 TCON 指令的連接參數(shù)需要在指令下方的屬性窗口“Properties > Configuration > Connection parameter”中設(shè)置,如圖5所示。

連接參數(shù)說明:

End point

:選擇通信伙伴,這里選擇“unspecified”

Address

:通信伙伴S7-300站的IP地址“192.168.0.3”

Connection type

:選擇通信協(xié)議為ISO on TCP

Connection ID

:連接的地址 ID 號,這個 ID 號在后面的編程里會用到

Connection data

:創(chuàng)建連接時,系統(tǒng)會自動生成本地的連接 DB 塊,所有的連 接數(shù)據(jù)都會存在這個 DB 塊中。

                                 

:選擇本地 PLC_1作為主動連接,S7-300 CPU作為被動連接

Address details

:設(shè)定 TSAP 地址這里本地設(shè)置成“PLC_1”, TSAP ID自動為“50.4C.43.5F.31”,伙伴方設(shè)置成不設(shè)置TSAP(ASCII),設(shè)置TSAP ID 為“E0.02.50.4C.43.5F.31”。


圖5 “TCON” 指令的連接參數(shù)

3、分配 “TCON” 的塊參數(shù)
在指令下方的屬性窗口“Properties > Configuration > block parameter”中設(shè)置,可以根據(jù)需要自己為“TCON” 塊相應(yīng)的輸入輸出參數(shù)。好參數(shù)的塊,如圖6所示。其中M8.0作為啟動連接的觸發(fā)位,連接ID = 1與連接參數(shù)里面的設(shè)置相同。


圖6 “TCON” 的塊參數(shù)

4、在 PLC_1 的 OB1 中調(diào)用 “TSEND” 發(fā)送通信指令
首先創(chuàng)建一個發(fā)送數(shù)據(jù)塊,通過 “Project tree > PLC_1 > Program blocks > Add new block”,選擇 “Data block” 創(chuàng)建 DB 塊,選擇尋址,點擊“OK”鍵,如圖7所示。


圖7 創(chuàng)建一個發(fā)送數(shù)據(jù)塊DB3

打開創(chuàng)建的發(fā)送數(shù)據(jù)塊,在數(shù)據(jù)塊中定義發(fā)送數(shù)據(jù)區(qū)為 8個字節(jié)的數(shù)組,如圖8所示。


圖8 創(chuàng)建發(fā)送數(shù)據(jù)區(qū)

然后在OB1 中調(diào)用“TSEND”發(fā)送通信指令,并為“TSEND”參數(shù)。使用M0.3( 2Hz 的時鐘脈沖)上升沿激活發(fā)送任務(wù),發(fā)送數(shù)據(jù)區(qū)為P# DB3.DBX0.0 BYTE 8,連接 ID = 1與連接參數(shù)里面的設(shè)置相同,發(fā)送長度LEN=8。分配好參數(shù)的“TSEND”塊如圖9所示。


圖9 調(diào)用“TSEND”發(fā)送通信塊

5、在 PLC_1 的 OB1 中調(diào)用“TRCV”接收通信指令
同樣,先創(chuàng)建一個接收數(shù)據(jù)塊DB4 ,如圖10所示。“TRCV”接收通信指令的調(diào)用方法與“TSEND” 發(fā)送通信指令的調(diào)用方法相同,M8.1作為接收指令的使能位,如圖11所示。


圖10創(chuàng)建接收數(shù)據(jù)區(qū)

 


圖11 調(diào)用“TRCV”接收通信塊

6、在 PLC_1 的 OB1 中調(diào)用 “TDISCON”通信指令
zui后,為了斷開通信鏈接,我們需要調(diào)用“TDISCON”通信指令,如圖12所示。


圖12 調(diào)用“TDISCON”通信塊

3.3下載程序
至此,S7-1200側(cè)的組態(tài)和編程都已經(jīng)完成,可以在項目編譯無錯誤后,直接下載到S7-1200 CPU中,并啟動CPU的運行。


4 S7-300 CPU的組態(tài)編程
S7-300帶PN接口的CPU支持ISO on TCP通信功能,通過該集成以太網(wǎng)接口組態(tài)ISO on TCP通信時,只能使用開放式通信的功能塊,這些的功能塊可以在STEP7 “ 通訊塊”的 “標(biāo)準(zhǔn)庫 ”中找到,如圖13所示。


圖13 S7-300 CPU通信指令庫

庫中提供了下列通信功能塊:
´> FB 65 "TCON",用于建立連接,連接時需要UDT65來提供參數(shù)
> FB 66 "TDISCON",用于終止連接
> FB 63 "TSEND",用于發(fā)送數(shù)據(jù)到S7站點、S5站點、PC站或者第三方設(shè)備
> FB 64 "TRCV" 用于從S7站點、S5站點、PC站或者第三方設(shè)備接收數(shù)據(jù)

要通過CPU 的 集成PN 接口實現(xiàn)開放的ISO on TCP通信,不能在Netpro網(wǎng)絡(luò)組態(tài)中直接建立連接,必須通過程序每個連接的參數(shù)。用于通信的FB標(biāo)準(zhǔn)功能塊,請參見附件提供的例程 ”Sample_1 ( 50 KB ) ” 或參考下載中心文檔《A0284 使用西門子PLC集成的PN口實現(xiàn)S5 兼容通信使用入門》提供的例程。下載鏈接:80490650

從附件提供的例程 ”Sample_1 ( 50 KB ) ” 中將把需要的程序塊拷貝到新建的項目中,包括:
> UDT 65 "TCON_PAR",存放用戶通信參數(shù)
> FB420 "SET_ISO_ENDPOINT" ,用于修改UDT65內(nèi)通信對象參數(shù)
> FC21, 被FB420調(diào)用
隨后,使用通信功能塊 FB65 "TCON"、FB66 "TDISCON"、FB63 "TSEND" 和 FB64 "TRCV" 完成程序的編寫。

4.1創(chuàng)建新項目

1、打開STEP7,新建一個項目
2、在項目中插入一個SIMATIC 300的站
3、組態(tài)硬件,插入一個CPU317-2PN/DP的CPU,并為PN接口分配IP地址“192.168.0.3”,如圖14所示。同時,在CPU的“Cycle/Clock Memory”屬性頁中MB0為時鐘存儲器,在程序中可以使用M0.3(2Hz 的時鐘脈沖)去自動激活發(fā)送任務(wù),如圖15所示。


圖14為PN接口分配IP地址

 


圖15設(shè)置時鐘存儲器字節(jié)

4.2編寫通信程序

1、從樣例程序中拷貝通信所需的塊
從附件提供的sample_1 ( 50 KB ) 例程中把需要的FB420、FC21與UDT65程序塊拷貝到新創(chuàng)建的項目中,如圖16所示。


圖 16

2、生成數(shù)據(jù)塊
在程序中創(chuàng)建一個DB塊,塊號不限(本例為DB101),在塊中建立變量DB_VAR,類型為UDT65,如圖17所示。


圖17

3、生成并調(diào)用FB塊
首成一個FB塊(本例為FB400),在FB400靜態(tài)變量區(qū)建立一個結(jié)構(gòu)“T_TSAP“,包含如下變量,并為變量分配初始值,如圖18所示。
1) LOC_RACK_SLOT (BYTE)= B#16#2 表示有兩個前導(dǎo)字符 0xE0 (CPU31x-2PN/DP 或者 CPU319-3PN/DP規(guī)定)和 0x02(CPU槽號)
2) LOC_TSAP(STRING14)= 本地用戶定義的ASCII字符'PLC_1' (注意要與S7-1200側(cè)設(shè)置保持*)。
3) REM_RACK_SLOT(BYTE)= B#16#0 不使用兩個前導(dǎo)符。
4) REM_TSAP (STRING16)= 遠(yuǎn)程用戶定義的ASCII字符'PLC_1' (注意要與S7-1200側(cè)設(shè)置保持*)。


圖18

然后在生成的FB400中調(diào)用FB420,如圖19所示。


圖19

其中參數(shù)的含義如下:
1)ID: 連接ID,與S7-1200里的設(shè)置保持*
2)DEV_ID:用于本PLC型號(注意不是通信對方)
DEV_ID = B#16#1本PLC型號為 IM151-8 PN/DP CPU
DEV_ID = B#16#2本PLC型號為CPU31x-2PN/DP或IM154-8 CPU
DEV_ID = B#16#3本PLC型號為CPU319-3PN/DP
DEV_ID = B#16#5本PLC型號為CPU41x-3PN/DP
3)ACTIVE: 主動或是被動建立連接,通信雙方必須一個主動,一個被動,本例中S7-300側(cè)為被動方。
4)T_TSAP: 靜態(tài)變量區(qū)的結(jié)構(gòu)變量,用于ISO ON TCP 通信的TSAP地址
5)IP_ADDR1 ... IP_ADDR4: 通信伙伴的IP地址,即S7-1200的IP地址192.168.0.2
6)CON_DB: 用UDT65生成的變量,即DB101

4、在OB1中調(diào)用發(fā)送和接收功能塊
在OB1中先調(diào)用FB400功能塊,為其背景數(shù)據(jù)塊DB400,如圖20所示。


圖20

然后再在OB1中依次調(diào)用通信功能塊FB65、FB64、FB63、FB66。其中發(fā)送和接收功能塊FB64、FB63的數(shù)據(jù)區(qū)都為DB3,建立DB3如圖21所示。關(guān)于塊的使用請參考STEP7的在線幫助或相關(guān)文檔說明。


圖21

FB65 “TCON”,建立連接功能塊,如圖22所示。通過輸入?yún)?shù) "REQ"一個上升沿來建立連接。 “ID” 為連接ID,“CONNECT” 參數(shù)填寫用 UDT65 生成的變量, 連接建立后會一直保持,直到調(diào)用FB66 "TDISCON" 斷開連接、CPU停止或者斷電。其中CONNECT為通過UDT65生成的DB塊,即DB101, ID = 1。通過M8.0啟動作業(yè),執(zhí)行連接的建立。


圖22

FB64 “TRCV”,接收功能塊,如圖23所示。"TRECV" EN_R始終為TRUE, ID 填寫連接ID,”DATA” 填寫接收數(shù)據(jù)區(qū),輸出參數(shù) "NDR" 用于表示新的數(shù)據(jù)已經(jīng)收到,輸出參數(shù) "LEN" 表示接收的數(shù)據(jù)長度。本例中連接ID = 1。DB3作為接收數(shù)據(jù)塊,接收數(shù)據(jù)的字節(jié)長度為8,接收作業(yè)通過M8.1使能。


圖23

FB63 “TSEND”,發(fā)送功能塊,如圖24所示。連接ID = 1。DB3為發(fā)送數(shù)據(jù)塊,發(fā)送字節(jié)長度為8,發(fā)送作業(yè)通過M0.3觸發(fā)。"TSEND" 發(fā)送請求依靠輸入?yún)?shù)"REQ"的上升沿來實現(xiàn),如果“BUSY”位為true時不要觸發(fā)"REQ"。輸出參數(shù) "DONE", "ERROR" 和 "STATUS" 用于評估工作的情況。


圖24

FB66 “TDISCON”,取消連接功能塊,如圖25所示。可以根據(jù)需要取消ID=W#16#1的連接,作業(yè)通過M8.2使能。


圖25

4.3下載程序
S7-300側(cè)的組態(tài)和編程都完成后,直接下載到S7-300 CPU中,并啟動CPU的運行。


5 監(jiān)控通信結(jié)果
對S7-1200和S7-300都組態(tài)和編程后,下載所有組態(tài)及程序并搭建好網(wǎng)絡(luò)后,首先在在S7-1200中將M8.0置位為1,然后再在S7-300中將M8.0置位為1,兩個站的“TCON” 被激活,建立兩個站之間的ISO on TCP連接。
連接正常建立后,即可以進(jìn)行數(shù)據(jù)的交換。在S7-1200和S7-300站中將 ”TRCV” 功能塊的EN_R置位為1,使能接收,監(jiān)控通信結(jié)果如圖26所示。
通過監(jiān)控結(jié)果可以看到,S7-1200中發(fā)送數(shù)據(jù)塊DB3的8個字節(jié)數(shù)據(jù)被發(fā)送到S7-300站的DB3中,同時,S7-300的DB3中接收到的數(shù)據(jù)又被發(fā)送到S7-1200的接收數(shù)據(jù)塊DB4中。


圖26 在線監(jiān)控通信結(jié)果

1. 概述
在現(xiàn)場應(yīng)用中,很多儀表和設(shè)備僅支持Modbus RTU的通訊協(xié)議,第三方儀表可以做Modbus主站或從站,西門子的通訊模塊CP341 / CP441-2 通過Dongle(硬件狗)可以擴(kuò)展該協(xié)議,S7-200 集成的口可以支持自由口通訊,通過指令庫也可以方便的實現(xiàn)Modbus RTU通訊。本文以S7-200作為Modbus 主站,CP341作為Modbus 從站,實現(xiàn)Modbus RTU通訊,闡述兩者在通訊方面的設(shè)置和注意事項。


2. 軟件環(huán)境西門子模塊6ES73225GH000AB0

2.1 STEP7 V5.4 SP4
用于編寫 S7-300/400程序,此軟件需要從西門子購買,本文檔中的300的程序是使用Step7 V5.4 SP4的軟件編寫。

2.2 CP PTP Param V5.1 SP11
串行通訊模板的驅(qū)動程序,安裝此驅(qū)動后才能對PtP模板進(jìn)行參數(shù)配置,并在Step7中集成通訊編程需要使用的功能塊。此驅(qū)動隨購買模板一起提供,也可以從以下的鏈接下載27013524

2.3 CP PTP Modbus Slave V3.1 SP7
CP341或CP441-2用于Modbus從站時,需要安裝此驅(qū)動協(xié)議,但安裝之前必須先安裝PtP Driver,此驅(qū)動可以在購買Modbus Dongle時選擇購買,也可以從以下的鏈接下載27774276

2.4 STEP7 Micro/WIN V4.0 SP6
用于S7-200編程的軟件,本文檔中的200的程序是使用Step7 Micro/win 的軟件編寫。此軟件可以從西門子下載中心免費下載,也可以從以下的鏈接下載。
http://www.ad.siemens.com.cn/download  自動化系統(tǒng)>>S7-200>>軟件,文檔編號S0002。

2.5 Toolbox_V32-STEP 7-Micro WIN 32 Instruction Library
S7-200實現(xiàn)Modbus RTU功能,可以使用Modbus的指令庫,要使用西門子的標(biāo)準(zhǔn)指令庫,必須先安裝指令庫的軟件包 Instruction Library,安裝后,可以在Step 7-Micro/WIN軟件的庫中找到Modbus相關(guān)的指令,該軟件包可以從以下的鏈接下載。http://www.ad.siemens.com.cn/download  自動化系統(tǒng)>>S7-200>>軟件,文檔編號S0010。


3. 硬件列表和接線

3.1 硬件列表

S7-300從站CPU315-2DP6ES7 315-2AG10-0AB0
CP341 RS422/4856ES7 341-1CH01-0AE0
Dongle6ES7 870-1AB01-0YA0
PC 適配器(USB)6ES7 972-0CB20-0XA0
S7-200主站CPU 224XP6ES7 214-2BD23-0XB0

表1 硬件設(shè)備

3.2 硬件接線

3.2.1 接口定義
S7-200的通訊口為RS485物理口(9針口),CP341是RS422/485的接口類型(15針口),兩種設(shè)備的接口引腳的示意圖如下所示,更詳細(xì)的信息可以參考CP341及S7-200通信接口的手冊。


圖1 S7-200 CPU通信口引腳定義

 


圖2 S7-300 CP341 RS422/485 通訊口引腳定義

3.2.2 接線示意圖


圖3 硬件結(jié)構(gòu)和接線示意圖


4. 組態(tài)設(shè)置和編程

4.1 S7-200做Modbus主站的設(shè)置
S7-200 CPU上的通信口在電氣上是標(biāo)準(zhǔn)的RS-485半雙工串行通信口,此串行字符通信的格式:1個起始位;7/8位數(shù)據(jù)位;1位奇/偶/無校驗;1停止位。通信波特率可以設(shè)置為1200、2400、4800、9600、19200、38400、57600或112500,符合這些格式的串行通訊設(shè)備可以和S7-200進(jìn)行自由口通訊,Modbus RTU指令庫就是使用自由口編程實現(xiàn)的。

4.1.1 Modbus RTU主站庫

使用Modbus 主站指令庫時需要注意的幾點:

  • 需要S7-200的編程軟件是 Micro/WIN V4.0 SP5及以上版本;
  • Modbus RTU 主站庫對CPU的版本有要求,CPU 的版本必須為 2.00 或者 2.01(即訂貨號為 6ES721*-***23-0BA*);
  • Modbus主站可讀/寫的zui大數(shù)據(jù)量為120個字(指每一個 MBUS_MSG 指令);
  • Modbus 主站庫支持Port0和Port1(從站庫只支持Port0口),本例中用Port0;
  • 使用Modbus 庫時必須對庫存儲區(qū)進(jìn)行分配,見下圖設(shè)置,而且分配的空間不能和程序中其它空間沖突,否則編譯調(diào)用會報錯。


圖4 庫存儲區(qū)設(shè)置

  • Modbus主站庫支持的功能碼和地址對應(yīng)關(guān)系:
     
    Modbus 地址讀 / 寫Modbus 從站須支持的功能
    00001~09999功能1:讀輸出點
      數(shù)字量輸出功能5:寫單個輸出點
     功能15:寫多個輸出點
    10001~19999功能2:讀輸入點
      數(shù)字量輸入
    30001~39999功能4:讀輸入寄存器
      輸入寄存器
    40001~49999功能3:讀保持寄存器
      保持寄存器功能6:寫單個寄存器
     功能16:寫多個寄存器

    表2需要從站支持的功能

4.1.2 S7-200 Modbus主站編程
編程時,使用SM0.0調(diào)用MBUS_CTRL完成主站的參數(shù)初始化,詳細(xì)見下表,參數(shù)的說明也可以從子程序的局部變量表中找到。


圖5 Modbus RTU 主站初始化

圖中各參數(shù)含義如下

編號符號/含義說                   明
aEN / 使能必須保證每一掃描周期都被使能(使用SM0.0)。
bMode / 模式為1時使能為Modbus協(xié)議;為0時恢復(fù)為PPI協(xié)議。
cBaud / 波特率支持的通訊波特率為1200,2400,4800,9600,19200,38400,57600,115200。
dParity / 校驗校驗方式選擇:0=無校驗;1=奇校驗,2=偶校驗。
eTimeout / 超時主站等待從站響應(yīng)的時間,以毫秒為單位,典型的設(shè)置值為 1000毫秒,允許設(shè)置的范圍為1-32767。這個值必須設(shè)置足夠大以保證從站有時間響應(yīng)。
fDone / 完成位初始化完成,此位會自動置1。
gError / 錯誤位初始化錯誤代碼。

表3

調(diào)用 Modbus RTU 主站讀寫子程序MBUS_MSG,發(fā)送一個Modbus 請求。


圖6 調(diào)用Modbus RTU 主站讀寫子程序

圖中各參數(shù)含義如下

編號符號/含義說                   明
aEN / 使能同一時刻只能有一個讀寫功能使能。
bFirst / 讀寫請求位 每一個新的讀寫請求必須使用脈沖觸發(fā)。
cSlave / 從站地址可選擇的范圍1–247。
dRW / 讀寫操作位0=讀, 1=寫。
eAddr / 讀寫從站的數(shù)據(jù)地址選擇讀寫的數(shù)據(jù)類型:
00001 至 0xxxx - 開關(guān)量輸出
10001 至 1xxxx - 開關(guān)量輸入
30001 至 3xxxx - 模擬量輸入
40001 至 4xxxx - 保持寄存器。
fCount / 數(shù)據(jù)的個數(shù)通訊的數(shù)據(jù)個數(shù)(位或字的個數(shù))。
gDaptPtr / 數(shù)據(jù)指針如果是讀指令,讀回的數(shù)據(jù)放到這個數(shù)據(jù)區(qū)中;
如果是寫指令,要寫出的數(shù)據(jù)放到這個數(shù)據(jù)區(qū)中。
hDone / 完成位讀寫功能完成位。
iError / 錯誤代碼只有在Done位為1時,錯誤代碼才有效。

表4

從上圖中可見,S7-200作為Modbus RTU主站,波特率9.6Kb/s,偶校驗,連接從站的站地址是3,數(shù)據(jù)存儲區(qū)為VB2000開始的區(qū)域。

4.2 CP341 做Modbus 從站的硬件組態(tài)

4.2.1 硬件組態(tài)


圖7 S7-300側(cè)硬件組態(tài)

4.2.2 設(shè)置Modbus參數(shù)


圖8 消息楨字符結(jié)構(gòu)

按照上述操作設(shè)置參數(shù),從上圖可以看出,本例中的傳輸波特率9.6Kb/s,1位起始位,8位數(shù)據(jù)位,偶校驗位,1位停止位,從站站地址是3,主從通訊設(shè)備的字符幀格式和波特率等參數(shù)設(shè)置需要*。


圖9 RS422/485 接口組態(tài)

RS422/485接口只能一個有效,接口的選擇只需要組態(tài)而不需要在硬件上短接。

4.2.3 Modbus驅(qū)動的下載
當(dāng)配置好Modbus通信的參數(shù)后,保存前需要向CP341下載Modbus Slave的驅(qū)動,一旦下載完成后無需再次下載。
需要注意的是,在下載驅(qū)動時(可以在無Dongle情況下下載),需要將CPU停機,然后下載,操作過程如下所示。


圖10 下載Dongle時,需要CPU停機

 


圖11 從站驅(qū)動下載后結(jié)果

4.2.4 CP341做Modbus從站的編程
從Step7 軟件下的EXAMPLE目錄中,找到項目名“zXX21_05_PtP_Com_MODSL”的項目,打開,然后將Modbus通訊模塊FB80傳遞到用戶項目中,打開路徑如下所示。


圖12 Modbus Slave 例程打開路徑

OB1中調(diào)用FB80編程如下:


圖13 FB80程序塊調(diào)用

CP卡初始化正常后,CP_START,CP_START_FM和CP_START_OK為1信號,否則CP_START_ERROR為1,同時可以從ERROR_NR察看錯誤信息,也可以在硬件組態(tài)中在線后的CP341的診斷緩沖區(qū)察看詳細(xì)的錯誤信息,錯誤信息對照和處理方式可以參考
《S7-300以用于PtP CP Modbus 協(xié)議RTU格式S7的可裝載驅(qū)動程序為從站》的手冊。

FB80的各參數(shù)含義如下

LADDR硬件組態(tài)中CP341的起始邏輯地址,本例中為256
START_TIMER初始化超時定時器,本例中為T120
START_TIME初始化定時器時間,本例中為5S
OB_MASKI/O訪問錯誤屏蔽位,本例中為True(I/O訪問錯誤已屏蔽)
CP_STARTFB初始化使能位,本例中為M0.0
CP_START_FMCP_START 初始化的上升沿位,本例中為M0.1
CP_NDR從CP卡寫操作位,本例中為m0.2
CP_START_OK初始化完成且無錯誤,本例中為M0.3
CP_START_ERROR初始化完成,但有錯誤,本例中為M0.4
ERROR_NR錯誤號,本例中為MW2
ERROR_INFO錯誤信息,本例中為MW4

表5


5. 通訊測試
Modbus RTU格式通信協(xié)議是以主從的方式進(jìn)行數(shù)據(jù)傳輸?shù)模趥鬏數(shù)倪^程中主站是主動方,即主站發(fā)送數(shù)據(jù)請求報文到從站,從站返回響應(yīng)報文。Modbus 系統(tǒng)間的數(shù)據(jù)交換是通過功能碼來控制的,以下對現(xiàn)場常用的功能碼進(jìn)行分類測試,關(guān)于功能碼的詳細(xì)信息請參考手冊。

5.1 FC01/05/15功能碼
CP341從站的通訊區(qū)域配置


圖14 FC01/05/15 參數(shù)組態(tài)界面

FC01、FC05、FC15對應(yīng)的數(shù)據(jù)區(qū)為位輸出,數(shù)據(jù)的傳遞以位為單位,可以讀寫操作,用戶地址區(qū)為0xxxx,Modbus地址在信息傳遞中從0開始。如上圖,左邊為信息傳遞地址(地址區(qū)不能沖突),右邊對應(yīng)的是S7-300的數(shù)據(jù)區(qū)。例如左邊信息傳遞地址從0 ~ 7對應(yīng)用戶地址區(qū)為00001 ~ 00008,對應(yīng)S7-300的M10.0 ~ M10.7,并且以此為例說明FC01功能碼的通訊。
S7-200主站程序調(diào)用


圖15 功能碼FC01使用

S7-200主站,用功能碼FC01讀取從站8點數(shù)字量輸出,接收的數(shù)據(jù)存放在VB2000開始的區(qū)域,測試截圖結(jié)果如下。


圖16 FC01功能碼數(shù)據(jù)交換

5.2 FC02功能碼
CP341從站的通訊區(qū)域配置


圖17 FC02 參數(shù)組態(tài)界面

FC02對應(yīng)的數(shù)據(jù)區(qū)為位輸出,數(shù)據(jù)的傳遞以位為單位,只讀操作,用戶地址區(qū)為1xxxx,Modbus地址在信息傳遞中從0開始,如上圖,左邊為信息傳遞地址(地址區(qū)不能沖突),右邊對應(yīng)的是S7-300的數(shù)據(jù)區(qū)。例如左邊信息傳遞地址從0 ~ 7對應(yīng)用戶地址區(qū)為10001 ~ 10008,對應(yīng)S7-300的M20.0 ~ M20.7,并且以此為例說明FC02功能碼的通訊。
S7-200主站程序調(diào)用


圖18 功能碼FC02使用

S7-200主站,用功能碼FC02讀取從站8點數(shù)字量輸入,接收的數(shù)據(jù)存放在VB2000開始的區(qū)域,測試截圖結(jié)果如下。


圖19 FC02功能碼數(shù)據(jù)交換

5.3 FC03/06/16 功能碼
CP341從站的通訊區(qū)域配置


圖20 FC03/06/16參數(shù)組態(tài)界面

FC03/06/16 對應(yīng)的數(shù)據(jù)區(qū)為寄存器,數(shù)據(jù)的傳遞以字為單位,可以讀寫操作,用戶地址區(qū)為4xxxx,Modbus地址在信息傳遞中從0開始。如上圖,左邊為信息傳遞地址,右邊對應(yīng)的是S7-300的數(shù)據(jù)區(qū),左邊傳輸?shù)刂凡豢筛?,右邊只對?yīng)一個數(shù)據(jù)區(qū)。例如用戶地址
區(qū)為40001 ~ 40004,對應(yīng)S7-300數(shù)據(jù)區(qū)為DB1.DBW0 ~ DB1.DBW6,并且以此為例說明
FC03功能碼的通訊。
S7-200主站程序調(diào)用


圖21功能碼FC03使用

S7-200主站,用功能碼FC03讀取從站4個字寄存器,接收的數(shù)據(jù)存放在VB2000開始的區(qū)域,測試截圖結(jié)果如下。


圖22 FC03功能碼數(shù)據(jù)交換


5.4 FC04 功能碼
CP341從站的通訊區(qū)域配置


圖23 FC04參數(shù)組態(tài)界面

FC04對應(yīng)的數(shù)據(jù)區(qū)為寄存器輸入,數(shù)據(jù)的傳遞也以字為單位,只讀操作,用戶地址區(qū)3xxxx,Modbus地址在信息傳送中從0開始。如上圖,左邊為信息傳遞地址,右邊對應(yīng)的是S7-300的數(shù)據(jù)區(qū),左邊傳輸?shù)刂凡豢筛?,右邊只對?yīng)一個數(shù)據(jù)區(qū)。例如用戶地址區(qū)為30001 ~ 30004,對應(yīng)S7-300數(shù)據(jù)區(qū)為DB1.DBW0 ~ DB1.DBW6,并且以此為例說明FC04功能碼的通訊。
S7-200主站程序調(diào)用


圖24功能碼FC04使用

S7-200主站,用功能碼FC04讀取從站4個字輸入寄存器,接收的數(shù)據(jù)存放在VB2000開始的區(qū)域,測試截圖結(jié)果如下。


圖25 FC04功能碼數(shù)據(jù)交換

5.5 Limits 欄


圖26 Limits 參數(shù)組態(tài)界面

對于寫功能碼FC05、06、15、16,可以禁用或限制訪問相關(guān)S7-300存儲區(qū),即使用這些功能碼時,S7-300存儲區(qū)需要在設(shè)定的zui小和zui大的范圍之間,如果訪問的區(qū)域超出這個范圍,則訪問會被拒絕,同時輸出報錯誤信息。


6. 總結(jié)
本文檔以S7-200為主站和CP341為從站簡單介紹了Modbus RTU通訊,關(guān)于通訊的組態(tài)設(shè)置,編程以及常用功能碼的使用,其具體的使用可以作為西門子串行通訊模塊與第三方的儀表、設(shè)備等進(jìn)行串行通信的參考。

S7300電源模板
6ES7307-1BA00-0AA0
6ES7307-1EA00-0AA0
6ES7307-1KA01-0AA0
CPU
6ES7312-1AE13-0AB0
6ES7312-5BE03-0AB0
6ES7313-5BF03-0AB0
6ES7313-6BF03-0AB0
6ES7313-6CF03-0AB0
6ES7314-1AG13-0AB0
6ES7314-6BG03-0AB0
6ES7314-6CG03-0AB0
6ES7315-2AG10-0AB0
6ES7315-2EH13-0AB0
6ES7317-2AJ10-0AB0
6ES7317-2EK13-0AB0
6ES7318-3EL00-0AB0
內(nèi)存卡
6ES7 953-8LF20-0AA0
6ES7 953-8LG11-0AA0
6ES7 953-8LJ20-0AA0
6ES7 953-8LL20-0AA0
6ES7 953-8LM20-0AA0
6ES7 953-8LP20-0AA0
開關(guān)量模板
6ES7 321-1BH02-0AA0
6ES7 321-1BH10-0AA0
6ES7 321-1BH50-0AA0
6ES7 321-1BL00-0AA0
6ES7 321-7BH01-0AB0
6ES7 321-1EL00-0AA0
6ES7 321-1FF01-0AA0
6ES7 321-1FF10-0AA0
6ES7 321-1FH00-0AA0
6ES7 321-1CH00-0AA0
6ES7 321-1CH20-0AA0
6ES7 322-1BH01-0AA0
6ES7 322-1BH10-0AA0
6ES7 322-1CF00-0AA0
6ES7 322-8BF00-0AB0
6ES7 322-5GH00-0AB0
6ES7 322-1BL00-0AA0
6ES7 322-1FL00-0AA0
6ES7 322-1BF01-0AA0
6ES7 322-1FF01-0AA0
6ES7 322-5FF00-0AB0
6ES7 322-1HF01-0AA0
6ES7 322-1HF10-0AA0
6ES7 322-1HH01-0AA0
6ES7 322-5HF00-0AB0
6ES7 322-1FH00-0AA0
6ES7 323-1BH01-0AA0
6ES7 323-1BL00-0AA0
模擬量模板
6ES7 331-7KF02-0AB0
6ES7 331-7KB02-0AB0
6ES7 331-7NF00-0AB0
6ES7 331-7NF10-0AB0
6ES7 331-7HF01-0AB0
6ES7 331-1KF01-0AB0
6ES7 331-7PF01-0AB0
6ES7 331-7PF11-0AB0
6ES7 332-5HD01-0AB0
6ES7 332-5HB01-0AB0
6ES7 332-5HF00-0AB0
6ES7 332-7ND02-0AB0
6ES7 334-0KE00-0AB0
6ES7 334-0CE01-0AA0
附件
6ES7 365-0BA01-0AA0
6ES7 360-3AA01-0AA0
6ES7 361-3CA01-0AA0
6ES7 368-3BB01-0AA0
6ES7 368-3BC51-0AA0
6ES7 368-3BF01-0AA0
6ES7 368-3CB01-0AA0
6ES7 390-1AE80-0AA0
6ES7 390-1AF30-0AA0
6ES7 390-1AJ30-0AA0
6ES7 390-1BC00-0AA0
6ES7 392-1AJ00-0AA0
6ES7 392-1AM00-0AA0
6ES7 392-1BM01-0AA0
功能模板
6ES7 350-1AH03-0AE0
6ES7 350-2AH00-0AE0
6ES7 351-1AH01-0AE0
6ES7 352-1AH02-0AE0
6ES7 355-0VH10-0AE0
6ES7 355-1VH10-0AE0
6ES7 355-2CH00-0AE0
6ES7 355-2SH00-0AE0
6ES7 338-4BC01-0AB0
6ES7 352-5AH00-0AE0
6ES7 352-5AH00-7XG0
通訊模板
6ES7 340-1AH02-0AE0
6ES7 340-1BH02-0AE0
6ES7 340-1CH02-0AE0
6ES7 341-1AH01-0AE0
6ES7 341-1BH01-0AE0
6ES7 341-1CH01-0AE0
6ES7 870-1AA01-0YA0
6ES7 870-1AB01-0YA0
6ES7 902-1AB00-0AA0
6ES7 902-1AC00-0AA0
6ES7 902-1AD00-0AA0
6ES7 902-2AB00-0AA0
6ES7 902-2AC00-0AA0
6ES7 902-2AG00-0AA0
6ES7 902-3AB00-0AA0
6ES7 902-3AC00-0AA0
6ES7 902-3AG00-0AA0
6GK7 342-5DA02-0XE0
6GK7 342-5DF00-0XE0
6GK7 343-5FA01-0XE0
6GK7 343-1EX30-0XE0
6GK7 343-1EX21-0XE0
6GK7 343-1CX00-0XE0
6GK7 343-1CX10-0XE0
6GK7 343-1GX20-0XE0
6GK7 343-1GX21-0XE0
6GK7 343-1HX00-0XE0
6GK7 343-2AH00-0XA0
6ES7971-1AA00-0AA0
6ES7971-5BB00-0AA0
6ES7314-6EH04-0AB0

 



會員登錄

×

請輸入賬號

請輸入密碼

=

請輸驗證碼

收藏該商鋪

X
該信息已收藏!
標(biāo)簽:
保存成功

(空格分隔,最多3個,單個標(biāo)簽最多10個字符)

常用:

提示

X
您的留言已提交成功!我們將在第一時間回復(fù)您~
產(chǎn)品對比 二維碼

掃一掃訪問手機商鋪

對比框

在線留言
主站蜘蛛池模板: 买车| 大余县| 定州市| 洛南县| 普陀区| 商洛市| 景泰县| 东山县| 霸州市| 七台河市| 正蓝旗| 南陵县| 永丰县| 乌拉特中旗| 聂荣县| 红河县| 渝北区| 井研县| 万载县| 万源市| 克山县| 射阳县| 云阳县| 竹溪县| 若尔盖县| 灵宝市| 漳州市| 寻乌县| 通许县| 荆门市| 滨州市| 康平县| 长顺县| 河北省| 贡山| 加查县| 德兴市| 藁城市| 南澳县| 丰城市| 安康市|