国产精品久久久久久久久,四季AV一区二区夜夜嗨,日韩精品无码中文字幕电影,www.五月婷婷.com

資訊詳情
西門(mén)子紫色通訊電纜廣西哪里有賣(mài)
發(fā)布者:yt359769311  發(fā)布時(shí)間:2018-05-18 00:47:24

西門(mén)子紫色通訊電纜廣西哪里有賣(mài)
西門(mén)子紫色通訊電纜廣西哪里有賣(mài)

 

 

                                  SIEMENS 長(zhǎng)沙豪乾智能科技有限公司


公司帶來(lái)銷(xiāo)售的產(chǎn)品全部由西門(mén)子直接提供,所有產(chǎn)品保證絕對(duì)原裝,每個(gè)產(chǎn)品都可以到西門(mén)子長(zhǎng)沙辦事處去查驗(yàn)。

我們出售的產(chǎn)品按照西門(mén)子質(zhì)保進(jìn)行保修,(保修期為一年)《選擇長(zhǎng)沙豪乾,是您最明智的決定》。想了解更多內(nèi)容,請(qǐng)來(lái)電,我將為您一一解答。


工作( Q Q 254598303                    136 8731 7079(微信同步)


聯(lián)系人 :張 柏 /       


公司理念:

  是專(zhuān)業(yè)從事工業(yè)自動(dòng)化產(chǎn)品銷(xiāo)售和系統(tǒng)集成的高新技術(shù)企業(yè)。在西門(mén)子工控領(lǐng)域,公司以精益求精的經(jīng)營(yíng)理念,從產(chǎn)品、方案到服務(wù),致力于塑造一個(gè)“行業(yè)專(zhuān)家”品牌,以實(shí)現(xiàn)可持續(xù)的發(fā)展。
  

S7-1200 Modbus TCP 通信指令塊

STEP 7 V13 SP1 軟件版本中的Modbus TCP庫(kù)指令目前最新的版本已升至V4.0,該版本的使用需要具備以下兩個(gè)條件:

1. 軟件版本: STEP 7 V13 SP1及其以上

2. 固件版本: S7-1200 CPU 的固件版本V4.1

圖1. Modbus TCP V4.0 版本指令塊

S7-1200 Modbus TCP 實(shí)驗(yàn)環(huán)境

下面以兩臺(tái)S7-1200之間進(jìn)行Modbus TCP 通信為例,詳細(xì)闡述客戶端與服務(wù)器側(cè)如何編程及通信的過(guò)程。表格列出了具體的實(shí)驗(yàn)環(huán)境:

操作系統(tǒng)

WIN7 SP1 專(zhuān)業(yè)版 64位

編程軟件

STEP 7 Professional V13 SP1 Update 5

系統(tǒng)硬件

1.CPU1215C   6ES7 215-1AG40-0XB0   V4.1
2.CPU1212C   6ES7 212-1AE40-0XB0   V4.1
3.CSM 1277    6GK7 277-1aa10-0aa0

表1. Modbus TCP 通信的實(shí)驗(yàn)環(huán)境

 
CPU類(lèi)型
IP地址
端口號(hào)
硬件標(biāo)識(shí)符
客戶端
CPU 1212C
192.168.0.6
0
64
服務(wù)器
CPU 1215C
192.168.0.4
502
64

表2. Modbus TCP 通信雙方的基本配置

硬件標(biāo)識(shí)符是在“設(shè)備組態(tài)”中,雙擊 PROFINET 接口,然后在“屬性”中的“硬件標(biāo)識(shí)符”中查看。

圖2. S7-1200設(shè)備的PROFINET接口硬件標(biāo)識(shí)符

S7-1200 Modbus TCP 服務(wù)器編程

“MB_SERVER”指令將處理 Modbus TCP 客戶端的連接請(qǐng)求、接收并處理 Modbus 請(qǐng)求并發(fā)送響應(yīng)。

1. 在“ 程序塊-> OB 1"中調(diào)用“MB_SERVER”指令塊,然后會(huì)生成相應(yīng)的背景DB塊,點(diǎn)擊確定,如圖3所示。

圖3. 調(diào)用MB_SERVER指令塊

該功能塊的各個(gè)引腳定義如下:

DISCONNET

為0代表被動(dòng)建立與客戶端的通信連接;為1代表終止連接。

MB_HOLD_REG 指向 Modbus 保持寄存器的指針。
CONNECT 指向連接描述結(jié)構(gòu)的指針。TCON_IP_v4(S7-1200)
NDR 為0代表無(wú)數(shù)據(jù);為1代表從 Modbus 客戶端寫(xiě)入新的數(shù)據(jù)。
DR 為0代表無(wú)讀取的數(shù)據(jù);為1代表從 Modbus 客戶端讀取的數(shù)據(jù)
ERROR 錯(cuò)誤位:0:無(wú)錯(cuò)誤;1:出現(xiàn)錯(cuò)誤,錯(cuò)誤原因查看STATUS。
STATUS 指令的詳細(xì)狀態(tài)信息。

表3. MB_SERVER 各個(gè)引腳定義說(shuō)明

2. CONNECT 引腳的指針類(lèi)型

第一步,先創(chuàng)建一個(gè)新的全局?jǐn)?shù)據(jù)塊 DB2,如圖4所示:

