徐俊凱 竇 遠 申玉萍
(沈陽黎明航空發(fā)動機(集團)有限責任公司,遼寧 沈陽 110043)
系統(tǒng)變量$AC_TIMER[n]的基本定義是:使動作在經(jīng)過規(guī)定的等待時間之后啟動。數(shù)據(jù)類型:REAL(實數(shù)型)。數(shù)據(jù)單位:s(秒)。n:定時器變量號碼。
①設定定時器
通過賦值$AC_TIMER[n]=value增量一個定時器變量。n:定時器變量號碼。value:啟動值(通常為0)。
②停止定時器
實時變量n:定時器變量號碼。通過賦予一個負值$AC_TIMER[1]=-1停止定時器變量的增量。$AC_TIMER[n]的設計初衷是為了協(xié)調程序中各個動作之間的執(zhí)行順序,編程時往往被當做某個條件判斷語句中的條件來使用,例如:
……
WHEN $A_IN[1]= =1 DO $AC_TIMER[1]=0
WHEN $AC_TIMER[1]>=0.5 DO $A_OUTA[3]=$AA_IM[X]$AC_TIMER[1]=-1
……
這兩行程序段的作用即是在偵測到一個數(shù)字輸入之后,通過模擬輸出0.5s來輸出一個實際坐標值。然而系統(tǒng)變量$AC_TIMER[n]計時的基本屬性卻一直被忽略了,正是$AC_TIMER[n]可編程地控制開始、停止以及可讀取的特性,使之成為840D系統(tǒng)實現(xiàn)自動記錄切削時間功能的關鍵構成,其基本程序構架如圖1。
圖1
雖然$AC_TIMER[n]變量儲存了時間信息,但是它卻無法直觀的被查看或者調用,而且作為技術數(shù)據(jù),用戶更希望能夠獲得相對完整、規(guī)范的數(shù)據(jù)報文,所以適合實際應用的程序構架應增加數(shù)據(jù)輸出的部分,如圖2所示。
圖2
這里必須應用到另一個關鍵的編程指令——WRITE:編寫文件,基本定義為在特定的文件終端加上一個程序段。
編程格式:WRITE(VAR INT ERROR, CHAR[160]FILENAME,CHAR[200]STRING)
參數(shù)說明:ERROR——就返回的錯誤可變函數(shù)。0:沒有錯誤;1:不允許的路徑;2:找不到路徑;3:找不到文件;4:文件類型不正確;10:文件已滿;11:文件正在使用;12:無自由的來源;13:無訪問權;20:其它錯誤
FILENAME——在文件名中編寫字符串。
可以路徑和文件辨識符號規(guī)定文件名稱。路徑名稱須為絕對,即以”/”開始。若文件名稱沒有一個定義域辨識符號(_N_),會按規(guī)則加上去。若沒有辨識符號(_MPF,_SPF)時,會自動在文件名稱上加_MPF。若沒有規(guī)定路徑時,文件會儲存在目前的目錄(=選定之程序的目錄)中。文件名稱最多可為32 位,路徑長度最多為128 位。
例: PROTFILE
_N_PROTFILE
_N_PROTFILE_MPF
/_N_MPF_DIR_/_N_PROTFILE_MPF/
STRING——編寫文句。之后在內容加上LF;即,以一個字符加長文句。
%_N_0381_MPF //程序名
;$PATH=\_N_MPF_DIR//程序文件路徑
N010 DEFINE INT _ERROR //定義整數(shù)型變量”_ERROR”
N020 T12 M6
N030 G54 D1
N040 G0 G90 G40 X0 Y0 Z600 B0
N050 S800 M3
N060 TRANS X0 Y146.5
N070 G0 Z475
N080 $AC_TIMER[1]=0//設置計時器開
N090 G1 Z448 F45 //開始切削
N110 Y44.5
N120 X-20
N130 Y-44.5
N140 X20
N150 Y44.5
N160 X0
N170 Y44
N180 $AC_TIMER[1]=-1//設置計時器關
N190 WRITE(_ERROR,”/_N_WKS_DIR/
_N_WPD_DIR/_N_0381LOGF_MPF”,”THIS
PROG RUNTIME IS ”<<$AC_TIMER[1]) //在指定路徑生成文件”0381LOGF”,并寫入字符串” THIS PROG RUNTIME IS _(空格內為$AC_TIMER[1]的實 際值,單位s)”
N200 G0 Z600 //快速退回至HOME PONIT
N210 TRANS
N220 M5
N230 M30 //程序停止
①大多數(shù)的SINUMERIK 840D機床系統(tǒng)中的$AC_TIMER[n]參數(shù)是默認關閉的,必須手動調整機床軸MD參數(shù)中MD28258項的設置才能激活該功能,而且需要重啟NCK內核。②$AC_TIMER[n]參數(shù)的計時結果與加工程序中的預設F值無關,如上例所示,當加工程序運行至N180 $AC_TIMER[1]=-1時,$AC_TIMER[1]參數(shù)中即為自N090運行至N170的實際時間,而不是以總長/F值所得到的時間,因為在實際試加工過程中操作者可能會根據(jù)不同的工況手動提調整進給倍率旋鈕,所以$AC_TIMER[1]參數(shù)的數(shù)值更具實用價值。③為完善數(shù)據(jù)報文,便于數(shù)據(jù)統(tǒng)計和分析,可在程序開始處增加寫入程序運行起始時間的的命令行,例如:WRITE (_ERROR,”/_N_WKS_DIR/_N_WPD_DIR/_N_0381LOGF_MPF”,”THIS PROG BEGIN IN ”<<$A_YEAR<<”/”<<$A_MONTH<<”/” <<$A_DAY<<”/”<<$A_HOUR<<”/”<<$A_MINUTE),這即可以“年/月/日/時/分”的格式將程序運行的具體時間寫入0381LOGF文件中,其中”<<”字符是連接字符串數(shù)據(jù)的所必須的命令符號,而寫入的字符串內容可根據(jù)實際需要靈活調整。
在新產(chǎn)品研發(fā)加工過程中,在驗證工藝方法的同時還需收集相關的生產(chǎn)數(shù)據(jù),例如零件每工序的實際切削時間等。通過利用系統(tǒng)自動統(tǒng)計功能可以減少人為實地跟產(chǎn)記錄,提高人力資源利用效率,強化數(shù)據(jù)的準確性和可靠性,夯實制造管理基礎。
[1]馮潼能.MBD 技術在協(xié)同設計制造中的應用[J].航空制造技術,2010.
[2]粉末冶金工藝學[M].北京:科學普及出版社,2005.