全面突破技能学习的壁垒

打造智能化制造时代的主力军

首页 >> 新闻中心 >>技术交流 >> 一文搞懂数控机床宏程序的编程基础,快速入门秘笈
详细内容

一文搞懂数控机床宏程序的编程基础,快速入门秘笈

1. 什么场合会用到宏程序编程?


其实说起来宏就是用公式来加工零件,比如说椭圆,如果没有宏的话,我们要逐点算出曲线上的点,然后慢慢来用直线逼近,如果是个光洁度要求很高的工件的话,那么需要计算很多的点,可是应用了宏后,我们把椭圆公式输入到系统中然后我们给出Z坐标并且每次加一个量,那么宏就会自动算出X坐标并且进行切削, 实际上宏在程序中主要起到的是运算作用。



手工编程加工公式曲线(计算简单,输入快捷)

有规律的切削路径(作为一个切削模块)

程序间的控制(程序的调度)

刀具的管理(刀具的磨损)

自动测量(机内测头)


2. 什么叫宏程序?


在编程时,我们会把能完成某一功能的一系列指令像子程序那样存入存储器,用一个总指令来调用它们,使用时只需给出这个总指令就能执行其功能所存入的这一系列指令称作用户宏程序本体,简称宏程序。


这个总指令称作用户宏程序调用指令。在编程时,编程员只要记住宏指令而不必记住宏程序。


3. 用户宏程序与普通程序的区别


1)在用户宏程序本体中,能使用变量,可以给变量赋值,变量间可以运算,程序可以跳转。

2)普通程序中,只能指定常量,常量之间不能运算,程序只能顺序执行,不能跳转,因此功能是固定的,不能变化。

3)用户宏功能是用户提高数控机床性能的一种特殊功能,在相类似工件的加工中巧用宏程序将起到事半功倍的效果。


4. 变量的三种类型


数控系统变量表示形式为“#”后跟1~4位数字,变量种类有三种:


(1)局部变量:#1~#33是在宏程序中局部使用的变量,它用于自变量转移。


(2)公用变量:用户可以自由使用,它对于由主程序调用的各子程序及各宏程序来说是可以公用的。#100~#149在关掉电源后,变量值全部被清除,而#500~#509在关掉电源后,变量值则可以保存。


(3)系统变量:由后跟4位数字来定义,它能获取包含在机床处理器或NC内存中的只读或读/写信息,包括与机床处理器有关的交换参数、机床状态获取参数、加工参数等系统信息。


5. 宏程序的特点


宏程序可使用变量,可用变量执行相应操作;实际变量值可由宏程序指令赋给变量。

一、FANUC—0M宏程序的H代码

宏程序标准格:G65 Hm P#i Q#j R#k

H代码

 

H代码

 

H01

#i=#j

条件转移格式

G65 H8× P程序段号码n Q#j R#k

H02

#i=#j#k

H80

无条件转移 GoTo n

H03

#i=#j#k

H81

#i=#j GoTo n

H04

#i=#j×#k

H82

#i≠#j GoTo n

H05

#i=#j÷#k

H83

#i>#j GoTo n

H21

#i=#j^1/2

H84

#i<#j GoTo n

H22

#i=‖j

H85

#i≥#j GoTo n

H23

求余(丢弃小于1的分数)

H86

#i≤#j GoTo n

H26

#i=(#i×#j)/#k



H27

#i=(#j^2#k^2)^1/2



H28

#i=(#j^2#k^2)^1/2



H31

#i=#j×SIN #k



H32

#i=#j×COS #k



H33

#i=#j×TAN #k



H34

#i=#j×ATAN #k



二、FANUC—18M宏程序的格式

1.变量的类型:


#0

Always null(总是零)

#1-#33

Local variables(局部变量)

#100-#149(#199);#500-#531#999

Common variables(公用变量)

#1000-

System variables(系统变量)

NOTE(注意):common variables #150 to #199 and #532 to #999 are optional

