《數(shù)控加工工藝與編程》數(shù)控機(jī)床編程基礎(chǔ)_第1頁(yè)
《數(shù)控加工工藝與編程》數(shù)控機(jī)床編程基礎(chǔ)_第2頁(yè)
《數(shù)控加工工藝與編程》數(shù)控機(jī)床編程基礎(chǔ)_第3頁(yè)
《數(shù)控加工工藝與編程》數(shù)控機(jī)床編程基礎(chǔ)_第4頁(yè)
《數(shù)控加工工藝與編程》數(shù)控機(jī)床編程基礎(chǔ)_第5頁(yè)
已閱讀5頁(yè),還剩54頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第三章 數(shù)控機(jī)床編程根底 第一節(jié) 程序編制的根本步驟和內(nèi)容 第二節(jié) 手工編程與自動(dòng)編程 第三節(jié) 程序的結(jié)構(gòu)與格式 第四節(jié) 數(shù)控機(jī)床的坐標(biāo)系 第五節(jié) 常用編程指令 第六節(jié) 子程序的應(yīng)用 第七節(jié) 宏程序的應(yīng)用 第一節(jié) 程序編制的根本步驟和內(nèi)容 一般說(shuō)來(lái),數(shù)控機(jī)床程序編制的步驟為:分析零件圖樣工藝處理數(shù)值計(jì)算編寫零件加工程序單制作控制介質(zhì)程序檢驗(yàn)和試切。1工藝處理在對(duì)零件的材料、形狀、毛坯類型、加工精度、技術(shù)要求等進(jìn)行詳細(xì)分析的根底上,合理確定零件的加工方法、定位夾緊、加工順序、使用刀具和切削用量等工藝內(nèi)容2數(shù)值計(jì)算在確定好零件的工藝內(nèi)容后,要根據(jù)零件的尺寸要求、加工路線及設(shè)定的編程坐標(biāo)系,計(jì)算出刀

2、具中心的運(yùn)動(dòng)軌跡。下一頁(yè)第一節(jié) 程序編制的根本步驟和內(nèi)容3編寫程序單根據(jù)所計(jì)算出的刀具運(yùn)動(dòng)軌跡坐標(biāo)值和已確定的切削用量以及輔助動(dòng)作,按數(shù)控系統(tǒng)規(guī)定使用的指令代碼及程序段格式,編寫零件加工程序單。4制作控制介質(zhì)程序單編寫好之后,需要制作成控制介質(zhì),以便將加工信息輸入給數(shù)控系統(tǒng)。5程序檢驗(yàn)和試切編制好的程序必須經(jīng)過(guò)檢驗(yàn)和試切才能正式使用。 返回上一頁(yè)第二節(jié) 手工編程與自動(dòng)編程3.2.1 手工編程數(shù)控加工程序編制的各個(gè)階段均由人工完成的編程方法,稱為手工編程。 3.2.2 自動(dòng)編程由計(jì)算機(jī)完成程序編制中的大局部或全部工作的編程方法,稱為自動(dòng)編程。自動(dòng)編程的方法主要有兩種:1用編程語(yǔ)言編程它是利用計(jì)算

3、機(jī)和相應(yīng)的前置處理程序、后置處理程序?qū)α慵闯绦蜻M(jìn)行處理,以得到加工程序的一種編程方法。 下一頁(yè)第二節(jié) 手工編程與自動(dòng)編程2用CAM計(jì)算機(jī)輔助制造軟件編程將加工零件以圖形形式輸入計(jì)算機(jī),由計(jì)算機(jī)自動(dòng)進(jìn)行數(shù)值計(jì)算、前置處理,在屏幕上形成加工軌跡并及時(shí)修改,再通過(guò)后置處理形成加工程序輸入數(shù)控機(jī)床進(jìn)行加工 。自動(dòng)編程可以大大減輕編程人員的勞動(dòng)強(qiáng)度,將編程效率提高幾十倍甚至上百倍,同時(shí)解決了手工編程無(wú)法解決的復(fù)雜零件的編程難題。 返回上一頁(yè)第三節(jié) 程序的結(jié)構(gòu)與格式 3.3.1 程序的結(jié)構(gòu) 一個(gè)完整的數(shù)控加工程序,由程序號(hào)、程序內(nèi)容、程序結(jié)束三局部組成。1程序號(hào)程序號(hào)是程序的開始局部,一般由規(guī)定的英文字

