Modbus RTU協議在S7200中的應用_第1頁
Modbus RTU協議在S7200中的應用_第2頁
Modbus RTU協議在S7200中的應用_第3頁
Modbus RTU協議在S7200中的應用_第4頁
Modbus RTU協議在S7200中的應用_第5頁
已閱讀5頁,還剩1頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、1 引言    工業控制已從單機控制走向集中監控、集散控制,如今已進入網絡集約制造時代。工業控制器連網也為網絡管理提供了方便。Modbus就是工業控制器的網絡協議中的一種。Modbus協議是應用于電子控制器上的一種通訊約規。通過此協議,控制器相互之間、控制器經由網絡(例如以太網)和其它設備之間可以通信。它已經成為主流的工業標準之一。他為符合Modbus協議的不同廠商生產的控制設備可以連成工業網絡,進行集中監控。 2 Modbus RTU協議在S7-200中的應用原理2.1 Modbus RTU協議與S7-200相互關系簡介  

2、0; 現在S7-200 CPU上的通訊口Port0 、Port1可以支持Modbus RTU協議,成為Modbus RTU主從站。此功能是通過S7-200的自由口通訊模式實現,因此可以通過無線數據電臺等慢速通訊設備傳輸。    如果想在S7-200 CPU與其他支持Modbus RTU的設備使用Modbus RTU協議通訊,需要由有S7-200 CPU做Modbus主站。S7-200 CPU做主站必須由用戶自己用自由口模式,按相關協議編程。當然現在軟件升級到SP5以后調用庫文件,可省去不少麻煩。    在

3、原來SP4以下的版本中S7-200控制系統應用中,Modbus RTU從站指令庫只支持CPU上的通訊0口(Port0)。要實現Modbus RTU通訊,需要Step7-Micro/WIN32 V3.2以上版本的編程軟件,而且須安裝Step7-Micro/WIN32 V3.2 Instruction Library(指令庫)。Modbus RTU功能是通過指令庫中預先編好的程序功能塊實現的。現在從你用的V4.0版本升級到SP5以后,系統會自帶USS數據庫,MBUS主從站數據庫。2.2 Modbus RTU協議在S7-200中應用的基本過程    (1) 首

4、先檢查S7-200控制系統中所用Micro/WIN的軟件版本,應當是Step7-Micro/WIN V3.2以上版本。     (2) 檢查Micro/WIN的指令樹中是否存在Modbus RTU從站指令庫(圖1),庫中應當包括MBUS_INIT和MBUS_SLAVE兩個子程序。如果沒有,須安裝Micro/WIN32 V3.2 Instruction Library(指令庫)軟件包,如圖1所示。圖1 指令樹中的庫指令    (3) 編程時使用SM0.1調用子程序MBUS_INIT進行初始化,使用SM0.0調用研究M

5、BUS_SLAVE,并指定相應參數。關于參數的詳細說明,可在子程序的局部變量表中找到。示例參見圖2:圖2 調用MODBUS通訊指令庫    圖2中參數意義如下: 模式選擇:啟動/停止MODBUS,1=啟動;0=停止; 從站地址:MODBUS從站地址,取值1247; 波特率:可選1200,2400,4800,9600,19200,38400,57600; 奇偶校驗:0=無校驗;1=奇校驗;2=偶校驗; 延時:附加字符間延時,缺省值為0; 最大I/Q位:參與通訊的最大I/O點數,S7-200的I/O映像區為128/128,缺省值為128; 最大AI字數:參與

6、通訊的最大AI通道數,可為16或32; 最大保持寄存器區:參與通訊的V存儲區字(VW); 保持寄存器區起始地址:以&VBx指定(間接尋址方式); 初始化完成標志:成功初始化后置1; 初始化錯誤代碼; MODBUS執行:通訊中時置1; 錯誤代碼:0=無錯誤。(4) 注意的問題    調用Step7-Mciro/WIN32 V3.2 Instruction Library(指令庫)需要分配庫指令數據區(Library Memory)。庫指令數據區是相應庫的子程序和中斷程序所要用到的變量存儲空間。如果在編程時不分配庫指令數據區,編譯時會產生許多相同的錯

7、誤。    由子程序參數HoldStart和MaxHold指定的保持寄存器區,是在S7-200 CPU的V數據存儲區中分配,此數據區不能和庫指令數據區有任何重疊,否則在運行時會產生錯誤,不能正常通訊。注意Modbus 中的保持寄存器區按“字”尋址,即MaxHold規定的是VW而不是VB的個數。  3 Modbus RTU協議測試    包含Modbus RTU從站指令庫的項目編譯、下載到CPU中后,在編程計算機(PG/PC)上運行一些Modbus測試軟件可以檢驗S7-200的Modbus RTU通訊是否正

8、常,這對查找故障點很有用。測試軟件通過計算機串口(RS-232)和PC/PPI電纜連接CPU。(以ModScan32測試軟件為例作以檢測說明)3.1 測試軟件     測試軟件ModScan32如圖3所示。圖3 Modbus RTU測試軟件:ModScan32圖3中,ModScan32測試軟件的畫面中相關參數意義如下: Address:ModBus中存儲區的起始地址;Device Id:PLC ModBus的端口地址;Length:參與通訊的V存儲區字的長度。3.2 參數設置    對ModScan32測試軟件的通

9、訊參數進行相關設置,要與S7-200的Modbus RTU指令庫MBUS_INIT中所設定的參數相統一,這樣即可進行通訊檢測。ModScan32通訊參數設置如圖4所示。  圖4 ModScan32通訊參數設置4 MODBUS RTU地址與S7-200的地址對應關系    MODBUS地址總是以00001、30004之類的形式出現。S7-200內部的數據存儲區與MODBUS的0、1、3、4共4類地址的對應關系如附表所示:    附表 MODBUS地址對應表 說明:其中T為S7-200中的緩沖區起始地址,即HoldStart。如果已知S7-200中的V存儲區地址,推算MODBUS地址的公式如下:MODBUS地址=40000+(T/2+1) 其中T為偶數。  5 結束語 

溫馨提示

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

評論

0/150

提交評論