欧美午夜欧美,台湾成人av,久久av一区,最近看过的日韩成人

電子開發(fā)網(wǎng)

電子開發(fā)網(wǎng)電子設(shè)計 | 電子開發(fā)網(wǎng)Rss 2.0 會員中心 會員注冊
搜索: 您現(xiàn)在的位置: 電子開發(fā)網(wǎng) >> 電子開發(fā) >> PLC基礎(chǔ)入門教程 >> 正文

modbus協(xié)議詳解_西門子S7-200與變頻器MODBUS通訊實例詳解

作者:未知    文章來源:網(wǎng)絡(luò)    點(diǎn)擊數(shù):    更新時間:2022-10-18

西門子S7-200與變頻器MODBUS通訊實例詳解

西門子S7-200PLC簡介,西門子plc s7-200

西門子S7-200PLC在實時模式下具有速度快,具有通訊功能和較高的生產(chǎn)力的特點(diǎn)。一致的模塊化設(shè)計促進(jìn)了低性能定制產(chǎn)品的創(chuàng)造和可擴(kuò)展性的解決方案。來自西門子的S7 - 200微型PLC可以被當(dāng)作獨(dú)立的微型PLC解決方案或與其他控制器相結(jié)合使用。

免費(fèi)學(xué)習(xí)PLC編程技術(shù),包吃住還有工資...

Modbus通訊協(xié)議簡介

Modbus是由Modicon(現(xiàn)為施耐德電氣公司的一個品牌)在1979年發(fā)明的,是全球第一個真正用于工業(yè)現(xiàn)場的總線協(xié)議。

ModBus網(wǎng)絡(luò)是一個工業(yè)通信系統(tǒng),由帶智能終端的可編程序控制器和計算機(jī)通過公用線路或局部專用線路連接而成。其系統(tǒng)結(jié)構(gòu)既包括硬件、亦包括軟件。它可應(yīng)用于各種數(shù)據(jù)采集和過程監(jiān)控。

ModBus網(wǎng)絡(luò)只有一個主機(jī),所有通信都由他發(fā)出。網(wǎng)絡(luò)可支持247個之多的遠(yuǎn)程從屬控制器,但實際所支持的從機(jī)數(shù)要由所用通信設(shè)備決定。采用這個系統(tǒng),各PC可以和中心主機(jī)交換信息而不影響各PC執(zhí)行本身的控制任務(wù)。

1 MODBUS RTU協(xié)議在S7-200中的應(yīng)用原理

1.1 MODBUS RTU協(xié)議與S7-200相互關(guān)系簡介

S7-200 CPU上的通訊口Port0可以支持MODBUS RTU協(xié)議,成為MODBUS RTU從站。此功能是通過S7-200的自由口通訊模式實現(xiàn),因此可以通過無線數(shù)據(jù)電臺等慢速通訊設(shè)備傳輸。

想在S7-200 CPU與其他支持MODBUS RTU的設(shè)備使用MODBUS RTU協(xié)議通訊,需要由有S7-200 CPU做MODBUS主站。S7-200 CPU做主站必須由用戶自己用自由口模式,按相關(guān)協(xié)議編程。

2 從站指令的用法:

S7-200控制系統(tǒng)應(yīng)用中,MODBUS RTU從站指令庫只支持CPU上的通訊0口(Port0)。要實現(xiàn)MODBUS RTU通訊,需要Step7-Micro/WIN32 V3.2以上版本的編程軟件,而且須安裝Step7-Micro/WIN32 V3.2 Instruction Library(指令庫)。MODBUS RTU功能是通過指令庫中預(yù)先編好的程序功能塊實現(xiàn)的。

MODBUS RTU協(xié)議S7-200中應(yīng)用基本過程

(1) 首先檢查S7-200控制系統(tǒng)中所用Micro/WIN軟件版本,應(yīng)當(dāng)是Step7-Micro/WIN V3.2以上版本。

(2) 檢查Micro/WIN的指令樹中是否存在MODBUS RTU從站指令庫(圖1),庫中應(yīng)當(dāng)包括MBUS_INIT和MBUS_SLAVE兩個子程序。如果沒有,須安裝Micro/WIN32 V3.2 Instruction Library(指令庫)軟件包