4、母O、P、%等開頭,后面緊跟假設(shè)干位數(shù)字組成。 2程序內(nèi)容程序內(nèi)容由假設(shè)干個(gè)程序段組成,表示機(jī)床要完成的加工內(nèi)容,它是整個(gè)程序的核心。3程序結(jié)束程序結(jié)束可通過(guò)程序結(jié)束指令M02或M30實(shí)現(xiàn),它位于整個(gè)主程序的最后。下一頁(yè)第三節(jié) 程序的結(jié)構(gòu)與格式3.3.2 程序段的格式1程序段的格式程序段是組成程序的根本單元,它由假設(shè)干個(gè)程序字或稱功能字組成,用來(lái)表示機(jī)床執(zhí)行的某一個(gè)動(dòng)作或一組動(dòng)作。 2程序字說(shuō)明1順序號(hào)字 順序號(hào)字也稱程序段號(hào),用來(lái)識(shí)別不同的程序段。 2準(zhǔn)備功能字 準(zhǔn)備功能字的地址符是G,所以又稱為G功能、G指令或G代碼。它是數(shù)控機(jī)床準(zhǔn)備好某種運(yùn)動(dòng)方式的指令。3坐標(biāo)尺寸字 坐標(biāo)尺寸字是用來(lái)指令

5、機(jī)床在各坐標(biāo)軸上的移動(dòng)方向和位移量,由尺寸地址符和帶正、負(fù)號(hào)的數(shù)字組成。 下一頁(yè)上一頁(yè)第三節(jié) 程序的結(jié)構(gòu)與格式4進(jìn)給功能字 進(jìn)給功能字又稱F功能或F指令,由地址符F和假設(shè)干位數(shù)字組成。 5主軸轉(zhuǎn)速功能字 主軸轉(zhuǎn)速功能字又稱S功能或S指令,由地址符S和假設(shè)干位數(shù)字組成。 6刀具功能字 刀具功能字又稱T功能或T指令,由地址符T和假設(shè)干位數(shù)字組成。7輔助功能字 輔助功能字也稱M功能、M指令或M代碼。輔助功能字由地址符為M和其后二位數(shù)字組成,有M00M99共100種。 8程序段結(jié)束字 寫在每一程序段最后,表示程序段結(jié)束。ISO標(biāo)準(zhǔn)用“LF或“NL表示,實(shí)際書寫中可以省略。 返回上一頁(yè)第四節(jié) 數(shù)控機(jī)床的

6、坐標(biāo)系3.4.1 坐標(biāo)系確實(shí)定原那么1刀具相對(duì)于靜止工件而運(yùn)動(dòng)的原那么這一原那么是為了編程人員能夠在不知道是刀具還是工件移動(dòng)的情況下,能夠根據(jù)零件樣圖確定機(jī)床的加工過(guò)程。2標(biāo)準(zhǔn)坐標(biāo)系的規(guī)定國(guó)標(biāo)中規(guī)定數(shù)控機(jī)床的坐標(biāo)系采用標(biāo)準(zhǔn)笛卡兒直角坐標(biāo)系。 3運(yùn)動(dòng)方向的規(guī)定數(shù)控機(jī)床的某一部件運(yùn)動(dòng)的正方向,是增大工件和刀具之間距離的方向。下一頁(yè)第四節(jié) 數(shù)控機(jī)床的坐標(biāo)系3.4.2 數(shù)控機(jī)床坐標(biāo)軸確實(shí)定確定機(jī)床坐標(biāo)軸時(shí),一般先確定Z軸,再依次確定X軸和Y軸。1Z軸規(guī)定平行于機(jī)床主軸軸線的坐標(biāo)軸為Z軸,并取刀具遠(yuǎn)離工件的方向?yàn)槠湔较颉?X軸X軸位于與工件裝夾平面相平行的水平面內(nèi),且垂直于Z軸。3Y軸Y軸及其正方向的

7、判定,可根據(jù)已確定的Z、X軸及其正方向,用右手定那么來(lái)確定。4附加坐標(biāo)假設(shè)機(jī)床除有X、Y、Z的主要直線運(yùn)動(dòng)坐標(biāo)外,還有平行于它們的坐標(biāo)運(yùn)動(dòng) 下一頁(yè)上一頁(yè)第四節(jié) 數(shù)控機(jī)床的坐標(biāo)系3.4.3 機(jī)床坐標(biāo)系與工件坐標(biāo)系數(shù)控機(jī)床的坐標(biāo)系包括機(jī)床坐標(biāo)系和工件坐標(biāo)系。1機(jī)床坐標(biāo)系圖3-8數(shù)控銑床的機(jī)床坐標(biāo)系機(jī)床坐標(biāo)系是機(jī)床上固有的坐標(biāo)系,是機(jī)床制造和調(diào)整的基準(zhǔn),也是工件坐標(biāo)系設(shè)定的基準(zhǔn)。 2工件坐標(biāo)系工件坐標(biāo)系是編程時(shí)使用的坐標(biāo)系,因此又稱編程坐標(biāo)系。工件坐標(biāo)系坐標(biāo)軸的意義必須與機(jī)床坐標(biāo)軸相同。 下一頁(yè)上一頁(yè)第四節(jié) 數(shù)控機(jī)床的坐標(biāo)系3.4.4 對(duì)刀點(diǎn)和換刀點(diǎn)確實(shí)定1對(duì)刀工件進(jìn)行加工前,必須通過(guò)對(duì)刀來(lái)建立機(jī)床