圖4. 創(chuàng)建全局?jǐn)?shù)據(jù)塊

第二步,雙擊打開(kāi)新生成的 DB2 數(shù)據(jù)塊,定義變量名稱(chēng)為“ss",數(shù)據(jù)類(lèi)型為“TCON_IP_v4”(可以將 TCON_IP_v4 拷貝到該對(duì)話框中),然后點(diǎn)擊“回車(chē)”按鍵。該數(shù)據(jù)類(lèi)型結(jié)構(gòu)創(chuàng)建完畢。如圖5所示:

圖5. 創(chuàng)建 MB_SERVER 中的 TCP 連接結(jié)構(gòu)的數(shù)據(jù)類(lèi)型

各個(gè)引腳定義說(shuō)明如下:

InterfaceId 硬件標(biāo)識(shí)符。(設(shè)備組態(tài)中查詢)
ID

連接ID,取值范圍1~4095

Connection Type 連接類(lèi)型。TCP連接默認(rèn)為:16#0B
ActiveEstablished 建立連接。主動(dòng)為1(客戶端),被動(dòng)為0(服務(wù)器)。
ADDR 服務(wù)器側(cè)的IP地址
RemotePort 遠(yuǎn)程端口號(hào)
LocalPort 本地端口號(hào)

表4. TCON_IP_v4 數(shù)據(jù)結(jié)構(gòu)的引腳定義

客戶端側(cè)的IP地址為192.168.0.6,端口號(hào)為0,所以 MB_SERVER 服務(wù)器側(cè)該數(shù)據(jù)結(jié)構(gòu)的各項(xiàng)值如圖6所示。

圖6. MB_SERVER 服務(wù)器側(cè)的 CONNECT 數(shù)據(jù)結(jié)構(gòu)定義

3. S7-1200 服務(wù)器側(cè) MB_SERVER 編程

調(diào)用MB_SERVER指令塊,實(shí)現(xiàn)被客戶端讀取2個(gè)保持寄存器的值,如圖7所示。

圖7. MB_SERVER 服務(wù)器側(cè)編程

注意:MB_HOLD_REG 指定的數(shù)據(jù)緩沖區(qū)可以設(shè)為 DB 塊或 M 存儲(chǔ)區(qū)地址。DB 塊可以為優(yōu)化的數(shù)據(jù)塊,也可以為標(biāo)準(zhǔn)的數(shù)據(jù)塊結(jié)構(gòu)。

S7-1200 MODBUS TCP 通信調(diào)試

S7-1200 MODBUS TCP 服務(wù)器側(cè)準(zhǔn)備數(shù)據(jù),用于客戶端讀訪問(wèn),如圖8所示。

圖8. 服務(wù)器側(cè)監(jiān)控表

S7-1200 MODBUS TCP 客戶端側(cè),給 MB_CLIENT 指令塊中 REQ 引腳一個(gè)上升沿,監(jiān)控?cái)?shù)據(jù)讀取成功。如圖9所示。

圖9. 客戶端側(cè)監(jiān)控表

S7-1200集成PN接口MODBUS TCP通信概述

Modbus TCP是標(biāo)準(zhǔn)的網(wǎng)絡(luò)通信協(xié)議,通過(guò)CPU上PN接口進(jìn)行TCP/IP通信,不需要額外的通信硬件模塊,Modbus TCP使用開(kāi)放式用戶通信連接作為Modbus通信路徑,所支持的混合客戶機(jī)和服務(wù)器連接數(shù)最大為CPU所允許的最大開(kāi)放式用戶通信連接數(shù)8個(gè)。

