技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 基于Modbus協(xié)議的電火花控制系統(tǒng)

基于Modbus協(xié)議的電火花控制系統(tǒng)

時間:2008-07-15 11:55:00來源:ronggang

導(dǎo)語:?提出了一套基于Modbus協(xié)議的總線控制系統(tǒng),分析了Modbus協(xié)議的特點,介紹了Modbus協(xié)議的內(nèi)容及通信過程,給出了系統(tǒng)的軟件實現(xiàn)方法,包括系統(tǒng)流程圖及部分校驗代碼
摘 要:提出了一套基于Modbus協(xié)議的總線控制系統(tǒng),分析了Modbus協(xié)議的特點,介紹了Modbus協(xié)議的內(nèi)容及通信過程,給出了系統(tǒng)的軟件實現(xiàn)方法,包括系統(tǒng)流程圖及部分校驗代碼。 關(guān)鍵詞:Modbus,現(xiàn)場總線,電火花,RTU 0. 前言   國內(nèi)的大多數(shù)電火花設(shè)備由于實時性等方面的要求,控制系統(tǒng)均是基于dos環(huán)境設(shè)計,這種系統(tǒng)能滿足電加工的基本要求,但也大大影響了人機交互的改進以及遠程通信等現(xiàn)代控制的要求;模塊化結(jié)構(gòu)可裁減性強,便于滿足不同用戶的需求,是系統(tǒng)深入發(fā)展的良好基礎(chǔ);專業(yè)化的信號采集設(shè)備及檢測裝置成為系統(tǒng)穩(wěn)定和可靠運行的保障;應(yīng)用網(wǎng)絡(luò)技術(shù),可做到信息處理綜合化,智能化;與此同時,VB、VC以及各種組態(tài)軟件的發(fā)展為人機界面及總線控制的發(fā)展的提供了良好的開發(fā)環(huán)境,使我們能夠設(shè)計出更為合理及人性化的系統(tǒng)。本文試圖將現(xiàn)場總線理論應(yīng)用于電火花加工機床,并最終通過使用Modbus協(xié)議實現(xiàn)各設(shè)備之間的互聯(lián)。[4]   現(xiàn)場總線是應(yīng)用在生產(chǎn)現(xiàn)場,在微機化測量控制設(shè)備之間實現(xiàn)雙向串行多節(jié)點數(shù)字通信的系統(tǒng),也被稱為開放式,數(shù)字化,多點通信的底層控制網(wǎng)絡(luò)。[5][6]在整個工廠的控制網(wǎng)絡(luò)中,現(xiàn)場總線處于重要的基礎(chǔ)地位。 1. 控制系統(tǒng)結(jié)構(gòu)   1.1 系統(tǒng)基本結(jié)構(gòu)   現(xiàn)場總線控制系統(tǒng)一般采用上位計算機結(jié)合下位智能儀表來實現(xiàn)控制功能。在本系統(tǒng)中,由于系統(tǒng)的檢測裝置簡單易用,因此采用微控制器來讀取信號并最終傳輸給上位機。一般來說,總線系統(tǒng)主要包括變送器,總線和檢測站。在本套系統(tǒng)中,微控制器和檢測裝置成為智能儀表即變送器,它作為從機使用,但確是系統(tǒng)的核心部件,而上位機即檢測站主要完成人機交互的任務(wù)以及一些優(yōu)化、復(fù)雜計算和控制的功能。個性化的人機界面以及標準化的總線結(jié)構(gòu)設(shè)計,可方便的擴展系統(tǒng)的控制功能。   整套系統(tǒng)結(jié)構(gòu)圖如圖1所示,系統(tǒng)最主要包括一個服務(wù)器,一臺pc機,三個微控制器及相關(guān)檢測設(shè)備。 [align=center] 圖1 系統(tǒng)結(jié)構(gòu)圖[/align]   這幾層的工作主要包括:   1. 最底層為數(shù)據(jù)采集層,需要從現(xiàn)場采集實時的數(shù)據(jù),比如油溫,油面高度等。三個微控制器作為現(xiàn)場控制層的核心器件,每個被賦予唯一的本機地址用以識別身份。微控制器即變送器也是整個系統(tǒng)的核心設(shè)備,其作用主要是采集間隙電壓,液位油溫,限位報警,手控盒控制等實時數(shù)據(jù),自動實現(xiàn)伺服控制,自動滅火,風(fēng)扇開關(guān),定時抬刀等功能,并同時將數(shù)據(jù)輸出到modbus現(xiàn)場總線測控網(wǎng)絡(luò)。   2. 現(xiàn)場控制層的任務(wù)是將所有的加工狀態(tài)通過雙腳電纜送至控制室的監(jiān)控計算機,組成現(xiàn)場總線網(wǎng)絡(luò),而在此網(wǎng)絡(luò)中,所有傳輸?shù)男畔⒕裱璵odbus協(xié)議。Modbus現(xiàn)場總線將現(xiàn)場變送器和檢測站連接成一個測控網(wǎng)絡(luò),實現(xiàn)電火花加工的監(jiān)測計量與管理。   3. 工廠監(jiān)控層安裝人機界面軟件,負責(zé)監(jiān)視所有加工參數(shù)即電規(guī)準,以及所有相關(guān)數(shù)據(jù)的顯示及鍵盤輸入信息處理等人機交互過程。pc機作為監(jiān)控計算機,通過以太網(wǎng)連接到遠程管理中心,實現(xiàn)向上進行網(wǎng)絡(luò)運行;監(jiān)控計算機可以安裝moden,通過現(xiàn)場進行單擊操作。   4. 最上層為遠程管理層,可以由以太網(wǎng),top等局域網(wǎng)段組成,一般設(shè)服務(wù)器,pc機與服務(wù)器之間通過以太網(wǎng)卡,網(wǎng)關(guān)相連,也可通過路由器連接至廣域網(wǎng)。服務(wù)器是系統(tǒng)的外擴部分,可以選用。   1.2 物理實現(xiàn)   目前,可以通過下列三種方式實現(xiàn)Modbus通信:以太網(wǎng)上的TCP/IP;各種介質(zhì)(有線:EIA/TIA-232-F、EIA-422、EIA/TIA-485-A;光纖、無線等)上的串行鏈路上傳輸;Modbus PLUS,一種高速令牌傳遞網(wǎng)絡(luò)。選擇何種實現(xiàn)方式主要是依據(jù)他所連接的設(shè)備所處的地位。一般采用標準的232口即可,但由于計算機上的rs232傳送的距離不超過30m,因此可以選用485接口。除此之外,422口也為標準串行數(shù)據(jù)接口,表1列出了他們之間的主要差別。本套系統(tǒng)采用了隔離的RS-485通信方式來提供對Modbus的硬件支持。 [align=center] 表1 有線介質(zhì)傳輸性能對比表[/align]   Modbus系統(tǒng)是一種主從網(wǎng)絡(luò),容許一個計算機和一個或多個從機通信。當在Modbus網(wǎng)絡(luò)上通信時,每個控制器都有自己的設(shè)備地址,主機識別按地址發(fā)來的消息,并決定要產(chǎn)生何種行動。當在其他網(wǎng)絡(luò)上傳輸時,包含了Modbus協(xié)議的消息轉(zhuǎn)換為在此網(wǎng)絡(luò)上使用的幀或包結(jié)構(gòu)。此時,控制器既可以作為主設(shè)備也可以作為從設(shè)備, 但不能兩者同時兼?zhèn)洹?   根據(jù)各種設(shè)備的不同接口,總線上還可以串聯(lián)打印機等設(shè)備,也可以將這些設(shè)備直接連接至監(jiān)控計算機的打印機端口或USB口,實現(xiàn)通信。   芯片要根據(jù)所接收的信息進行選擇,如果是數(shù)字量,則最常見的單片機或pic微控制器等均可選用,如果是模擬量如間隙電壓,則要選擇帶模擬端口的芯片。   電纜選擇可以根據(jù)所選擇的傳輸通道及距離來確定,這里選用的是帶屏蔽的雙絞電纜。 2 Modbus協(xié)議   Modbus協(xié)議是OSI模型第七層上的應(yīng)用層報文傳輸協(xié)議,它在連接至不同類型總線或網(wǎng)絡(luò)的設(shè)備之間提供客戶機/服務(wù)器通信?;ヂ?lián)網(wǎng)組中已經(jīng)保留TCP/IP系統(tǒng)端口502用以訪問Modbus,Modbus協(xié)議已經(jīng)成為一種流行的工業(yè)控制傳輸標準。   2.1 協(xié)議內(nèi)容   Modbus協(xié)議定義了消息與格式和內(nèi)容的公共格式,主要采用命令/應(yīng)答方式,每一種命令報文都對應(yīng)著一種應(yīng)答報文,命令報文由主站發(fā)出,當從站收到后,就發(fā)出相應(yīng)的應(yīng)答報文進行相應(yīng)。Modbus的信息幀包括站點、字節(jié)長度、功能碼、操作地址、操作數(shù)據(jù)、CRC校驗值等。在Modbus系統(tǒng)中有兩種有效的傳遞模式即ASCII(美國標準信息交換碼)和RTU(遠程終端裝置)模式。內(nèi)容格式及字符長度如下:[2]   由于RTU模式傳輸位數(shù)少,使用方便,本文內(nèi)容均采用RTU模式。   2.2 通信過程   Modbus主從節(jié)點之間通信過程大致為:  ?。?)從節(jié)點通過特定的端口與主節(jié)點建立連接,等待接收主節(jié)點發(fā)送的請求幀信號。  ?。?)主節(jié)點根據(jù)實際需要達到的目的選擇合適的功能,將其對應(yīng)的功能代碼保存在ADU的功能代碼域,把必要的參數(shù)和子功能代碼保存在數(shù)據(jù)域中,并將傳輸標志、協(xié)議標志、數(shù)據(jù)長度等存放在標志域中,從而組成一個完整的數(shù)據(jù)幀發(fā)送到從節(jié)點。  ?。?)從節(jié)點對收到的請求幀經(jīng)過錯誤檢測后,根據(jù)協(xié)議的規(guī)定將其分解成基本功能單元,并按照功能代碼的要求完成特定的操作,最后還要返回一個功能回應(yīng)信號。如果請求幀或某一步操作出錯,就返回一個錯誤報告。完備的出錯應(yīng)答是Modbus的一個特點,這有利于通信主節(jié)點判斷通信的錯誤原因,從而將其排除,保證通信可靠進行,提高通信成功率。[3] 3. 軟件實現(xiàn)   軟件實現(xiàn)時包括:初始化關(guān)鍵字,包括波特率設(shè)置,數(shù)據(jù)位數(shù),停止位數(shù),奇偶校驗?zāi)J降?,總線上所有的master及slave的以上設(shè)置應(yīng)完全一致。   Modbus編程主要需處理好校驗碼的生成及數(shù)據(jù)包開始標志的檢測。[3]   3.1 地址定義   通信程序必須處理好數(shù)據(jù)報開始的標志,因為每次主機發(fā)送數(shù)據(jù)時,所有的從機都會接收到信息,但只有地址相同的從機才會響應(yīng),因此地址的判別至關(guān)重要。在兩個數(shù)據(jù)包之間modbus協(xié)議將提供3.5幀的空閑時間,此時,總線上所有的從機要做好接收準備,一旦主機有數(shù)據(jù)包發(fā)出,從機立刻接受此數(shù)據(jù)。這當中的第1幀即為地址幀。從機記錄該地址并判斷是否執(zhí)行該功能。   通常,程序中會設(shè)置一個3.5幀計時器,當線路上有數(shù)據(jù)時計時器不計數(shù),一旦線路空閑則計時器計數(shù)開始,直至該計時器停止計數(shù),這時線路上開始有數(shù)據(jù)包發(fā)出,這第一幀數(shù)據(jù)即為地址幀。值得注意的是,3.5幀時間并非常數(shù),應(yīng)根據(jù)傳輸速率及幀校驗方式(奇偶校驗或無校驗)而定。 [align=center] 表2 ASCII模式傳輸格式[/align] [align=center] 表3 RTU模式傳輸格式[/align]   3.2 功能碼定義   客戶所請求的服務(wù)和服務(wù)器所提供的服務(wù)均通過功能碼(Function Code)標識。Modbus 功能碼分三種,即公共功能碼、用戶自定義功能碼和保留功能碼,   公共功能碼是已定義的功能碼,保證其唯一性,包含現(xiàn)存已定義的公共指配功能碼和未來使用的未指配保留功能碼。用戶定義功能碼有兩個定義范圍,即 65 至 72 和十進制 100 至 110。用戶沒有 Modbus 組織的任何批準就可以選擇和實現(xiàn)一個功能碼。保留功能碼是一些公司對傳統(tǒng)產(chǎn)品通常使用的功能碼,并且對公共使用是無效的功能碼。   為使用方便,在本套系統(tǒng)中,我們僅編寫Modbus協(xié)議中的三個公共功能碼,包括寫單個寄存器0x06,讀多個寄存器0x13,讀寫多個寄存器0x17。以寫單個寄存器為例,請求信息為
  響應(yīng)為
  函數(shù)流程圖如下: [align=center] 圖2 系統(tǒng)響應(yīng)流程圖[/align]   除此之外,我們還可以擴展其他功能,比如利用讀文件記錄0x20,寫文件記錄0x21兩個功能碼來存儲系統(tǒng)的相關(guān)信息,如故障記錄,使用過的規(guī)準查詢,各設(shè)備使用情況等。   3.3 校驗碼的生成   根據(jù)傳輸模式的不同,系統(tǒng)需要產(chǎn)生不同的校驗碼(check sum),ASCII模式采用LRC校驗(Longitudinal Redundancy Check)而RTU采用CRC校驗(Cyclical Redundancy Check),實現(xiàn)這兩種方法的函數(shù)均可以在相關(guān)資料中找到。下面是用C語言設(shè)計的CRC校驗,其中Unsigned char* data 為指向訊息緩沖區(qū)(buffer)之指針 Unsigned char length 為訊息緩沖區(qū)中位元組數(shù)目,而產(chǎn)生的返回值reg-crc即為回傳之校驗碼。[2]   unsigned int crc_chk(unsigned char *data, unsigned char length)  ?。?   int j;   unsigned int reg_crc=0xFFFF;   while(length——)   {   reg_crc︿=*data++;   for(j=0;j<8;j++)  ?。?   if(reg_crc&0x01)  ?。?   reg_crc=(reg_crc>>1)︿0xA001;  ?。?   else  ?。?   reg_crc=reg_crc>>1;   }  ?。?  ?。?   return reg_crc;  ?。? 4. 總結(jié)   通過上述系統(tǒng),希望能與先進控制設(shè)備實現(xiàn)對接,從而提高系統(tǒng)的改進速度,使機床整體性能得到提升。   本文作者創(chuàng)新點:將modbus這項廣泛應(yīng)用的協(xié)議用于電火花加工機床,并在加工中取得了很好的加工效果,提高了整體機床的自動化程度。 5.參考文獻  ?。?) 朱小襄.Modbus通信協(xié)議及編程.電子工程師, vol.31. No.7 jul. 2005  ?。?) 臺達VFD-M變頻器使用手冊   (3) 基于Modbus/TCP協(xié)議通信節(jié)點的實現(xiàn).機床與液壓,2004.No.12  ?。?) 楊大勇.電火花成形加工數(shù)控系統(tǒng)的研究.電加工與模具,2003年第1期   (5) 鮑吉龍,葉平. 工業(yè)監(jiān)控系統(tǒng)的網(wǎng)絡(luò)化發(fā)展.微計算機信息,2006年第6-1期,P66-68  ?。?) 陽憲惠.現(xiàn)場總線技術(shù)及其應(yīng)用.北京:清華大學(xué)出版社,2000  ?。?) 陳維剛.一種工業(yè)以太網(wǎng)與現(xiàn)場總線協(xié)議轉(zhuǎn)換器的研制.儀器儀表學(xué)報,第26卷第5期

標簽:

點贊

分享到:

上一篇:步進電機一體化控制系統(tǒng)的設(shè)計

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(www.treenowplaneincome.com)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負版權(quán)法律責(zé)任。

網(wǎng)站簡介|會員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

中國傳動網(wǎng)-工業(yè)自動化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 版權(quán)所有 粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網(wǎng)安備 44030402000946號