8、坐標(biāo)系和工件坐標(biāo)系的位置關(guān)系。所謂對(duì)刀,是指將刀具移向?qū)Φ饵c(diǎn),并使刀具的刀位點(diǎn)和對(duì)刀點(diǎn)重合的操作。2對(duì)刀點(diǎn)確實(shí)定對(duì)刀點(diǎn)是指在數(shù)控加工時(shí)刀具相對(duì)于工件運(yùn)動(dòng)的起點(diǎn),也是程序的起點(diǎn)。編制程序時(shí),應(yīng)首先確定對(duì)刀點(diǎn)的位置。3換刀點(diǎn)確實(shí)定加工中心、數(shù)控車床等多刀加工的機(jī)床,常需要在加工過(guò)程中進(jìn)行自動(dòng)換刀,故編程時(shí)還要設(shè)置換刀點(diǎn)。 返回上一頁(yè)第五節(jié) 常用編程指令 3.5.1 有關(guān)坐標(biāo)系的指令1絕對(duì)值編程和增量值編程G90、G91數(shù)控加工的運(yùn)動(dòng)控制指令可以采用兩種坐標(biāo)方式進(jìn)行編程,即絕對(duì)值編程和增量值編程。 2參數(shù)說(shuō)明: X、Y、Z在G90方式下為運(yùn)動(dòng)終點(diǎn)的坐標(biāo)值;在G91方式下為運(yùn)動(dòng)終點(diǎn)減去運(yùn)動(dòng)起點(diǎn)的坐標(biāo)值

9、,它是一個(gè)矢量值。下一頁(yè)第五節(jié) 常用編程指令例3-1 如圖3-10所示,A點(diǎn)到B點(diǎn)的快速移動(dòng)可以用絕對(duì)值編程和增量值編程分別表示為:G90 G00 X60.0 Y40.0 ;絕對(duì)值編程或 G91 G00 X50.0 Y30.0 ;增量值編程圖3-10 絕對(duì)值編程和增量值編程3注意點(diǎn):有些數(shù)控系統(tǒng)不用G指令規(guī)定,而用X、Y、Z表示絕對(duì)值編程,U、V、W表示增量值編程。 下一頁(yè)上一頁(yè)第五節(jié) 常用編程指令2設(shè)定工件坐標(biāo)系指令G50G50指令有些數(shù)控系統(tǒng)采用G92指令是將工件坐標(biāo)系設(shè)定在相對(duì)于刀具起始點(diǎn)的某一空間位置上,并把這個(gè)設(shè)定值存放在數(shù)控系統(tǒng)的存儲(chǔ)器中,作為后續(xù)各程序段絕對(duì)尺寸的基點(diǎn)。選擇機(jī)床坐

10、標(biāo)系指令G53 在建立機(jī)床坐標(biāo)系后,如果某程序段需要使用機(jī)床坐標(biāo)系作為坐標(biāo)值的基準(zhǔn),可用G53指令選定。下一頁(yè)上一頁(yè)第五節(jié) 常用編程指令4選擇工件坐標(biāo)系指令G54、G55、G56、G57、G58、G59在編程過(guò)程中,有時(shí)零件的加工部位很多,為了防止尺寸換算,可以預(yù)先設(shè)定多達(dá)6個(gè)輔助工件坐標(biāo)系G54G59,加工時(shí)直接調(diào)用輔助工件坐標(biāo)系,將刀具移至該輔助工件坐標(biāo)系中進(jìn)行加工。5坐標(biāo)平面指令G17、G18、G19在三坐標(biāo)機(jī)床上進(jìn)行圓弧插補(bǔ)和刀具補(bǔ)償時(shí)必須指定所在平面。 下一頁(yè)上一頁(yè)第五節(jié) 常用編程指令3.5.2 快速定位和插補(bǔ)指令1快速點(diǎn)定位指令G00G00指令是在工件坐標(biāo)系中以快速移動(dòng)速度移動(dòng)刀具