軟件 STEP7 V11 SP1版本開(kāi)始,S7-1200CPU 從Firmware V1.0.2開(kāi)始,不再需要安裝Modbus TCP的庫(kù)文件,可以直接調(diào)用Modbus TCP的庫(kù)指令“MB_CLIENT”和“MB_SERVER”使用實(shí)現(xiàn)Modbus TCP通信功能,如圖1.所示。

圖1. Modbus TCP的庫(kù)指令

S7-1200 做Modbus Tcp Client(客戶端)

MB_CLIENT 進(jìn)行客戶機(jī)和服務(wù)器TCP連接、發(fā)送命令消息、接收響應(yīng)以及控制服務(wù)器的斷開(kāi)。


1.調(diào)用MB_CLIENT通信指令,進(jìn)入 “Program blocks” > “OB1” 主程序中,調(diào)用MODBUS TCP客戶機(jī)指令,如圖2.所示。

圖2. MB_CLIENT通信指令

功能塊參數(shù)意義如下表1.:

管腳 說(shuō)明
REQ 使能: False-無(wú)Modbus通訊請(qǐng)求,True-請(qǐng)求與服務(wù)器通訊,Done完成位來(lái)后才可以執(zhí)行下次請(qǐng)求,建議采用上升沿觸發(fā)請(qǐng)求;
DISCONNECT 控制與服務(wù)器建立和終止連接:0-建立與指定IP地址和端口號(hào)的通訊連接,默認(rèn)為0;1-斷開(kāi)通訊連接,在終止連接的過(guò)程中,不執(zhí)行任何其他功能;
CONNECT_ID 連接的ID號(hào):每個(gè)連接只有一個(gè)唯一的ID號(hào);
IP_OCTET_1~4 服務(wù)器的IP地址: 如圖2.中通訊對(duì)方的IP地址是192.168.0.210;
IP_PORT 服務(wù)器上使用TCP/IP協(xié)議與客戶端建立通訊的IP端口號(hào),默認(rèn)值:502;
MB_MODE 選擇請(qǐng)求模式(讀取、寫(xiě)入或診斷),具體對(duì)照參照表1.;
MB_DATA_ADDR 訪問(wèn)數(shù)據(jù)的起始地址;
MB_DATA_LEN 數(shù)據(jù)長(zhǎng)度:數(shù)據(jù)訪問(wèn)的位數(shù)或字?jǐn)?shù);
MB_DATA_PRT 指向Modbus數(shù)據(jù)寄存器的指針:用于緩存從Modbus服務(wù)器接收的數(shù)據(jù)或?qū)l(fā)送到Modbus服務(wù)器數(shù)據(jù)的緩沖區(qū),可以是DB塊或M區(qū),如果是DB塊則需要定義為“標(biāo)準(zhǔn)與S7- 300/400兼容”的類(lèi)型,見(jiàn)下圖3;
DONE 完成位:作業(yè)完成,無(wú)錯(cuò)誤,該位置1;
BUSY 作業(yè)狀態(tài)位:0-當(dāng)前沒(méi)有正在處理的“MB_CLIENT”作業(yè);1-“MB_CLIENT”作業(yè)正在處理;
ERROR 錯(cuò)誤位:0-無(wú)錯(cuò)誤;1-出現(xiàn)錯(cuò)誤,錯(cuò)誤原因查看STATUS;
STATUS 錯(cuò)誤代碼;

表1. 功能塊參數(shù)意義

2.MB_DATA_PTR數(shù)據(jù)塊的新建

通過(guò)“Program blocks”>“Add new block”,選擇“Data block”創(chuàng)建 DB 塊,選擇“標(biāo)準(zhǔn)與S7- 300/400兼容” ,點(diǎn)擊“OK”鍵,定義數(shù)據(jù)區(qū)為100個(gè)字的數(shù)組,如圖3.所示。

圖3. 創(chuàng)建MB_DATA_PTR數(shù)據(jù)塊

3. MB_MODE、MB_DATA_ADDR和功能碼的關(guān)系

MB_CLIENT指令中,MB_MODE、MB_DATA_ADDR和MB_DATA_LEN三個(gè)參數(shù)組合定義了當(dāng)前Modbus消息中所用的功能代碼,如表2.。

