• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      特種復(fù)合加工中心數(shù)控系統(tǒng)G代碼編譯器設(shè)計(jì)*

      2015-11-03 05:26:00潘海鴻葉文海張秋杰
      關(guān)鍵詞:程序段詞法編譯器

      潘海鴻,葉文海,陳 琳,張秋杰

      (廣西大學(xué)機(jī)械工程學(xué)院,南守 530004)

      特種復(fù)合加工中心數(shù)控系統(tǒng)G代碼編譯器設(shè)計(jì)*

      潘海鴻,葉文海,陳 琳,張秋杰

      (廣西大學(xué)機(jī)械工程學(xué)院,南守 530004)

      為解決自主研發(fā)的鈑金刻銑與激光切割復(fù)合加工中心開(kāi)放式數(shù)控系統(tǒng)的譯碼問(wèn)題,針對(duì)該復(fù)合數(shù)控系統(tǒng)在同一機(jī)床坐標(biāo)系下既要實(shí)現(xiàn)銑削功能還要能夠完成激光切割的特點(diǎn),提出采用分段提取、逐行分析的方法設(shè)計(jì)一種適用于平面復(fù)合加工的G代碼編譯器。該G編譯器設(shè)計(jì)過(guò)程中除考慮處理傳統(tǒng)銑削加工指令外,還要考慮激光和專用夾具控制指令的代碼檢測(cè)和譯碼,并以數(shù)據(jù)結(jié)構(gòu)體形式存放編譯后的加工數(shù)據(jù)。通過(guò)實(shí)際加工實(shí)驗(yàn)驗(yàn)證了所開(kāi)發(fā)的G代碼編譯器的可行性。

      特種復(fù)合加工中心;數(shù)控系統(tǒng);G代碼編譯器

      0 引言

      數(shù)控技術(shù)結(jié)合傳統(tǒng)機(jī)床技術(shù)與信息技術(shù),是制造工業(yè)現(xiàn)代化的重要基礎(chǔ)。隨著科技的發(fā)展,與傳統(tǒng)封閉式數(shù)控技術(shù)相比開(kāi)放式全閉環(huán)數(shù)控更符合未來(lái)發(fā)展趨勢(shì)[1]。“PC+NC(運(yùn)動(dòng)控制器)”型開(kāi)放式數(shù)控系統(tǒng)[2-3]具有很好外部擴(kuò)展性、適應(yīng)性和靈活性,能根據(jù)用戶要求定制特種復(fù)合加工系統(tǒng)。自主研發(fā)的鈑金刻銑與激光切割復(fù)合加工中心結(jié)構(gòu)上為“PC+NC”型開(kāi)放式數(shù)控系統(tǒng),即運(yùn)動(dòng)控制器為主體,PC作為上位機(jī)運(yùn)行系統(tǒng)控制軟件處理非實(shí)時(shí)性任務(wù)[4],如響應(yīng)用戶消息、G代碼的編譯[5]等。

      數(shù)控加工代碼是指導(dǎo)數(shù)控系統(tǒng)加工的關(guān)鏈信息。目前,對(duì)數(shù)控代碼進(jìn)行處理的方式主要有兩種:解釋和編譯[6-7]。解釋需要將代碼表示成某種中間形式再加以執(zhí)行,譯碼效果有限;編譯則直接將代碼轉(zhuǎn)換成為計(jì)算機(jī)上可執(zhí)行的數(shù)據(jù)流,由控制器直接讀取執(zhí)行,譯碼效果理想。在“PC+運(yùn)動(dòng)控制器”型開(kāi)放式數(shù)控系統(tǒng)中,上位機(jī)PC負(fù)責(zé)將G代碼編譯成為可供運(yùn)動(dòng)控制器直接讀取的目標(biāo)程序格式,完成加工信息與非加工信息分離和有效管理。

      針對(duì)自主研發(fā)的鈑金刻銑與激光切割復(fù)合加工數(shù)控系統(tǒng)要求在同一機(jī)床坐標(biāo)系下既要實(shí)現(xiàn)銑削功能還要完成激光切割的特點(diǎn),設(shè)計(jì)一種G代碼編譯器,實(shí)現(xiàn)對(duì)加工G代碼的檢錯(cuò)、譯碼及數(shù)據(jù)管理。

      1 G代碼編譯器總體設(shè)計(jì)

      G代碼編譯器是數(shù)控系統(tǒng)連接上(PC)下(運(yùn)動(dòng)控制器)位機(jī)的重要模塊[8],該模塊主要完成對(duì)符合標(biāo)準(zhǔn)或特定格式要求的G代碼進(jìn)行編譯,然后以結(jié)構(gòu)體形式存放在上位機(jī)申請(qǐng)的動(dòng)態(tài)數(shù)組中等待打包下發(fā)給運(yùn)動(dòng)控制器。所設(shè)計(jì)編譯器整體流程如圖1所示,在編譯器內(nèi)部實(shí)現(xiàn)對(duì)G代碼的詞法、語(yǔ)法分析和指令模態(tài)下傳,并對(duì)存在問(wèn)題的程序段進(jìn)行錯(cuò)誤提示。

      圖1 G代碼編譯整體流程圖

      2 G代碼編譯器的實(shí)現(xiàn)

      自主研發(fā)的數(shù)控系統(tǒng)控制對(duì)象為特種復(fù)合加工中心,該設(shè)備的結(jié)構(gòu)包括通用三軸銑削數(shù)控加工中心部分、激光軸部分和專用夾具部分。因此,G代碼編譯器設(shè)計(jì)時(shí)除了滿足常規(guī)數(shù)控標(biāo)準(zhǔn)G代碼指令譯碼要求外,還需識(shí)別激光軸和專用夾具控制指令。

      2.1 詞法分析程序的實(shí)現(xiàn)

      數(shù)控加工代碼由字母與數(shù)字?jǐn)?shù)據(jù)組成,對(duì)其進(jìn)行詞法分析需完成數(shù)據(jù)分離、提取和格式轉(zhuǎn)換工作。根據(jù)特種復(fù)合加工中心的結(jié)構(gòu)特點(diǎn),在詞法分析程序定義的G代碼字符集中增加激光軸標(biāo)識(shí)符Q和M21、M53等激光、夾具控制指令。所設(shè)計(jì)的G代碼編譯器詞法分析步驟如下:

      (1)以程序段為單位對(duì)G代碼逐行讀取,將程序段存至臨時(shí)字符串?dāng)?shù)組中。從程序段中讀取一個(gè)字符,忽略其大小寫(xiě),判斷該字符是否在定義的數(shù)控系統(tǒng)G代碼字符集中。若不在,則標(biāo)記錯(cuò)誤類型以及錯(cuò)誤位置,并跳出編譯循環(huán)提示用戶錯(cuò)誤信息;若存在,提取該字符后的數(shù)據(jù)信息。

      (2)根據(jù)讀取的字符類型將其數(shù)據(jù)進(jìn)行轉(zhuǎn)換。根據(jù)字符的類型調(diào)用函數(shù)atoi()或者atof()將數(shù)據(jù)轉(zhuǎn)換為int型或float型。當(dāng)出現(xiàn)非常規(guī)數(shù)字(如出現(xiàn)兩個(gè)正負(fù)號(hào)或一個(gè)以上小數(shù)點(diǎn)),則標(biāo)記錯(cuò)誤類型以及錯(cuò)誤位置,并跳出編譯循環(huán)提示用戶錯(cuò)誤信息。

      2.2 語(yǔ)法分析程序的實(shí)現(xiàn)

      詞法分析僅對(duì)G代碼程序字進(jìn)行檢測(cè),但無(wú)法確保程序段語(yǔ)法的正確性。因此,需要對(duì)詞法分析所識(shí)別出的功能字和數(shù)據(jù)按照標(biāo)準(zhǔn)G代碼數(shù)控指令的規(guī)則和語(yǔ)法進(jìn)行檢查。針對(duì)特種復(fù)合加工中心的主軸與激光軸的移動(dòng)位于同一方向的結(jié)構(gòu)特點(diǎn),在程序段語(yǔ)法分析時(shí)增加了對(duì)進(jìn)給軸的互鎖檢查。G代碼編譯中對(duì)程序段進(jìn)行如下語(yǔ)法分析:

      (1)程序段號(hào)檢查:將當(dāng)前程序段號(hào)與前一段對(duì)比,若不符合遞增規(guī)律,則標(biāo)記錯(cuò)誤類型;

      (2)程序段模態(tài)指令檢查:標(biāo)記程序段中同組模態(tài)指令出現(xiàn)次數(shù)。當(dāng)該程序段同時(shí)存在多個(gè)同組指令,如G02 G03 X100,則標(biāo)記錯(cuò)誤類型;

      (3)冗余指令檢查:判斷程序中是否出現(xiàn)冗余指令或字符,如同一行中出現(xiàn)兩個(gè)X坐標(biāo)字,則標(biāo)記錯(cuò)誤類型;

      (4)指令數(shù)據(jù)和進(jìn)給軸行程范圍檢查:若存在數(shù)值超程,如主軸轉(zhuǎn)速超過(guò)上限10000 r/min,則標(biāo)記錯(cuò)誤類型;

      (5)進(jìn)給軸互鎖檢查:若程序段中同時(shí)存在主軸和激光軸的運(yùn)動(dòng)指令,則標(biāo)記錯(cuò)誤類型。

      當(dāng)語(yǔ)法分析過(guò)程中錯(cuò)誤類型標(biāo)記不為空,則跳出編譯循環(huán)并提示用戶錯(cuò)誤信息和程序段位置。詞法、語(yǔ)法分析程序?qū)崿F(xiàn)流程見(jiàn)圖2。

      圖2 詞法、語(yǔ)法程序分析流程圖

      2.3 指令模態(tài)下傳的實(shí)現(xiàn)

      在G代碼中有一些模態(tài)功能[9-10]指令,如 G00、 G01等。這類指令將會(huì)保持有效直到被下一條具有相同模態(tài)功能的指令所替換,調(diào)用函數(shù)CheckSen()實(shí)現(xiàn)程序段間的模態(tài)傳遞。具體實(shí)現(xiàn)流程見(jiàn)圖3,其中SenErr是模態(tài)下傳時(shí)出現(xiàn)錯(cuò)誤的標(biāo)記。

      圖3 G代碼模態(tài)下傳流程圖

      3 編譯數(shù)據(jù)存儲(chǔ)

      譯碼過(guò)程中需對(duì)所提取的加工代碼數(shù)據(jù)進(jìn)行存儲(chǔ),因此設(shè)計(jì)結(jié)構(gòu)體GCODE保存G代碼程序段編譯完成后所得數(shù)據(jù),并以動(dòng)態(tài)數(shù)組存儲(chǔ)G代碼文件的全部譯碼數(shù)據(jù)。GCODE結(jié)構(gòu)體如下:

      4 實(shí)驗(yàn)驗(yàn)證

      以鈑金刻銑與激光切割復(fù)合加工中心開(kāi)放式數(shù)控系統(tǒng)為實(shí)驗(yàn)平臺(tái),通過(guò)圖形仿真與實(shí)例加工來(lái)驗(yàn)證所設(shè)計(jì)G代碼編譯器的可行性。

      繪制加工零件并生成對(duì)應(yīng)G代碼,將該G代碼導(dǎo)入鈑金刻銑與激光切割復(fù)合加工中心數(shù)控系統(tǒng)上位機(jī)控制軟件,導(dǎo)入的部分G代碼如圖4所示,經(jīng)過(guò)編譯代碼后的軌跡仿真和實(shí)例加工的樣例分別如圖5a和圖5b所示。

      圖4 導(dǎo)入的部分G代碼

      圖5 上位機(jī)控制軟件仿真和實(shí)例加工樣例圖

      5 結(jié)束語(yǔ)

      針對(duì)自主研發(fā)的開(kāi)放式數(shù)控系統(tǒng)具有鈑金刻銑與激光切割復(fù)合加工的特點(diǎn),設(shè)計(jì)出一種既滿足一般通用性又滿足刻銑與激光切割復(fù)合加工要求的G代碼編譯器。該編譯器能夠?qū)代碼進(jìn)行詞法和語(yǔ)法分析,并提示譯碼過(guò)程中的錯(cuò)誤信息。實(shí)際加工實(shí)驗(yàn)結(jié)果表明所開(kāi)發(fā)的G代碼編譯器能準(zhǔn)確實(shí)現(xiàn)數(shù)據(jù)提取與解析,完成加工信息的轉(zhuǎn)換。該研究可為后續(xù)開(kāi)放式數(shù)控系統(tǒng)的開(kāi)發(fā)與實(shí)現(xiàn)提供一定的借鑒作用。

      [1]劉思勝,李松生,陳萍.數(shù)控G代碼解釋器和仿真模塊的設(shè)計(jì)與實(shí)現(xiàn)[J].機(jī)械設(shè)計(jì)與制造,2012(1):172-174.

      [2]周凱.PC數(shù)控原理、系統(tǒng)與應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2006.

      [3]房書(shū)文,張桂香.PC內(nèi)嵌NC型開(kāi)放式數(shù)控系統(tǒng)軟件的研制開(kāi)發(fā)[J].組合機(jī)床與自動(dòng)化加工技術(shù),2005(11):53-55.

      [4]張政,吳序堂,馬書(shū)根,等.基于軟件化體系結(jié)構(gòu)的數(shù)控機(jī)床主控系統(tǒng)的開(kāi)發(fā)[J].機(jī)械工程學(xué)報(bào),2003,39(2):93-97.

      [5]周剛,鄔義杰,潘曉弘.數(shù)控系統(tǒng)軟件模塊實(shí)時(shí)調(diào)度方法[J].機(jī)械工程學(xué)報(bào),2009,45(1):162-166.

      [6]賈旭,盧曉紅,王鑫鑫,等.基于PMAC的微銑床數(shù)控系統(tǒng)中G代碼編譯研究[J].組合機(jī)床與自動(dòng)化加工技術(shù),2012(3):104-107.

      [7]張學(xué)飛,李健.開(kāi)放式數(shù)控系統(tǒng)G代碼的編譯模塊設(shè)計(jì)[J].機(jī)械設(shè)計(jì)與制造,2010(10):87-88.

      [8]伍抗逆,李斌,陳吉紅.面向開(kāi)放式數(shù)控系統(tǒng)平臺(tái)的NC代碼解釋器開(kāi)發(fā)[J].中國(guó)機(jī)械工程,2006,17(2):168-171.

      [9]劉書(shū)華.數(shù)控機(jī)床與編程[M].北京:機(jī)械工業(yè)出版社,2001.

      [10]林礪宗,蘭剛,宋啟盛,等.面向固高數(shù)控卡的G代碼系統(tǒng)[J].模具技術(shù),2009(1):5-8.

      (編輯 趙蓉)(編輯 趙蓉)

      The Design of G Code Compiler for Special Compound M achining Center NC System

      PAN Hai-hong,YE Wen-hai,CHEN Lin,ZHANG Qiu-jie
      (College of Mechanical Engineering,Guangxi University,Nanning 530004,China)

      In order to solve the code compilation problem of self-developed laser cutting sheet metal with engraved milling machining center open NC system,the method of sub-extraction and line by line analysis was proposed to design a G-code compiler.When this G-code compiler is designed for flat composite processing,the characteristics of complex NC system in the same machine coordinate system to achieve milling and laser cutting must be considered.This designed G-code compiler not only fits to realize the traditional milling instructions,but also fits to realize G code detection and decoding of laser and special fixture control instructions.The compiled data was stored in the form of data structure.The experiments indicate that the developed G-code compiler is feasibility.

      special compound machining center;NC system;G-code compiler

      TH166;TG659

      A

      1001-2265(2015)06-0071-03 DOI:10.13462/j.cnki.mmtamt.2015.06.020

      2014-09-02,

      2014-10-20

      國(guó)家自然科學(xué)基金(51465005);南寧市科技攻關(guān)(20141018)

      潘海鴻(1966—),男,壯族,廣西壯族自治區(qū)武鳴市人,廣西大學(xué)教授,博士,博士生導(dǎo)師,研究方向?yàn)閿?shù)控技術(shù)、機(jī)器人控制技術(shù),(E-mail)hustphh@163.com;通訊作者:陳琳(1973—),女,山東青島人,廣西大學(xué)教授,研究方向?yàn)閿?shù)控技術(shù)、數(shù)字信號(hào)檢測(cè)與處理、伺服電機(jī)控制,(E-mail)gxdxcl@163.com。

      猜你喜歡
      程序段詞法編譯器
      詞法 名詞、代詞和冠詞
      基于WinCC的物料小車控制系統(tǒng)設(shè)計(jì)與仿真
      基于相異編譯器的安全計(jì)算機(jī)平臺(tái)交叉編譯環(huán)境設(shè)計(jì)
      數(shù)控系統(tǒng)手輪回退功能的研究與實(shí)現(xiàn)*
      基于NC程序段的提高數(shù)控加工監(jiān)控閾值與信號(hào)同步的方法*
      應(yīng)用于詞法分析器的算法分析優(yōu)化
      談對(duì)外漢語(yǔ)“詞法詞”教學(xué)
      通用NC代碼編譯器的設(shè)計(jì)與實(shí)現(xiàn)
      2010年高考英語(yǔ)“相似”考題例析
      如何處理Java程序中的錯(cuò)誤
      朝阳县| 台南县| 登封市| 潼关县| 施秉县| 浠水县| 勐海县| 荣成市| 临潭县| 自贡市| 天等县| 南召县| 资中县| 长汀县| 白朗县| 安义县| 广西| 鄄城县| 新巴尔虎右旗| 石林| 广安市| 泗洪县| 盐亭县| 林口县| 龙门县| 绥芬河市| 周至县| 洞头县| 桑植县| 神池县| 临沭县| 昌吉市| 无极县| 金寨县| 望城县| 蓝田县| 施秉县| 贵港市| 喀喇| 涞源县| 平泉县|