S7-200MODBUS主從通訊資料_第1頁(yè)
S7-200MODBUS主從通訊資料_第2頁(yè)
S7-200MODBUS主從通訊資料_第3頁(yè)
S7-200MODBUS主從通訊資料_第4頁(yè)
S7-200MODBUS主從通訊資料_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、使用下面的例程你可以在S7-200CPU之間設(shè)置一個(gè)簡(jiǎn)單的Modbus通訊。 這個(gè)例子是關(guān)于Modbus功能碼6的(寫(xiě)從站保持寄存器), 也可以作為其他所支持的功能碼:1, 2, 3, 4, 5, 15 和16 的基本參數(shù)設(shè)置步驟 。 要求: 要使用Modbus協(xié)議必須先在STEP 7 Micro/Win上安裝指令庫(kù) 。 Modbus主站協(xié)議只支持STEP 7 Micro/Win V4.0 SP5及其以上版本.。 1. 硬件設(shè)置 2. 參數(shù)匹配 3. 指令庫(kù)的存儲(chǔ)地址 4. 保持寄存器值得傳輸 1. 硬件設(shè)置 例程中的Modbus通訊是在兩個(gè)S7-200 CPU的0號(hào)通訊口間進(jìn)行的(最好每個(gè)C

2、PU都有兩個(gè)通訊口)。在主站側(cè)也可以選擇相應(yīng)庫(kù)文件 MBUS_CTRL_P1 和 MBUS_MSG_P1通過(guò)1號(hào)通訊口通信。通訊口1與Micro/WIN建立PG或PC連接,兩個(gè)CPU的通訊口0通過(guò)PPI電纜進(jìn)行連接(電纜的 針腳 連接為2,3,7,8)。 圖. 01 2. 參數(shù)匹配 對(duì)于MODBUS通訊, 主站側(cè)需要程序庫(kù) MBUS_CTRL 和 MBUS_MSG, 從站側(cè)需要程序庫(kù) MBUS_INIT and MBUS_SLAVE。 在 Micro/WIN 中您需要為主站和從站新建一個(gè)項(xiàng)目,程序與參數(shù)設(shè)置見(jiàn)圖.02。 必須要保證主站與從站的“Baud”和Parity的參數(shù)設(shè)置要一致,并且程序

3、塊MBUS_MSG中的Slave地址要與程序塊MBUS_INIT中的Addr所設(shè)置的一致 (見(jiàn)圖. 02)。 Micro/WIN“系統(tǒng)塊”中設(shè)置的0通訊口的波特率與MODBUS協(xié)議無(wú)關(guān)(Mode = 1)。 圖. 02 下面的表格列出了程序塊各個(gè)參數(shù)選項(xiàng)及其意義 主站 MBUS_CTRL 表 01 1) 參看STEP 7 Micro/WIN 幫助: MODBUS主站執(zhí)行MBUS_MSG時(shí)的錯(cuò)誤代碼MBUS_MSG 。 MBUS_MSG 表 02 1)參看STEP 7 Micro/WIN 幫助: MODBUS主站執(zhí)行MBUS_MSG時(shí)的錯(cuò)誤代碼MBUS_MSG 。 從站 MBUS_INIT 表

4、03 2) 最大的地址取決于所用CPU的類(lèi)型及其最大值。 3)參看STEP 7 Micro/WIN 幫助: “MODBUS從站協(xié)議的錯(cuò)誤代碼”。 MBUS_SLAVE 表 04 3)參看STEP 7 Micro/WIN 幫助: “MODBUS從站協(xié)議的錯(cuò)誤代碼” 。 3. 庫(kù)的存儲(chǔ)地址 項(xiàng)目完成后必須要在Micro/WIN中定義庫(kù)的存儲(chǔ)地址,當(dāng)定義完存儲(chǔ)區(qū)后, 要保證在任何情況下不能再被其它程序所使用 (主站側(cè): DataPtr + Count 從站側(cè): HoldStart + MaxHold)。 圖. 03 4. 保持寄存器值的傳輸 將程序下載到相應(yīng)的CPU后,可以在狀態(tài)表中給主站側(cè)的V存儲(chǔ)

5、區(qū)賦值,然后監(jiān)視從站的變化。 當(dāng)主站的I0.0使能后,VW2中的內(nèi)容就被發(fā)送到從站并寫(xiě)入從站的VW2 。 保持寄存器值的傳輸見(jiàn)圖. 04。 指針DataPtr 代表了V區(qū)被讀的起始地址。 參數(shù) Count 表明了地址Addr = 4xxxx (保持寄存器)以字為單位被讀的個(gè)數(shù)。 主站中被讀取的V存儲(chǔ)區(qū)被寫(xiě)入地址為Addr = 40002 (RW = 1)的保持寄存器中。 保持寄存器是以字為單位工作的,它與從站的V區(qū)地址對(duì)應(yīng)。 指針 HoldStart 明確了與保持寄存器起始地址40001相對(duì)應(yīng)的V存儲(chǔ)區(qū)的初始地址。 可以這樣計(jì)算從站的V區(qū)目標(biāo)指針: 2 * (Addr - 40001) + H

