亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        淺談SIEMENS數(shù)控系統(tǒng)UG后置處理常用TCL語句使用技巧

        2018-12-05 09:08:48劉解語
        電腦與電信 2018年9期
        關(guān)鍵詞:指令程序語言

        劉解語

        (洛陽市第一高級中學(xué),河南 洛陽 471000)

        1 引言

        不同的數(shù)控系統(tǒng)對NC程序格式有不同的要求,UG軟件提供了一個性能優(yōu)異的后置處理工具PostBuilder,利用它可以把UG軟件制作的刀軌源文件轉(zhuǎn)換成特定數(shù)控系統(tǒng)能接受的NC程序格式,這個過程叫“后置處理”[1]。UG軟件使用TCL語言以方便后置處理模塊的編輯與設(shè)計。

        TCL(ToolCommand Language機器命令語言)是一種很通用的交互式解釋性計算機語言,與C語言有相似的地方。TCL語言首先是一種簡單的腳本語言,其提供了一套標準語法用于發(fā)布命令給一些交互程序;其次,TCL是一個庫,可以被嵌入應(yīng)用程序。用戶一旦掌握了TCL語言就可以很容易地在UG的后置處理工具Post Builder中插入用戶自定義的TCL子程序,以滿足數(shù)控系統(tǒng)的特殊要求[2]。

        2 TCL語言替換命令及應(yīng)用

        2.1 TCL語言替換命令

        替換命令(substitution)是TCL中重要的概念,TCL把替換分為三種:命令替換、變量替換和反斜杠符號替換。在一個命令的參數(shù)中使用另一個命令的結(jié)果,這被稱之為命令替換。例如:

        當方括號出現(xiàn)在一個命令中的時候,TCL把方括號內(nèi)的所有語句看作是一組TCL命令并對這組命令進行解釋,用結(jié)果替代中括號內(nèi)的文字,這稱為命令替換。

        當變量前面出現(xiàn)在一個“$”符號的時候,TCL會把該變量用它的值來替換,這被稱之為變量替換。例如上面的例子中,TCL將用變量a的值15來替換變量a,結(jié)果第二個set命令的結(jié)果是b被賦值為60。

        TCL中還有一個替換是反斜杠符號替換,例如“ ”被替換為 tab,“\”被替換為“”。

        2.2 TCL語言替換命令在Siemens數(shù)控系統(tǒng)程序結(jié)構(gòu)頭部固定格式中的應(yīng)用

        Siemens數(shù)控系統(tǒng)在程序頭對程序名稱有固定的格式要求,否則不能識別。為了在程序頭顯示如下的固定格式:

        這就需要用到TCL語言的替換命令。為此需要在UG軟件Post Builder的startof program部分創(chuàng)建一個進程proc,如圖1所示。

        此proc中TCL語言內(nèi)容如下:

        上面的語句中使用了MOM_output_literal""命令,其可以把""內(nèi)的文本及變量輸出到NC程序中。

        圖1 Siemens系統(tǒng)程序頭PostBuilder設(shè)置

        程序輸出效果如圖2所示:

        圖2 Siemens系統(tǒng)程序頭輸出效果

        3 TCL語言流程控制命令及應(yīng)用

        3.1 TCL語言流程控制命令

        TCL流程控制主要包括條件轉(zhuǎn)移和循環(huán)控制,用于控制程序執(zhí)行的流向。

        其中條件轉(zhuǎn)移指令可以控制程序執(zhí)行哪些指令、跳過哪些指令,其用于判斷條件真假,如果條件為真,執(zhí)行一個流程的指向;如果為假,則執(zhí)行另一個流程的指令。而循環(huán)控制可以控制程序重復(fù)執(zhí)行某些命令。TCL語言流程控制結(jié)構(gòu)命令的綜合運用可以處理遇到的各種復(fù)雜情況。

        TCL語言流程控制結(jié)構(gòu)命令主要指令見表1:

        表1 TCL語言流程控制結(jié)構(gòu)命令

        例如條件語句if:

        if語句使得變量x的值為負時,將它設(shè)置為0。

        再例如條件匹配語句sw itch[3],其可以依據(jù)一個給定的值對多個腳本中的一個腳本進行求值,其語法結(jié)構(gòu)為:

        sw itch命令依次針對每個pattern(模式)參數(shù)匹配它的string參數(shù)。如果它發(fā)現(xiàn)一個pattern匹配string,則立即通過把跟隨在(這個模式)后面的body參數(shù)遞歸傳遞給TCL解釋器來求值,并返回這次求值的結(jié)果。如果最后的pattern參數(shù)是default,則它匹配所有的東西。如果沒有pattern參數(shù)匹配string,并且沒有給出缺省,則sw itch命令返回一個空串。

        3.3 TCL語言條件轉(zhuǎn)移命令

        例1:TCL語言條件轉(zhuǎn)移命令在Siemens數(shù)控系統(tǒng)高速加工指令中的應(yīng)用

        Siemens 840D數(shù)控系統(tǒng)中有個高速加工指令[4],CYCLE832(a,b,c),根據(jù)常用加工工藝要求,設(shè)計如下 CYCLE832指令:

        在零件加工余量大于等于1時,輸出CYCLE832(0.1,2,1);

        在零件加工余量大于0小于1時,輸出CYCLE832(0.05,2,1);

        在零件加工余量等于0時,輸出CYCLE832(0.01,2,1)。

        比如在零件加工余量為2時,數(shù)控程序輸出為CYCLE832(0.1,2,1)。

        為此需要在UG軟件Post Builder的Operation Start Sequence的initialmove里創(chuàng)建一個進程proc,如圖3所示。

        圖3 Siemens系統(tǒng)高速加工指令高速加工指令PostBuilder設(shè)置

        內(nèi)容如下:

        例如,當加工如圖4a所示的零件時,粗加工中設(shè)置如圖4b所示零件基準面的加工余量為1,則此刀軌使用Siemens數(shù)控系統(tǒng)后置處理后,生成的NC代碼如圖4c所示。因為加工余量的設(shè)置,會在NC代碼特定位置出現(xiàn)對應(yīng)的不同的CYCLE832高速加工指令。

        圖4 TCL語言條件轉(zhuǎn)移命令在Siemens數(shù)控系統(tǒng)高速加工指令中的應(yīng)用

        例2:TCL語言條件轉(zhuǎn)移命令在Siemens數(shù)控系統(tǒng)換刀操作中的應(yīng)用

        每條刀軌加工結(jié)束之后需要判斷是否需要換刀,如果需要換刀,則輸出關(guān)閉主軸M 5命令,關(guān)閉冷卻液M 9命令,為此,使用TCL語言寫成用戶自定義命令,在UG/Post Builder軟件的Operation End Sequence中的End of path中創(chuàng)建一個進程proc,如圖5所示。

        圖5 Siemens系統(tǒng)程序尾PostBuilder設(shè)置

        其內(nèi)容如下:

        其中變量mom_next_oper_has_tool_change的取值可以為YES或者NO,string為TCL語言的字符串命令,在此條件轉(zhuǎn)移指令中,如果變量mom_next_oper_has_tool_change的值為YES,則意味著下一操作有換刀動作為真,需要輸出M 5及M 9,如果不需要換刀,則不輸出任何語句。

        3.3 TCL語言條件匹配

        例1:TCL語言條件匹配命令在Siemens數(shù)控系統(tǒng)換刀類型指令中的應(yīng)用

        數(shù)控機床換刀有兩種:手動(MANUAL)與自動(AUTO),根據(jù)換刀類型的不同,數(shù)控系統(tǒng)分別執(zhí)行相應(yīng)的不同的指令,為實現(xiàn)這個功能,可以使用條件匹配指令,其內(nèi)容如下:

        首先對變量mom_tool_change_type進行聲明,它定義換刀類型,有兩個取值,MANUAL與AUTO;Sw itch命令對mom_tool_change_type的取值進行匹配,如果取值為MANUAL,則執(zhí)行PB_manual_tool_change子程序,如果取值為AUTO,則執(zhí)行PB_auto_tool_change子程序。

        例2:TCL語言條件匹配命令在Siemens數(shù)控系統(tǒng)輸出程序單位中的應(yīng)用

        UG軟件模型建模單位與后置處理輸出程序單位常常存在不一致的現(xiàn)象,比如有些國家使用英制單位IN建立模型,而我們使用公制單位MM做后置處理,這樣就會出現(xiàn)錯誤,為消除這種錯誤,可以使用如下語句:

        解釋如下:首先對變量mom_output_unit、mom_part_unit、mom_siemens_tol進行聲明,變量mom_output_unit意為后置處理輸出程序的單位,變量mom_part_unit為模型建模單位,這兩個變量的取值都只有2個:IN(英制單位)或者MM(公制單位),但mom_output_unit與mom_part_unit可以不同;mom_siemens_tol為中間變量,是UG軟件建模數(shù)值,無單位。

        使用TCL語言條件轉(zhuǎn)移指令if,對mom_output_unit與mom_part_unit的值進行判斷,當mom_output_unit與mom_part_unit取值不同時,用TCL條件匹配指令sw itch對mom_output_unit的值進行匹配:如果后置處理需要輸出IN英制單位(這時意味著模型建模單位為MM公制單位),則把中間變量mom_siemens_tol建模尺寸數(shù)值除以25.4;如果后置處理需要輸出MM公制單位(這時意味著模型建模單位為IN英制單位),則把中間變量mom_siemens_tol建模尺寸數(shù)值乘以25.4;最后使用TCL語言替換命令把mom_siemens_tol的6位小數(shù)格式賦值給自己。

        根據(jù)TCL語言條件轉(zhuǎn)移指令if,當mom_output_unit與mom_part_unit取值相同時,不做任何處理。

        4 結(jié)束語

        TCL語言目前已應(yīng)用于UG軟件的Post Builder、Process Assistants(CAM過程輔助)等多個功能模塊。Post Builder中的Custom Command(用戶自定義命令)可以讓用戶插入自己編寫的TCL子程序,以滿足特殊需要的輸出格式,如需對UG軟件進行高級定制或二次開發(fā),則必須熟練掌握TCL語言。

        猜你喜歡
        指令程序語言
        聽我指令:大催眠術(shù)
        語言是刀
        文苑(2020年4期)2020-05-30 12:35:30
        試論我國未決羈押程序的立法完善
        ARINC661顯控指令快速驗證方法
        LED照明產(chǎn)品歐盟ErP指令要求解讀
        電子測試(2018年18期)2018-11-14 02:30:34
        讓語言描寫搖曳多姿
        “程序猿”的生活什么樣
        英國與歐盟正式啟動“離婚”程序程序
        累積動態(tài)分析下的同聲傳譯語言壓縮
        創(chuàng)衛(wèi)暗訪程序有待改進
        黄片视频大全在线免费播放| 无码国产精品第100页| 强d漂亮少妇高潮在线观看| 国产高清女主播在线观看| 免费观看a级毛片| 欧美午夜精品一区二区三区电影| 一本大道久久a久久综合| 在线亚洲精品免费视频| 色综合久久中文字幕综合网| 大陆极品少妇内射aaaaaa| 国产爆乳乱码女大生Av| 亚洲国产精品色一区二区| 亚洲国产精品一区二区毛片| 国产午夜福利片| 亚洲亚洲网站三级片在线| 东京热东京道日韩av| 国产亚洲欧美精品永久| 少妇无码av无码专区线| 亚洲av无码一区二区乱子仑| 亚洲精品一区二区三区麻豆| 成人片黄网站a毛片免费| 失禁大喷潮在线播放| 国产9 9在线 | 免费| 亚洲av色福利天堂久久入口| 国产a国产片国产| 国产精品多人P群无码| 国产青青草自拍视频在线播放| 亚洲中文字幕久久精品品| 久久不见久久见免费影院www| 国产乱人伦真实精品视频| 国产一区二区三区四区在线视频| 深夜福利啪啪片| 射精情感曰妓女色视频| 国产麻豆剧传媒精品国产av蜜桃| 日韩极品视频免费观看| 草草浮力地址线路①屁屁影院| 亚洲国产成人AⅤ片在线观看| aa日韩免费精品视频一| 男人边做边吃奶头视频| 国产精品无码精品久久久| 久久久人妻一区精品久久久|