国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

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

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

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

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

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

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

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

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

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

0 引言

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

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

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

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

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

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

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

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

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

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

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

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

2.2 語法分析程序的實現(xiàn)

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

(1)程序段號檢查:將當前程序段號與前一段對比,若不符合遞增規(guī)律,則標記錯誤類型;

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

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

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

(5)進給軸互鎖檢查:若程序段中同時存在主軸和激光軸的運動指令,則標記錯誤類型。

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

圖2 詞法、語法程序分析流程圖

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

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

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

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

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

4 實驗驗證

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

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

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

圖5 上位機控制軟件仿真和實例加工樣例圖

5 結(jié)束語

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

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

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

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

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

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

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

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

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

[9]劉書華.數(shù)控機床與編程[M].北京:機械工業(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

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

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

猜你喜歡
詞法編譯器譯碼
基于對數(shù)似然比與極化信道可靠度的SCF 譯碼算法
基于擴大候選碼元范圍的非二元LDPC加權(quán)迭代硬可靠度譯碼算法
分段CRC 輔助極化碼SCL 比特翻轉(zhuǎn)譯碼算法
面向理想性能空間的跨架構(gòu)編譯分析方法
基于校正搜索寬度的極化碼譯碼算法研究
基于相異編譯器的安全計算機平臺交叉編譯環(huán)境設(shè)計
運行速度大突破華為《方舟編譯器》詳解
應(yīng)用于詞法分析器的算法分析優(yōu)化
詞法分析程序的設(shè)計與實現(xiàn)研究
2010年高考英語“相似”考題例析
黄骅市| 灵寿县| 正定县| 河东区| 通山县| 珲春市| 宣武区| 淮阳县| 镇巴县| 邹城市| 洪雅县| 吴忠市| 金阳县| 灵武市| 韩城市| 噶尔县| 富平县| 广平县| 龙胜| 会泽县| 陆河县| 东台市| 嘉峪关市| 德庆县| 涟水县| 湟中县| 夏津县| 明星| 荆州市| 叶城县| 鹰潭市| 榕江县| 宜春市| 那坡县| 鄢陵县| 河间市| 常山县| 高要市| 芦溪县| 衡阳县| 木兰县|