11、到達(dá)指定的位置。例3-5 如圖3-14所示,刀具從A點(diǎn)快速移動(dòng)到B點(diǎn),那么對(duì)應(yīng)的程序?yàn)椋航^對(duì)值編程:G90 G00 X70 Y40;增量值編程:G91 G00 X60 Y30;其實(shí)際運(yùn)動(dòng)軌跡為ACB。圖3-14快速點(diǎn)定位因此,在以G00方式進(jìn)刀和退刀時(shí),要注意確保刀具不與工件、機(jī)床和夾具發(fā)生碰撞。 下一頁(yè)上一頁(yè)第五節(jié) 常用編程指令2直線插補(bǔ)指令G01G01指令是刀具沿起點(diǎn)到終點(diǎn)的直線移動(dòng)。例3-6 如圖3-15所示,刀具運(yùn)動(dòng)軌跡為ABCA,那么對(duì)應(yīng)的程序?yàn)椋航^對(duì)值編程:G90 G01 X40 Y40 F100;直線AB段 G90 G01 X70 Y40 F100;直線BC段 G90 G01 X

12、10 Y10 F100;直線CA段增量值編程:G91 G01 X30 Y30 F100;直線AB段 G91 G01 X30 Y0 F100;直線BC段 G91 G01 X-60 Y-30 F100;直線CA段下一頁(yè)上一頁(yè)第五節(jié) 常用編程指令3圓弧插補(bǔ)指令G02、G03G02、G03可以自動(dòng)加工圓弧曲線。 注意點(diǎn): G00、G01、G02、G03為同組模態(tài)指令,在編程中可相互取代。 當(dāng)機(jī)床上只有一個(gè)坐標(biāo)平面時(shí),平面指令可以省略 圓弧順時(shí)針、逆時(shí)針?lè)较虻呐袆e方法是:從垂直于圓弧平面內(nèi)的坐標(biāo)軸的正方向向負(fù)方向看去,順時(shí)針?lè)较驗(yàn)镚02,逆時(shí)針?lè)较驗(yàn)镚03,如圖3-16所示。 采用參數(shù)R編程時(shí),從起點(diǎn)到

13、終點(diǎn)存在兩條圓弧線段,它們的編程參數(shù)完全一樣,如圖3-17所示。 下一頁(yè)上一頁(yè)第五節(jié) 常用編程指令 采用圓心相對(duì)圓弧起點(diǎn)坐標(biāo)編程時(shí),相對(duì)值的大小和方向與圓弧方向矢量有關(guān)。 在同一程序段中,如I、J、K和R同時(shí)出現(xiàn),那么R有效,而I、J、K被忽略。3.5.3 暫停延時(shí)指令在進(jìn)行锪孔、車槽、車階梯軸等加工時(shí),常要求刀具在短時(shí)間內(nèi)實(shí)現(xiàn)無(wú)進(jìn)給光整加工,此時(shí)可以用G04指令實(shí)現(xiàn)刀具暫時(shí)停止進(jìn)給。下一頁(yè)上一頁(yè)第五節(jié) 常用編程指令3.5.4 等螺距螺紋加工指令1格式:G32 XU ZW F2參數(shù)說(shuō)明: X、Z螺紋切削終點(diǎn)的坐標(biāo)值, U、W表示螺紋切削終點(diǎn)相對(duì)于起點(diǎn)的坐標(biāo)增量; F螺紋導(dǎo)程單位:mm。 3.5

14、.5 返回參考點(diǎn)指令這里的參考點(diǎn)是指機(jī)床參考點(diǎn)。機(jī)床參考點(diǎn)是可以任意設(shè)定的,設(shè)定的位置主要根據(jù)機(jī)床加工或換刀的需要。設(shè)定的方法有兩種:一是根據(jù)刀桿上某一點(diǎn)或刀具刀尖等坐標(biāo)位置存入相關(guān)參數(shù)中,來(lái)設(shè)定機(jī)床參考點(diǎn);二是通過(guò)調(diào)整機(jī)床上各擋鐵的相應(yīng)位置來(lái)設(shè)定。下一頁(yè)上一頁(yè)第五節(jié) 常用編程指令1返回參考點(diǎn)校驗(yàn)G27G27指令是用于檢查機(jī)床能否準(zhǔn)確返回參考點(diǎn),準(zhǔn)確返回時(shí)各軸參考點(diǎn)的指示燈亮,否那么指示燈不亮。這樣可以檢測(cè)程序中指令的參考點(diǎn)坐標(biāo)值是否正確。2自動(dòng)返回參考點(diǎn)G28G28指令能使受控的坐標(biāo)軸從任何位置以快速定位方式經(jīng)中間點(diǎn)自動(dòng)返回參考點(diǎn),到達(dá)參考點(diǎn)時(shí),相應(yīng)坐標(biāo)軸的指示燈亮。3從參考點(diǎn)自動(dòng)返回G29