編程時使用SM0.1—調(diào)用子程序MBUS_INIT進(jìn)行初始化,使用SM0.0—調(diào)用研究MBUS_SLAVE,并指定相應(yīng)參數(shù)。關(guān)于參數(shù)的詳細(xì)說明,可在子程序的局部變量表中找到。

西門子s7-200PLC的modbus初始化 

調(diào)用MODBUS通訊指令庫

參數(shù)意義如下:

●模式選擇:啟動/停止MODBUS,1=啟動;0=停止;

● 從站地址:MODBUS從站址,取值1~247;

● 波特率:可選1200,2400,4800,9600,19200,38400,57600;

● 奇偶校驗:0=無校驗;1=奇校驗;2=偶校驗;

● 延時:附加字符間延時,缺省值為0;

● 最大I/Q位:參與通訊的最大I/O點(diǎn)數(shù),S7-200I/O映像區(qū)為128/128,缺省值為128;

● 最大AI字?jǐn)?shù):參與通訊的最大AI通道數(shù),可為16或32;

● 最大保持寄存器區(qū):參與通訊的V存儲區(qū)字(VW);● 保持寄存器區(qū)起始址:以&VBx指定(間接尋址方式);

● 初始化完成標(biāo)志:成功初始化后置1;

● 錯誤代碼:0=無錯誤。

1.3 注意問題

調(diào)用Step7-Mciro/WIN32 V3.2 Instruction Library(指令庫)需要分配庫指令數(shù)據(jù)區(qū)(Library Memory)。庫指令數(shù)據(jù)區(qū)是相應(yīng)庫子程序和中斷程序所要用到變量存儲空間。編程時不分配庫指令數(shù)據(jù)區(qū),編譯時會產(chǎn)生許多相同的錯誤。

由子程序參數(shù)HoldStart和MaxHold指定保持寄存器區(qū),是S7-200 CPUV數(shù)據(jù)存儲區(qū)中分配,此數(shù)據(jù)區(qū)不能和庫指令數(shù)據(jù)區(qū)有任何重疊,否則運(yùn)行時會產(chǎn)生錯誤,不能正常通訊。注意MODBUS 中保持寄存器區(qū)按“字”尋址,即MaxHold規(guī)定是VW而VB個數(shù)。

3 主站指令的用法:

1. MODBUS RTU 主站指令庫的功能是通過在用戶程序中調(diào)用預(yù)先編好的程序功能塊實現(xiàn)的,該庫對 Port 0 和 Port 1 有效。該指令庫將設(shè)置通信口工作在自由口模式下。

2. MODBUS RTU 主站指令庫使用了一些用戶中斷功能,編其他程序時不能在用戶程序中禁止中斷。

3. MODBUS RTU 主站庫對CPU的版本有要求。CPU 的版本必須為 2.00 或者 2.01(即訂貨號為 6ES721*-***23-0BA*),1.22版本之前(包括1.22版本)的 S7-200 CPU 不支持。

使用 MODBUS RTU 主站指令庫,可以讀寫 MODBUS RTU 從站的數(shù)字量、模擬量 I/O 以及保持寄存器。

要使用 MODBUS RTU 主站指令庫,須遵循下列步驟:

安裝西門子標(biāo)準(zhǔn)指令庫

按照要求編寫用戶程序調(diào)用 MODBUS RTU 主站指令庫

MODBUS RTU 主站功能編程

1. 調(diào)用 MODBUS RTU 主站初始化和控制子程序

使用 SM0.0 調(diào)用 MBUS_CTRL 完成主站的初始化,并啟動其功能控制:

用 SM0.0 調(diào)用 MODBUS RTU 主站初始化與控制子程序

各參數(shù)意義如下:

a. EN 使能:必須保證每一掃描周期都被使能(使用 SM0.0)

b. Mode 模式:為 1 時,使能 MODBUS 協(xié)議功能;為 0 時恢復(fù)為系統(tǒng) PPI 協(xié)議

c. Baud 波特率:支持的通訊波特率為1200,2400,4800,9600,19200,38400,57600,115200。

d. Parity 校驗:校驗方式選擇

0=無校驗

1=奇較驗

2=偶較驗

e. Timeout 超時:主站等待從站響應(yīng)的時間,以毫秒為單位,典型的設(shè)置值為 1000 毫秒(1 秒),允許設(shè)置的范圍為 1 - 32767。

注意: 這個值必須設(shè)置足夠大以保證從站有時間響應(yīng)。