6、oldStart = 2 * (40002 - 40001) + &VB0 = &VB2 另外,要保證MaxHold 定義的數(shù)據(jù)區(qū)能夠包含主站側(cè)所要寫(xiě)入的數(shù)據(jù)區(qū) : MaxHold = Addr - 40001 + Count = 40002 - 40001 + 1 = 2 Fig. 04 關(guān)于STEP 7 Micro/WIN MOBDUS 庫(kù)的更多信息可以參看 S7-200 系統(tǒng)手冊(cè) ( Entry ID 1109582) 和 STEP 7 Micro/WIN 幫助。 如何在 STEP 7 Micro/WIN 中找到 Modbus RTU 協(xié)議和 USS 協(xié)議操作庫(kù)? 說(shuō)明: 在 STEP

7、7 Micro/WIN 中,Modbus RTU 協(xié)議和 USS 協(xié)議操作庫(kù)位于操作樹(shù)的“庫(kù)”文件夾中。MODBUS 函數(shù)庫(kù)要求 STEP 7 Micro/WIN 為 V3.2 或更高版本。 圖1: 添加函數(shù)庫(kù) 這些庫(kù)是附加函數(shù)庫(kù),并非組態(tài)軟件 STEP 7 Micro/WIN 的組成部分。 您如果需要使用 Modbus RTU 協(xié)議,必須購(gòu)買(mǎi)“SIMATIC STEP 7 Micro/WIN ADD ON: Function Library V1.1 (USS + MODBUS) for STEP 7 Micro/WIN 32”軟件。 這個(gè)可選附加函數(shù)庫(kù)的訂貨號(hào)是 6ES7830-2BC00

8、-0YX0。 安裝順序: 先安裝“STEP 7 Micro/WIN 32 Toolbox V1.0”(包括庫(kù)),然后安裝“STEP 7 Micro/WIN”。 注意: 這個(gè)函數(shù)庫(kù)包含可以在 STEP 7 Micro/WIN V3.2 中使用的 Modbus RTU 協(xié)議庫(kù)和 USS 協(xié)議庫(kù)。 如果您安裝了 STEP 7 Micro/WIN V4.0 SP5 或者更高版本,那么操作庫(kù)中就會(huì)包含下列函數(shù): Modbus RTU Master V1.2 對(duì)應(yīng)端口 0 和端口 1 Modbus RTU Slave V1.0 對(duì)應(yīng)端口 0 USS protocol V2.3 對(duì)應(yīng)端口 0 和端口 1問(wèn)一

9、個(gè)問(wèn)題:是不是S7-200MODBUS通訊:00001至0*x對(duì)應(yīng)開(kāi)關(guān)量輸出QX.X,10001至1*x對(duì)應(yīng)開(kāi)關(guān)量輸入IX.X,30001至3*x對(duì)應(yīng)模擬量輸入AIW.X,40001至4*x對(duì)應(yīng)模擬量輸出AQW.X,這些MODBUS地址與西門(mén)子的I/O模塊的數(shù)據(jù)地址是不是固定的?如果這樣的話我只能把0-32000的數(shù)據(jù)傳給上位機(jī),給上位機(jī)處理了?我如想把VD32中的數(shù)值傳給上位機(jī)該怎么做?設(shè)備的啟M0.0和停M0.1該如何傳給上位機(jī)?產(chǎn)品版區(qū):SIMATIC S7-200 懸賞分:5 | 解決時(shí)間:2011-07-04 09:56:12 | 提問(wèn)者:gaojian2008 - 學(xué)長(zhǎng)第2級(jí)問(wèn)題I

10、D:70655最佳答案1.00001至0*x對(duì)應(yīng)開(kāi)關(guān)量輸出QX.X,10001至1*x對(duì)應(yīng)開(kāi)關(guān)量輸入IX.X,30001至3*x對(duì)應(yīng)模擬量輸入AIW.X,40001至4*x對(duì)應(yīng)模擬量輸出AQW.X,這些MODBUS地址與西門(mén)子的I/O模塊的數(shù)據(jù)地址是不是固定的?樓主的理解不能說(shuō)對(duì)的,0、1、3、4四種地址是針對(duì)施耐德PLC中的地址進(jìn)行定義的,也就是樓主所說(shuō)的,0對(duì)應(yīng)開(kāi)出和中間線圈、1對(duì)應(yīng)開(kāi)入,以此類(lèi)推。但是對(duì)于西門(mén)子PLC來(lái)說(shuō)沒(méi)有Modbus地址編碼這一說(shuō),也就是說(shuō)不支持0、1、3、4這幾種地址,因此,0、1、3、4并不對(duì)應(yīng)開(kāi)出、開(kāi)入等地址。2.把VD32中的數(shù)值傳給上位機(jī)該怎么做?設(shè)備的啟M0.0和停M0.1該如何傳給上位機(jī)?在做Modbus通訊時(shí),DataPtr的地址為&VB,也就是說(shuō)所有數(shù)據(jù)全部打包到VB中,因此,不論任何數(shù)據(jù),打包到VB實(shí)現(xiàn)數(shù)據(jù)中進(jìn)行發(fā)送和接收。因此,如果需要將M、或VD數(shù)據(jù)送到上位,只需Move到VB中即可。三種類(lèi)型的功能碼03H(讀單個(gè)或多個(gè)寄存器)、06H(寫(xiě)單個(gè)寄存器)、10H(寫(xiě)多個(gè)寄存器)。當(dāng)你的數(shù)據(jù)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論