15、1格式:G29 X Y Z 2參數(shù)說(shuō)明:X、Y、Z返回點(diǎn)坐標(biāo)值。下一頁(yè)上一頁(yè)第五節(jié) 常用編程指令3注意點(diǎn): G29指令一般跟在G28指令后使用,用于刀具自動(dòng)換刀后返回所需加工的位置。 執(zhí)行G29指令時(shí),機(jī)床從參考點(diǎn)快速移動(dòng)到G28指令設(shè)定的中間點(diǎn),再?gòu)闹虚g點(diǎn)快速移動(dòng)到G29指令的指定點(diǎn)。例3-12 如圖3-22所示,程序軌跡為:G28 X100.0 Y20.0 T0300;ABRM06 ;換刀G29 X150.0 Y10.0 ;RBC下一頁(yè)上一頁(yè)第五節(jié) 常用編程指令3.5.6 單位轉(zhuǎn)換的相關(guān)指令1英制輸入和米制公制輸入G20、G21坐標(biāo)尺寸可以通過(guò)G20或G21指令選擇英制或米制。 1格式:G

16、20 / G212注意: G20或G21指令必須在程序的開始設(shè)定坐標(biāo)系之前在一個(gè)單獨(dú)的程序段中指定。 在公/英制轉(zhuǎn)換的G代碼指定后,輸入數(shù)據(jù)的尺寸距離單位發(fā)生變換,但角度單位不變。 在程序執(zhí)行時(shí),絕對(duì)不能切換G20和G21。 機(jī)床斷電后公/英制轉(zhuǎn)換的G代碼被保存,通電后延續(xù)其斷電前設(shè)定功能。 下一頁(yè)上一頁(yè)第五節(jié) 常用編程指令2恒線速度的設(shè)定與取消G96、G97G96指令表示控制主軸轉(zhuǎn)速,使切削點(diǎn)的線速度始終保持在指定值,單位為m/min。G97指令用于取消主軸恒線速度,G97指令后跟的主軸轉(zhuǎn)速的單位為r/min恒轉(zhuǎn)速。 3最高主軸速度限制G50 G96指令指定主軸轉(zhuǎn)速時(shí),主軸的轉(zhuǎn)速會(huì)隨工件直徑

17、的變化而變化,直徑越小,轉(zhuǎn)速越高。 4每分鐘進(jìn)給和每轉(zhuǎn)進(jìn)給G98、G99在G99狀態(tài)下,F(xiàn)后面的數(shù)值表示主軸每轉(zhuǎn)的切削進(jìn)給量或切螺紋時(shí)的螺距,單位為mm/r,G98表示的是主軸每分鐘的切削進(jìn)給量,單位為mm/min。下一頁(yè)上一頁(yè)第五節(jié) 常用編程指令3.5.7 刀具補(bǔ)償指令1刀具半徑補(bǔ)償指令G41、G42在數(shù)控機(jī)床上加工工件時(shí),由于刀具總帶有一定的圓弧半徑,因此刀具中心的運(yùn)動(dòng)軌跡不等于加工零件的實(shí)際輪廓。 2參數(shù)說(shuō)明: G41/G42刀具半徑左補(bǔ)償/右補(bǔ)償指令。 G40刀具半徑補(bǔ)償取消指令。 D存放刀具半徑補(bǔ)償量的地址。3刀具半徑補(bǔ)償?shù)倪^(guò)程可以分成刀補(bǔ)建立、刀補(bǔ)進(jìn)行和取消刀補(bǔ)三個(gè)階段,其中,建立

18、刀補(bǔ)和取消刀補(bǔ)均應(yīng)在非切削狀態(tài)下進(jìn)行。 下一頁(yè)上一頁(yè)第五節(jié) 常用編程指令 刀補(bǔ)建立 刀補(bǔ)執(zhí)行 刀補(bǔ)取消 例3-17 如圖3-26所示,OA段為建立刀具半徑補(bǔ)償,實(shí)際上的運(yùn)動(dòng)軌跡為OB,其程序?yàn)椋篏41 G00 X50. Y30. D01;等程序執(zhí)行完最后一步加工后,CO段為撤消刀具半徑補(bǔ)償,但實(shí)際運(yùn)動(dòng)軌跡為DO,其程序?yàn)椋篏40 G00 X0 Y0;4刀具半徑補(bǔ)償?shù)淖饔孟乱豁?yè)上一頁(yè)第五節(jié) 常用編程指令 免除刀具中心軌跡的人工計(jì)算。 利用刀具半徑補(bǔ)償功能,對(duì)精加工余量為、刀具半徑為R的零件可以利用一個(gè)加工程序?qū)嵭蟹謱鱼娤骱痛?、精加工?可彌補(bǔ)因刀具磨損和制造誤差而引起的加工誤差。 可利用同一程序

