首页 百科知识 宏程序编程系列之宏圆角的调用

宏程序编程系列之宏圆角的调用

时间:2023-10-27 百科知识 版权反馈
【摘要】:之所以定义多层局部变量,是因为HNC-21M的子程序可嵌套调用,每一层子程序都有自己独立的局部变量。当前局部变量为#0~#49,第1层局部变量为#200~#249,第2层局部变量为#250~#299,第3层局部变量为#300~#349,等等。

项目十二 宏倒圆角——爱心

12.1 项目目标

(1)熟悉华中数控宏的运用格式。

(2)掌握刀具宏加工运用。

(3)掌握函数控制轮廓编程技巧。

12.2 零件图及工量具清单

12.2.1零件图

零件图如图2-12-1所示:

图2-11-1 零件图

12.2.2工量具清单

工量具清单如表2-12-1所示:

表2-12-1 工量具清单

12.3 工艺方案

12.3.1工装

本例采用机用虎钳装夹的方法,底部用垫块垫起。

12.3.2加工步骤及工序

(1)用机用虎钳装夹毛坯,伸出表面10mm左右。

(2)用Φ16立铣刀粗、精铣工件上表面,作为工件的测量基准。

(3)用Φ16立铣刀粗铣90mm×90mm外轮廓。

(4)使用Φ12键槽立铣刀粗、精铣圆弧连接型腔。

(5)使用R5球头刀,铣削R5圆弧。

12.3.3刀具与合理的切削用量

刀具与合理的切削用量如表2-12-2所示:

表2-12-2 刀具与合理的切削用量

12.4 评分表

评分表如表2-12-3所示:

表2-12-3 评分表

12.5 相关知识

12.5.1 宏程序编程

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

为方便编程人员使用程序子编程和宏程序编程,HNC-21M定义了如下宏变量、常量、运算符、函数与语句。

12.5.1.1宏变量和常量

(1)宏变量

#0~#899为编程人员可使用变量,#1000以后为非编程人员使用变量。

之所以定义多层局部变量,是因为HNC-21M的子程序可嵌套调用,每一层子程序都有自己独立的局部变量(变量个数为50)。当前局部变量为#0~#49,第1层局部变量为#200~#249,第2层局部变量为#250~#299,第3层局部变量为#300~#349,等等。

(2)常量

常量有:PI为圆周率;TRUE为条件成立(真);FALSE为条件不成立(假)。

12.5.1.2运算符与表达式

(1)算术运算符

+;-;*;/。

(2)条件运算符

EQ(=);NE(≠);GT(>);GE(≥);LT(<);LE(≤)。

(3)逻辑运算符

AND(逻辑与);OR(逻辑或);NOT(逻辑非)。

(4)函数

SIN[X]:计算输入值X(用弧度表示)的正弦值。

COS[X]:计算输入值X(用弧度表示)的余弦值。

TAN[X]:计算输入值X(用弧度表示)的正切值。

ATAN[X]:计算输入值X(用弧度表示)的反正切值。

ATAN2[Y,X]:计算输入值Y/X(用弧度表示)的反正切值。

ABS[X]:计算输入值X的绝对值。

INT[X]:求输入值X的整数部分。

SIGN[X]:求输入值X的符号。

SQRT[X]:计算输入值X的平方根。

EXP[X]:计算输入值X的指数值,即EX。

(5)表达式

用运算符连接起来的常数、宏变量构成表达式。

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

     #3*6 GT 14。

12.5.1.3语句

(1)赋值语句

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

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

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

    #3=124.0。

(2)条件判别语句IF,ELSE,ENDIF。

格式①:IF条件表达式。 

       …

格式②:IF条件表达式。

(3)循环语句WHILE,ENDW。

格式:WHILE条件表达式

例:切圆台与斜方台,各自加工3个循环,要求倾斜10°的斜方台与圆台相切,圆台在方台之上,圆台阶和方台阶高度均为10mm,如图2-12-2所示。

图2-12-2 圆台与斜方台

%4028

#10=10.0

#11=10.0

#12=124.0

#13=124.0

N01 G92 X0.0 Y0.0 Z0.0

N05 G00 Z10.0

#0=0

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

N07 Z[-#10] M03 S600

WHILE #0 LT 3

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

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

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

N[11+#0*6]G01 X[#12/2] Y[-175/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=175/SQRT[2]*COS[55*PI/180]

#3=175/SQRT[2]*SIN[55*PI/l80]

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

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

#0=0

WHILE #0 LT 3

N[101+#0*6] G01 G90 C42 X[-#2] Y[-#3]F280.0 D[#0+l]

N[102+#0*6] G91 X[+#4] Y[+#5]

N[103+#0*6] X[-#5] Y「+#41」

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

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

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

#0=#0+1

ENDW

G00 X0 Y0 M05

M30

12.5.2 子程序编程

子程序的编程格式和调用格式在本章第1节已做描述。这里着重介绍HNC-21M带参数的子程序调用及子程序的嵌套调用。

当前程序在调用带参数的子程序时,系统会将当前程序段各字段(A~Z)的内容复制到子程序执行时的局部变量#0~#25中,同时复制调用子程序时当前通道上9个轴的绝对位置(机床绝对坐标)到宏执行时的局部变量#30~#38中。

对于每个局部变量,都可以用系统宏AR[ ]来判别该变量是否被定义,来判断被定义为增量方式还是绝对方式。该系统宏的调用格式如下。

AR[# 变量号]

返回

其中,在“#变量号”中

“#0”表示该变量没有被定义;

“#90”表示该变量被定义为绝对方式G90;

“#91”表示该变量被定义为相对方式G91。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