[發明專利]數控代碼編譯器的構造方法有效
| 申請號: | 201310284869.9 | 申請日: | 2013-07-08 |
| 公開(公告)號: | CN104281096B | 公開(公告)日: | 2017-10-13 |
| 發明(設計)人: | 孫克爭;周雪峰;陳賢帥 | 申請(專利權)人: | 廣州中國科學院先進技術研究所 |
| 主分類號: | G05B19/4093 | 分類號: | G05B19/4093 |
| 代理公司: | 廣州新諾專利商標事務所有限公司44100 | 代理人: | 肖云 |
| 地址: | 511458 廣東省廣*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數控 代碼 編譯器 構造 方法 | ||
技術領域
本發明涉及一種代碼編譯方法,具體地說,涉及一種編譯器的構造方法。
背景技術
目前,數控機床通過執行數控代碼完成對零件的加工,用戶利用G代碼、M代碼控制機床的運動,執行輔助操作。數控內核程序無法直接讀取數控代碼對零件進行加工,必須先由預處理程序模塊對零件加工程序進行預處理和譯碼轉化為相應的加工指令,讓數控系統進行零件的加工,這一部分通常叫做數控代碼編譯器。數控代碼編譯器作為數控系統核心模塊之一,需要處理大量的數據,其運行效率直接影響整個系統運行的穩定性。
常用的數據預處理方法有兩種:解釋方法和編譯方法。解釋方法對零件加工程序逐條進行譯碼,在插補中斷的同時,解釋程序預先解釋下一條程序,等本條程序插補完成后,再將下一條預先解釋好的程序的結果放到插補模塊中。如果對一個程序段的解釋過程較慢而使機床具有一定的等待時間,那么加工出來的工件就會出現明顯的粗糙度,且加工效率低,不易處理各程序段間的轉接,易形成加工停頓與過切,程序在中間部分出現的錯誤將使尚未加工完成的零件報廢。編譯方法預先對要加工的零件加工程序全部編譯,將結果放入緩沖區中,當開始加工時,直接啟動插補程序,從緩沖區中取出編譯好的零件程序,進行計算并控制程序加工。但是,這種加工方法需要較大的內存。
現有的數控系統,加工程序每次執行都需要重新編譯,增加數控系統運行時的計算工作量;代碼程序較大時,需要較大內存,影響數控系統的總體性能;程序執行時才會發現代碼中的錯誤,對模具加工程序、雕刻程序等大型數控程序,執行過程中才發現錯誤會造成零件報銷;不同的數控系統使用的數控代碼規則不是完全相同,在不同的數控系統中需要重復編寫語法分析算法、詞法分析算法。
發明內容
本發明的目的在于提供一種數控代碼編譯器的構造方法,采用中間語言和ANTLR語言識別工具,實現數控代碼的一次編譯多次使用,減少運行時的計算工作量;在程序執行前發現數控代碼中的錯誤,避免了程序執行過程中發現錯誤造成的零件報銷。
為了實現上述目的,本發明所采用的技術方案如下:
一種數控代碼編譯器的構造方法,包括以下步驟:定義數控指令的中間語言格式;根據G代碼、M代碼格式,制定對應數控指令的詞法規則和語法規則;編寫數控代碼編譯器框架程序,編譯G代碼、M代碼生成中間語言,將中間語言保存到目標文件中。
進一步,中間語言采用連續的字節流,通過定義固定數據長度進行分割。
進一步,采用ANTLR語言識別工具。
進一步,ANTLR通過語法描述自動構造自定義語言。
進一步,ANTLR根據用戶提供的語法文件自動生成相應的詞法分析器、語法分析器和樹分析器。
進一步,框架程序調用ANTLR生成的詞法分析算法、語法分析算法,編譯G代碼、M代碼生成中間語言。
進一步,ANTLR的詞法分析和語法分析用同一個文件說明。
進一步,詞法分析時,將G準備字分為兩類:一類是無參數的G指令,類型為G_SINGLE的模態指令;另一類是有參數的G指令,類型為G_MULTI的運動指令。
進一步,詞法規則中用坐標字(COORD)統一表示坐標的符號,用參數字(PARAM)統一表示參數的符號。
進一步,詞法規則中定義數控代碼中的數據只處理整數(INTEGER)和浮點數(FLOAT)。
與現有技術相比,本發明通過采用中間語言和ANTLR語言識別工具,數控代碼一次編譯可以多次使用,減少了程序運行時的計算工作量;在程序實際執行前完成編譯,可以提前發現代碼中的錯誤,避免了程序執行過程中發現錯誤造成的零件報銷;通過定義語法規則、詞法規則文件,可自動生成語法分析算法、詞法分析算法,不需要開發人員編寫;對于不同的代碼規則,只需要修改規則文件,重新編譯即可,不需要重寫編寫語法分析算法、詞法分析算法,能實現在不同的數控系統中的快速應用。
附圖說明
圖1為本發明的數控代碼編譯器對數控代碼的處理流程示意圖。
具體實施方式
下面結合附圖和具體實施例對本發明數控代碼編譯器的構造方法作進一步說明。
本發明公開了一種數控代碼編譯器的構造方法,包括以下步驟:
首先,根據實際數控系統需求,定義數控指令的中間語言格式。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廣州中國科學院先進技術研究所,未經廣州中國科學院先進技術研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310284869.9/2.html,轉載請聲明來源鉆瓜專利網。





