尹童飛 王建新 胡忠彪
(沈陽黎明航空零部件制造有限公司,遼寧 沈陽 110043)
UGNX/POSTBUILDER擴(kuò)展了TCL語言,下面代碼會(huì)涉及到一些擴(kuò)展命令,這些命令是以MOM或mom開頭的,以適應(yīng)一些UGNX/POSTBUILDER中的特殊用途。例如調(diào)用和輸出在加工過程中的工藝參數(shù)、操作文件等。在UGNX/POSTBUILDER中仍然可以使用TCL語言,具體方法是在用戶命令中使用TCL語言來實(shí)現(xiàn)用戶功能更擴(kuò)展,這就是本文研究的功能能夠?qū)崿F(xiàn)的基礎(chǔ)。
在平時(shí)的UG程序編制中,幾乎每個(gè)程序都會(huì)遇到的問題就是:程序頭的修改。因?yàn)檐囬g機(jī)床系統(tǒng)的多樣性,使得每個(gè)機(jī)床系統(tǒng)都需要對(duì)應(yīng)不同的程序頭才能使程序正確的讀入到機(jī)床中。而UGNX/POSTBUILDER中只能輸出較為簡(jiǎn)單的程序頭,比較復(fù)雜的程序頭實(shí)現(xiàn)很困難,這樣編程人員的工作無形中增加了給程序修改程序頭的工作,而且?guī)缀趺總€(gè)程序都要修改,這樣既浪費(fèi)時(shí)間,又容易出錯(cuò)。
下面以制作西門子 802D系統(tǒng)的程序頭及結(jié)尾后處理文件為例,首先,在802D系統(tǒng)中的正確識(shí)別的程序頭及尾部格式是:
由以上格式可以看出,如果僅僅用UGNX/POSTBUILDER自身更改程序頭的辦法只能是將“%_N_1000_MPF”這些字符強(qiáng)制輸入到程序中,而且對(duì)于與文件名相對(duì)應(yīng)的字段“1000”,則不能更改。即使可以輸出程序,也需要對(duì)生成的程序進(jìn)行修改。另外第二行中的“$”符號(hào),本身具有特殊含義,也不能將它直接加入到程序開頭部分。顯然,這樣無法滿足機(jī)床對(duì)程序的要求。其實(shí)利用TCL語言就可以很輕松的實(shí)現(xiàn)這個(gè)功能,而且可以根據(jù)不同的文件名,操作名而改變其對(duì)應(yīng)的頭文件部分的,使生成的程序與文件名保持一致。對(duì)應(yīng)802D的程序頭,其TCL語言代碼如下:
將上述代碼在UGNX/POSTBUILDER的Program&ToolPath標(biāo)簽下的Custom Command下建立一個(gè)新的命令,將新命令插入到后處理程序的頭部位置,并將原來包含“%”的塊替代,生成的程序如圖1,與原來的默認(rèn)生成的程序的對(duì)比:
通過前后程序的對(duì)比可以看出,生成的程序?qū)⒏鶕?jù)輸入的名稱不同而改變相應(yīng)的字符,這樣的程序無需再頻繁的復(fù)制粘貼程序頭,大大節(jié)省了下發(fā)程序的時(shí)間。
可以看出,只要在UG軟件中提供了我們所需要的對(duì)應(yīng)信息的變量值,我們就可以將這個(gè)值通過TCL語言,將這個(gè)值輸出到程序中,供編程和操作人員參考。
程序的走刀時(shí)間在生產(chǎn)上起到重要作用,無論是排產(chǎn)還是提高效率,零件的加工時(shí)間都是不錯(cuò)的參考。而走刀時(shí)間最準(zhǔn)確的方法就是直接記下機(jī)床走刀的時(shí)間,但是,車間生產(chǎn)任務(wù)繁重,不能一一測(cè)試,那么UG中能不能給我們計(jì)算出時(shí)間來呢?答案是肯定的,這個(gè)信息也在UG中有著對(duì)應(yīng)的變量,它就是“mom_machine_time”。將它在程序結(jié)束(End of Program)中插入,可以對(duì)程序切削時(shí)間進(jìn)行統(tǒng)計(jì),并在結(jié)尾輸出。實(shí)現(xiàn)該功能的代碼如下:
在后處理中加入上述代碼后,在程序中將生成走刀時(shí)間,mom_machine_time為總加工時(shí)間變量,單位為min,輸出程序結(jié)尾如下:
編制模型文件時(shí),有時(shí)需要對(duì)不同工序,或者不同狀態(tài)進(jìn)行建模,這樣,程序輸出時(shí)會(huì)產(chǎn)生混淆,不易判斷是那個(gè)模型文件輸出的程序,一旦混亂,后果將不堪設(shè)想。如果生成的程序可以自己將源模型文件的位置及文件名指定好,那么產(chǎn)生錯(cuò)誤模型二次輸出程序的幾率將大大減少,而且對(duì)于反復(fù)編程的研制零件來說,模型統(tǒng)一意味著不但程序生成的快,而且易于在原程序基礎(chǔ)上進(jìn)行優(yōu)化,提高效率。實(shí)現(xiàn)代碼如下:
以上代碼中的mom_part_name變量是包含模型文件的全部路徑變量,可以在程序開始部分作注釋加入。如圖2。
通過TCL與UGNX/POSTBUILDER結(jié)合的二次開發(fā),解決了困擾實(shí)際工作的一些問題,相信對(duì)今后減少程序編制中的失誤,提高編程效率,正確向操作人員傳達(dá)關(guān)鍵信息等有著重要的意義。在這次對(duì)TCL語言的研究中,自己不僅對(duì)TCL語言的運(yùn)用有了一定了解,還對(duì)建立UG后處理的過程有了更深入的認(rèn)識(shí),將UG這個(gè)工具軟件更好的服務(wù)于技術(shù)及生產(chǎn)。
[1]張磊.UGNX4后處理技術(shù)培訓(xùn)教程[M].北京:清華大學(xué)出版社,2007.
[2]陳先鋒.SIEMENS數(shù)控技術(shù)應(yīng)用工程師--SINUMERIK802D[M].北京:人民郵電出版社.
[3](美)奧斯德奧特·瓊斯.張無章,譯.Tcl/Tk入門經(jīng)典(第2版)[M].北京:清華大學(xué)出版社,2010.