宏程序代码一览表(宏程序代码一览表G54G55)

1、各种类型宏程序a型宏程序g65hm宏指令表g65hm功能定义g65hm功能定义g65h01定义、置换#i=#jg65h28复合平方根2#i=#j2-#k2g65h02加算#i=#j+#kg65h31正弦#i=#j×sin(#k)g65h03减算#i=#j-#kg65h32余弦#i=#j×cos(#k)g65h04乘算#i=#j×#kg65h33正切#i=#j×tan(#k)g65h05除算#i=#j÷#kg65h34反正切#i=arctan(#j/#k)g65h11逻辑加#i=#jor#kg65h80无条件转移gotong65h12逻辑乘#i=

2、#jand#kg65h81条件转移12f#j=#kgotong65h13异或#i=#jxor#kg65h82条件转移22f#j=#kgotong65h21开平方#i=#jg65h83条件转移32f#j=#kgotong65h22绝对值#i=|#j|g65h84条件转移42f#j=#kgotong65h23剩余数#i=#j-tranc(#j/宏程序代码一览表#k)×#kg65h85条件转移52f#j=#kgotong65h24变成二进制#i=bin(#j)g65h86条件转移62f#j=#kgotong65h25变成十进制#i=bcd(#j)g65h99p/s报警报警号500+ng65h26复合除运算

3、#i=(#i×#j)÷#kg65h27复合平方根1#i=#j2+#k2宏程序的运算与控制指令(g65)指令格式:g65 hm p#i q#j r#k 条件转移的指令格式:g65hmpmq#jr#k#i :储存运算结果的变量号 hm:条件转移指令#j :进行运算的变量号1,可以是常数 pm:转移的地址#k :进行运算的变量号2,也可是常数 q#j r#k:转移的条件b型宏程序(fanuc 0i mate-mc系统)运算指令1、 定义和转换#i=#j2、 加法运算#i=#j+#k 和#i=#j-#k 差#i=#jor#k 或(对32位的每一位)#i=#jxor#k 异或(对32

4、位的每一位)3、 乘法运算#i=#j×#k 积#i=#j÷#k 商#i=#jand#k 与(对32位的每一位)4、 函数#i=sin#j 正弦(度)#i=cos#j 余弦(度)#i=tan#j 正切(度)#i=atan#j/#k 反正切(度)#i=sqrt#j 平方根#i=abs#j 绝对值#i=bin#j 十一二进制转换#i=bcd#j 二一十进制转换#i=round#j 四舍五入圆整#i=fix#j 舍去小数部分#i=fup#j 小数部分进位到整数5、 控制指令(1)无条件转移 格式:goton(2)条件转移 格式:if(条件表达式)goton(条件表达式)有如下几种#

5、jeq#k 即#j=#k#jne#k #j#k#jgt#k #j>#k#jlt#k #j<#k#jge#k #j#k#jle#k #j#k例:if#4eq#0goto1n10g90 while<条件表达式>dom if#eq#goto1 endm (m=1、2、3)(上、下对应,条件满足执行宏程序代码一览表)编程中的一些辅助功能坐标旋转(g68、g69)指令g68 :旋转功能的建立 g69 :旋转功能的取消指令的格式g17g18 g68x y r x、y、z(i、j、k)以g54定旋转中心的坐标,r为旋转角度g19 g17(g18或g19)平面的选择,在其上包括旋转的形状x y :与g

6、17、g18、g19相应的x、y和z中的两个轴的绝对指令,在g68后面指定旋转中心,当不指令时,则g68程序段的刀具位置被认为旋转中心。r :角度位移正值表示逆时针旋转,回转角度根据指定的g代码(g90或g91)确定绝对值还是增量值。刀具补偿:要坐标旋转之后,才执行所有的补偿操作上受参考点有关的g27、g28、g29、g30等,与坐标有关的g52到g59、g92等限制,不能指定,如果需要,先取消旋转方式以后才能指令比例缩放(g50、g51)指令(g50取消g51)指令格式:(1)沿所有轴以相同的比例放大或缩小格式: 指令意义:g51x y z p :缩放开始 x y z :比例缩放中心坐标值的

7、绝对值 缩放有效 (缩放方式) p :缩放比例g50 缩放取消(2)沿各轴以不同的比例放大或缩小格式: 指令意义:g51x y z i j k (缩放开始,其后相同) x y z :同上 i j k :x、y和z各轴对应的缩放比例注:须在单独的程序段内指定g51,在完成放大或缩放之后,指定g50以取消缩放方式另:g5.1q1(g51刀路优化的建立)q0(取消g5.1)注:它可以以开始程序段或其后单独程序段建立a、(螺旋加工孔)oxxxxg65h01p#100q0.; (z轴的初始值)g65h01p#101q20.; (孔的半径)g65h01p#102q10.; (加工孔的高度)g65h01p#