Modbus 功能 MB_MODE MB_DATA_ADDR 操作和數(shù)據(jù)類(lèi)型 數(shù)據(jù)長(zhǎng)度
FC01 0 00001~09999 讀取輸出位 每個(gè)請(qǐng)求1~2000個(gè)位 1~2000
FC02 0 10001~19999 讀取輸入位 每個(gè)請(qǐng)求1~2000個(gè)位 1~2000
FC03 0 40001~49999 或 400001~465535 讀取保持寄存器 每個(gè)請(qǐng)求1~125個(gè)字 1~125
FC04 0 30001~39999 讀取輸入字 每個(gè)請(qǐng)求1~125個(gè)字 1~125
FC05 1 00001~09999 寫(xiě)一個(gè)輸出位 每個(gè)請(qǐng)求1個(gè)位 1
FC06 1 40001~49999 或 400001~465535 寫(xiě)一個(gè)保持寄存器 每個(gè)請(qǐng)求1個(gè)字 1
FC15 1 00001~09999 寫(xiě)多個(gè)輸出位 每個(gè)請(qǐng)求2~1968個(gè)位 2~1968
FC16 1 40001~49999 或 400001~465535 寫(xiě)多個(gè)保持寄存器 每個(gè)請(qǐng)求2~123個(gè)字 2~123
FC15 2 00001~09999 寫(xiě)一個(gè)或多個(gè)輸出位 每個(gè)請(qǐng)求1~1968個(gè)位 1~1968
FC16 2 40001~49999 或 400001~465535 寫(xiě)一個(gè)或多個(gè)保持寄存器 每個(gè)請(qǐng)求1~123個(gè)字 1~123
FC11 11   讀取服務(wù)器通信狀態(tài)字和事件計(jì)數(shù)器:狀態(tài)字反映處理狀態(tài)(0-未處理;0XFFFF-處理中);每次成功發(fā)送一條消息后,事件計(jì)數(shù)器都將遞增。執(zhí)行功能時(shí),MB_CLIENT指令的MB_DATA_ADDR和MB_DATA_LEN參數(shù)都將被忽略。 0
FC08 80   通過(guò)數(shù)據(jù)診斷代碼0X0000檢查服務(wù)器狀態(tài) 每次請(qǐng)求1個(gè)字 1
FC08 81   通過(guò)數(shù)據(jù)診斷代碼0X000A重新設(shè)置服務(wù)器事件計(jì)數(shù)器 每次請(qǐng)求1個(gè)字 1
  3~10、12~79、82~255   保留  

表2. MB_MODE、MB_DATA_ADDR和功能碼的關(guān)系

如上例中S7-1200作客戶機(jī),用FC03功能碼讀取服務(wù)器的兩個(gè)字,起始從Modbus地址40001開(kāi)始,接收的數(shù)據(jù)存放在緩沖區(qū)DB3.DBX0.0開(kāi)始區(qū)域,設(shè)置如上:MB_MODE=0,MB_DATA_ADDR=40001,MB_DATA_LEN=2,對(duì)應(yīng)關(guān)系為:40001->DB3.DBW0 ,40002->DB3.DBW2。

4.服務(wù)器端Modbus Slave 軟件設(shè)置

注意:服務(wù)器采用Modbus Slave軟件測(cè)試,該軟件是第三方軟件,可以從 internet 網(wǎng)絡(luò)上下載。

首先將測(cè)試電腦的IP地址設(shè)置成192.168.0.210,如圖4.所示,打開(kāi)Modbus Slave 軟件,在Modbus Slave的“Set up->Slave Definition”中設(shè)置功能碼、起始地址、長(zhǎng)度等,如圖5.所示。

圖4. 電腦的IP地址設(shè)置

圖5. 服務(wù)器端Modbus Slave軟件設(shè)置

創(chuàng)建Modbus TCP/IP連接,在“Connection->connect...”中打開(kāi)連接屬性對(duì)話框,選擇“Modbus TCP/IP” ,TCP/IP Server Port本地服務(wù)器端口為502,并可以勾選“Ignore Unit ID”選項(xiàng),如圖6.所示。

圖6. 連接屬性

注意:圖5.中的Slave ID 是服務(wù)器的站地址,和客戶機(jī)中“MB_CLIENT” 中的“CONNECT_ID” 不是一個(gè)概念,實(shí)際上與客戶機(jī)中“MB_CLIENT”的背景數(shù)據(jù)塊中的STAT變量“MB_UNIT_ID”需要一致,在1200中該地址默認(rèn)為16#00FF,如圖7 所示,可以在變量表中修改與實(shí)際服務(wù)器站地址一致。如果在圖6中勾選“Ignore Unit ID”,則不需要考慮一致情況,如果不勾選,則需要修改一致。

圖7. 客戶機(jī)中“MB_CLIENT”的背景數(shù)據(jù)塊中的STAT變量“MB_UNIT_ID”