f. Done 完成位:初始化完成,此位會自動置1。可以用該位啟動 MBUS_MSG 讀寫操作(見例程)

g. Error 初始化錯誤代碼(只有在 Done 位為1時有效):

0= 無錯誤

1= 校驗選擇非法

2= 波特率選擇非法

3= 模式選擇非法

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

調(diào)用MODBUS RTU 主站讀寫子程序

各參數(shù)意義如下:

a. EN 使能:同一時刻只能有一個讀寫功能(即 MBUS_MSG)使能

注意:建議每一個讀寫功能(即 MBUS_MSG)都用上一個 MBUS_MSG 指令的 Done 完成位來激活,以保證所有讀寫指令循環(huán)進(jìn)行(見例程)。

b. First 讀寫請求位:每一個新的讀寫請求必須使用脈沖觸發(fā)

c. Slave 從站地址:可選擇的范圍 1 - 247

d. RW 從站地址:0 = 讀, 1 = 寫

注意:

1. 開關(guān)量輸出和保持寄存器支持讀和寫功能

2. 開關(guān)量輸入和模擬量輸入只支持讀功能

e. Addr 讀寫從站的 選擇讀寫的數(shù)據(jù)類型

數(shù)據(jù)地址: 00001 至 0xxxx - 開關(guān)量輸出

10001 至 1xxxx - 開關(guān)量輸入

30001 至 3xxxx - 模擬量輸入

40001 至 4xxxx - 保持寄存器

f. Count 數(shù)據(jù)個數(shù) 通訊的數(shù)據(jù)個數(shù)(位或字的個數(shù))

注意: MODBUS主站可讀/寫的最大數(shù)據(jù)量為120個字(是指每一個 MBUS_MSG 指令)

g. DataPtr 數(shù)據(jù)指針:

1. 如果是讀指令,讀回的數(shù)據(jù)放到這個數(shù)據(jù)區(qū)中

2. 如果是寫指令,要寫出的數(shù)據(jù)放到這個數(shù)據(jù)區(qū)中

h. Done 完成位 讀寫功能完成位

i. Error 錯誤代碼:只有在 Done 位為1時,錯誤代碼才有效

0 = 無錯誤

1 = 響應(yīng)校驗錯誤

2 = 未用

3 = 接收超時(從站無響應(yīng))

4 = 請求參數(shù)錯誤(slave address, MODBUS address, count, RW)

5 = MODBUS/自由口未使能

6 = MODBUS正在忙于其它請求

7 = 響應(yīng)錯誤(響應(yīng)不是請求的操作)

8 = 響應(yīng)CRC校驗和錯誤

101 = 從站不支持請求的功能

102 = 從站不支持?jǐn)?shù)據(jù)地址

103 = 從站不支持此種數(shù)據(jù)類型

104 = 從站設(shè)備故障

105 = 從站接受了信息,但是響應(yīng)被延遲

106 = 從站忙,拒絕了該信息

107 = 從站拒絕了信息

108 = 從站存儲器奇偶錯誤

常見的錯誤:

如果多個 MBUS_MSG 指令同時使能會造成 6 號錯誤

從站 delay 參數(shù)設(shè)的時間過長會造成主站 3 號錯誤

從站掉電或不運(yùn)行,網(wǎng)絡(luò)故障都會造成主站 3 號錯誤

3. 在 CPU 的 V 數(shù)據(jù)區(qū)中為庫指令分配存儲區(qū)(Library Memory)

MODBUS Master 指令庫需要一個284個字節(jié)的全局 V 存儲區(qū)。

西門子 S7200 PLC MODBUS支持的功能碼

功能碼

描述

1

讀取單個/多個線圈的實際輸出狀態(tài)。功能1返回任意數(shù)量輸出點(diǎn)的接通/斷開狀態(tài)(Q)。

2

讀取單個/多個線圈的實際輸入狀態(tài)。功能2返回任意數(shù)量的輸入點(diǎn)的接通/斷開狀態(tài)(I)

3

多個保持寄存器。功能3返回V存儲器的內(nèi)容。保持寄存器在MODBUS下是字類型,在一個請求中最多可讀120個字。

4

讀單個/多個輸入寄存器,返回模擬輸入值。

5

寫單個線圈(實際輸出)。功能5將實際輸出點(diǎn)設(shè)置為指定值。該輸出點(diǎn)不是被強(qiáng)制,用戶程序可以重寫由MODBUS的請求而寫入的值。