8、103q1.; (z轴每次的增量)g90g54g00g40x20.y20.z100.;(以绝对坐标值定位到孔的中心)m03s2000;z0;g91g41g01x#101y0d01f1000;(以增量值建立刀补)n10g65h02p#100q#100r#103;g90g03z-#100i-#101f1200;g65h84p10q#100r#102;g03i-#101f600;g00z20;g40;m05;m30;b、(螺旋加工孔)oxxxx#1=0;#2=20;#3=10;#4=1;g90g54g00x20y20z100;m03s2000;z0;g91g41g01x#2y0d01f1000;wh

9、ile#1lt#3do1;#1=#1+#4;g90g03z-#1i-#2f1000;end1;g03i-#2f800;g00z100;g40;m05;m30;(意义与上相同)b、孔加工(绝对值)oxxxx#1=20; (孔的半径)#2=8; (圆弧进刀半径)#3=#1-#2; (圆弧进刀的起点值)#4=10; (加工孔的高度)#5=2; (每次高度的增量)#6=0; (z轴的初始值)g90g54g40g00x0y0z100; (定位到孔的中心)m03s2000;while#6lt#4do1;#6=#6+#5;z-#6;g01g41x#3y-#2d01f1000;g03x#1y0r#2;i-#1

10、;x#3y#2r#2;g40g01x0y0;end1;g00z100;m05;m30;(以上适合孔在工件坐标中心位置的孔加工)b、孔加工(增量值)g90g54g40g00x0y0z100; (可定位到任何坐标位置的孔中心)g01g41x#3y-#2d01f1000;换成:g91g01g41x#3y-#2d01f1000;g03x#1y0r#2; 换成:g03x#2y#2r#2; (与上相同)x#3y#2r#2; 换成:x-#2y#2r#2;g40g01x0y0; 换成:用绝对坐标值(g90)回到开始定位点(改后可用在工件坐标中的任何位置孔的加工)a、(外形加工)oxxxxg65h01p#100

11、q24;g65h01p#101q6;g65h01p#102q0;g90g54g40g00x70y-60z100;m03s2000;n10g65h02p#102q#102r#101;z-#102;g41g01x60y-40d01f1000;x-60;y40;x60;y-45;g40x70y-60;g65h84p10q#102r#100;g00z100;m05;m30;b、(外形加工)oxxxx#1=24;#2=6;#3=0;g90g40g54g00x70y-60z100;m03s2000;while#3lt#1do1;#3=#3+#2;z-#3;g41g01x60y-40d01f1000;x-6

12、0;y40;x60;y-45;g40x70y-60;end1;g00z100;m05;m30;b、平面加工oxxxx#1=5; (高度)#2=1; (增量高度)#3=0; (初始值)#4=60; (平面长度的一半)g90g54g00x70y-50z100;m03s2000;while#3lt#1do1;#3=#3+#2;z-#3;#5=70; (平面长度的一半)while#5gt-#4do2;#5=#5-13;g01x#5f1000;y50;#5=#5-13;x#5;y-50;end2;g00z20; (加工完一层提刀)x70y-50; (回到初始点)end1;z100;m05;m30;以上均

13、为用平刀编程的程序,而在曲面加工里面,会用到球刀,球刀与平刀的编程有所不同,在手工编程里面,用球刀来编程,只能是以球心来计算,而平刀却是用刀尖。所以在用球刀编程加工曲面时,可以加上其r半径去计算,而平刀是以刀尖来计算,在编程时可以利用平移轨迹法,即将每一个刀位点平移出一个刀的半径。(上为一些规则球面,椭圆面,倒圆角等)而在用球刀加工一些斜面时,刀具的起点与终点必须要经过计算,原因下图: b、椭圆半球(平刀)oxxxx#1=30; (椭圆的长半轴)#2=20; (椭圆的短半轴)#3=5; (平刀半径)#4=90; (起始角度)#5=2; (增量角度)g90g54g00g5.1q1x0y0z100

14、;m03s2000;z0;while#4gt0do1;#4=#4-#5;#6=#1*cos#4+#3; (将轨迹平移)#7=#2*sin#4-#2; z轴从最高点(零点)向下变化#8=#2*cos#4+#3; (将轨迹平移)#9=0;while#9lt360do2; #9=#9+2;#10=#6*cos#9;#11=#8*sin#9;g01x#10y#11f1200;end2;end1;g00z100;q0m05;m30;b、球面(平刀) 赋值时,把椭圆的长,短轴换成圆的半径如:#1=20前面如上while#4gt0do1;#4=#4-#5;#6=#1*cos#4+#3; (将轨迹平移)#7=#1*sin#4-#1; z轴从最高点(零点)向下变化g90g01x#6f1000;z#7;i-#6;下面end2删掉b、椭圆面(球刀)oxxxx#1=30+5; (椭圆长半轴+刀半径r)#2=20+5; (椭圆短半轴+刀半径r)#3=90;#4=2;g90g54g5.1

转载请说明出处 内容投诉内容投诉
九幽软件 » 宏程序代码一览表(宏程序代码一览表G54G55)