8090成人午夜精品无码_国产成人亚洲综合色影视_精品午夜国产福利在线观看_在线看免费观看AV深夜影院_97碰成人国产免费公开视频_欧美乱人伦中文在线

海天精工機(jī)床有限公司 海天精工博客

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

引言 精工技術(shù)結(jié)合傳統(tǒng)機(jī)床技術(shù)與信息技術(shù),是制造 工業(yè)現(xiàn)代化的重要基礎(chǔ)。隨著科技的發(fā)展,與傳統(tǒng)封 閉式精工技術(shù)相比開放式全閉環(huán)精工更符合未來發(fā)展 趨勢⑴。“PC +NC (運(yùn)動控制器),’型開放式精工系 統(tǒng)[2-]具有很好外部擴(kuò)展性、適應(yīng)性和靈活性,能根據(jù) 用戶要求定制特種復(fù)合加工系統(tǒng)。自主研發(fā)的鈑金刻 銑與激光切割復(fù)合加工中心結(jié)構(gòu)上為“PC + NC”型開 放式精工系統(tǒng),即運(yùn)動控制器為主體,PC作為上位機(jī) 運(yùn)行系統(tǒng)控制軟件處理非實(shí)時性任務(wù)[4],如響應(yīng)用戶 消息、G代碼的編譯[5]等。精工加工代碼是指導(dǎo)精工系統(tǒng)加工的關(guān)鍵信息。 目前,對精工代碼進(jìn)行處理的方式主要有兩種:解釋和 編譯[6-]。解釋需要將代碼表示成某種中間形式再加 以執(zhí)行,譯碼效果有限;編譯則直接將代碼轉(zhuǎn)換成為計(jì)算機(jī)上可執(zhí)行的數(shù)據(jù)流,由控制器直接讀取執(zhí)行,譯碼 效果理想。在“PC +運(yùn)動控制器”型開放式精工系統(tǒng) 中,上位機(jī)PC負(fù)責(zé)將G代碼編譯成為可供運(yùn)動控制 器直接讀取的目標(biāo)程序格式,完成加工信息與非加工 信息分離和有效管理。針對自主研發(fā)的鈑金刻銑與激光切割復(fù)合加工數(shù) 控系統(tǒng)要求在同一機(jī)床坐標(biāo)系下既要實(shí)現(xiàn)銑削功能還 要完成激光切割的特點(diǎn),設(shè)計(jì)一種G代碼編譯器,實(shí) 現(xiàn)對加工G代碼的檢錯、譯碼及數(shù)據(jù)管理。1 G代碼編譯器總體設(shè)計(jì)G代碼編譯器是精工系統(tǒng)連接上(PC)下(運(yùn)動控 制器)位機(jī)的重要模塊[8],該模塊主要完成對符合標(biāo) 準(zhǔn)或特定格式要求的G代碼進(jìn)行編譯,然后以結(jié)構(gòu)體 形式存放在上位機(jī)申請的動態(tài)數(shù)組中等待打包下發(fā)給 運(yùn)動控制器。所設(shè)計(jì)編譯器整體流程如圖1所示,在編譯器內(nèi)部實(shí)現(xiàn)對G代碼的詞法、語法分析和指令模 態(tài)下傳,并對存在問題的程序段進(jìn)行錯誤提示。2 G代碼編譯器的實(shí)現(xiàn)自主研發(fā)的精工系統(tǒng)控制對象為特種復(fù)合加工中 心,該設(shè)備的結(jié)構(gòu)包括通用三軸銑削精工加工中心部 分、激光軸部分和專用夾具部分。因此,G代碼編譯器 設(shè)計(jì)時除了滿足常規(guī)精工標(biāo)準(zhǔn)G代碼指令譯碼要求 外,還需識別激光軸和專用夾具控制指令。2.1詞法分析程序的實(shí)現(xiàn)精工加工代碼由字母與數(shù)字?jǐn)?shù)據(jù)組成,對其進(jìn)行 詞法分析需完成數(shù)據(jù)分離、提取和格式轉(zhuǎn)換工作。根 據(jù)特種復(fù)合加工中心的結(jié)構(gòu)特點(diǎn),在詞法分析程序定 義的G代碼字符集中增加激光軸標(biāo)識符J和M21、 M53等激光、夾具控制指令。所設(shè)計(jì)的G代碼編譯器 詞法分析步驟如下:(1) 以程序段為單位對G代碼逐行讀取,將程序 段存至臨時字符串?dāng)?shù)組中。從程序段中讀取一個字 符,忽略其大小寫,判斷該字符是否在定義的精工系統(tǒng) G代碼字符集中。若不在,則標(biāo)記錯誤類型以及錯誤 位置,并跳出編譯循環(huán)提示用戶錯誤信息;若存在,提 取該字符后的數(shù)據(jù)信息。(2) 根據(jù)讀取的字符類型將其數(shù)據(jù)進(jìn)行轉(zhuǎn)換。根 據(jù)字符的類型調(diào)用函數(shù)atm()或者at〇f()將數(shù)據(jù)轉(zhuǎn)換 為int型或float型。當(dāng)出現(xiàn)非常規(guī)數(shù)字(如出現(xiàn)兩個 正負(fù)號或一個以上小數(shù)點(diǎn)),則標(biāo)記錯誤類型以及錯位 , 環(huán) 示用戶 。2.2語法分析程序的實(shí)現(xiàn)詞法分析僅對G代碼程序字進(jìn)行檢測,但無法確 保程序段語法的正確性。因此,需要對詞法分析所識 別出的功能字和數(shù)據(jù)按照標(biāo)準(zhǔn)G代碼精工指令的規(guī) 則和語法進(jìn)行檢查。針對特種復(fù)合加工中心的主軸與 激光軸的移動位于同一方向的結(jié)構(gòu)特點(diǎn),在程序段語 法分析時增加了對進(jìn)給軸的互鎖檢查。G代碼編譯中 對程序段進(jìn)行如下語法分析#(1) 程序段號檢查#將當(dāng)前程序段號與前一段對 比,若不符合遞增規(guī)律,則標(biāo)記錯誤類型;(2) 程序段模態(tài)指令檢查:標(biāo)記程序段中同組模 態(tài)指令出現(xiàn)次數(shù)。當(dāng)該程序段同時存在多個同組指 令,如G02 G03 X100,則標(biāo)記錯誤類型;(3) 冗余指令檢查:判斷程序中是否出現(xiàn)冗余指 令或字符,如同一行中出現(xiàn)兩個X坐標(biāo)字,則標(biāo)記錯 誤類型;(4) 指令數(shù)據(jù)和進(jìn)給軸行程范圍檢查:若存在數(shù) 值超程,如主軸轉(zhuǎn)速超過上限10000 r/min,則標(biāo)記錯;(5) 進(jìn)給軸互鎖檢查:若程序段中同時存在主軸 和激光軸的運(yùn)動指令,則標(biāo)記錯誤類型。當(dāng)語法分析過程中錯誤類型標(biāo)記不為空,則跳出 編譯循環(huán)并提示用戶錯誤信息和程序段位置。詞法、 語法分析程序?qū)崿F(xiàn)流程見圖2。2.3指令模態(tài)下傳的實(shí)現(xiàn)在G代碼中有一些模態(tài)功能)940」指令,如G00、 G01等。這類指令將 會保持有效直到被下 一條具有相同模態(tài)功 的 指換, 調(diào)用函數(shù) CheckSen ()實(shí)現(xiàn)程序段間的模態(tài) 傳遞。具體實(shí)現(xiàn)流程 見圖3,其中SenEr/是模態(tài)下傳時出現(xiàn)錯 的 記。3編譯數(shù)據(jù)存儲譯碼過程中需對取的代據(jù)進(jìn)行存儲,因此設(shè)計(jì) 結(jié)構(gòu)體GC0DE保存G代碼程序段編譯完成后所得數(shù)據(jù),并以動態(tài)數(shù)組存儲G 代碼文件的全部譯碼數(shù)據(jù)。GCODE結(jié)構(gòu)體如下:struct GCODEiunsigned char n; //.了數(shù)unsigned char m; //輔助功能代碼unsigned char t;//刀具號unsigned char g;//G 功能代碼Ratf;//F代碼(進(jìn)給速率)int s;//S代碼(主軸轉(zhuǎn)速)float x;//X軸坐標(biāo)float y;//Y軸坐標(biāo)float z;//Z軸坐標(biāo)float q;//J軸坐標(biāo)float i;//圓弧插補(bǔ)參數(shù)float j;//圓弧插補(bǔ)參數(shù)float k;//圓弧插補(bǔ)參數(shù)float w;//螺距參數(shù)float p;//延時參數(shù)};4實(shí)驗(yàn)驗(yàn)證以鈑金刻銑與激光切割復(fù)合加工中心開放式精工 系統(tǒng)為實(shí)驗(yàn)平臺,通過圖形仿真與實(shí)例加工來驗(yàn)證所 設(shè)計(jì)G代碼編譯器的可行性。繪制加工零件并生成對應(yīng)G代碼,將該G代碼導(dǎo)人 鈑金刻銑與激光切割復(fù)合加工中心精工系統(tǒng)上位機(jī)控制 軟件,導(dǎo)人的部分G代碼如圖4所示,經(jīng)過編譯代碼后的 軌跡仿真和實(shí)例加工的樣例分別如圖5a和圖5b所示。N0820 G01 X-68.15 F936N0830 G03 X-68 Q0 10 J0.15NO840 G02 X-S4.S49 Q20.6978 122.6S J0N的G03 X-46.72 Q39.S988 1-6.的12 J13.S702N0860 G的 K-17.燦88 Q68.87 121.1403 J8.13的N0870G03X1.4522〇76.699I5.3308J13.8602N0880 G02 ^42.8478 120.6978 J-9.199N0890 G03 K61.7488 Q68.87 113.5702 J6.0312N0900G02K91.02〇39.5988 I8.1309J-21.1403N0910 G03 X98.849 Q20.6978 113.8602 J-5.33的N0920 G02 Q-20.6978 1-9.199 J-20.6978N0930 GQ3 X91.02 Q-39.S988 16.0312 J-13.S702H09l|0G02}{61.7li88Q-68.87 I-21.1li03J-8.1309H0950 G03 X42.8478 Q-76.699 1-5.3308 J-13.8662H0960 G02 X1.U522 1-20.6978 J9.199H0970 G03 X-17.IIU88 q-68.87 1-13.5702 J-6.的 12N0980 G02 X-U6.72 Q-39.5988 1-8.1309 J21.1403N0990 G03 X-54.5II9 Q-20.6978 1-13.8602 J5.3308N1000 G02 X-68 QB 19.199 J20.6978N1010 G03 X-68.15 Q0.15 1-0.15 JON1030 M83N1040 M52N185Q M30 (a)加工前的仿真軌跡(b)加工后的實(shí)物照片5結(jié)束語針對自主研發(fā)的開放式精工系統(tǒng)具有鈑金刻銑與 激光切割復(fù)合加工的特點(diǎn),設(shè)計(jì)出一種既滿足一般通 用性又滿足刻銑與激光切割復(fù)合加工要求的G代碼 編譯器。該編譯器能夠?qū)代碼進(jìn)行詞法和語法分 析,并提示譯碼過程中的錯誤信息。實(shí)際加工實(shí)驗(yàn)結(jié) 果表明所開發(fā)的G代碼編譯器能準(zhǔn)確實(shí)現(xiàn)數(shù)據(jù)提取 與解析,完成加工信息的轉(zhuǎn)換。該研究可為后續(xù)開放 式精工系統(tǒng)的開發(fā)與實(shí)現(xiàn)提供一定的借鑒作用。本文由海天精工整理發(fā)表文章均來自網(wǎng)絡(luò)僅供學(xué)習(xí)參考,轉(zhuǎn)載請注明!
留言列表
發(fā)表留言
◎歡迎參與討論,請?jiān)谶@里發(fā)表您的看法、交流您的觀點(diǎn)。