6

寫單個保持寄存器。功能6寫一個單個保持寄存器的值到S7-200的V存儲區(qū)。

15

寫多個線圈(實際輸出)。功能15寫多個實際輸出值到S7-200的Q映像區(qū)。起始輸出點(diǎn)必須是一個字節(jié)的開始(如Q0.0或Q2.0),并且要寫得輸出的數(shù)量是8的倍數(shù)。這是MODBUS從站協(xié)議指令的限定。這些點(diǎn)不是被強(qiáng)制,用戶程序可以重寫由MODBUS的請求而寫入的值。

16

寫多個保持寄存器。功能16寫多個保持寄存器到S7-200的V區(qū)。在一個請求中最多可寫120字。

例 國產(chǎn)精驅(qū)變頻器與S7200 CPU224XP PLC通訊

(1)設(shè)置變頻器的通訊參數(shù)

參數(shù)

設(shè)置值

說明

P0.01

4

啟動命令改為串行通訊

P0.03

2

頻率給定改為串行通訊

P3.09

133

9600波特率 無奇偶校驗

P3.10

3

從站地址 3

硬件接線

S7-200通訊口1

第3腳-----RS485+ 第8腳----RS485-

(3) 初始化程序

 

變頻器的控制地址,因為變頻器控制地址為2000H,所以換位10進(jìn)制為8192,MUDBUS地址40001開頭,需要加1,控制地址為8193,功能碼4為讀寫寄存器,因為啟

動變頻器的控制命令為17,所以傳送17到VW200則啟動變頻器

 

(5 ) 設(shè)置變頻器的給定頻率

 

變頻器的通信控制字節(jié)

55

西門子通訊MUDBUS協(xié)議在工控上使用最廣泛的一種協(xié)議,具備以下幾個特點(diǎn)

1 )使用簡單,利用MUDBUS庫文件簡單的幾條指令就能實現(xiàn)與智能儀表,變頻器,打印機(jī)等設(shè)備進(jìn)行通訊,且無需加其他硬件上的成本MODBUS總線廣泛應(yīng)用于儀器儀表、智能高低壓電器、變送器、可編程控制器、人機(jī)界面、變頻器、現(xiàn)場智能設(shè)備等諸多領(lǐng)域。MODBUS與其他的現(xiàn)場總線和工業(yè)網(wǎng)絡(luò)相比有以下幾個顯著特點(diǎn):

2)標(biāo)準(zhǔn)、開放:用戶可以免費(fèi)放心的使用

MODBUS協(xié)議,不用繳納許可費(fèi)用,不會涉及侵犯知識產(chǎn)權(quán)。目前支持MODBUS的廠一家超過400家,支持MODBUS的產(chǎn)品超過600種。在中國,MODBUS已經(jīng)成為國家標(biāo)準(zhǔn)GB/T19582-2008。據(jù)不完全統(tǒng) 計:截止到2007年MODBUS的節(jié)點(diǎn)安裝數(shù)量已經(jīng)超過了1000萬個。

3)應(yīng)用廣泛:凡MODBUS協(xié)議設(shè)備具有RS232/485接口的都可以使用本產(chǎn)品實現(xiàn)與現(xiàn)場總線PROFIBUS的互連。如:具有MODBUS協(xié)議接口的變頻器、智能高低壓電器、電機(jī)啟動保護(hù)裝置、電量測量裝置、智能現(xiàn)場測量設(shè)備、各種變送器及儀表等。

4)MODBUS可以支持較多類型的電氣接口:MODBUS 總線協(xié)議采用主站查詢從站的方式,物理接口可以是RS232、RS485、RS422、RJ45,還可以在各種介質(zhì)上傳送,如雙絞線、光纖、無線射頻等.

5)MODBUS的幀格式較為簡單、緊湊,格式規(guī)范,易于傳輸,通俗易懂。用戶使用容易,廠商開發(fā)簡單。用戶不必了解PROFIBUS和MODBUS技術(shù)細(xì)節(jié),只需參考說明手冊及提供的應(yīng)用實例,按要求完成配置,不需要復(fù)雜的編程,即可在短時間內(nèi)實現(xiàn)設(shè)備間的連接通信。