19、加工形狀和尺寸相同的內(nèi)、外型面,即將原正的補(bǔ)償值改為負(fù)的補(bǔ)償值。5注意點(diǎn): 刀具半徑補(bǔ)償是在平面內(nèi)進(jìn)行的,且補(bǔ)償狀態(tài)中不得改變補(bǔ)償平面。 刀補(bǔ)的建立應(yīng)放在刀具切入工件之前,同樣,刀補(bǔ)的撤消應(yīng)放在刀具切出工件之后,以防止與工件和夾具發(fā)生碰撞。 下一頁(yè)上一頁(yè)第五節(jié) 常用編程指令 建立/撤消刀補(bǔ)時(shí),坐標(biāo)移動(dòng)指令只能是G00 / G01,不能用G02 / G03,且程序段中應(yīng)至少指定偏置平面內(nèi)任一坐標(biāo)軸的移動(dòng)。 程序中假設(shè)指定D00,就取消了刀補(bǔ)此時(shí)可不用執(zhí)行G40。 要注意刀具半徑補(bǔ)償引起的過(guò)切現(xiàn)象。 假設(shè)D代碼中存放的偏置量為負(fù)值,那么G41和G42指令將相互取代。 有的數(shù)控系統(tǒng)只能實(shí)現(xiàn)本程序段內(nèi)

20、的刀具半徑補(bǔ)償,對(duì)程序段中的過(guò)渡無(wú)法處理。下一頁(yè)上一頁(yè)第五節(jié) 常用編程指令2刀具長(zhǎng)度偏置補(bǔ)償指令G43、G44刀具長(zhǎng)度補(bǔ)償用于刀具軸向的進(jìn)給補(bǔ)償,它可以使刀具在軸向的實(shí)際進(jìn)刀量比程序給定值增加或減少一個(gè)補(bǔ)償值。 注意點(diǎn): 執(zhí)行G43或G44后,不管使用絕對(duì)值編程還是增量值編程,程序中指定的鉆頭沿Z軸移動(dòng)的終點(diǎn)坐標(biāo)值。 G43、G44均為模態(tài)指令,要用G49或H00來(lái)取消。 假設(shè)H代碼中存放的偏置量為負(fù)值,那么G43和G44指令將相互取代。 返回上一頁(yè)第六節(jié) 子程序的應(yīng)用1格式1子程序的結(jié)構(gòu):OM992子程序的調(diào)用:OM98 PM02/M302參數(shù)說(shuō)明:O后跟四位數(shù)字,表示主程序和子程序名;M9

21、9子程序結(jié)束指令,M99不必單獨(dú)用一個(gè)程序段;M98子程序調(diào)用指令;P后跟七位數(shù)字,前三位數(shù)字表示調(diào)用次數(shù)前置零可以省略,省略時(shí)表示只調(diào)用一次;后四位數(shù)字表示子程序號(hào)。 下一頁(yè)第六節(jié) 子程序的應(yīng)用3注意:1一個(gè)主程序可以調(diào)用多個(gè)子程序,被調(diào)用的子程序也可以調(diào)用其它子程序,這種方式稱為子程序的嵌套。 2子程序調(diào)用指令M98可以與運(yùn)動(dòng)指令出現(xiàn)在同一個(gè)程序段中。 3如果主程序在存儲(chǔ)器方式下工作,當(dāng)子程序結(jié)束時(shí),M99后面用P指定一個(gè)順序號(hào) 。返回上一頁(yè)第七節(jié) 宏程序的應(yīng)用3.7.1 宏程序的概念在FANUC系統(tǒng)中,包含變量、轉(zhuǎn)向、比較判別等功能的指令稱為宏指令,用戶宏程序是指包含有宏指令的子程序,簡(jiǎn)

