龙空技术网

数控车宏程序示例——曲线宏程序

76号骑士 421

前言:

现在看官们对“c语言输出爱心图形”都比较注意,咱们都需要了解一些“c语言输出爱心图形”的相关资讯。那么小编同时在网摘上收集了一些关于“c语言输出爱心图形””的相关内容,希望同学们能喜欢,朋友们快快来了解一下吧!

抛物线(二次曲线)

定义:如果平面内一个动点到一个定点和一条定直线的距离相等,那么这个动点的轨迹叫做抛物线,这个定点叫做抛物线的焦点,这条定直线叫做抛物线的准线。抛物线的形状如图4-15所示,P是动点,F点是抛物线的焦点,L是抛物线的准线。

程序:

O0116

主程序

M8

G96 S120 M3

恒速切削

G50 S2000

最高限速

T0101

G0 X51. Z1.

快速定位,设毛坯直径为50mm,

#100=48.

设余量为48mm,等于椭圆X轴的直径

#101=1.

1留量,0不留量

#102=5.;

每次切深5mm,其值必须被#100的值整除

N10 IF[#100LT#101]GOTO20

如果余量小于1 [或0] ,则跳转到N20

G65 P16 B0 F0.3 I10. S0.5

T28.8 Z38.8;

自变量赋值

#100=#100-#102 :

每次切削5mm

GOTO10

跳转至N10程序段

N20 G0 Z50. X180. M5

退刀

G28 U0 M9

M30

注:如果把#100=48.改为#100=0,#101=1改为#101=0,该程序即变成精车程序。

O0016

子程序,采用抛物线方程编程

N10 #1=#2+#19

X轴的增量,每次递增0.5mm

#1= #1/2;

计算X轴的半径值

#3= [#1*#1]/[#4*2]2P

计算Z轴相应的坐标值,工件坐标,P=10

#1= #1*2;

X轴的直径值

G1 X[#1+#100] Z-#3 F#9;

直线插补

#2=#1;

X轴增量0.5mm后的坐标值

N20 IF[#3GE- #20] GOTO10;

如果Z轴没有走到-28.8mm,则跳转到N10

G1 Z-[#26+1];

Z轴走到-39.8mm

U1. W1.;

退刀

G0 Z1.

M99

注:1、变量必须使用半径计算;

四、圆的渐开线

将缠在圆柱(定圆)上的线解开时,线的端点描出的轨迹称为圆的渐开线。

#1=A=20: 定圆半径长;

#2=B=123: 起点t为123o;

#3=C=0.01745 : 弧度

#9=F=0.2: 进给速度

#13=M=1 : 角度每次递减量为1o

#18=R=3; 小圆半径

#20=T=40: R3切点处

#26=Z=26.376 ; 圆心距

程序:

O0116

主程序

M8

G96 S120 M3

恒速切削

G50 S2000

最高限速

T0101

G0 X82. Z6.362

快速定位,直径让出2mm,Z轴余量为51.41-45.048=6.362

#100=6.362

设余量为6.362mm,工件零点在曲线起点上

#101=1.

1留量,0不留量

#102=1.362

每次切深1mm,其值必须被#100的值整除

N10 IF[#100LT#101]GOTO20

如果余量小于1 [或0] ,则跳转到N20

G65 P16 A20. B123 C0.01745 F0.2

M1 T20 R3 Z26.376;

自变量赋值

#100=#100-#102:

每次切削1.362mm

GOTO10

跳转至N10程序段

N20 G0 Z50. X180. M5

退刀

G28 U0 M9

M30

注:如果把#100改为#100=0,#101改为#101=0,该程序即变成精车程序。

O0016 (O8906)

子程序

N10 #4=#1*[COS[#2]+#3*#2*SIN[#2]]

工件坐标系中Z的坐标

#5=#1*[SIN[#2]-#3*#2*COS[#2]]

工件坐标系中X的坐标

#6=2*#5

X轴直径

G1 X#6 Z[#4-#1+#100] F#9

曲线插补

#2=#2-#13

角度递减为1o

N20 IF[#2LEQ#20]GOTO30

如果极角α≤40o转到N30程序段

GOTO10

N30 G2 X0 Z[#26-#1-#18] R#18

圆弧插补R3,26.376-23=3.376

G0 Z10.

退刀

X82.

M99

五、摆线(旋轮线)

半径为a的圆沿定直线作无滑滚动时,(动圆)圆周上的定点描出的轨迹是一条曲线,这条曲线叫做摆线,或叫做旋轮线。

程序:

O0120

主程序

M8

G96 S120 M3

恒速切削

G50 S2000

最高限速

T0101

G0 X82. Z2.

#100=82.

设余量为6.362mm,工件零点在曲线起点上

#101=1.

1留量,0不留量

#102=5.125

每次切深5.125mm,其值必须被#100的值整除

N10 IF[#100LT#101]GOTO20

如果余量小于1 [或0] ,则跳转到N20

G65 P20 A40. B0 C0.01745 F0.2 M1 R90 Z62.82;

自变量赋值

#100=#100-#102:

每次切削1.362mm

GOTO10

跳转至N10程序段

N20 G0 Z50. X180. M5

退刀

G28 U0 M9

M30

注:如果把#100改为#100=0,#101改为#101=0,该程序即变成精车程序。

O0020 (O8907)

子程序

N10 #4=#1*[#3*#2-SIN[#2]]

工件坐标系中Z的坐标

#5=#1*[1-COS[#2]]

工件坐标系中X的坐标

#6=2*#5

X轴直径

G1 X[#6+#100] Z[0-#4] F#9

曲线插补

#2=#2+#13

角度递1o

N20 IF[#2GT#18]GOTO30

如果极角α≥90o转到N30程序段

GOTO10

N30 U1. W1.

退刀

G0 Z1.

退刀

M99

在这个程序当中,定圆R40实际上只走了90O,所以在编程时要灵活运用。

六、外摆线

半径为a的圆沿半径b的定圆在其外侧滚动式,(动圆)圆周上的定点描出的轨迹称为外摆线,如图4-21所示。

程序:

O0120

主程序

M8

G96 S120 M3

恒速切削

G50 S2000

最高限速

T0101

G0 X45. Z0;

零点设在定圆圆心处

#100=45.

设余量为6.362mm,工件零点在曲线起点上

#101=1.

1留量,0不留量

#102=5.;

每次切深5.mm,其值必须被#100的值整除

N10 IF[#100LT#101]GOTO20

如果余量小于1 [或0] ,则跳转到N20

G65 P20 A40. B0 C0.01745 F0.2 M1 R90 Z62.82;

自变量赋值

#100=#100-#102:

每次切削1.362mm

GOTO10

跳转至N10程序段

N20 G0 Z50. X180. M5

退刀

G28 U0 M9

M30

注:当a=b时的外摆线称为心形线,取O为基点,OP为极轴的极坐标系下,参数方程(极坐标)为:r=2a(1+cost),见图4-24所示。

码字不易谢谢点赞,关注我看更多宏程序文章

标签: #c语言输出爱心图形