《理论六SIEMENS系统宏程序编程.docx》由会员分享,可在线阅读,更多相关《理论六SIEMENS系统宏程序编程.docx(5页珍藏版)》请在三一办公上搜索。
1、理论六SIEMENS系统宏程序编程理论六、SIEMENS系统宏程序编程 SIEMENS系统中的参数编程与FANUC系统中的“用户宏程序”编程功能相似,SIEMENS中的R参数就相对于用户宏程序中的变量。同样,在SIEMENS系统中可以通过对R参数进行赋值、运算等处理,从而使程序实现一些有规律变化的动作,进而提高程序的灵活性和实用性。 一、 参数编程 1、R参数的表示 R参数由地址R与若干位数字组成。例R1、R10、R105等。 2、R参数的引用 除地址N、G、L外,R参数可以用来代替其他任何地址后的数值。但在参数编程时,地址符后必须用“=”接变量。 赋值:R1= R1=10.0+R2 (#1=
2、10.0+#2) X#101 X=R101 Y-#102 Y=-R102 eg:G01X=R10Y=-R11F=100R12; G01X100Y-50F80; 3、R参数的种类 R参数分成三类:自由参数、加工循环参数、加工循环内部计算参数。 1)自由参数:R0R99,可以在程序中自由使用。 2)加工循环参数:R100R249,如果在程序中没有使用固定循环,则这部分 参数也可以自由使用。 3)加工循环内部计算参数:R250R299,如果在程序中没有使用固定循环, 则这部分参数也可以自由使用。 4、参数的运算 1)参数运算格式 功能 格式 备注与具体实例 定义、转换 Ri=Rj R1=R2,R1=
3、30 加法 Ri=Rj+Rk R1=R1+R2 减法 Ri=Rj-Rk R1=100-R2 乘法 Ri=Rj*Rk R1=R1*R2 除法 Ri=Rj/Rk R1=R1/30 正弦 Ri=SIN(Rj) R10=SIN(R1) 余弦 Ri=COS(Rj) R10=COS(36.3+R2) 正切 Ri=TAN(Rj) R10=TAN(35.0+R1) 平方根 Ri=SQRT(Rj) R10=SQRT(R1*R1-100) 在参数运算过程中,三角函数的角度单位是度。还有POT、ABS(绝 对)、TRUNC等等运算格式。 2)参数的运算次序 R参数的次序依次为:函数运算 乘和除运算 加和减运算。 e
4、g:R1=R2+R3*SIN(R4) 在R参数运算过程中,允许使用括号以改变运算次序,且括号允许嵌套使用。 Eg:R1=SIN(R2+R3)*R4+R5)/R6) 5、跳转指令:跳转指令起到控制程序流向的作用。 1)无条件跳跃 格式:GOTOB 标志符 或 GOTOF 标志符 GOTOB 标志符 :带向后跳转目的的跳转指令 GOTOF 标志符 :带向前跳转目的的跳转指令 2)条件跳转 格式:IF 条件表达式 GOTOB 标志符 IF 条件表达式 GOTOF 标志符 条件表达式中常用的运算比较符书写方式如下: 书写格运算符 运算符 书写格式 式 等于 = 大于 不等于 小于等于 = 小于 = 二
5、、实例讲解 例一、圆弧上点的移动,如下图所示: 根据编程思路步骤: 1)分析图形 2)数学模型 a = a1 + a Xn= Rcosa+Xc Yn=Rsina+Yc 3)控制程序出口,确定变量, 起始角30 R1 圆弧半径32mm R2 位置间隙10 R3 点数11 R4 圆心位置X50mm R5 圆心位置Y20mm R6 R1=30 R2=32 R3=10 R4=11 R5=50 R6=20 AA:G00 X=R2*COS(R1)+R5 Y=R2*SIN(R1)+R6 R1=R1+R3 R4=R4-1 IF R40 GOTOB AA (1、=1) 比较、时出现的情况 说明:A、强调条件表达
6、式,应该恰到好处; B、使用变量,变量越少越好。 例二 盲孔铣削加工的宏程序: % N LJX MPF “MPF” 主程序 “;” 说明 ;$PATH=/ N MPF DIR “PATH” 路径 “DIR”目录 R1= 圆孔直径 R2= 圆孔深度 R3= 平底刀直径 R24= 圆心X坐标 R25= 圆心Y坐标 R4= Z坐标值,初始值 R17= Z向每层切深 R10= XY面内偏移系数 R5=R10*R3 XY面内偏移量 R6=(R1-R3)/2 最大圆的半径 G54G17G90G40 M03S800 G00Z30 X=R24 Y=R25 AA: Z=-R4+1 接近工件表面上方1mm R4=
7、R4+R17 指定当前的加工深度值 G01Z=-R4 F50 下刀 L10 调用子程序,加工当前层 IF R4R2-R17 GOTOB AA 若R4R2,则可能过切,若R4=R2-R17? G01Z=-R2 F50 加工至孔底 L10 G00Z30 M05 M02 % N L10 SPF 子程序 ;$PATH=/ N SPF DIR R7=0 当前切削层的分层数,初始值为0 BB:R7=R7+1 R8=R7*R5 G01X=R24+R8 F1000 G03I=-R8 IF R8R6-R5 GOTOB BB G01X=R24+R6 G03I=-R6 G00Z=-R4+1 X=R24 Y=R25 RET 说明:1)变量在程序中赋值,出错了可以直接修改; 2)变量可写在一行。 从圆中心偏移的距离 回起点 最大圆定位