5.通訊測(cè)試

S7-1200作客戶機(jī),用FC03功能碼讀取服務(wù)器的兩個(gè)字,設(shè)置客戶機(jī)和服務(wù)器的功能、起始地址、端口等參數(shù)相對(duì)應(yīng),具體設(shè)置如上,設(shè)置M5.0和M0.0為1,觸發(fā)請(qǐng)求,如圖8.所示。

圖8. S7-1200作客戶機(jī),用FC03功能碼讀取服務(wù)器的兩個(gè)字

通訊結(jié)果如圖9.所示,從服務(wù)器讀到數(shù)據(jù)20,30到客戶機(jī)的DB3.DBW0和DB3.DBW2區(qū)域。

圖9. 通訊結(jié)果

6.MB_CLIENT 參數(shù) STATUS 錯(cuò)誤代碼查詢參考下面兩個(gè)列表3.和表4.。

STATUS(W#16#) 響應(yīng)Modbus客戶機(jī)的代碼(B#16#) 錯(cuò)誤說(shuō)明
8381 01 不支持功能代碼
8382 03 數(shù)據(jù)長(zhǎng)度錯(cuò)誤
8383 02 數(shù)據(jù)地址錯(cuò)誤或訪問(wèn)的數(shù)據(jù)超出MB_DATA_PRT的地址區(qū)
8384 03 數(shù)據(jù)值錯(cuò)誤
8385 03 不支持診斷錯(cuò)誤代碼(功能代碼08)

表3. 協(xié)議錯(cuò)誤代碼

STATUS(W#16#) 錯(cuò)誤說(shuō)明
7001 MB_CLIENT 正在等待Modbus服務(wù)器響應(yīng)指定TCP端口處的連接或斷開(kāi)連接請(qǐng)求,僅在第一次執(zhí)行連接或斷開(kāi)操作時(shí)才報(bào)告此代碼
7002 MB_CLIENT 正在等待Modbus服務(wù)器響應(yīng)指定TCP端口處的連接或斷開(kāi)連接請(qǐng)求,等待連接或斷開(kāi)操作完成時(shí),將針對(duì)任何后續(xù)執(zhí)行報(bào)告此代碼
7003 斷開(kāi)操作已成功完成(僅在一個(gè)PLC掃描周期內(nèi)有效)
80C8 服務(wù)器在指定的時(shí)間內(nèi)無(wú)響應(yīng),請(qǐng)檢查與Modbus服務(wù)器設(shè)備的連接,嘗試過(guò)任何組態(tài)的重試操作后,才報(bào)告此錯(cuò)誤
8188 參數(shù)MB_MODE的值無(wú)效
8189 參數(shù)MB_DATA_ADDR的值無(wú)效
818A 參數(shù)MB_DATA_LEN的長(zhǎng)度無(wú)效
818B 參數(shù)MB_DATA_PTR中的指針無(wú)效
818C 參數(shù)MB_DATA_PTR指向優(yōu)化的區(qū)域,必須為“標(biāo)準(zhǔn)與S7- 300/400兼容”的DB或M區(qū)
8200 端口正在處理另一個(gè)Modbus請(qǐng)求
8380 接收到的Modbus楨有缺陷或接收到的字節(jié)太少
8387 指定的連接ID與用于先前請(qǐng)求的ID不同,只能有一個(gè)單個(gè)連接ID與每個(gè)MB_CLIENT背景數(shù)據(jù)塊配合使用
8388 Modbus服務(wù)器返回一些和請(qǐng)求內(nèi)容不同的數(shù)據(jù),這只適合Modbus功能15或16

表4. 參數(shù)錯(cuò)誤代碼

除了上面列出的MB_CLIENT錯(cuò)誤外,也可以從底層傳輸通信指令(TCON、TDISCON、TSEND和T

版權(quán)聲明:工控網(wǎng)轉(zhuǎn)載作品均注明出處,本網(wǎng)未注明出處和轉(zhuǎn)載的,是出于傳遞更多信息之目的,并不意味 著贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性。如轉(zhuǎn)載作品侵犯作者署名權(quán),或有其他諸如版權(quán)、肖像權(quán)、知識(shí)產(chǎn)權(quán)等方面的傷害,并非本網(wǎng)故意為之,在接到相關(guān)權(quán)利人通知后將立即加以更正。聯(lián)系電話:0571-87774297。
今日最新資訊
熱門(mén)資訊
0571-87774297