22、稱宏程序。 例3-19 如圖3-33所示,假設(shè)零件尺寸a=10,b=20,c=5,d=13時(shí),那么圓弧、圓錐面的精加工程序?yàn)椋篘10 G00 X0 Z0;N20 G03 X10. Z5. R5. F100;N30 G01 X20. Z13.;N40 G00 X100. Z100.;但是當(dāng)圖中a、b、c、d值發(fā)生變化時(shí),那么又需要編寫一個(gè)程序。因此,程序格式可以寫為:下一頁(yè)第七節(jié) 宏程序的應(yīng)用N10 G00 X0 Z0;N20 G03 Xa Zc Rc F100;N30 G01 Xb Zd;N40 G00 X100. Z100.;由此可見(jiàn),宏程序的主要特點(diǎn)是:1可以在宏程序主體中使用變量。2可以

23、進(jìn)行變量之間的演算。3可以用宏程序命令對(duì)變量進(jìn)行賦值。下一頁(yè)上一頁(yè)第七節(jié) 宏程序的應(yīng)用3.7.2 變量1變量的表示變量由變量符號(hào)#和后面的變量號(hào)組成,即:#ii=1、2、3。 2變量的類型根據(jù)變量號(hào)的不同,變量可分為空變量、局部變量、公共變量和系統(tǒng)變量四種類型,如表3-5所示。局部變量與公共變量的區(qū)別是:1局部變量 所謂局部變量就是在宏程序中局部使用的變量。 2公共變量 與局部變量相對(duì),公共變量是在主程序以及調(diào)用的子程序中通用的變量。 下一頁(yè)上一頁(yè)第七節(jié) 宏程序的應(yīng)用3變量的引用在程序內(nèi)引用變量時(shí),地址符后指定變量號(hào)。 注意:1程序號(hào)O、順序號(hào)N、任選程序段跳轉(zhuǎn)號(hào)/不能使用變量。2當(dāng)在程序中定

24、義變量值時(shí),小數(shù)點(diǎn)可以省略。 3被引用的變量值根據(jù)地址的最小設(shè)定單位自動(dòng)四舍五入。4未定義的變量當(dāng)變量值未定義時(shí),這樣的變量稱為空變量。變量#0總是空變量,它不能寫,只能讀。空變量并不是變量值為0的變量。注意:1引用未定義變量時(shí),變量及地址字都被忽略。下一頁(yè)上一頁(yè)第七節(jié) 宏程序的應(yīng)用2在運(yùn)算式中,除了用賦值以外,其余情況下與數(shù)值0相同。3.7.3 宏程序語(yǔ)句通常把下述的程序段稱為宏程序語(yǔ)句:1含代數(shù)運(yùn)算或邏輯運(yùn)算的程序段。2含控制語(yǔ)句例如:GOTO,DO,END的程序段。3含宏程序調(diào)用指令例如:用G65,G66,G67等G代碼或M代碼調(diào)用宏程序的程序段。下一頁(yè)上一頁(yè)第七節(jié) 宏程序的應(yīng)用3.7.

25、4 算術(shù)和邏輯運(yùn)算1運(yùn)算的優(yōu)先次序運(yùn)算的優(yōu)先次序?yàn)楹瘮?shù);乘、除類運(yùn)算(*,/,AND,MOD);加、減類運(yùn)算(+,OR,XOR)。2括號(hào)的嵌套當(dāng)要變更運(yùn)算的優(yōu)先順序時(shí)使用括號(hào)。包括函數(shù)的括號(hào)在內(nèi),括號(hào)最多可用到5重,超過(guò)5重時(shí)那么出現(xiàn)P/S報(bào)警。3.7.5 轉(zhuǎn)移和循環(huán)1無(wú)條件轉(zhuǎn)移GOTO語(yǔ)句無(wú)條件轉(zhuǎn)移到順序號(hào)為n的程序段。下一頁(yè)上一頁(yè)第七節(jié) 宏程序的應(yīng)用1格式:GOTO n;2參數(shù)說(shuō)明:n:順序號(hào),可取l99999;順序號(hào)也可用表達(dá)式表示。2條件轉(zhuǎn)移IF語(yǔ)句IF后面是指定的條件表達(dá)式。1格式: IF GOTO n;如果指定的條件表達(dá)式成立,那么轉(zhuǎn)移到順序號(hào)為n的程序段;否那么,執(zhí)行下一個(gè)程序段