(从#150到 #199 和#532到#999是可选的)

2.非模态调用宏程序:

程序的标准格式:G65 P(宏程序号) L(重复次数) <指定引数值>

注:每次调用都要重新写G65的标准格式,用后自动取消。

3.模态调用宏程序:

程序的标准格式:G66 P(宏程序号) L(重复次数) <指定引数值>

注:不用指定G66直接输入引数值。

4. 关于G65G66中的引数赋值

⑴.引数赋值Ⅰ的地址和变量号码的对应关系:


A

#1

D

#7

H

#11

K

#6

R

#18

U

#21

X

#24

B

#2

E

#8

I

#4

M

#13

S

#19

V

#22

Y

#25

C

#3

F

#9

J

#5

Q

#17

T

#20

W

#23

Z

#26

⑵.引数赋值Ⅱ的地址和变量号码的对应关系:


A

#1

I2

#7

I4

#13

I6

#19

I8

#25

I10

#31

B

#2

J2

#8

J4

#14

J6

#20

J8

#26

J10

#32

C

#3

K2

#9

K4

#15

K6

#21

K8

#27

K10

#33

I1

#4

I3

#10

I5

#16

I7

#22

I9

#28

引数赋值Ⅰ、Ⅱ可以连用,

以后的为准

J1

#5

J3

#11

J5

#17

J7

#23

J9

#29

K1

#6

K3

#12

K5

#18

K7

#24

K9

#30

5. 关于G65G66中的算术和逻辑运算:


数 学 意 义

标准格式

数 学 意 义

标准格式

定 义

#I=#j

平 方 根

#I=SQRT[#J]

加 法

#I=#J#K

绝 对 值

#I=ABS[#J]

减 法

#I=#J#K

舍 入

#I=ROUND[#J]

乘 法

#I=#J*#K

上 取 整

#I=FIX[#J]

除 法

#I=#J/#K

下 取 整

#I=FUP[#J]

正 弦

#I=SIN[#J]

自然对数

#I=LN[#J]

反正弦

#I=ASIN[#J]

指数函数

#I=EXP[#J]

余 弦

#I=COS[#J]

#I=#J OR #K

反余弦

#I=ACOS[#J]

异或

#I=#J XOR #K

正 切

#I=TAN[#J]

#I=#J AND #K

反正切

#I=ATAN[#J]



从BCD转为 BIN

#I=BIN[#J]

用于与PMC信号交换

从BIN转为BCD

#I=BCD[#J]

用于与PMC信号交换

Remaindering

(余数)

#I=#J MODE #K

the Remainder is determined指定的 after以后 the specified精确确定的values arerounded四舍五入的 to integers整数。

6. G67宏程序的模态调用宏程序取消。

7.宏程序可以用 G××  <指定引数值> 的格式调用:

说明①程序号用O9010~O9019

②将程序号对应的参数设置为G代码的数值;

③调用的形式为:G(参数设定值) <指定引数值>。

宏程序主体号码与对应的参数号:


O9010

7550

O9012

7552

O9014

7554

O9016

7556

O9018

7558

O9011

7551

O9013

7553

O9015

7555

O9017

7557

O9019

7559

8.条件转移指令:


意 义

标准格式

条 件 表 达 式

⑴无条件转移指令

GOTO n(程序号)

⑵有条件转移指令

IF【<条件表达式>】GOTO n

意思:满足条件返回程序号为n的单节加工,

不满足条件加工后面的程序。

标准格式

数学意义

#i EQ #j

#i=#j GoTo n

#i NE #j

#i≠#j GoTo n

⑶无条件循环

DO m……END m

#i GT #j

#i>#j GoTo n

⑷条件循环

WHILE【<条件表达式>】DO m……END m(m=1.2.3…..)

意思:满足条件调用WHILE与END之间的程序

m次,WHILEEND后面的m数必须相同。

#i LT #j

#i<#j GoTo n

#i GE #j

#i≥#j GoTo n

#i LE #j

#i≤#j GoTo n


三、西门子(SIEMENS)宏程序的格式

1.计算参数R

R0—R99 ——可以自由使用;

R100R249 ——加工循环传递参数;

R250—R299——用于加工循环传递的内部计算参数。

计算:遵循通常的数学运算规则,括号内的优先,乘除优先与加减。

如:R15=SQRT(R1*R1+R2*R2);意义:R15=(R1^2+R2^2)^1/2;

N10 Z=R3 表示为Z赋值;其余同18M

2.条件跳跃:

⑴.标准格式:IF条件GoToF Label 向前跳跃

IF条件GoToB Label 向后跳跃


其中:标记符(Label):由2-8个字母或数字组成开始的两个字符必须是字母或下划线。

跳跃目标标记符的后面必须是冒号。

.比较运算:


运算符

意义

= =

等于

< >

不等于

>

大于

<

小于

> =

大于或等于

< =

小于或等于

3.算术:


数学意义

标准格式

数学意义

标准格式

定 义

R1=R2

正切

R1=TAN(R2)

加法

R1=R2R3

反正切

R1=ATANZ(R2)

减法

R1=R2R3

平方根

R1=SQRT(R2)

乘法

R1=R2*R3

平方

R1=POT(R2)

除法

R1=R2/R3

舍去小数位

R1=TRUNC(R2)

正弦

R1=SIN(R2)

舍入

R1=ROUND(R2)

反正弦

R1=ASIN(R2)

绝对值

R1=ABS(R2)

余弦

R1=COS(R2)

自然对数

R1=LN(R2)

反余弦

#I=ASCOS(R2)

指数函数

R1=EXP(R2)

四、西门子(SIEMENS)编程语言的格式


编程语言

名称

格式

含义

G110(相对)

G111(绝对)

G112

带极坐标

的移动命令

G110,G111,G112,X_Y_Z_

指定极点

G0 AP=_RP=_(模态)

AP极角RP极半径

AC/IC

绝对/增量

AP=IC(70


CIP


CIP X_ Y _ Z_

圆终点及中点

I1=IC(10)J1=IC(10)K1(10)

三轴坐标


子程序和程序段重复

子程序调用

L100

子程序调用“L100.SPF”;还可用程序名调用子程序

M17

子程序结束

FRAME P3

表示子程序FRAME必须连续执行3次

程序段重复

LABEL:

跳跃目的;冒号后为目的名

REPEAT

重复(两标号之间)

REPEATB

重复单个程序段

济南数控模具科技研究所



大中专毕业生岗前就业实训基地——济南数控模具科技研究所多年来主要开展CAD/CAM高级编程、UG五轴编程、数控机床维修、UG模具设计、逆向造型、工业机器人、3D打印等岗前培训。一次报名终身学习,培训期间,老师采用阶段性测试,充分把控学员学习进度,小班授课、一对一辅导、理论与实践相结合、学会为止,学完后免费推荐就业。研究所长期为学员提供技术支持及就业服务。济南数控模具科技研究所全体师生欢迎您的参观与学习,研究所现位于济南市章丘区世纪大道12510号。

咨询热线:0531-85708996

扫一扫
关注微信公众号


电话:18769721970


邮箱:sdskpx@126.com

地址:济南市章丘区世纪大道12510号

济南数控模具科技研究所

济南数控模具科技研究所 版权所有

网址:www.jnskmj.com

电话直呼
在线客服
在线留言
发送邮件
企业位置
联系我们:
18769721970
18769721971
15165118752
潘老师
点击这里给我发消息
刘老师
点击这里给我发消息
还可输入字符250(限制字符250)
技术支持: 全企网 | 管理登录