CNC数控宏程序编程实例与技巧方法
文章出处:
人气:发表时间:2020-06-26 00:10
1、宏变量及常量
(1) 宏变量
HNC 21/22T华中世纪星数控系统变量表示形式为# 后跟1~4位数字,变量种类有三种:
局部变量:#0~#49是在宏程序中局部使用的变量,用于存放宏程序中的数据,断电时丢失为空。
全局变量:用户可以自由使用#50~#199,它对于由主程序调用的各子程序及各宏程序来说是可以公用的,可以人工赋值。HNC 21/22T子程序嵌套调用的深度最多可以有8层,每一层子程序都有自己独立的局部变量(变量个数为50)。
系统变量:系统变量为#1000~#1199,它能获取包含在机床处理器或NC内存中的只读或读/写信息,包括与机床处理器有关的交换参数、机床状态获取参数、加工参数等系统信息。
(2) 常量
PI:圆周率π;TRUE:条件成立(真);FALSE:条件不成立(假)
2、运算符与表达式
(1) 算术运算符:+, ,*,/
(2) 条件运算符:EQ(=),NE(≠),GT(>),GE(≥),LT(<=),LE(≤)
(3) 逻辑运算符:AND,OR,NOT
(4) 函数:SIN,COS,TAN,ATAN,ATAN2,ABS,INT,SIGN,SQRT,EXP
(5) 表达式:用运算符连接起来的常数,宏变量构成表达式。
例如:175/SQRT[2] * COS[55 *PI/180 ];#3*6 GT 14
3、赋值语句
格式:宏变量=常数或表达式
把常数或表达式的值送给一个宏变量称为赋值。
例如: #2 = 175/SQRT[2] *COS[55 * PI/180;#3 = 124.0
4、条件判别语句IF,ELSE,ENDIF
格式(i):
IF 条件表达式
…
ELSE
…
ENDIF
格式(ii) :
IF 条件表达式
…
ENDIF
5、循环语句WHILE,ENDW
格式:
WHILE 条件表达式
…
ENDW
6、宏程序子程序调用的参数传递规则
G 代码在调用宏(子程序或固定循环,下同)时,系统会将当前程序段各字段(A~Z共26个字段,如果没有定义则为零)的内容拷贝到宏执行时的局部变量#0 ~ #25,同时拷贝调用宏时当前通道九个轴(轴0~轴8)的绝对位置(机床绝对坐标)到宏执行时的局部变量#30 ~ #38。
宏程序的调用格式为:
M98 P(宏程序名)<变量赋值>或G65 P(宏程序名)<变量赋值>。
7、用户程序编程思路
00;长半轴、短半轴分别为40、30的椭圆
G54 G90 G00 Z30
M03 S800
G00 X45 Y 15 ;快速定位至下刀点
Z3
G01 Z 5 F100
#0=0;给角度α赋0初值
WHILE #0 LE 360;当角度α≤360度时,执行循环体内容
#1=40*COS[#0*PI/180];用椭圆的标准参数方程求动点M的X坐标值
#2=30*SIN[#0*PI/180];用椭圆的标准参数方程求动点M的Y坐标值
G01 X[#1] Y[#2] ;用直线插补指令加工至M点,即用直线段逼近椭圆
#0=#0+1;角度α的递增步长取1度
ENDW
X45 Y15;切出椭圆
G00 Z30 M05
X0 Y0
M30
(1) 宏变量
HNC 21/22T华中世纪星数控系统变量表示形式为# 后跟1~4位数字,变量种类有三种:
局部变量:#0~#49是在宏程序中局部使用的变量,用于存放宏程序中的数据,断电时丢失为空。
全局变量:用户可以自由使用#50~#199,它对于由主程序调用的各子程序及各宏程序来说是可以公用的,可以人工赋值。HNC 21/22T子程序嵌套调用的深度最多可以有8层,每一层子程序都有自己独立的局部变量(变量个数为50)。
系统变量:系统变量为#1000~#1199,它能获取包含在机床处理器或NC内存中的只读或读/写信息,包括与机床处理器有关的交换参数、机床状态获取参数、加工参数等系统信息。
(2) 常量
PI:圆周率π;TRUE:条件成立(真);FALSE:条件不成立(假)
2、运算符与表达式
(1) 算术运算符:+, ,*,/
(2) 条件运算符:EQ(=),NE(≠),GT(>),GE(≥),LT(<=),LE(≤)
(3) 逻辑运算符:AND,OR,NOT
(4) 函数:SIN,COS,TAN,ATAN,ATAN2,ABS,INT,SIGN,SQRT,EXP
(5) 表达式:用运算符连接起来的常数,宏变量构成表达式。
例如:175/SQRT[2] * COS[55 *PI/180 ];#3*6 GT 14
3、赋值语句
格式:宏变量=常数或表达式
把常数或表达式的值送给一个宏变量称为赋值。
例如: #2 = 175/SQRT[2] *COS[55 * PI/180;#3 = 124.0
4、条件判别语句IF,ELSE,ENDIF
格式(i):
IF 条件表达式
…
ELSE
…
ENDIF
格式(ii) :
IF 条件表达式
…
ENDIF
5、循环语句WHILE,ENDW
格式:
WHILE 条件表达式
…
ENDW
6、宏程序子程序调用的参数传递规则
G 代码在调用宏(子程序或固定循环,下同)时,系统会将当前程序段各字段(A~Z共26个字段,如果没有定义则为零)的内容拷贝到宏执行时的局部变量#0 ~ #25,同时拷贝调用宏时当前通道九个轴(轴0~轴8)的绝对位置(机床绝对坐标)到宏执行时的局部变量#30 ~ #38。
宏程序的调用格式为:
M98 P(宏程序名)<变量赋值>或G65 P(宏程序名)<变量赋值>。
7、用户程序编程思路
00;长半轴、短半轴分别为40、30的椭圆
G54 G90 G00 Z30
M03 S800
G00 X45 Y 15 ;快速定位至下刀点
Z3
G01 Z 5 F100
#0=0;给角度α赋0初值
WHILE #0 LE 360;当角度α≤360度时,执行循环体内容
#1=40*COS[#0*PI/180];用椭圆的标准参数方程求动点M的X坐标值
#2=30*SIN[#0*PI/180];用椭圆的标准参数方程求动点M的Y坐标值
G01 X[#1] Y[#2] ;用直线插补指令加工至M点,即用直线段逼近椭圆
#0=#0+1;角度α的递增步长取1度
ENDW
X45 Y15;切出椭圆
G00 Z30 M05
X0 Y0
M30
上一篇:数控铣削加工的表面精度不良 下一篇:CNC加工中心的补偿方法
此文关键字:数控,宏程序,编程,实例,技巧,方法
同类文章排行
- 数控加工中心加工螺纹的三种方法
- CNC数控编程,容易撞刀与过切的几点
- 1分钟测试:数控加工技术的“玩家”,你在哪个段位?
- 数控切削加工如何才能有效降低成本
- 经验总结|冲压生产常见缺陷及产生原因
- 数控铣床的配置和用途分类
- 伺服系统该如何征战数控机床?
- 铣刀怎么选?关键要看这几点!
- CNC数控编程加工经验分享
- 快收藏!12种加工中心常见故障诊断与对策