刀具補(bǔ)償設(shè)計(jì)論文_第1頁
刀具補(bǔ)償設(shè)計(jì)論文_第2頁
刀具補(bǔ)償設(shè)計(jì)論文_第3頁
刀具補(bǔ)償設(shè)計(jì)論文_第4頁
刀具補(bǔ)償設(shè)計(jì)論文_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

攀枝花學(xué)院本科課程設(shè)計(jì) 刀具半徑補(bǔ)償?shù)脑?1 目錄 1 刀具半徑補(bǔ)償?shù)脑?.1 1.1 刀具半徑補(bǔ)償?shù)淖鴺?biāo)計(jì)算 .1 1.2 直線兩端處刀具中心的位置 .1 1.3 轉(zhuǎn)接矢量計(jì)算 .2 1.3.1 縮短型 .2 1.3.2 伸長型 .2 1.3.3 插入型 .3 1.4 縮短型轉(zhuǎn)接交點(diǎn)的坐標(biāo)計(jì)算 .9 1.4.1 直線與直線連接 9 1.4.2 直線與圓弧連接 10 1.4.3 圓弧與圓弧連接 11 2 刀具半徑補(bǔ)償程序流程圖 13 2.1 流程圖 .13 3 刀具半徑補(bǔ)償程序設(shè)計(jì)示列 14 3.1 伸長型 .14 3.1.1 G41 和 G02 刀具半徑補(bǔ)償準(zhǔn)備工作 14 3.1.2 G42 和 G02 刀具半徑補(bǔ)償準(zhǔn)備工作 .17 3.1.3 G41 和 G03 刀具半徑補(bǔ)償準(zhǔn)備工作 .19 3.1.4 G42 和 G03 刀具半徑補(bǔ)償準(zhǔn)備工作 .21 3.2 縮短型 .22 3.2.1 G41 和 G02 是加工不出來的 23 3.2.2 G41 和 G03 刀具半徑補(bǔ)償準(zhǔn)備工作 .23 3.2.3 G42 和 G02 刀具半徑補(bǔ)償準(zhǔn)備工作 .24 3.2.4 G42 和 G03 是加工不出來的 26 參考文獻(xiàn) .27 致謝 .28 攀枝花學(xué)院本科課程設(shè)計(jì) 刀具半徑補(bǔ)償?shù)脑?2 1.刀具半徑補(bǔ)償?shù)?原理 1.1 刀具半徑補(bǔ)償?shù)淖鴺?biāo)計(jì)算 在機(jī)床數(shù)控技術(shù)中已經(jīng)講述了刀具半徑補(bǔ)償?shù)木幊讨噶睿毒甙霃窖a(bǔ)償建立和取消時(shí)刀具中心點(diǎn)的運(yùn)動軌跡。本節(jié)將要介紹刀具半徑十限的坐標(biāo)計(jì)算,在輪廓加工過程中,刀具半徑補(bǔ)償分三個(gè)過程:刀具半徑補(bǔ)償?shù)慕ⅲ坏毒甙霃窖a(bǔ)償?shù)倪M(jìn)行;刀具半徑補(bǔ)償?shù)娜∠T谶@三個(gè)過程中,刀具中心的軌跡都是根據(jù)被加工工件的輪廓計(jì)算的。通常,工件輪廓是由直線和圓弧組成的,加工直線時(shí),刀具中心線是工件輪廓的平行線且距離等于刀具半徑值,加工圓弧時(shí),半徑之差是刀具半徑值,本節(jié)將要介紹的半徑補(bǔ)償計(jì)算是計(jì)算刀 具半徑補(bǔ)償建立和取消時(shí)刀具中心點(diǎn)與工件輪廓起點(diǎn)和終點(diǎn)的位置關(guān)系;工件輪廓拐角時(shí)刀具中心拐點(diǎn)與工件輪廓拐點(diǎn)的位置關(guān)系。由于輪廓線的拐點(diǎn)可是直線與直線、直線與圓弧、圓弧與圓弧的交點(diǎn);拐角的角度大小又不同;又由于刀具半徑補(bǔ)償可是左側(cè) (c41)或右側(cè) (跳 )偏置,因此,計(jì)算公式很多,下面僅介紹部分計(jì)算公式: 1.2 直線兩端處刀具中心的位置 若用半徑為 r 的立銑刀加工圖 3 20 中的直線 45,刀具中心的軌跡在刀具左例偏置時(shí) (G41 方式 ),是 ab 直線;右側(cè)偏置 (G42 方式 )時(shí)是 cd 線 ,只要計(jì)算 出端點(diǎn) a,b 或 c,d 的坐標(biāo)值, 就可使刀具準(zhǔn)確移動。由于直線 Aa Ac r,過 A 點(diǎn)垂直于 AB 線, Bb Bc r,過 B 點(diǎn)垂直于 AB 線, A 點(diǎn)和 B 點(diǎn)的坐標(biāo)值BBAA YXYX 、 、已由零件程序中給出,因此: 攀枝花學(xué)院本科課程設(shè)計(jì) 刀具半徑補(bǔ)償?shù)脑?3 圖 1.2.1 直線兩端刀具位置 若把式 (3 18)中的 r 值的符號改為負(fù)號,則和式 (3 17)完全一樣,因此在實(shí)際應(yīng)用中,只用式 (3 17)計(jì)算直線端點(diǎn)處的刀具中心位置,在 G41 方式下 r 取正值 在 G42 方式下 r 取負(fù)值。 式 (3 15)、 (3 16)、 (3 17),適合于各種不同方向的直線,當(dāng) ABAB YYXX 、為負(fù)值時(shí), sincos 和 為負(fù)值,當(dāng) AB 線平行于 X 軸時(shí), 0sin,1co s ,當(dāng)AB 線平行 Y 軸時(shí) 1sin,0co s 。 1.3 轉(zhuǎn)接矢量計(jì)算 工件輪廓有拐角時(shí),拐點(diǎn)可是直線與直線交點(diǎn),如圖 3 22、 3 23、 3 24所示。直線拐角時(shí)拐角的大小等于兩直線矢量的夾角;直線與圓弧連接時(shí)拐角的大小是直線矢量與拐點(diǎn)處圓弧切線矢量的夾角;圓弧與圓弧連接時(shí)是兩圓弧在交點(diǎn)處切線矢量的夾角,由于兩矢 量夾角不同以及 G41, G42 偏置方向不同,使刀具中心軌跡的轉(zhuǎn)接方式有所不同,共有三種轉(zhuǎn)接方式: 1.3.1 縮短型 在 G41 方式下兩矢量夾角。在 1800在 之間;在 G42方式下兩向量夾角在 360180 之間,是縮短型,如圖 3 22、 3 24a, b 及圖 3 23c, d 所示,刀具中心在 c 點(diǎn)轉(zhuǎn)折,沒有到達(dá)由式 (3 17)算出的 B 點(diǎn),比只加工 OA 直線時(shí)少走 CB 的距離,也比單程加工 AF 直線少走 DC 的距離。 1.3.2 伸長型 在 G41 方式 下,兩矢量的夾角 360270在 之間;在G42 方式下,兩向量的夾角 900在 之間,是伸長型,如圖 3 22d、 3 23a 及攀枝花學(xué)院本科課程設(shè)計(jì) 刀具半徑補(bǔ)償?shù)脑?4 3 24d 所示,刀具中心越過由式 (3 17)算出的 B 點(diǎn),在 C 點(diǎn)轉(zhuǎn)折,也比單獨(dú)加工AF 直線多走 CD 的距離。 1.3.3 插入型 在 G4l 方式下,兩矢量的夾角 270180在 之間,在G42 方式下,兩向量夾角 18090在 之間,如圖 3 22c、 3 23b 及 3 24c 所示,刀具中心在 C 點(diǎn)和 C點(diǎn)兩次轉(zhuǎn)折, CC是插入直線必須保證 BC=CD r(刀具半徑 )。 圖 3-22 G41 直線與直線轉(zhuǎn)接情況 攀枝花學(xué)院本科課程設(shè)計(jì) 刀具半徑補(bǔ)償?shù)脑?5 圖 3 23 G42 直線與直線轉(zhuǎn)接情況 攀枝花學(xué)院本科課程設(shè)計(jì) 刀具半徑補(bǔ)償?shù)脑?6 圖 3 24 G41 圓弧接圓弧時(shí)的轉(zhuǎn)接情況 對于伸長型和插入型轉(zhuǎn)接交點(diǎn) c 和 c的計(jì)算適合于直線與直線、直線與圓弧、圓弧與圓弧的連接方式,但對于縮短型,由于連接線的不同算法是不同的。 伸長型轉(zhuǎn)接交點(diǎn) c 的坐標(biāo)計(jì)算 攀枝花學(xué)院本科課程設(shè)計(jì) 刀具半徑補(bǔ)償?shù)脑?7 圖 3-23( a) 上兩式中 21 和 是以 X 坐標(biāo)軸正向?yàn)槠鹗歼?,逆時(shí)針方向?qū)喞€矢量的夾角,在圖 3 22d 和圖 3 24d 中, 2 270。 在 G41 方式時(shí)上式中 r 的符號為負(fù)。 即在 G41 時(shí)方式時(shí)的公式: )c o s (1 s ins in)( 12 21 rAC X )c o s (1 c o sc o s)( 12 21 rAC Y YX ACAC )(,)( 是 c 點(diǎn)對 A 點(diǎn)的坐標(biāo)值,由于 A 點(diǎn)在工件坐標(biāo)系中的坐標(biāo)值已由 程序中給出,因此可求出 c 點(diǎn)對工件坐標(biāo)系的坐標(biāo)值。 插入型轉(zhuǎn)接交點(diǎn) C, C的坐標(biāo)計(jì)算 根據(jù)刀具偏置方向 (G41, G42)不同,計(jì)算方式也不相同,圖 3 22c 是 G41方式。 攀枝花學(xué)院本科課程設(shè)計(jì) 刀具半徑補(bǔ)償?shù)脑?8 由于: 則有 圖 3-22( c) 圖 3 23b 是 G42 方式 攀枝花學(xué)院本科課程設(shè)計(jì) 刀具半徑補(bǔ)償?shù)脑?9 同理: 圖 3 23(b) 縮短型轉(zhuǎn)接交點(diǎn)的坐標(biāo)計(jì)算 直線與直線連接如圖 3 22a、 b,圖 3 24c、 d 所示, (AC)x 和 (AC)y 所用公式與伸長型相同,縮短型與伸長型 r 的符號也相同,即: G41 方式 r 為負(fù), G42 方式 r 為正 。 圖 3 22a 攀枝花學(xué)院本科課程設(shè)計(jì) 刀具半徑補(bǔ)償?shù)脑?10 s in)( CBA BBABCBABAC X 1121 c o s2t a ns in rr 12 21c o s1 s ins in r 1121 s i n2t a nc o s ABABBEBBAC Y 12 21c o s1 c o sc o s r 在 G42 方式下 s in)( CBA BBABCBABAC X 1121 c o s2t a ns in rr 12 21co s1 sinsin r 1121 s i n2t a nc o s ABABBEBBAC Y 12 21c o s1 c o sc o s r 1.4 縮短型轉(zhuǎn)接交點(diǎn)的坐標(biāo)計(jì)算 1.4.1直線與直線連接 直線與直線連接如圖 3 22, 23 所示, ()XAC 和 ()YAC所用公式與仲長型相同 v 縮短型與伸長型 r 的符 號也相同,即:以 G41 方式 r 為負(fù), G42 方式為正。攀枝花學(xué)院本科課程設(shè)計(jì) 刀具半徑補(bǔ)償?shù)脑?11 圖 1-1 直線與圓弧轉(zhuǎn)接交點(diǎn) 1.4.2直線與圓 弧連接 圖 1-1 是以 1 方式直線與圓弧聯(lián)接形式,工件輪廓線 是 ABC,B 點(diǎn)是直線與圓弧的支點(diǎn), O 點(diǎn)是圓弧中心,,( , ) , ( , ) , ( ) , ( , )A A B B C C OOA X Y B X Y C X Y O X Y為已知點(diǎn), ( , )AAA X Y點(diǎn)可用式( 3 17)求得。 也是已知點(diǎn),由圖可知 攀枝花學(xué)院本科課程設(shè)計(jì) 刀具半徑補(bǔ)償?shù)脑?12 在 AOB 中,已知 AO , OB; OB =(r刀具半徑 )。根據(jù)余弦定理可求出 AO 的模 由上式可求得直線與圓弧的兩個(gè)交點(diǎn),離 8 點(diǎn)近的為 B 點(diǎn), AB 在 x 軸和 y 軸上的投影為 B 點(diǎn)的坐標(biāo) 根據(jù)上述方 法,還可求出 N2 方式直線與圓弧的轉(zhuǎn)按交點(diǎn),及以 1, N2 方式圓弧與直線的轉(zhuǎn)接交點(diǎn)。 1.4.3圓弧與圓弧連接 圖 3 26 是以 G41 方式順圓弧與順圓弧聯(lián)接時(shí)刀 具中心轉(zhuǎn)接點(diǎn)計(jì)算圖。1O圓弧的半徑為1R,2O圓 弧半徑為2R,刀具半徑為 r,則 1 1 2 2 1 0 1 , 0 1 2 0 2 0 2, ; ( ) ( , )O B R r O B R r O X Y X Y 、 O為已 知點(diǎn), 則三角形的三個(gè)邊為己知邊,根據(jù)余弦 定理可求出 21O O B 攀枝花學(xué)院本科課程設(shè)計(jì) 刀具半徑補(bǔ)償?shù)脑?13 攀枝花學(xué)院本科課程設(shè)計(jì)報(bào)告 刀具半徑補(bǔ)償程序流程圖 14 2.刀具半徑補(bǔ)償程序流程圖 2.1 流程圖 刀具半徑補(bǔ)償程序設(shè)計(jì)流程圖如圖 5 所示。首先打開數(shù)控加工源程序,讀取被加工零件的輪廓信息以及刀具的走刀信息、刀具半徑,采用矢量算法結(jié)合刀具偏置方向計(jì)算經(jīng)刀具半徑補(bǔ)償后各段線段的刀具中心軌跡方程。然后確定相交兩線段尖角過渡處的內(nèi)、外偏形式,根據(jù)內(nèi)偏求交點(diǎn)和外偏采用輔助圓弧過渡的處理方法計(jì)算出整個(gè)刀具中心運(yùn)動軌跡。在利用 C語言開發(fā)的 WTUAPT系統(tǒng)軟件中,采用這種計(jì)算方法成功地解決了刀具半徑補(bǔ)償問題,并經(jīng)實(shí)際應(yīng)用證明這種處理方法是簡單有效的。 攀枝花學(xué)院本科課程設(shè)計(jì)報(bào)告 刀具半徑補(bǔ)償程序設(shè)計(jì)示列 15 3.刀具半徑補(bǔ)償程序設(shè)計(jì)示列 3.1.伸長型 在 G41 方式下,兩矢量的夾角 360270在 之間;在 G41 方式下,兩向量的夾角 900在 之間,是伸長型。如下圖所示: 3.1.1 G41 和 G02 刀具半徑補(bǔ)償準(zhǔn)備工作 設(shè)刀具半徑 r=20mm 的情況下帶入公式: 22s i n ( ) ( ) ( )B A B A B AY Y Y Y X X 22c o s ( ) ( ) ( )B A B A B AX X X X Y Y 22s i n ( ) ( ) ( )O A O A O AY Y X X Y Y 22()c o s( ) ( )OA O A O AXXX X Y Y 在 AOB 中,已知 AO , OB; OB (R+r刀具半徑 )。根據(jù)余弦定理可求出 2 2 2( ) s i nR r a o 的模 攀枝花學(xué)院本科課程設(shè)計(jì)報(bào)告 刀具半徑補(bǔ)償程序設(shè)計(jì)示列 16 由上式可求得直線與圓弧的兩個(gè)交點(diǎn),離 8 點(diǎn)近的為 B 點(diǎn), AB 在 x 軸和 y 軸上的投影為 B 點(diǎn)的坐標(biāo) 刀具半徑補(bǔ)償清單 : /*650597 Lurunmin exp1.c LINE*/ /*650597 Lurunmin exp1.c ARC */ #include /* 文件包含命令 */ Main() /* 主函數(shù) */ float x1,x2,x3,x4,y1,y2,y3,y4 , 1 , 2 , 3 , 1 , 2 , 3 x x x y y y; float , , ,R, a0 ,ab; int r=20; a0=sqrt( 22( 4 1 ) ( 4 1 )x x y y ); Scanf(“%d%d%d%d”,&x1,&x2,&x3,&x4); Scanf(“%d%d%d%d”, &y1,&y2,&y3,&y4); /*輸入 A,B,C點(diǎn)和圓心坐標(biāo) */ Scanf(“%d”,&R) 攀枝花學(xué)院本科課程設(shè)計(jì)報(bào)告 刀具半徑補(bǔ)償程序設(shè)計(jì)示列 17 =arcsin( 22( ) ( ( ) ( ) )B A B A B AY Y s q r t Y Y X X ); =arccos( 22( ) ( ( ) ( ) )B A B A B AX X s q r t X X Y Y ); = - ; ab=a0cos + 2 2 2( ) 0 s i nR r a ; /*AB的模長 */ x1=x1-rsin ,y2=y1+rcos ; x2=x1-rsin +abcos ,y2=y1+rcos +ab*sina ; /*B的坐標(biāo) */ Printf(“ d d d%d%d%dn”, x1,y1,x1,y1,x2,y2); int gdriver=DETECT,gmode; /* 定義驅(qū)動程序,設(shè)置圖形模式 */ Initgraph(&gdriver,&gmode,”c:tc”); /* 初始化圖形系統(tǒng),驅(qū)動程序所在路徑 */ Cleardevice(); /* 清空屏幕 */ Setbkcolor(15); /* 設(shè)置背景顏色(白色) */ Line(x1,y1,x2,y2); /* 畫編程軌跡直線 AB*/ arc(x4,y4, , 31arctan31yyxx, R);/* 畫編程軌跡圓弧 BC */ Line(x1,y1,x2,y2); /* 畫刀具中心軌跡直線 AB */ arc (x4,y4,, () , 3 1 a rc ta n3 1 yyxx, R+20); /* 畫刀具中心軌跡直線 BC */ Getch(); /* 關(guān)閉程序 */ Closegraph(); / *關(guān)閉圖形 */ 仿真結(jié)果 基于 Visual C 6.0 和 Microsoft Excel 軟件,對前面所提出算法進(jìn)行實(shí)現(xiàn)和 仿真。刀具半徑補(bǔ)償進(jìn)行中(如圖 3-1) 坐標(biāo) A(0,0),B(300,200), C 點(diǎn)( 694.517, 77.4)和 R=231.33. 圖 3-1 刀具半徑補(bǔ)償進(jìn)行中 G41 和 G02 方式下 伸長型轉(zhuǎn)接 攀枝花學(xué)院本科課程設(shè)計(jì)報(bào)告 刀具半徑補(bǔ)償程序設(shè)計(jì)示列 18 仿真結(jié)果 A (-11.09,16.64),B (287.15,215.47),C (714.24,80.7)。 3.1.2 G42和 G02 刀具半徑補(bǔ)償準(zhǔn)備工作 設(shè)刀具半徑 r=20mm 的情況下帶入公式: 22s i n ( ) ( ) ( )B A B A B AY Y Y Y X X 22c o s ( ) ( ) ( )B A B A B AX X X X Y Y 22s i n ( ) ( ) ( )O A O A O AY Y X X Y Y 22()c o s( ) ( )OA O A O AXXX X Y Y 在 AOB 中,已知 AO , OB; OB =(R+r刀具半徑 )。根據(jù)余弦定理可求出 2 2 2( ) s i nR r a o 的模 攀枝花學(xué)院本科課程設(shè)計(jì)報(bào)告 刀具半徑補(bǔ)償程序設(shè)計(jì)示列 19 由上式可求得直線與圓弧的兩個(gè)交點(diǎn),離 8 點(diǎn)近的為 B 點(diǎn), AB 在 x 軸和 y 軸上的投影為 B 點(diǎn)的坐標(biāo) 刀具半徑補(bǔ)償清單 : /*650597 Lurunmin exp1.c LINE*/ /*650597 Lurunmin exp1.c ARC*/ #include /* 文件包含命令 */ Main() /* 主函數(shù) */ float x1,x2,x3,x4,y1,y2,y3,y4 , 1 , 2 , 3 , 1 , 2 , 3 x x x y y y; float , , ,R, a0 ,ab; int r=20; a0=sqrt( 22( 4 1 ) ( 4 1 )x x y y ); Scanf(“%d%d%d%d”,&x1,&x2,&x3,&x4); Scanf(“%d%d%d%d”, &y1,&y2,&y3,&y4); /*輸入 A,B,C點(diǎn)和圓心坐標(biāo) */ Scanf(“%d”,&R) =arcsin( 22( ) ( ( ) ( ) )B A B A B AY Y s q r t Y Y X X ); =arccos( 22( ) ( ( ) ( ) )B A B A B AX X s q r t X X Y Y ); = - ; ab=a0cos - 2 2 2( ) 0 s i nR r a ; /*AB的模長 */ x1=x1+rsin ,y2=y1-rcos ; x2=x1+rsin +abcos ,y2=y1-rcos +ab*sina ; /*B的坐標(biāo) */ Printf(“ d d d%d%d%dn”, x1,y1,x1,y1,x2,y2); int gdriver=DETECT,gmode; /* 定義驅(qū)動程序,設(shè)置圖形模式 */ 攀枝花學(xué)院本科課程設(shè)計(jì)報(bào)告 刀具半徑補(bǔ)償程序設(shè)計(jì)示列 20 Initgraph(&gdriver,&gmode,”c:tc”); /* 初始化圖形系統(tǒng),驅(qū)動程序所在路徑 */ Cleardevice(); /* 清空屏幕 */ Setbkcolor(15); /* 設(shè)置背景顏色(白 色) */ Line(x1,y1,x2,y2); /* 畫編程軌跡直線 AB*/ arc(x4,y4, , 31arctan31yyxx, R);/* 畫編程軌跡圓弧 BC */ Line(x1,y1,x2,y2); /* 畫刀具中心軌跡直線 AB */ arc (x4,y4,, () , 3 1 a rc ta n3 1 yyxx, R+20); /* 畫刀具中心軌跡直線 BC Getch(); /* 關(guān)閉程序 */ Closegraph(); / *關(guān)閉圖形 */ 仿真結(jié)果 基于 Visual C 6.0 和 Microsoft Excel 軟件,對前面所提出算法進(jìn)行實(shí)現(xiàn)和仿真。刀具半徑補(bǔ)償進(jìn)行中在 A(0, 0), B(300, 200), C(694.517)和 R=231.33代入 圖 3-2 刀具半徑補(bǔ)償進(jìn)行中 G42 和 G02 方式下 伸長型轉(zhuǎn)接 結(jié)果為 A (11.09, -16.64), b ( 312.93, 84.58), c ( 674.79, 74.1) . 3.1.3 G41和 G03 刀具半徑補(bǔ)償準(zhǔn)備工作 刀具半徑補(bǔ)償清單: /*650597 Lurunmin exp1.c LINE*/ /*650597 Lurunmin exp1.c ARC */ #include /* 文件包含命令 */ Main() /* 主函數(shù) */ float x1,x2,x3,x4,y1,y2,y3,y4 , 1 , 2 , 3 , 1 , 2 , 3 x x x y y y; float , , ,R, a0 ,ab; 攀枝花學(xué)院本科課程設(shè)計(jì)報(bào)告 刀具半徑補(bǔ)償程序設(shè)計(jì)示列 21 int r=20; a0=sqrt( 22( 4 1 ) ( 4 1 )x x y y ); Scanf(“%d%d%d%d”,&x1,&x2,&x3,&x4); Scanf(“%d%d%d%d”, &y1,&y2,&y3,&y4); /*輸入 A,B,C 點(diǎn)和圓心坐標(biāo) */ Scanf(“%d”,&R) =arcsin( 22( ) ( ( ) ( ) )B A B A B AY Y s q r t Y Y X X ); =arccos( 22( ) ( ( ) ( ) )B A B A B AX X s q r t X X Y Y ); = - ; ab=a0cos + 2 2 2( ) 0 s i nR r a ; /*AB的模長 */ x1=x1-rsin ,y2=y1+rcos ; x2=x1-rsin +abcos ,y2=y1+rcos +ab*sina ; /*B的坐標(biāo) */ Printf(“ d d d%d%d%dn”, x1,y1,x1,y1,x2,y2); int gdriver=DETECT,gmode; /* 定義驅(qū)動程序,設(shè)置圖形模式 */ Initgraph(&gdriver,&gmode,”c:tc”); /* 初始化圖形系統(tǒng),驅(qū)動程序所在路徑 */ Cleardevice(); /* 清空屏幕 */ Setbkcolor(15); /* 設(shè)置背景顏色(白色) */ Line(x1,y1,x2,y2); /* 畫編程軌跡直線 AB*/ arc(x4,y4, , 31arctan31yyxx, R);/* 畫編程軌跡圓弧 BC */ Line(x1,y1,x2,y2); /* 畫刀具中心軌跡直線 AB */ arc (x4,y4,, () , 3 1 a rc ta n3 1 yyxx, R-20); /* 畫刀具中心軌跡直線 BC*/ Getch(); /* 關(guān)閉程序 */ Closegraph(); / *關(guān)閉圖形 */ 仿真結(jié)果 基于 Visual C 6.0 和 Microsoft Excel 軟件,對前面所提出算法進(jìn)行實(shí)現(xiàn)和仿真。刀具半徑補(bǔ)償進(jìn)行中。圖 3-3 刀具半徑補(bǔ)償進(jìn)行中 G41 和 G03 方式下 伸長型轉(zhuǎn)接。 代入 A(0,0),B(300,200),C(338.57,611.32), R=231.33。 攀枝花學(xué)院本科課程設(shè)計(jì)報(bào)告 刀具半徑補(bǔ)償程序設(shè)計(jì)示列 22 圖 3-3 刀具半徑補(bǔ)償進(jìn)行中 G41 和 G03 方式下 伸長型轉(zhuǎn)接 得 A (-11.09,16.64),B (290.74,217.86),C (327.93,594.38) 3.1.4 G42和 G03 刀具半徑補(bǔ)償準(zhǔn)備工作 刀具半徑補(bǔ)償清單: /*650597 Lurunmin exp1.c LINE*/ /*650597 Lurunmin exp1.c ARC */ #include /* 文件包含命令 */ Main() /* 主函數(shù) */ float x1,x2,x3,x4,y1,y2,y3,y4 , 1 , 2 , 3 , 1 , 2 , 3 x x x y y y; float , , ,R, a0 ,ab; int r=20; a0=sqrt( 22( 4 1 ) ( 4 1 )x x y y ); Scanf(“%d%d%d%d”,&x1,&x2,&x3,&x4); Scanf(“%d%d%d%d”, &y1,&y2,&y3,&y4); /*輸入 A,B,C點(diǎn)和圓心坐標(biāo) */ Scanf(“%d”,&R) =arcsin( 22( ) ( ( ) ( ) )B A B A B AY Y s q r t Y Y X X ); =arccos( 22( ) ( ( ) ( ) )B A B A B AX X s q r t X X Y Y ); = - ; 攀枝花學(xué)院本科課程設(shè)計(jì)報(bào)告 刀具半徑補(bǔ)償程序設(shè)計(jì)示列 23 ab=a0cos + 2 2 2( ) 0 s i nR r a ; /*AB的模長 */ x1=x1+rsin ,y2=y1-rcos ; x2=x1+rsin +abcos ,y2=y1-rcos +ab*sina ; /*B的坐標(biāo) */ Printf(“ d d d%d%d%dn”, x1,y1,x1,y1,x2,y2); int gdriver=DETECT,gmode; /* 定義驅(qū)動程序,設(shè)置圖形模式 */ Initgraph(&gdriver,&gmode,”c:tc”); /* 初始化圖形系統(tǒng),驅(qū)動程序所在路徑 */ Cleardevice(); /* 清空屏幕 */ Setbkcolor(15); /* 設(shè)置背景顏色(白色) */ Line(x1,y1,x2,y2); /* 畫編程軌跡直線 AB*/ arc(x4,y4, , 31arctan31yyxx, R);/* 畫編程軌跡圓弧 BC */ Line(x1,y1,x2,y2); /* 畫刀具中心軌跡 直線 AB */ arc (x4,y4,, () , 3 1 a rc ta n3 1 yyxx, R+20); /* 畫刀具中心軌跡直線 BC Getch(); /* 關(guān)閉程序 */ Closegraph(); / *關(guān)閉圖形 */ 仿真結(jié)果 基于 Visual C 6.0 和 Microsoft Excel 軟件,對前面所提出算法進(jìn)行實(shí)現(xiàn)和仿真。刀具半徑補(bǔ)償進(jìn)行中 代入 A( 0, 0) ,B( 300, 200) ,C( 338.57, 611.32)三點(diǎn)和 R=231.33。 圖 3-4 刀具半徑補(bǔ)償進(jìn)行中 G42 和 G03 方式下 伸長型轉(zhuǎn)接 得出 A (11.09,-16.64)B (309.34,182.19),C (349.2,628.26)。 3.2 縮短型 攀枝花學(xué)院本科課程設(shè)計(jì)報(bào)告 刀具半徑補(bǔ)償程序設(shè)計(jì)示列 24 3.2.1 G41 和 G02 是加工不出來的 3.2.2 G41 和 G03 刀具半徑補(bǔ)償準(zhǔn)備工作 這個(gè)里面要用到圓弧接圓弧的情況,直線的就參考前面編程就可以了。 刀具半徑補(bǔ)償清單: /*650597 Lurunmin exp1.c LINE*/ /*650597 Lurunmin exp1.c ARC*/ #include /* 文件包含命令 */ Main() /* 主函數(shù) */ float x1,x2,x3,x4,y1,y2,y3 ,y4, 1 , 2 , 3 , 1 , 2 , 3 x x x y y y; float , , ,1R=20,2R, oo; int r=20; oo=sqrt( 22( 4 3 ) ( 4 3 )x x y y ); Scanf(“%d%d%d%d%d%d%d%dn”, &x1,&y1,&x2,&y2, &x3,&y3,&x4,&y4); /*輸入頭 2個(gè)點(diǎn)和 2個(gè)點(diǎn)的圓心坐標(biāo) */ Scanf(“%d”, &2R); /*輸入后一個(gè)圓的半徑 */ =arccos( 2 2 21 2 1( ( ) ( ) ) ( 2 * * ( ) )o o R r R r o o R r ); oo=sqrt( 2( 4 3)XX + 2( 4 3)YY ); /*求 2 個(gè)圓心的距離 */ 13 ( ) s i nBY X R r ; = + ; =arccos( + ); 13 ( ) c o sBX X R r ; 13 ( ) s i nBY X R r ; /*B的坐標(biāo) */ Printf(“ d d n”,,BBXY); x1=x1-rsin ,y2=y1+rcos ; x2=x1-rsin +abcos ,y2=y1+rcos +ab*sina ; int gdriver=DETECT,gmode; /* 定義驅(qū)動程序,設(shè)置圖形模式 */ Initgraph(&gdriver,&gmode,”c:tc”); /* 初始化圖形系統(tǒng),驅(qū)動程序所在攀枝花學(xué)院本科課程設(shè)計(jì)報(bào)告 刀具半徑補(bǔ)償程序設(shè)計(jì)示列 25 路徑 */ Cleardevice(); /* 清空屏幕 */ Setbkcolor(15); /* 設(shè)置背景顏色(白色) */ Line(x1,y1,x2,y2); /*畫直線 AB*/ Arc (x4,y4, , 31arctan31yyxx, r); /*畫編程圓弧軌跡 BC*/ Line( 1x , 1y , 2x , 2y ); /* 畫頭刀具段軌跡直線 AB*/ Arc(x2,y2, ,1a r c ta n1BBYyXx,r); /*換前段刀具中心圓弧軌跡 BB*/ Arc(x4,y4, 1a r c ta n1BBYyXx , 1a rc ta n1BByyxx,2R-20); /* 畫后段刀具中心圓弧軌跡 BC*/ Getch(); /* 關(guān)閉程序 */ Closegraph(); / *關(guān)閉圖形 */ 仿真結(jié)果 基于 Visual C 6.0 和 Microsoft Excel 軟件,對前面所提出算法進(jìn)行實(shí)現(xiàn)和仿真。刀具半徑補(bǔ)償進(jìn)行中 ,代入 A(0, 0), B(243.34, 136.8), C(441.69,-68.92)圓心( 342.47, 33.94), R=142.85。 刀具中心軌跡編程軌跡 圖 3-2-1 刀具半徑補(bǔ)償進(jìn)行中 G41 和 G03 方式 下縮 短型轉(zhuǎn) 接 仿真出A (-22.95,40.83)B (221.57,176.13)B (274.53,104.43)C (410.4,-36.55)。 3.2.3 G42 和 G02 刀具半徑補(bǔ)償準(zhǔn)備工作 攀枝花學(xué)院本科課程設(shè)計(jì)報(bào)告 刀具半徑補(bǔ)償程序設(shè)計(jì)示列 26 刀具半徑補(bǔ)償清單: /*650597 Lurunmin exp1.c LINE*/ /*650597 Lurunmin exp1.c ARC */ #include /* 文件包含命令 */ Main() /* 主函數(shù) */ float x1,x2,x3,x4,y1,y2,y3 ,y4, 1 , 2 , 3 , 1 , 2 , 3 x x x y y y; float , , ,R,1R,2R, oo; int r=20,1R= =r; oo=sqrt( 22( 4 3 ) ( 4 3 )x x y y ); Scanf(“%d%d%d%d%d%d%d%dn”, &x1,&y1,&x2,&y2, &x3,&y3,&x4,&y4); /*輸入 3 個(gè)點(diǎn)和圓心坐標(biāo) */ Scanf(“%dn”, &2R); /*輸入第二個(gè)圓的半徑 */ =arccos( 2 2 21 2 1( ( ) ( ) ) ( 2 * * ( ) )o o R r R r o o R r ); oo=sqrt( 2( 4 3)XX + 2( 4 3)YY ); /*求 2 個(gè)圓心的距離 */ 13 ( ) s i nBY X R r ; = + ; =arcos( + ); 13 ( ) c o sBX X R r ; 13 (

溫馨提示

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

評論

0/150

提交評論