26、。 IF THEN ;如果條件表達(dá)式成立,執(zhí)行預(yù)先定義的宏程序語(yǔ)句,且只執(zhí)行一個(gè)宏程序語(yǔ)句。下一頁(yè)上一頁(yè)第七節(jié) 宏程序的應(yīng)用2說(shuō)明: 條件表達(dá)式必須包括運(yùn)算符。運(yùn)算符插在兩個(gè)變量之間或常數(shù)與變量之間,并且用方括號(hào)括起來(lái)。表達(dá)式可以替代變量。 運(yùn)算符由2個(gè)英文字母構(gòu)成,用來(lái)判斷大、小或相等,見(jiàn)表3-7。3循環(huán)WHILE語(yǔ)句在WHILE語(yǔ)句后指定一個(gè)條件表達(dá)式,當(dāng)指定條件滿足時(shí),執(zhí)行從DO到END之間的程序;否那么轉(zhuǎn)到END后的程序段。1格式:WHILEDO m;ml,2,3END m;下一頁(yè)上一頁(yè)第七節(jié) 宏程序的應(yīng)用2說(shuō)明: 這種指令格式適用于IF語(yǔ)句。DO和END后的m數(shù)值是指定程序執(zhí)行范圍的

27、識(shí)別號(hào),可使用l,2,3;假設(shè)用l,2,3以外的數(shù)值會(huì)產(chǎn)生P/S報(bào)警。 嵌套 在DOEND之間的循環(huán)識(shí)別號(hào)13可根據(jù)需要屢次使用,但是不能出現(xiàn)交叉循環(huán)DO范圍內(nèi)的重疊,否那么會(huì)報(bào)警。3注意: 如果省略WHILE語(yǔ)句,只指令了DO m,那么從DO到END之間形成無(wú)限循環(huán)。 在GOTO語(yǔ)句中,有標(biāo)號(hào)轉(zhuǎn)移的語(yǔ)句時(shí),要進(jìn)行順序號(hào)檢索,反向檢索的時(shí)間要比正向檢索長(zhǎng)。 下一頁(yè)上一頁(yè)第七節(jié) 宏程序的應(yīng)用 在使用EQ或NE的條件表達(dá)式中,和“0是不同的;在其他形式的條件表達(dá)式中,被當(dāng)作“0。3.7.6 宏程序的調(diào)用1非模態(tài)調(diào)用G65指令用指令G65可調(diào)用地址P指定的宏程序,并將賦值的數(shù)據(jù)傳遞到宏程序主體中。1

28、格式:G65 P L ;2參數(shù)說(shuō)明: G65宏程序調(diào)用代碼; P后面跟調(diào)用的宏程序的程序號(hào); L后面跟循環(huán)次數(shù)19999,省略時(shí)為1;下一頁(yè)上一頁(yè)第七節(jié) 宏程序的應(yīng)用 自變量由地址符及數(shù)值有小數(shù)點(diǎn)構(gòu)成,由它給宏程序主體中所對(duì)應(yīng)的變量賦予實(shí)際數(shù)值。3自變量指定有以下兩種形式: 自變量指定 除G,L,N,O,P以外的地址符都可在自變量中使用。 自變量指定 A、B、C只能用一次,I、J、K最多可指定10組。 2模態(tài)調(diào)用G66指令當(dāng)指令了模態(tài)調(diào)用G66后,每執(zhí)行一段軸移動(dòng)指令的程序段,就調(diào)用一次宏程序,直到用G67取消模態(tài)調(diào)用為止。下一頁(yè)上一頁(yè)第七節(jié) 宏程序的應(yīng)用1格式:G66 P L自變量指定; G

29、67;取消用戶宏程序2參數(shù)含義同前面。3注意: 在G66程序段中,不能調(diào)用多個(gè)宏程序。 G66必須在自變量前指定。 在只有輔助功能但無(wú)移動(dòng)指令的程序段中不能調(diào)用宏程序。 局部變量自變量只能在G66程序段中指定,每次執(zhí)行模態(tài)調(diào)用時(shí),不再設(shè)定局部變量。 在模態(tài)調(diào)用期間,指定另一個(gè)G66代碼可以嵌套模態(tài)調(diào)用,調(diào)用可以嵌套4級(jí),包括模態(tài)調(diào)用G66和非模態(tài)調(diào)用G65,但不包括子程序調(diào)用M98。下一頁(yè)上一頁(yè)第七節(jié) 宏程序的應(yīng)用3.7.7 宏程序及其應(yīng)用實(shí)例例3-22 如圖3-34所示,用宏程序編制在數(shù)控車床上鉆削孔加工循環(huán)的程序。設(shè)孔深的絕對(duì)坐標(biāo)z為50mm,每次切深k為20mm。解:調(diào)用格式:G65 P9100 Zz Kk Ff;Ww 說(shuō)明:z#26:孔深絕對(duì)指令時(shí);w#23:孔深增量指令時(shí);k#6:每次進(jìn)給量;f#9:切削時(shí)進(jìn)給速度。下一頁(yè)上一頁(yè)第七節(jié)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論