版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
..>西門子S7200與變頻器MODBUS通訊實例詳解西門子S7200PLC簡介西門子S7-200PLC在實時模式下具有速度快,具有通訊功能和較高的生產(chǎn)力的特點(diǎn)。一致的模塊化設(shè)計促進(jìn)了低性能定制產(chǎn)品的創(chuàng)造和可擴(kuò)展性的解決方案。來自西門子的S7-200微型PLC可以被當(dāng)作獨(dú)立的微型PLC解決方案或與其他控制器相結(jié)合使用。Modbus通訊協(xié)議簡介Modbus是由Modicon〔現(xiàn)為施耐德電氣公司的一個品牌〕在1979年創(chuàng)造的,是全球第一個真正用于工業(yè)現(xiàn)場的總線協(xié)議。ModBus網(wǎng)絡(luò)是一個工業(yè)通信系統(tǒng),由帶智能終端的可編程序控制器和計算機(jī)通過公用線路或局部專用線路連接而成。其系統(tǒng)構(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ù)。1MODBUSRTU協(xié)議在S7-200中的應(yīng)用原理1.1MODBUSRTU協(xié)議與S7-200相互關(guān)系簡介S7-200CPU上的通訊口Port0可以支持MODBUSRTU協(xié)議,成為MODBUSRTU從站。此功能是通過S7-200的自由口通訊模式實現(xiàn),因此可以通過無線數(shù)據(jù)電臺等慢速通訊設(shè)備傳輸。想在S7-200CPU與其他支持MODBUSRTU的設(shè)備使用MODBUSRTU協(xié)議通訊,需要由有S7-200CPU做MODBUS主站。S7-200CPU做主站必須由用戶自己用自由口模式,按相關(guān)協(xié)議編程。2從站指令的用法:S7-200控制系統(tǒng)應(yīng)用中,MODBUSRTU從站指令庫只支持CPU上的通訊0口(Port0)。要實現(xiàn)MODBUS的編程軟件,而且須安裝Step7-Micro/WIN32V3.2InstructionLibrary(指令庫)。MODBUSRTU功能是通過指令庫中預(yù)先編好的程序功能塊實現(xiàn)的。MODBUSRTU協(xié)議在S7-200中應(yīng)用的根本過程(1)首先檢查S7-200控制系統(tǒng)中所用Micro/WIN軟件版本,應(yīng)當(dāng)是Step7-Micro/WINV3.2以上版本。(2)檢查Micro/WIN的指令樹中是否存在MODBUSRTU從站指令庫(圖1),庫中應(yīng)當(dāng)包括MBUS_INIT和MBUS_SLAVE兩個子程序。如果沒有,須安裝Micro/WIN32V3.2InstructionLibrary(指令庫)軟件包編程時使用SM0.1—調(diào)用子程序MBUS_INIT進(jìn)展初始化,使用SM0.0—調(diào)用研究MBUS_SLAVE,并指定相應(yīng)參數(shù)。關(guān)于參數(shù)的詳細(xì)說明,可在子程序的局部變量表中找到。調(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ū)起始址:以&VB*指定(間接尋址方式);
●初始化完成標(biāo)志:成功初始化后置1;
●錯誤代碼:0=無錯誤。1.3注意的問題調(diào)用Step7-Mciro/WIN32V3.2InstructionLibrary(指令庫)需要分配庫指令數(shù)據(jù)區(qū)(LibraryMemory)。庫指令數(shù)據(jù)區(qū)是相應(yīng)庫子程序和中斷程序所要用到變量存儲空間。編程時不分配庫指令數(shù)據(jù)區(qū),編譯時會產(chǎn)生許多一樣的錯誤。由子程序參數(shù)HoldStart和Ma*Hold指定保持存放器區(qū),是S7-200CPUV數(shù)據(jù)存儲區(qū)中分配,此數(shù)據(jù)區(qū)不能和庫指令數(shù)據(jù)區(qū)有任何重疊,否則運(yùn)行時會產(chǎn)生錯誤,不能正常通訊。注意MODBUS中保持存放器區(qū)按"字〞尋址,即Ma*Hold規(guī)定是VW而VB個數(shù)。3主站指令的用法:1.MODBUSRTU主站指令庫的功能是通過在用戶程序中調(diào)用預(yù)先編好的程序功能塊實現(xiàn)的,該庫對Port0和Port1有效。該指令庫將設(shè)置通信口工作在自由口模式下。2.MODBUSRTU主站指令庫使用了一些用戶中斷功能,編其他程序時不能在用戶程序中制止中斷。3.MODBUSRTU主站庫對CPU的版本有要求。CPU的版本必須為2.00或者2.01〔即訂貨號為6ES721*-***23-0BA*〕,1.22版本之前〔包括1.22版本〕的S7-200CPU不支持。使用MODBUSRTU主站指令庫,可以讀寫MODBUSRTU從站的數(shù)字量、模擬量I/O以及保持存放器。要使用MODBUSRTU主站指令庫,須遵循以下步驟:安裝西門子標(biāo)準(zhǔn)指令庫按照要求編寫用戶程序調(diào)用MODBUSRTU主站指令庫MODBUSRTU主站功能編程1.調(diào)用MODBUSRTU主站初始化和控制子程序使用SM0.0調(diào)用MBUS_CTRL完成主站的初始化,并啟動其功能控制:用SM0.0調(diào)用MODBUSRTU主站初始化與控制子程序各參數(shù)意義如下: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??梢杂迷撐粏覯BUS_MSG讀寫操作〔見例程〕g.Error初始化錯誤代碼〔只有在Done位為1時有效〕:0=無錯誤1=校驗選擇非法2=波特率選擇非法3=模式選擇非法2.調(diào)用MODBUSRTU主站讀寫子程序MBUS_MSG,發(fā)送一個MODBUS請求;調(diào)用MODBUSRTU主站讀寫子程序各參數(shù)意義如下:EN使能:同一時刻只能有一個讀寫功能〔即MBUS_MSG〕使能注意:建議每一個讀寫功能〔即MBUS_MSG〕都用上一個MBUS_MSG指令的Done完成位來激活,以保證所有讀寫指令循環(huán)進(jìn)展〔見例程〕。b.First讀寫請求位:每一個新的讀寫請求必須使用脈沖觸發(fā)c.Slave從站地址:可選擇的范圍1-247d.RW從站地址:0=讀,1=寫注意:1.開關(guān)量輸出和保持存放器支持讀和寫功能2.開關(guān)量輸入和模擬量輸入只支持讀功能e.Addr讀寫從站的選擇讀寫的數(shù)據(jù)類型數(shù)據(jù)地址:00001至0****-開關(guān)量輸出10001至1****-開關(guān)量輸入30001至3****-模擬量輸入40001至4****-保持存放器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ù)錯誤〔slaveaddress,MODBUSaddress,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ū)〔LibraryMemory〕MODBUSMaster指令庫需要一個284個字節(jié)的全局V存儲區(qū)。西門子S7200PLCMODBUS支持的功能碼功能碼描述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ū)變頻器與S7200CPU224*PPLC通訊〔1〕設(shè)置變頻器的通訊參數(shù)參數(shù)設(shè)置值說明P0.014啟動命令改為串行通訊2頻率給定改為串行通訊P3.091339600波特率無奇偶校驗P3.103從站地址3硬件接線S7200通訊口1第3腳-----RS485+第8腳----RS485-(3)初始化程序變頻器的控制地址,因為變頻器控制地址為2000H,所以換位10進(jìn)制為8192,MUDBUS地址40001開頭,需要加1,控制地址為8193,功能碼4為讀寫存放器,因為啟動變頻器的控制命令為17,所以傳送17到VW200則啟動變頻器(5)設(shè)置變頻器的給定頻率變頻器的通信控制字節(jié)西門子通訊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可以支持較多類型的電氣接口:MODBU
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)村超市加盟合同范例
- 與摩托車相關(guān)合同范本
- 保安公司招人合同范本
- 主播保底合同范本
- 視頻會議工具促進(jìn)團(tuán)隊協(xié)作
- 醫(yī)藥居間合同范例
- 三產(chǎn)合同范例
- 農(nóng)村勞務(wù)用工合同范本
- 農(nóng)村建祠堂合同范例
- 東莞買房合同范例
- 中考記敘文閱讀
- 《計算機(jī)應(yīng)用基礎(chǔ)》-Excel-考試復(fù)習(xí)題庫(含答案)
- 產(chǎn)科溝通模板
- 2023-2024學(xué)年四川省成都市小學(xué)數(shù)學(xué)一年級下冊期末提升試題
- GB/T 7462-1994表面活性劑發(fā)泡力的測定改進(jìn)Ross-Miles法
- GB/T 2934-2007聯(lián)運(yùn)通用平托盤主要尺寸及公差
- GB/T 21709.13-2013針灸技術(shù)操作規(guī)范第13部分:芒針
- 2022年青島職業(yè)技術(shù)學(xué)院單招語文考試試題及答案解析
- 急診科進(jìn)修匯報課件
- 一年級家訪記錄表(常用)
- 信息技術(shù)基礎(chǔ)ppt課件(完整版)
評論
0/150
提交評論