1. 數控編程技術:NC程序模擬與校驗
數控編程技術:NC程序模擬與校驗2008年02月20日 星期三 12:26本文應用NC程序模擬校驗軟體VERICUT,研究了NC程序的模擬技術,分別探討了手工編寫的和由CAD/CAM軟體生成的NC程序的校驗方法,完成了典型零件手工編寫的和由CAD/CAM軟體生成的NC程序的切削加工模擬和程序校驗。
一、引言
NC程序作為數控加工的信息載體,其正確與否直接影響零件的加工質量。目前實際生產使用的NC程序,在投入加工之前通常採用機床空運行和樣件試切,完成NC程序的校驗。該方法加工准備周期長,生產成本高,難以實現數控機床的高效率。圖形模擬是目前通用的NC校驗方法,一般採用離線工作方式,用三維圖形直觀顯示機床、刀具、工件以及輔助設備(機械手等),在計算機上對檢驗程序進行編譯,並驅動圖形加工系統進行准實時加工,檢查NC代碼中的語法和語意錯誤,實現干涉校驗。NC程序模擬能直觀安全地模擬、驗證、分析切削過程,免去了以往樣件生產的樣件材料損耗、刀具磨損、機床清理等,從而縮短生產准備周期,降低成本。本文選擇了兩個典型零件作為研究對象,探討利用計算機輔助技術生成NC程序,然後進行模擬校驗的技術問題。
以Unigraphics NX和VERICUT 5.3為工具。在Unigraphics NX/Modeling模塊中做零件和模型造型,用VB和Unigraphics NX/Manufacturing等軟體生成NC程序,再用VERICUT 5.3模擬軟體實現NC程序模擬校驗。
二、NC程序模擬與校驗工作流程
VERICUT模擬校驗NC程序的工作流程如圖1所示。
圖1 VERICUT模擬校驗NC程序的工作流程
幾乎所有形式的NC程序代碼都可以作為VERICUT的輸入程序,包括手工編寫的純文本格式的數控加工程序。M&G代碼與APT形式的CL文件一樣,都可以被VERICUT直接執行。類似真實加工的是,VERICUT需要刀具軌跡代碼,需要對於被加工的原材料的描述,也需要對於切削刀具的描述。驗證過程的結果之一是一個加工過的三維實體模型——產品。結果之二是一個報告——包含模擬加工過程所監測到的所有錯誤信息的日誌報告。
三、VERICUT實現NC程序模擬校驗的方法和步驟
1. 手工編寫的NC程序模擬校驗
對於這種情況,這里以一個用VB編寫的純文本數控加工程序為例加以說明。如圖2所示的是一個已經粗加工的零件,要對其頂面進行精加工。頂面為一不能用CAD軟體完成造型的三維空間曲面,原曲面上相應點的坐標是在三坐標測量機上測量得到的,只能根據這些坐標值進行編程,然後加工出曲面。用VB編寫的數控程序有5萬多行,程序的校驗原先是在數控機床上對樣件進行試切完成的,要經歷試切→測量→修改程序→再試切的程序校驗過程,整個過程既費工又費時,而且效果也不理想。改用VERICUT對NC程序進行模擬和校驗,不僅節省時間和降低成本,而且效果很好。
圖2 毛坯模型
本例為了獲得好的模擬效果,利用Unigraphics NX製作了一個近似的實體模型。模型製作好後,輸出為*.IGS文件並保存。模擬需要完成三個操作步驟:准備NC程序;准備被加工零件的原材料模型;完成模擬。
進入VERICUT主界面,首先定義工作環境,單擊File→Properties,Default Units=Millimeter設置為公制毫米單位,然後單擊File→New Session新建一個*.USR文件。在其中定義刀具路徑、毛坯和刀具,並完成模擬。
(1)毛坯
單擊VERICUT主菜單的Model→Model Definition:Import標簽,單擊Browse,點選保存*.IGS原材料模型文件的目錄,選擇預先製作好的原材料模型文件。取Tolerance=0.005,單擊Apply,被加工零件的原材料模型即被輸入VERICUT主界面,如圖1所示。
(2)NC程序
手工編寫的NC程序如圖2所示。共5萬多行,預先編好的NC程序保存為純文本格式。NC程序以頂面中心為編程原點,精加工工序使用的刀具為φ20球頭銑刀。NC程序調用步驟:單擊Setup menu→Toolpath:Toolpath Type=G-Code Data,單擊Add,選擇預先編好的程序文件,單擊Ok,刀具路徑文件被調入VERICUT。
圖3 NC程序
(3)刀具
根據程序的要求,在VERICUT中定義刀具,可以從VERICUT附帶的刀具庫中選擇。步驟是:單擊Setup→Tool Manager→File→Open,在VERICUT的安裝目錄下,找到刀具庫文件fanuc3xm.tls,並打開。對ID號為1的刀具進行編輯,改為φ20的球頭銑刀,並將其Gage Offest設為零。刪除其餘刀具,將修改的結果另存至相應的目錄。
(4)數控系統
這里要為VERICUT模擬環境指定一個數控系統控制文件。可直接從VERICUT的庫文件中選擇相應的數控系統控制文件,本例選用的控制文件是fan0m·ctl (mill)。調用步驟:單擊Setup→Control→Open,在VERICUT安裝目錄下找到庫文件fan0m·ctl,並打開。該文件是一個文本文件,包含數控系統如何處理G代碼的指令、程序的格式、機器碼編寫規則和程序調用的規則等,用於將刀具路徑編譯為機床能識別的機器碼。
(5)機床
要根據實際機床定義模擬的機床組件。下面以Funac-3Axis立式加工中心為例,說明如何添加機床各軸組件到組件樹形關系中。
☆在Base下建立Z軸,並定義Z軸零點相對於機床零點的位置;
☆在Z軸上建立刀具Tool,並定義其相對於機床零點的位置;
☆再在Base下建立Y軸,在Y軸上建立X軸;
☆然後利用剪切、粘貼功能,將組件樹形關系調整為如圖(4)所示結構。
圖4 組件樹形關系
說明:機床組件中各軸零點均設在毛坯底面中心,刀具Tool的Z坐標根據程序中的G92指令和毛坯頂面中心至底面中心的高度設置,類似於在數控機床上將工件坐標零點設置在毛坯頂面的中心。
(6)模擬
這里要確保刀具路徑的原點與機床各組件的零點相符。本例根據以上的設置將刀具路徑原點設在Stock_Origin。設置步驟:單擊Setup menu→Toolpath:在刀具原點列表下拉菜單中,點選Stock_Origin,然後單擊Ok。
單擊Play to End圖標即可模擬刀具切削過程。模擬過程中,打開Info/Status窗口,則在動態切削過程的同時,還能實時得到其相應的刀具位置、錯誤信息、警告信息、刀具信息等,如圖5所示。
a)模擬切削過程 b)有誤切程序的模擬結果 c)調整後的程序模擬結果
圖5 模擬結果
查看日誌文件,可得到VERICUT記錄的錯誤信息和警告信息。如有錯誤,則會顯示發生錯誤的程序段。如記錄數均為零,則說明NC程序通過了VERICUT的驗證。
2. Unigraphics NX/Manufacturing中生成的NC程序模擬校驗
對於這種情況,本文著重探討NC程序的模擬校驗。盡管在Unigraphics NX/Manufacturing中,生成刀具路徑時,Unigraphics NX/Manufacturing提供了加工模擬功能,但是對一些復雜零件的刀具路徑在實際加工前還應對NC程序進行進一步的驗證。如圖6所示的零件,在Unigraphics NX/Manufacturing中編制刀具路徑時,經加工模擬未發現問題,用默認的三軸銑後處理器將刀具路徑後處理生成NC程序,再用VERICUT進行驗證,卻出現了錯誤報告,錯誤程序段為N3340 G2 X59.026 Y33.681 I-33.91 F250,圓弧插補缺少J地址字,對應的刀具路徑如圖6a所示。類似的錯誤有好幾處,這樣的錯誤一般難以檢查發現。但用VERICUT軟體很容易就能發現問題。經VERICUT模擬的NC程序,除了能在動態切削過程的同時,實時得到其相應的刀具位置、錯誤信息、警告信息、刀具信息外,還生成相應的日誌報告。報告中詳細記載了錯誤的性質和相應的程序段,通過路徑重放還能再現錯誤發生的過程,而且能立即在路徑重放窗口中對相應的程序段進行修改。如圖6b為原錯誤程序段修改後的路徑重放。
圖6 一個盤型零件
三、結束語
利用VERICUT模擬校驗NC程序可以在計算機上模擬整個NC機床的切削環境,而不必在實際的機床上運行。它降低甚至消除了在機床上驗證輸出的必要性。利用該技術不僅節省了編程和調試的時間,還減少了重復性的工作、消除了損壞零件及損壞機床的可能性。
機械加工工藝師手冊 (好書推薦)
數控編程技巧:教你怎麼樣確定走刀路線和安排加工順序
數控編程技巧:數控加工必備的基礎知識
數控編程技巧:學數控必須掌握的幾個要點(初學必讀本)
2. 數控車床編程實例帶圖的
數控機床程序編制的方法有三種:即手工編程、自動編程和CAD/CAM。
1.手工編程
手工進行零件圖紙分析、加工、數值計算,編寫程序清單直到程序輸入和檢查。它適用於點加工或幾何形狀不太復雜的零件。但是,在編譯復雜的部分時,它非常耗時,而且很容易出錯。
2.自動編程
使用計算機或編程機,完成零件的編程過程,對於復雜零件是非常方便的。
3.CAD/CAM
利用CAD/CAM軟體實現了建模和圖像的自動編程。最典型的軟體是MasterCAM,可以完成銑削二坐標、三坐標、四坐標、五坐標、車削、線切割的編程。這類軟體雖然功能單一,但簡單易學,價格相對低廉,目前仍是中小企業的選擇。
(2)數控編譯失敗視頻擴展閱讀:
注意事項:
科學技術的發展導致了產品升級的加速和人們需求的多樣化,產品的生產也趨向於批量的多樣化和小型化。為了適應這一變化,數控(NC)設備在企業中越來越重要。
它與普通車床相比,一個顯著的優點是:對零件變化的適應性強,更換零件只需更改相應的程序,對刀具只需簡單的調整就能做出合格的零件,為節約成本贏得機會。
但是要充分發揮數控機床的作用,不僅要有良好的硬體,更重要的是軟體:編程,即根據不同零件的特點,編制出合理、高效的加工程序。通過多年的編程實踐和教學,我培養了一些編程技能。
雖然數控車床在加工靈活性上優於普通車床,但在單個零件的生產效率上與普通車床仍有一定差距。因此,提高數控車床的效率就成了關鍵,而合理運用編程技能,建立高效的加工程序,往往對提高機床的效率有意想不到的效果。
3. 西門子數控編譯錯誤802,程序塊過大
我用的是802D和S的,沒用過C的,也沒遇到過這種情況,這個錯誤是編程時出現的么,你可以查下程序,鎖定不了就只能重頭查,西門子的問題不是很多,系統還算可以,先重自己的操作編程查起吧,