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

        ?

        帶參數(shù)傳遞的子程序技術(shù)及其應(yīng)用

        2014-11-30 09:00:02王乃彥閆明璞上海電氣電站設(shè)備有限公司汽輪廠200240
        裝備機(jī)械 2014年2期
        關(guān)鍵詞:主程序子程序調(diào)用

        王乃彥 閆明璞 上海電氣電站設(shè)備有限公司汽輪廠 (200240)

        王乃彥(1980年~),男,工程師,專業(yè)方向?yàn)槠啓C(jī)制造。

        0 引 言

        在數(shù)控系統(tǒng)中,為方便程序編制,數(shù)控系統(tǒng)提供多種標(biāo)準(zhǔn)循環(huán),如西門子840D中的銑螺紋循環(huán)CYCLE90(),切槽循環(huán)CYCLE93()等,作為一組基本指令的集合,實(shí)現(xiàn)了一些典型結(jié)構(gòu)的加工。數(shù)控程序編制時(shí),編程人員并不需要知道固定循環(huán)內(nèi)部的結(jié)構(gòu)和指令,只需要按說(shuō)明填寫相應(yīng)的參數(shù)就可完成程序的編制。標(biāo)準(zhǔn)循環(huán)簡(jiǎn)化了程序、降低了編程的難度和出錯(cuò)率,增強(qiáng)了數(shù)控程序的可讀性。這些標(biāo)準(zhǔn)循環(huán)主要使用子程序技術(shù),參考標(biāo)準(zhǔn)循環(huán)的編程方法,將一些通用性較強(qiáng)的結(jié)構(gòu)使用子程序編程,同樣可以簡(jiǎn)化程序,降低程序編制的難度,提高工作效率,方便數(shù)控程序的管理。

        1 子程序技術(shù)

        數(shù)控程序編制過(guò)程中,如果零件不同位置具有相同或相似的結(jié)構(gòu)(見(jiàn)圖1),為了簡(jiǎn)化程序,可以把這些重復(fù)的程序段單獨(dú)列出,按一定的格式編寫成子程序。主程序在執(zhí)行過(guò)程中如果需要某一子程序,通過(guò)調(diào)用指令來(lái)調(diào)用該子程序,完成相關(guān)結(jié)構(gòu)的加工。子程序執(zhí)行完后返回到主程序,繼續(xù)執(zhí)行后面的程序段。使用子程序技術(shù),不但減少了程序長(zhǎng)度,增加了程序的可讀性,還降低了程序的出錯(cuò)率,方便程序的修改。

        圖1 有相同結(jié)構(gòu)的零件

        2 帶參數(shù)傳遞的子程序

        在加工中,經(jīng)常會(huì)遇到一些典型結(jié)構(gòu),幾何形狀比較復(fù)雜,尺寸要素較多,加工方法相同或相似,區(qū)別只是位置、尺寸不同。加工這類典型零件時(shí),數(shù)控程序使用的參數(shù)多、程序復(fù)雜。采用普通子程序編程,加工不同的零件時(shí),不能直接被調(diào)用,必須對(duì)其中涉及到的尺寸、加工參數(shù)進(jìn)行修改。這樣就增加了子程序調(diào)用的難度,而且容易出錯(cuò)。在子程序技術(shù)中,有一種帶參數(shù)傳遞的子程序技術(shù),編制的子程序類似于數(shù)控系統(tǒng)中標(biāo)準(zhǔn)循環(huán),可以把典型結(jié)構(gòu)的加工程序封裝在子程序中,將所有的幾何尺寸、加工參數(shù)等變量以參數(shù)的形式傳遞給該子程序。同時(shí)也可以把一組類似的加工程序封裝在一個(gè)子程序中,把加工方式作為子程序參數(shù),使用時(shí)根據(jù)需要選擇加工方式。這樣可以減少程序數(shù)量,方便程序管理。

        2.1 子程序定義

        格式:

        PROC PROGRAMNAME(VARIABLENTYP1 VARIABLE1,VARIABLENTYP2 VARIABLE2,…)

        PROC:PROC指令,子程序標(biāo)記關(guān)鍵字

        PROGRAMNAME:子程序名稱

        VARIABLENTYP1:參數(shù)1類型,

        VARIABLE1:參數(shù)1名稱,

        VARIABLENTYP2:參數(shù)2類型,

        VARIABLE2:參數(shù)2名稱,

        參數(shù)可以是普通的數(shù)據(jù)類型,也可以是數(shù)組。如果是數(shù)組,則必須在數(shù)組類型前加關(guān)鍵字VAR。

        注意:帶 PROC 的定義指令必須在一個(gè)獨(dú)立的NC程序段中編程??梢宰疃嘤?127 個(gè)參數(shù)用于參數(shù)傳送。

        子程序定義舉例:

        PROC KONTUR(REAL LENGTH, REAL WITH)

        N10 …

        N50 X= LENGTH

        N60 Y= WITH

        N100 M17

        子程序以M17或RET結(jié)束。

        2.2 子程序調(diào)用

        主程序中,在調(diào)用帶參數(shù)傳遞的子程序前,必需用EXTERN指令對(duì)子程序聲明,格式如下:

        EXTERN NAME(TYP1, TYP2, …)

        NAME:子程序名稱

        TYP1:參數(shù)1類型,

        TYP2:參數(shù)2類型,

        聲明子程序時(shí),參數(shù)類型和順序都必須與定義時(shí)一致,每個(gè)參數(shù)類型都必須填寫,不能省略。

        注意:此處只有參數(shù)類型,沒(méi)有參數(shù)名稱。

        舉例:

        N10 EXTERN KONTUR(REAL, REAL);聲明子程序

        N20 DEF REAL LENGTH,W

        N30 LENGTH=10.18

        N40 W=3.29

        N100 KONTUR(LENGTH, W) ;調(diào)用子程序

        N200 M30

        在調(diào)用子程序時(shí),參數(shù)類型和傳送的順序都必須與子程序定義時(shí)PROC語(yǔ)句中一致。但參數(shù)名稱不一定與子程序定義時(shí)一樣,這里只是把主程序中的相關(guān)數(shù)值(或地址)傳遞給子程序,與參數(shù)名稱無(wú)關(guān)。

        3 應(yīng)用

        在汽輪機(jī)蒸汽閥門中,有很多大螺距的鋸齒形螺紋(圖2),因螺距太大,無(wú)法使用普通的螺紋加工方式(車削或銑削)加工。為此專門開(kāi)發(fā)出加工大尺寸鋸齒形螺紋的新技術(shù)解決了大尺寸螺紋的加工,參數(shù)見(jiàn)附表。

        圖2 鋸齒形螺紋結(jié)構(gòu)

        附表

        加工鋸齒形螺紋,主要采用分層切削,利用數(shù)控程序控制螺紋截面輪廓,采用普通菱形車刀多次車削,最終加工出符合圖樣要求的螺紋(見(jiàn)圖3)。

        圖3 螺紋加工示意

        因螺紋截面輪廓復(fù)雜,其精度和表面粗糙度要求較高。為了提高工作效率和便于編制數(shù)控程序,把整個(gè)加工過(guò)程分解成四部分:粗加工、精加工、圓角加工和倒角加工。粗加工以去除大部分多余材料為主要目的,在機(jī)床和刀具滿足要求的情況下盡可能地加大切削量。但在整個(gè)切削過(guò)程中,每刀的切削狀況不盡相同(比如每層的初始進(jìn)刀和后續(xù)切削工作狀況差別很大),這就要在加工過(guò)程中對(duì)其計(jì)算,調(diào)整切削參數(shù),以使其切削量盡量均衡。精加工和圓角、倒角加工過(guò)程中,精度和表面粗糙度為關(guān)注要點(diǎn)。刀尖圓弧對(duì)精度和表面粗糙度的影響尤為重要。這就要根據(jù)刀尖所處的位置對(duì)刀尖圓弧的影響進(jìn)行補(bǔ)償。以刀尖圓弧對(duì)加工輪廓的影響為例(見(jiàn)圖4):P點(diǎn)為刀具對(duì)刀零點(diǎn),很顯然,刀具切削點(diǎn)與P點(diǎn)不重合,并且其相對(duì)位置關(guān)系隨著切削點(diǎn)的變化在不斷變化。此處圓弧在空間為一螺旋曲面,切削原理與車圓弧不同,因此不能用G41(或G42)刀尖半徑補(bǔ)償。必須在程序中對(duì)P點(diǎn)和刀具切削點(diǎn)相對(duì)位置進(jìn)行計(jì)算,根據(jù)刀具切削點(diǎn)位置計(jì)算出P點(diǎn)位置,以便程序控制刀具路徑。

        圖4 刀尖圓弧對(duì)加工輪廓的影響

        因此,在此數(shù)控程序中,有大量的尺寸參數(shù)和加工參數(shù)參與運(yùn)算,并且要運(yùn)用大量的循環(huán)、判斷語(yǔ)句,整個(gè)程序非常復(fù)雜。如果采用普通編程方法,只要螺紋尺寸有所改變,或者加工方式和加工參數(shù)有所改變,程序中大量數(shù)據(jù)都必須相應(yīng)改變。為確保程序正確,在程序編制完成后需試加工,驗(yàn)證程序正確后才能應(yīng)用于生產(chǎn)。

        產(chǎn)品中涉及此類螺紋規(guī)格繁多,螺距從5~20mm,螺紋直徑從210~1 000mm不等,既有外螺紋又有內(nèi)螺紋,加工方法無(wú)法統(tǒng)一,車削加工和鏜削加工都會(huì)用到。采用普通方法編程,程序?qū)⑦_(dá)幾十種之多。如對(duì)每種程序都進(jìn)行驗(yàn)證,成本將非常高。結(jié)果是不但工作量大,不便于加工參數(shù)的調(diào)試,而且極易出錯(cuò)。因此采用普通方法編制的程序難以維護(hù),沒(méi)有通用性。采用普通的子程序技術(shù),雖然能解決普通編程方法存在的一些問(wèn)題,但對(duì)于主程序和子程序之間存在大量的參數(shù)傳遞的情況,采用普通子程序技術(shù)也存在較大困難。

        采用帶參數(shù)的子程序技術(shù),把螺紋所有幾何尺寸和工藝參數(shù)提取出來(lái),作為螺紋子程序的參數(shù),增加相應(yīng)參數(shù)區(qū)分內(nèi)外螺紋、加工方法(直徑編程或半徑編程等)。通過(guò)這種編程方法可以把復(fù)雜的程序封裝在子程序里,在主程序調(diào)用該子程序時(shí)填寫相應(yīng)參數(shù),即可方便地編制出各種規(guī)格的螺紋加工程序。以下以螺紋的粗加工子程序加以說(shuō)明。

        3.1 螺紋粗加工子程序

        %_N_rough_SPF

        proc rough(real U_Dim,… ,int U_FS) SAVE DISPLOF;子程序定義

        def int U_CengShu;變量定義

        ……

        def real U_Feed

        IF (U_FS<>-2)and(U_FS<>-1)and(U_FS<>1)and(U_FS<>2);參數(shù)檢查

        MSG("U_FS 參數(shù)賦值錯(cuò)誤")

        GOTOF MARK_1

        ENDIF

        ……

        U_ThStart=U_ThStart-U_zFinallow;數(shù)據(jù)運(yùn)算

        ……

        U_CengShu=U_StartDNum

        Begin_0:;層切循環(huán)

        U_N=U_Width/U_zFeed

        ……

        MSG("正在切削第"<

        U_CengShu=U_CengShu+1

        Begin_1:;每層開(kāi)始切口循環(huán)

        U_Depth=U_Depth+U_pDepth

        ……

        REPEAT Begin_1 P=U_xNum

        IF U_Num<0 GOTOF MARKE_0

        Begin_2:;每層切削循環(huán),包含運(yùn)算、選擇執(zhí)行語(yǔ)句

        U_ThStart1=U_ThStart1-U_Feed

        ……

        REPEAT Begin_2 P=U_Num

        MARKE_0:

        ……

        MSG()

        MARK_1:

        M17

        3.2 子程序說(shuō)明

        rough(real U_Dim,…,int U_FS)

        U_Dim:螺紋底孔(外圓)直徑

        ……

        U_FS:加工方式 -2:直徑編程,內(nèi)螺紋;-1:半徑編程,內(nèi)螺紋;1:半徑編程,外螺紋;2:直徑編程,外螺紋

        在子程序后應(yīng)附該程序的使用說(shuō)明以及特殊要求(如參數(shù)賦值范圍等),以便其他人在不用了解子程序內(nèi)部詳細(xì)信息的情況下就能直接調(diào)用,便于數(shù)控程序的共享。

        3.3 主程序

        %_N_NS650x20_MPF

        Extern rough(real,real,real,real,real,real,real,real,real,int,int,real,real,real,real,int,int);子程序聲明,如沒(méi)有此聲明,子程序不能被正確調(diào)用

        G90 G18

        G54 G00 T1 D1

        X800 Z100

        M3 S15

        rough (650,20,0,-250,10.5,15.5,45.25,20,10,20,1,0.2,0,0.2,0.9,5,2) ;粗加工子程序調(diào)用

        G00 X800 Z100

        M05

        M30

        4 其他常用指令

        為了避免因調(diào)用子程序?qū)е履B(tài)G功能值的改變,導(dǎo)致后續(xù)程序產(chǎn)生不可預(yù)知的錯(cuò)誤,應(yīng)在PROC指令結(jié)束處添加SAVE指令。此指令的工作過(guò)程是在調(diào)用子程序前,將G功能的值暫時(shí)保存起來(lái)。調(diào)用子程序結(jié)束后,返回主程序(或調(diào)用此子程序的子程序)后,將G功能的值恢復(fù)到調(diào)用前的狀態(tài)。比如子程序中用G90或G91改變了絕對(duì)坐標(biāo)或相對(duì)坐標(biāo)狀態(tài)時(shí),不用SAVE指令,子程序結(jié)束返回主程序后將會(huì)出現(xiàn)錯(cuò)誤。

        在子程序經(jīng)過(guò)調(diào)試、驗(yàn)證無(wú)誤后,可在PROC指令結(jié)束處添加DISPLOF指令,使程序在運(yùn)行時(shí)不顯示子程序內(nèi)部的程序段。這可使加工程序在運(yùn)行時(shí)操作界面顯得非常簡(jiǎn)潔(見(jiàn)圖5)。

        加工過(guò)程中的重要信息可通過(guò)MSG指令在屏幕上方顯示出來(lái),適當(dāng)?shù)厥褂么酥噶羁墒共僮魅藛T及時(shí)、準(zhǔn)確地了解加工狀態(tài)和加工進(jìn)度,增強(qiáng)程序執(zhí)行的透明度。如上述例子中顯示加工到第幾層。

        圖5 程序運(yùn)行界面

        5 結(jié)論

        通過(guò)帶參數(shù)的子程序技術(shù),可以實(shí)現(xiàn)典型結(jié)構(gòu)加工的標(biāo)準(zhǔn)化、模塊化,方便程序的修改和優(yōu)化。編程人員開(kāi)發(fā)出子程序,編寫出此子程序的使用說(shuō)明,其他人就可以根據(jù)說(shuō)明直接使用此子程序,只需要填寫子程序需要的參數(shù),而不需了解子程序的工作原理及工作過(guò)程。從而避免了編程錯(cuò)誤,降低程序測(cè)試成本,降低了編程人員的工作強(qiáng)度,大大提高工作效率。

        猜你喜歡
        主程序子程序調(diào)用
        淺談數(shù)控銑削技術(shù)代碼程序的嵌套方式研究
        核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
        電控冰箱軟件模塊化設(shè)計(jì)
        日用電器(2019年12期)2019-02-26 01:53:06
        LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
        時(shí)光倒流 換回PotPlayer老圖標(biāo)
        基于系統(tǒng)調(diào)用的惡意軟件檢測(cè)技術(shù)研究
        淺談子程序在數(shù)控車編程中的應(yīng)用
        子程序在數(shù)控車加工槽中的應(yīng)用探索
        西門子840D系統(tǒng)JOG模式下PLC調(diào)用并執(zhí)行NC程序
        利用RFC技術(shù)實(shí)現(xiàn)SAP系統(tǒng)接口通信
        一区二区三区在线观看日本视频| 国产无人区码一码二码三mba| 精品少妇ay一区二区三区| 色系免费一区二区三区| 精品久久精品久久精品| 无码av专区丝袜专区| 无码毛片视频一区二区本码| 亚洲av日韩aⅴ无码电影| 少妇久久高潮不断免费视频| 亚洲天堂成人av影院| 特黄特色的大片观看免费视频| 亚洲综合色一区二区三区另类| 日本中文字幕一区二区在线观看 | 蜜桃码一区二区三区在线观看 | 精品国产一区二区三区香| 精品国产第一国产综合精品| 4444亚洲人成无码网在线观看| 无码高潮久久一级一级喷水| 精品人妻一区二区三区狼人 | 91最新免费观看在线| 色小姐在线视频中文字幕| 欧美xxxxx在线观看| 免费xxx在线观看| 国产精品国三级国产av| 亚洲丰满熟女乱一区二区三区| 日本肥老妇色xxxxx日本老妇| 欧美一片二片午夜福利在线快 | 免费现黄频在线观看国产| 亚洲中文字幕av一区二区三区人| 亚洲av手机在线网站| 西西大胆午夜人体视频| 国产精品爆乳在线播放 | 久久久久亚洲AV片无码乐播| 中文字幕亚洲五月综合婷久狠狠 | 中文字幕精品一二三区| 日韩精品中文字幕第二页| 亚洲成a人片在线观看无码3d| 免费人成又黄又爽的视频在线 | 国产女主播在线免费观看| 色大全全免费网站久久| 7777奇米四色成人眼影|