您现在的位置:首页>解决方案>技术文档> 华中世纪星系统宏指令编程

华中世纪星系统宏指令编程

概述

HNC-21M 数控系统为用户配备了强有力的类似于高级语言的宏程序功能, 用户可以使用变量进行算术运算、逻辑运算和函数的混合运算,此外宏程序还提 供了循环语句、分支语句和子程序调用语句,利于编制各种复杂的零件加工程序, 减少乃至免除手工编程时进行繁琐的数值计算,以及精简程序量。

一、 宏变量及常量
(1) 宏变量

#0~#49 当前局部变量

#50~#199 全局变量

#200~#249 0 层局部变量

#250~#299 1 层局部变量

#300~#349 2 层局部变量

#350~#399 3 层局部变量

#400~#449 4 层局部变量

#450~#499 5 层局部变量

#500~#549 6 层局部变量

#550~#599 7 层局部变量

#600~#699 刀具长度寄存器H0~H99

#700~#799 刀具半径寄存器D0~D99

#800~#899 刀具寿命寄存器

(2) 常量

PI:圆周率π

TRUE:条件成立(真)

FALSE:条件不成立(假)

二、 运算符与表达式

(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;

三、 赋值语句

格式:宏变量=常数或表达式

把常数或表达式的值送给一个宏变量称为赋值。

例如: #2 = 175/SQRT[2] * COS[55 * PI/180 ];

#3 = 124.0;

 

条件判别语句IF, ELSE,ENDIF

格式 (i): IF 条件表达式

ELSE

ENDIF

格式(ii) : IF 条件表达式

ENDIF

四、 循环语句WHILE,ENDW

格式: WIIILE 条件表达式

ENDW

条件判别语句的使用参见宏程序编程举例。

循环语句的使用参见宏程序编程举例。

五、 程序举例
轨迹
程序代码如下:

%0010

#10=10.0

#11=10.0

#12=124.0

#13=124.0

#101=8.0

#102=6.5

#103=6.0

N01 G92 X0.0 Y0.0 Z10.0

#0=0

N06 G00 X[-#12] Y[-#13]

N07 G01 Z[-#10] M03 S600 F200

WHILE #0 LT 3

N[08+#0*6] G01 G42 X[-#12/2] Y[-90/2] F280.0 D[#0+50]

N[09+#0*6] X[0] Y[-90/2]

N[10+#0*6] G03 J[90/2]

N[11+#0*6] G01 X[#12/2] Y[-90/2]

N[12+#0*6] G40 X[#12] Y[-#13]

N[13+#0*6] G00 X[-#12] Y[-#13]

#0=#0+1

ENDW

N100 Z[-#10-#11]

#2=90/SQRT[2]*COS[55*PI/180]

#3=90/SQRT[2]*SIN[55*PI/180]

#4=90*COS[10*PI/180]

#5=90*SIN[10*PI/180]

#0=0

WHILE #0 LT 3

N[101+#0*8]G01 G42 X[-#12/2] Y[-90/2] F280.0 D[#0+50]

N[102+#0*8]X[-#2] Y[-#3]

N[103+#0*8]G91 X[+#4] Y[+#5]

N[104+#0*8]X[-#5] Y[+#4]

N[105+#0*8]X[-#4] Y[-#5]

N[106+#0*8]X[+#5] Y[-#4]

N[107+#0*8] G90 X[#12/2] Y[-90/2]

N[108+#0*8]G00 G40 X[-#12] Y[-#13]

#0=#0+1

ENDW

G00 X0 Y0 M05 M30