6)透明通信:用戶可以依照PROFIBUS通信數(shù)據(jù)區(qū)和MODBUS通信數(shù)據(jù)區(qū)的映射關(guān)系,實現(xiàn)PROFIBUS到MODBUS之間的數(shù)據(jù)透明通信。

免責(zé)聲明:本文系網(wǎng)絡(luò)轉(zhuǎn)載或改編,版權(quán)歸原作者所有!

Tags:modbus協(xié)議,西門子plc,s7-200  
責(zé)任編輯:admin
相關(guān)文章列表
理解西門子PLC間接尋址和指針梯形圖實例,S7-200SMART
西門子S7-200通訊控制臺達(dá)變頻器,實例講解Modbus RTU通訊
西門子plc梯形圖編程實例 西門子200smart與電流表Modbus RTU通訊
使用西門子plc的Modbus通訊 串口調(diào)試助手與S7-200SMART PLC從站通
西門子plc梯形圖實例S7-200Smart與ABB ACS550變頻器通訊Modbus通
Modbus協(xié)議詳解 科普Modbus通訊協(xié)議
Modbus協(xié)議的數(shù)據(jù)模型和地址模型
PLC通訊MODBUS協(xié)議的應(yīng)用及編程報文格式,三菱plc通訊
西門子plc s7-200通訊設(shè)置(西門子plc200與電腦通訊怎么設(shè)置)STEP
西門子S7-200PLC中,如何將大于32767的整數(shù)轉(zhuǎn)換成正實數(shù)?VD、VW
西門子plc S7-200系列中斷指令第二部分 ENI和DISI指令
西門子plc置位與復(fù)位指令的功能說明
西門子plc與modbus設(shè)備進(jìn)485通信詳解(modbus多機(jī)輪詢)讀取儀表
寄存器PLC地址與寄存器modbus協(xié)議地址 三菱FX系列西門子s7系列pl
Modbus協(xié)議基本知識 Modbus地址范圍對應(yīng)表
西門子PLC S7-200smart與匯川變頻器通過通訊控制 梯形圖實例
西門子PLC梯形圖編程 控制汽車自動清洗裝置
西門子PLC S7-200 實數(shù)運(yùn)算指令的應(yīng)用的指令表及梯形圖 除法
西門子plc S7-200系列PLC整數(shù)乘除法指令的格式及使用
西門子plc梯形圖實例 S7-200系列PLC轉(zhuǎn)換指令練習(xí)實例 整數(shù)實數(shù)轉(zhuǎn)
西門子plc梯形圖實例 MOV指令數(shù)據(jù)傳送
西門子plc S7-200系列梯形圖實例:電機(jī)多段定時啟動功能 READ_RT
西門子plc梯形圖實例S7-200系列PLC增減計數(shù)指令入門 CTUD增減計數(shù)
西門子PLC試題5:小車往復(fù)運(yùn)動控制系統(tǒng)梯形圖實例
西門子plc比較指令的實例代碼梯形圖實例,計數(shù)器CTUD和比較指令
西門子plc實現(xiàn)8個彩燈移位控制的代碼梯形圖實例MOV_B,ROL_B,ROR_
西門子plc s7-200系列梯形圖實例:設(shè)置時鐘指令 SET_RTC和MOV_B
西門子plc S7-200系列梯形圖實例:傳送帶生產(chǎn)計數(shù) 加法運(yùn)算 比較
西門子plc梯形圖實例 s7-200系列plc比較指令用法舉例
西門子plc梯形圖實例編程 控制噴泉系統(tǒng)梯形圖與控制語句表
請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個字
[ 查看全部 ] 網(wǎng)友評論
推薦文章
最新推薦
關(guān)于我們 - 聯(lián)系我們 - 廣告服務(wù) - 友情鏈接 - 網(wǎng)站地圖 - 版權(quán)聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
主站蜘蛛池模板: 广汉市| 蒲江县| 绥滨县| 涿鹿县| 永兴县| 资阳市| 长子县| 金寨县| 固原市| 台北市| 那坡县| 温州市| 肥城市| 梓潼县| 高雄县| 抚顺市| 裕民县| 武功县| 临清市| 彝良县| 阿城市| 罗定市| 郓城县| 安吉县| 渝北区| 如东县| 于都县| 揭东县| 垫江县| 化隆| 盐城市| 鸡泽县| 安西县| 新津县| 延边| 全州县| 柘荣县| 天长市| 泰来县| 西青区| 延安市|