1. 首页
  2. 技术文章

西门子宏程序基础

西门子系统--宏程序参数

程序中的参数代表一个可变数值,参数从R0—R90可任意选择使用,

参数在计算过程中同样遵循数学运算法则,先运算括号内,乘法和除法运算优先于加法和减法运算,角度计算单位为度。

算术与逻辑运算方法如下:

加法 R1=R1+R2

减法 R1=R1-R2

乘法 R1=R1*R2

除法 R1=R1/R2

正弦 R1=SIN(R2)

余弦 R1=COS(R2)

反正弦 R1=ASIN(R2)

反余弦 R1=ACOS(R2)

正切 R1=TAN(R2)

反正切 R1=ATAN2( , )

平方根 R1=SQRT(R2)

绝对值 R1=ABS(R2)

编程示例:

N10 R1=R1+1 新的R1从旧的R1加1得出

N20 R1=R2+R3 R4=R5-R6 基本加减乘除运算

R7=R8*R9 R10=R11/R12

N30 R13=SIN(30) R13等于30度的正弦值

N40 R14=COS(60) R14等于60度的余弦值

N50 R15=R1*R4+R7 先算乘再算加

N60 R16=(R10-R7)*R13 先算括号内再算乘法

N70 R17=SQRT(R1*R2+R3*R4)

2 程序跳跃

程序跳跃分为:无条件跳跃和有条件跳跃

所谓无条件跳跃是指程序不需要任何条件即可跳跃到我们所需的程序位置。在程序编辑中,无条件跳跃命令必须单独编入NC程序段中,且在程序结尾不需要M02或M30来结束程序。

指令格式:

N10 LABEL:…

N20 …

N50 GOTOB LABEL

N10 GOTOF LABEL

N20 …

N50 LABEL:…

说明:

GOTOB 跳跃方向往程序开头方向跳

GOTOF 跳跃方向往程序结尾方向跳

LABEL 跳转的目标

LABEL:跳转的标志名

编程示例:

N10 G00 G90 G17 G54

N20 GOTOF AAB 程序向结尾方向跳到AAB:标志名

N30 G00 …

N40 …

N50 …

N60 BBC:R1=R1+10 程序跳跃的标志名BBC:

N70 …

N80 GOTOF AAC 程序向结尾方向跳到AAC:标志名

N90 …

N100 AAB:R2=R2+1 程序跳跃的标志名AAB:

N110 …

N120 GOTOB BBC 程序向开头方向跳到BBC:标志名

N130 AAC:R3=R3+1 程序跳跃的标志名AAC:

所谓有条件跳跃是指程序跳跃时必须满足某一条件进行跳跃,否则程序就会静止跳跃。跳跃条件可以利用IF指令公式化,如果跳跃条件满足,就可以执行跳跃到编程跳跃的目的点。

指令格式:

N10 AAB:…

N20…

N50 IF R1>R2 GOTOB AAB

N10 IF R1>R2 GOTOF AAB

N20 …

N50 AAB:…

说明:

IF 条件(如果或假如意思)

GOTOB 跳跃方向往程序开头方向跳

GOTOF 跳跃方向往程序结尾方向跳

AAB 跳转的目标

AAB: 跳转的标志名

在条件跳转语句中,我们所用到的比较符号如下表示:

等于 = =

不等于 < >

大于 >

小于 <

大于或等于 >=

小于或等于 <=

编程示例:

N10 R1=30 R2=60 R3=10 R4=11

R5=50 R6=20 初始参数赋值

N20 AAB:G00 X=R2*COS(R1)+R5 Y=R2*SIN(R1)+R6

计算并执行X、Y坐标

N30 R1=R1+R3 R4=R4-1 变量计算

N40 IF R4>0 GOTOB AAB 如果R4>0程序跳跃到AAB:标志名

N50 M30 程序结束

西门子系统宏程序—椭圆

西门子系统--宏程序参数

O1201

R11=50

R12=30

G40G90G80

T1M6

M3S1000

G90G54X=R11.Y0.

G43H1Z50.

M8

Z2.

G1Z-2.F500.

R1=0

AA:

R2=R11*COS(R1)

R3=R12*SIN(R1)

G01X=R2Y=R3 F500.

R1=R1+1

IF R1<360 GOTOB AA

G0Z50

M5

M9

M30

 
问答社区  发起问答  报警查询  技术文章  维修服务  资料下载  加交流群  申请 VIP   

本文转载来自【公众号:数控e家】,仅供大家学习交流,如侵权请联系站长删文。

发表评论

登录后才能评论

联系我们

在线咨询:点击这里给我发消息

联系微信:QQ594673193

工作时间:08:00~20:00

QR code