尹童飛 王建新 胡忠彪
(沈陽黎明航空零部件制造有限公司,遼寧 沈陽 110043)
UGNX/POSTBUILDER擴展了TCL語言,下面代碼會涉及到一些擴展命令,這些命令是以MOM或mom開頭的,以適應一些UGNX/POSTBUILDER中的特殊用途。例如調用和輸出在加工過程中的工藝參數、操作文件等。在UGNX/POSTBUILDER中仍然可以使用TCL語言,具體方法是在用戶命令中使用TCL語言來實現用戶功能更擴展,這就是本文研究的功能能夠實現的基礎。
在平時的UG程序編制中,幾乎每個程序都會遇到的問題就是:程序頭的修改。因為車間機床系統的多樣性,使得每個機床系統都需要對應不同的程序頭才能使程序正確的讀入到機床中。而UGNX/POSTBUILDER中只能輸出較為簡單的程序頭,比較復雜的程序頭實現很困難,這樣編程人員的工作無形中增加了給程序修改程序頭的工作,而且幾乎每個程序都要修改,這樣既浪費時間,又容易出錯。
下面以制作西門子 802D系統的程序頭及結尾后處理文件為例,首先,在802D系統中的正確識別的程序頭及尾部格式是:

由以上格式可以看出,如果僅僅用UGNX/POSTBUILDER自身更改程序頭的辦法只能是將“%_N_1000_MPF”這些字符強制輸入到程序中,而且對于與文件名相對應的字段“1000”,則不能更改。即使可以輸出程序,也需要對生成的程序進行修改。另外第二行中的“$”符號,本身具有特殊含義,也不能將它直接加入到程序開頭部分。顯然,這樣無法滿足機床對程序的要求。其實利用TCL語言就可以很輕松的實現這個功能,而且可以根據不同的文件名,操作名而改變其對應的頭文件部分的,使生成的程序與文件名保持一致。對應802D的程序頭,其TCL語言代碼如下:

將上述代碼在UGNX/POSTBUILDER的Program&ToolPath標簽下的Custom Command下建立一個新的命令,將新命令插入到后處理程序的頭部位置,并將原來包含“%”的塊替代,生成的程序如圖1,與原來的默認生成的程序的對比:
通過前后程序的對比可以看出,生成的程序將根據輸入的名稱不同而改變相應的字符,這樣的程序無需再頻繁的復制粘貼程序頭,大大節省了下發程序的時間。
可以看出,只要在UG軟件中提供了我們所需要的對應信息的變量值,我們就可以將這個值通過TCL語言,將這個值輸出到程序中,供編程和操作人員參考。
程序的走刀時間在生產上起到重要作用,無論是排產還是提高效率,零件的加工時間都是不錯的參考。而走刀時間最準確的方法就是直接記下機床走刀的時間,但是,車間生產任務繁重,不能一一測試,那么UG中能不能給我們計算出時間來呢?答案是肯定的,這個信息也在UG中有著對應的變量,它就是“mom_machine_time”。將它在程序結束(End of Program)中插入,可以對程序切削時間進行統計,并在結尾輸出。實現該功能的代碼如下:

在后處理中加入上述代碼后,在程序中將生成走刀時間,mom_machine_time為總加工時間變量,單位為min,輸出程序結尾如下:

編制模型文件時,有時需要對不同工序,或者不同狀態進行建模,這樣,程序輸出時會產生混淆,不易判斷是那個模型文件輸出的程序,一旦混亂,后果將不堪設想。如果生成的程序可以自己將源模型文件的位置及文件名指定好,那么產生錯誤模型二次輸出程序的幾率將大大減少,而且對于反復編程的研制零件來說,模型統一意味著不但程序生成的快,而且易于在原程序基礎上進行優化,提高效率。實現代碼如下:


以上代碼中的mom_part_name變量是包含模型文件的全部路徑變量,可以在程序開始部分作注釋加入。如圖2。

通過TCL與UGNX/POSTBUILDER結合的二次開發,解決了困擾實際工作的一些問題,相信對今后減少程序編制中的失誤,提高編程效率,正確向操作人員傳達關鍵信息等有著重要的意義。在這次對TCL語言的研究中,自己不僅對TCL語言的運用有了一定了解,還對建立UG后處理的過程有了更深入的認識,將UG這個工具軟件更好的服務于技術及生產。
[1]張磊.UGNX4后處理技術培訓教程[M].北京:清華大學出版社,2007.
[2]陳先鋒.SIEMENS數控技術應用工程師--SINUMERIK802D[M].北京:人民郵電出版社.
[3](美)奧斯德奧特·瓊斯.張無章,譯.Tcl/Tk入門經典(第2版)[M].北京:清華大學出版社,2010.