当前位置:首页 >> 机械/仪表 >>

数控铣床编程3



?

以数控技术为基础的相关产业是关系到国家战略 地位和体现国家综合国力水平的重要基础性产业, 数控技术水平高低已成为衡量一个国家工业现代 化水平和综合国力的重要标志
专家们预言: 二十一世纪机械制造业的竞争,其 实质是数控技术的竞争 数控机床是数控技术的最早和最典型的应用

?

?


1

?

2005年我国共生产数控机床5.96万台,其中前十位 企业生产2.73万台,市场集中度为45.85%。2006年 6月28日,国务院发布振兴装备制造业的若干意见, 为未来我国装备制造业的崛起提供了政策支持。 比如上海振华港机生产的港口起重机占到全球70% 的市场。在“十一五”规划中我国2010年生产10万 台机床,实际在2007年就达到了12.33万台。如今 秉承“原始 创新,集成创新,再创新”的理念, 2007年我国机械产品出口额就达到1929.15亿美元, 超过日本、仅次于美国和德国。

2

基础知识回顾
1、程序编制: 依据:零件图、生产批量、机床、夹具等 确定:工艺过程、工艺参数、加工路线及加工中的辅助动 作,如换刀、冷却、夹紧、主轴正反转等 编程:按照加工顺序和数控机床规定的指令代码及程序格 式编成加工程序 2、程序编制的基本步骤:
确 定 加 工 工 艺 数 值 计 算 程编 序写 单加 工 程 序 输 入

零 件 图

首程 件序 试校 切验 和

3

3、程序的结构 数控加工零件程序是一组被传送到数控系统中去的 指令和数据。一个零件程序是由遵循一定结构、句法 和格式规则的若干个程序段组成的,而每个程序段是 由若干个指令字组成的。如图所示。
程序

% 1000 N 01 G 91 G 00 X 50 Y60 N 10 G 01 X 100 Y 500 F150 S 300 M 03 程序段 N ...... N 200 M 02 指令字

图 5 程 序的 结 构

4

零件程序的结构组成如下:
%**** --------起始符

…… ---------程序段
M30 ---------结束符

一个零件程序必须包括起始符和结束符。
程序起始符:%符后跟程序号 程序段前加“分号(;)”表示该程序段被注释,系 统不执行此程序段。

5

4、程序格式:准备部分、加工部分和结束部分 准备部分: 程序号O 01~99→建立工件坐标系→选取刀具→ 主轴转动→冷却液打开→刀补、刀具快速趋近加工点。 加工部分:根据具体要加工零件的加工工艺,按照刀具切削 点位轨迹编写的加工程序段。 结束部分:取消刀补、刀具快退到程序起点(对刀点) → 主 轴停→ 冷却液关→程序结束。

6

5、数控机床坐标轴和运动方向

(1)、坐标和运动方向命名的原则 ? 机床坐标系永远假定刀具相对于静止的工件运动 ? 标准坐标系是右手直角笛卡儿坐标系统 ? 机床的某一部件运动的正方向,是增大工件与刀具 之间距离的方向 ? 刀具移动时,用不加“ ′”的字母表示运动方向;工 件移动时,用加“ ′”的字母表示运动方向。 ? 基本坐标轴:X, Y, Z; A, B, C(右手坐标系) ? 附加坐标轴: U, V, W; P, Q, R; D, E(平行或不 平行于X, Y, Z; A, B, C )
7

8

(2)、Z坐标的运动 由传递切削动力的主轴所规定
主轴带动刀具旋转:铣、钻、镗等
主轴带动工件旋转:车,磨等 如机床有几个主轴(如车削中心),选一垂直于 工件装夹面的主轴为主要主轴;如机床无主轴(龙门 刨床),Z坐标垂直于工件装夹面。

9

(3)、X坐标的运动 ? X坐标是水平的,它平行于工件的装夹面 ? 没有旋转刀具或旋转工件的机床,X坐标平行于主 要的切削方向,且以该方向为正向。 ? 对工件旋转的机床, X坐标的方向在工件的径向 上,且平行于横滑座。 ? 对刀具旋转的机床:如Z坐标是水平的,当从主要 刀具主轴向工件看时,+X指向右方;如Z坐标是 垂直的,对于单立柱机床,当从主要刀具主轴向 立柱看时,+X指向右方;对于龙门机床,当从主 要刀具主轴向左侧立柱看时,+X指向右方。

10

(4)、Y坐标的运动 根据X、Z坐标的运动方向,按照右手直角 笛卡儿坐标系统来确定 (5)、旋转运动的A、B、C 正向的A、B、C相应的表 示在X、Y、Z坐标的正方向上 按照右旋螺旋前进的方向
+C +Z +B

+Y

+A
+X

11

6、机床坐标系
是机床固有的坐标系,用G53表示。 ? 机床原点M(机械原点、机床零点):X=Y=Z=0的点,指 一个固定不变的极限点,是测量机床运动坐标的起始点(由 机床制造厂家确定,记录在说明书中,一般不变) ? 换刀点:是加工过程中自动换刀装置的换刀点。 可以是固定的(如加工中心) 可以是任意的(如数控车) ? 机床参考点R:X=XR,Y=YR,Z=ZR的点,一般位于最大加 工范围的边缘( 由机床制造厂家在机床上用限位开关和挡块 设置,并经精密测量确定),数控系统启动后可自动或手动 执行返回参考点R来间接建立机床坐标系(R点与M点关系固 定)。机床参考点R一般不同于机床原点M,但也可重合。
12

? 通常车床的机床零点多在主轴法兰盘接触面的中心,即主轴 前端面的中心上。 ? 数控铣床的机床零点因生产厂家而异,如有的就在机床的左 前上方,X、Y的正方向对着加工区间,刀具在Z轴负方向移 动接进工件。

13

7、工件坐标系
?

?

工件坐标系:又称编程坐标系,供编程人员使用,规定 工件坐标系是“刀具相对工件而运动”的刀具运动坐标 系。 工件零点:是工件坐标系的原点,只定义一个工件坐标 系时又称为编程零点,由程序员来确定。 建立工件坐标系: 使用G54~G59指令 装夹零件→测出工件零点在机床坐标系中的位置→ 用MDI方式 将测出数据输入偏置寄存器G54~G59中→编 程时直接调用相应的寄存器。 用G92建立工件坐标系 步骤:装夹零件→将刀尖置于对刀点P →给出P点在工件 坐标系OXYZ中位置→编程用G92X_Y_Z_确定工件坐标 系原点
14

?

8、数控加工编程中的数值计算
数学处理就是计算出零件轮廓上或刀具刀位点 (中心)轨迹上一些点的坐标数据、增量数据。 (1)编程的允许误差 (2)基点坐标的计算 (3)节点坐标的计算 (4)刀具中心轨迹的计算 (5)辅助计算

15

9、自动编程和手动编程
自动编程系统按语言性质分类可以分为两类: (1) 程序语言系统 以美国的APT语言为代表,通过规定的数控语言描述机床在 加工中的各种运动信息和加工信息,经过编译程序处理后, 得到特定机床数控系统的NC程序。这种编程直观性差,过程 复杂,不便于阶段性检查。 (2)图形交互式系统 以人机对话的方式,在输入的加工图形中指定加工部位,输 入相应的加工参数,计算机自动进行数学处理,生成刀具路 径,形成刀位数据文件,经后置处理转换成适合于特定机床 数控系统的加工程序,进行零件加工。这是一种可以直接将 零件的几何图形信息自动转换为数控加工程序的计算机辅助 编程技术。
16

?

要熟悉一个数控机床的控制系统,掌握手工编程方 法是最为有效的途径,因为不论是用数控语言进行 计算机辅助编程或是利用CAD/CAM软件进行计算 机自动编程,输出的源程序或刀位文件都必须经过 后置处理系统转换成机床控制系统规定的加工指令 程序格式。所以手工编程是自动编程的基础,自动 编程的许多核心经验来源于手工编程。

17

第四章 数控铣床编程
数控铣床加工范围: 1.轮廓加工:平面曲线和空间三维曲面 2.孔加工:钻、镗、锪、铰及攻螺纹 ? 数控铣床常用指令 1.轮廓加工:直线加工G01;圆弧进给G02/G03; 2.其他:快速定位G00;刀具半径补偿G41/G42; 镜像指令G24/G25;缩放指令G51/G50; 旋转变换G68/G69;子程序M98,M99。 3.孔加工(第六章讲) ? 数控铣床编程实例:轮廓加工
?

18

将以华中科技大学和武汉华中数控 有限公司共同研制和开发的华中I型数 控ZJK-7532铣床为例,介绍其数控系 统程序编制的指令和规则。

19

4.1数控铣床常用指令
4.1.1 快速定位(G00)和直线加工(G01)
(1)快速定位指令格式: G00 X Y Z 。 以机床自身设定的最大移动速度沿直线或折线移动, 移动中不加工。 X Y Z 为终点坐标。 (2)直线加工指令格式: G01 X Y Z F 。 以给定的切削速度F 沿直线进给到X Y Z 指定点。 注:1. G00,G01为模态指令 2. F为模态代码,指定切削速度:在G00或新的F指令 出现以前,一直有效。

20

3. G00指令刀具相对于工件从当前位置以各轴预先设定的快移

进给速度移动到程序段所指定的下一个定位点。
G00指令中的快进速度由机床参数对各轴分别设定,不能用

程序规定。由于各轴以各自速度移动,不能保证各轴同时到
达终点,因而联动直线轴的合成轨迹并不总是直线。

快移速度可由面板上的进给修调旋钮修正。
G00一般用于加工前快速定位或加工后快速退刀。

G00为模态功能,可由G01、G02、G03或G33功能注销。
21

坐标平面选择G17,G18,G19 ? 格式:G17 G18 G19 该指令选择一个平面,在此平面中进行圆弧插补和刀 具半径补偿。 G17选择XY平面,G18选择ZX平面,G19选择YZ平面。 移动指令与平面选择无关。例如在规定了G17 Z_时, Z轴照样会移动。 G17、G18、G19为模态功能,可相互注销,G17为缺省值。

22

4.1.2 圆弧进给(G02/G03)
1.圆弧进给指令格式: G17 G02 G18 G19 说明:
(1)逆着⊥坐标面坐标轴正向看: G02为顺时针进给:由起点→终点 绕圆心顺时针进给; G03为逆时针进给:由起点 →终点 绕圆心逆时针进给。

X Y I_J _; XY平面圆弧,G17可省略 X Z I K _ ;ZX平面圆弧 Y_Z_J_K_ ;YZ平面圆弧 Y
G03 G02

G03

X

23

(2) X Y Z 为圆弧终点坐标 (3) I J K 为圆心相对圆弧起点的增量坐标 (4)圆心位置也可用圆弧半径R表示:圆心角>180°R 为负,<180 °R为正,=180 °正负均可。 (5)整圆编程时只能用I、J、K,不能用R。 Y 例:整圆编程

G90 G02 X30 Y0 I-30 J0 F100

X

24

2.螺旋线进给指令格式
G17 G02 G18 G19 G03 Y_Z_J_K_X_ ;YZ平面圆弧 Z Z_ Y_ X_ :为⊥圆弧面坐标轴的进给量。 例:G90 G17 G03 X30 Y30 I-30 J0 Z30 F100 O
终点

X Y I_J _Z_;XY平面圆弧,G17可省略
X Z I_K _Y_;ZX平面圆弧

30
30

30
起点

Y

X
25

G02为顺时针圆弧插补,G03为逆时针圆弧插补; 顺时针或逆时针是从垂直于圆弧所在平面的坐标轴的 正方向看到的刀具运动方向。如图22所示。

Y G03

X G03 G02 G02

Z

G03

G02

O

X

O

Z

O

Y

图 22 不同平面的 G02 与 G03 选择

26

4.1 3.刀具半径补偿指令(G40、G41/G42)
指令格式: (1)G00/G01 G41/G42 D X Y F ;建立刀具补偿 (2)G00/G01 G40 X Y ;取消刀具补偿 注:1. G41刀具半径左补偿指令:沿 着进给方向看,刀具在工件左侧; 2. G42刀具半径右补偿指令:沿 着进给方向看,刀具在工件右侧。

Y

G42 G41
刀具 刀具

工件

X

27

补偿量 刀具旋转方向 刀 具 前 进 方 向 补偿量 在前进方向 右侧补偿

刀 具 前 进 方 向

刀具旋转方向

(a) 图 31 刀 具 补 偿 方 向 (a)左 刀 补 (b)右 刀 补

(b )

28

刀具半径补偿指令用途
编程时可不考虑刀具半径,按刀具中心轨迹编程 ? 简化粗加工程序的编制 编程注意事项: Y 1.只能在G00或G01指令下 建立或取消刀补
?

2.建立刀补时,必须有连续 两段的平面位移指令,以计算建 立(或取消)刀补的起点和终点 坐标,即数控系统要连续读入 两段平面位移指令,才能正确 计算出进入刀补状态时刀具中 心的偏置位置,否则将无法正 确建立刀补状态。

R3=R R2 R1

X

29

例:见图32所示的刀具半径补偿程序。设加工开始时刀 具距离工件表面50mm,切削深度为10mm。
Y A b B

50 N4

40 a N3 N5 c

30 N6 20 d N7 10 与 D01 对 应 的 补 偿 量 N2 10 20 30 40 50 X C

O

图 32

刀补 动 作

30

?

按增量方式编程

N10 G92 X0.0 Y0.0 Z50 N20 G91 G17 G00 由G17指定刀补平面 N30 G41 X20.0 Y10.0 D01 由刀补号码D01指定刀补—刀补启动 N35 Z-48 M03 S500 N38 G01 Z-12 F200 N40 G01 Y40.0 F100 进入刀补状态 N50 X30.0 N60 Y-30.0 N70 X-40.0 N80 G00 Z60 M05 N85 G40 X-10.0 Y-20.0 解除刀补 N90 M30
31

?

按绝对方式编程

N10 G92 X0.0 Y0.0 Z50 N20 G90 G17 G00 由G17指定刀补平面 N30 G41 X20.0 Y10.0 D01 启动刀补 N35 Z2 M03 S500 N38 G01 Z-10 F200 N40 G01 Y50.0 F100 刀补状态 N50 X50.0 N60 Y20.0 N70 X10.0 N80 G00 Z50 M05 N85 G40 X0 Y0 解除刀补 N90 M30
32

4.1.4 子程序
(1)主程序调用格式:M98 P L_
P后面的数字为子程序号,L后面的数字为调用次数。

(2)子程序形式:
O10 ;子程序号 …… M99;子程序结束并返回主程序。

(3)注意事项:
? 主程序可调用子程序,子程序可调用其它子程序,最多可8重调用 ? 主程序中模态代码可被子程序中同一组代码所更改

? 最好不要在刀补状态下调用子程序。

(4)子程序的用途:
? 一个零件图形上有几个相同的几何图形 ? 一个零件上的几个位置需要不同的刀具反复加工
33

4.1.5 简化编程指令
1、镜像指令
? ?

O001;主程序 …… M98 P100; 调用程序号为100的 子程序加工块1 G24 X0;以Y为对称轴

建立镜像:G24 X_ Y_ Z_; 取消镜像:G25 X_ Y_ Z_; X_ Y_ Z_为对称轴

例:加工如图所示零件
Y

M98 P100 ;加工块2
G25 X0;取消Y轴镜像 G24 X0 Y0 ;以原点为对称轴

2

1
X

M98 P100 ;加工块3 G25 X0 Y0 ;取消原点镜像 G24 Y0 ;以X为对称轴 M98 P100 ;加工块4 G25 Y0 ;取消X轴镜像 ……
34

3

4

2、缩放功能
?

?

建立缩放:G51 X_Y_Z_P_ ; X_Y_Z_为缩放中心, P_ 为缩放倍数;P=待缩放加工尺寸/原加工尺寸 取消缩放:G50 缩放不能用于补偿量,并且对A、B、C、U、V、W 轴无效。

…… G51 X_ Y_ P2 M98 P100; P100为加工内△子程序 G50 ……
35

Y

X

3、旋转变换
?

建立坐标旋转:G68α_β_P_;(α,β)为旋转中心,P为旋转角
度 (°),0≤P ≤ 360.000 °

?

取消坐标旋转功能: G69 先旋转再刀补;先缩放再旋转。

O001 …… M98 P100 G68 X0 Y0 P45;旋转45度

Y
3

M98 P100;加工2 G69;取消旋转 G68 X0 Y0 P90;旋转90度

M98 P100;加工3

45°

X
1

G69;取消旋转 …… %100;子程序 …….
36

4.2 数控铣床编程举例
20

w Y
25 25 R 15 15 0

X

12 0

如图所示零件 以φ30的孔定位 精铣外轮廓
Y w

对 刀 点

暂不考虑刀具补偿 10
w
4- φ 8 15 20

10

Z

基本指令编程举例 Z

10

R10 R 10

60

1 60

28

φ 30

w
75 1 50 30

20

X

80 12 0

37 槽 内转 角 均为 R5,对 刀 点同

15

10

%0001

主程序号 建立工件坐标系,编程零点w 快进到X=100,Y=60 Z轴快移到 Z= -2,主轴

程 序 头

G92 X150.0 Y160.0 Z120.0 G90 G00 X100.0 Y60.0 Z-2.0 S100 M03 G01 X75.0 F100

直线插补至 X= 75,Y= 60, 直线插补至 X= 35,Y= 60 顺圆插补至 X=15,Y=60 直线插补至 X=15,Y=70 逆圆插补至 X= -15,Y=70 直线插补至 X= -15,Y=60 顺圆插补至 X= -35,Y=60 直线插补至 X= -75,Y=60
38

X35.0

程 序 主 干

G02 X15.0 R10.0 G01 Y70.0

G03 X-15.0 R15.0
G01 Y60.0 G02 X-35.0 R10.0

G01 X-75.0

Y0 X45.0 X75.0 Y20.0 Y65.0 G00 X100.0 Y60.0

直线插补至 X= -75,Y=0处 直线插补至 X= 45,Y=0

直线插补至 X= 75,Y=20
直线插补至 X=75,Y=65,轮廓完 快速退至 X=100,Y=60的下刀处 快速抬刀至 Z=120的对刀点平面 快速退刀至对刀点 程序结束,复位。

程 序 尾

Z120.0 X150.0Y160.0 M05 M30

39

例 试编写图示零件的内外轮廓的精加工程序。 刀具直径为φ20mm。(P.50 例4-12)
240 145 Y
A B
O

10 5 Y 4

X
O

Z

刀补段

40

例题程序说明:
?

?
? ? ? ?

内轮廓切入点在几何图线的交点上,以防留下切痕。 内轮廓沿弧线切出,以防过切。 在第一行必须写上程序名,如:O01或%01 M09---冷却液关,M08 ---冷却液开 M03---主轴顺时针启动, M04---主轴逆时针启动 M02---程序停止

还可参看课本 P52 例4-13。

41

下面将以加工凸轮的实例介绍铣床加工零件的全过程

加工如下图所示的凸轮,毛坯是经过预先铣削加工过的规则铝板,且φ20、 φ10孔已加工,尺寸为105mm×105mm×6mm。

φ10

R20

R50

R30

φ20

6

42

根据图纸要求,毛坯情况制定如下加工方案:
?

加工机床的选择:使用国产立式数控铣床。型号: XZK7532A(数控系统为华中I型)。
装夹方式:由于该零件有两个孔,可做一个一面两销简单夹 具,其中φ10孔处为菱形销。定位夹紧示意图如图6-13所示。 应该注意,由于在加工过程中,切削力是由螺栓螺帽拧紧在 夹具、工件、垫板之间的摩擦力承受的,因此在不影响周边 铣削的情况下,夹具、垫板的面积尽可能选大一些。

?

43

?

刀具的选择:由于是外轮加工,选用立铣刀,又因为该零 件轮廓较简单,所以刀具直径和长度的选择只需考虑刀具 的刚度,在保证加工过程刀杆、刀具与垫板不发生干涉的 情况下,刀具的长度尽可能短。据此,刀具直径选Φ12, 长度选50mm。 加工路线:由于零件轮廓较简单,只需考虑切入和切出的 方式。按工艺原则的要求,切入和切出段尽可能与零件轮 廓相切,以避免直接切入和切出时在工件上留下刀痕。加 工路线如图6-12中的所示。

?

44

? ?

切削用量:主轴转速600rpm,进给速度200mm/min。 加工程序的编制
?

确定工件坐标系。选择凸轮φ20孔圆心(即夹具上芯轴的中 心)为X、Y轴零点,工件表面为Z轴零点,建立工件坐标系。 起刀点选在O点,其Z坐标值要视装夹螺栓的高度而定,这里 假定螺栓伸出高度的Z坐标值为30mm(即螺栓顶端到工件表 面的距离),则起刀点Z坐标值可定为35(mm)。参见下图 6-12、图6-13 。
Y

H(-20,50)

B

A(60,50)

G F O D E X

C

图6-12 加工轨迹图

45

?

?

数学处理。在编制程序之前要计算每一圆弧的起点坐标 和终点坐标值,有了坐标值方能正式编程。计算过程此 处不再赘述,算得的基点坐标分别为G(18.856, 36.667), F(28.284,10.000), E(28.284,-10.000),D(18.856, 36.667)。 零件程序编制。根据算得的基点和设定的工件坐标系, 编制的零件加工程序如下:

%0001 零件程序号 #101=6; 设置φ12立铣刀的刀补值(半径) N01 G92 X0 Y0 Z35;? 建立工件坐标系 N02 G90 G00 G42 D101 X60.0 Y50.0;快速由点O移到点A(60,50, 35),并建立刀补 N03 Z-7.0 M03 F500 S600; 由点A下刀到(60,50,-7) N04 X0 Y50.0; 由点A到点B,切入 N05 G03 Y-50.0 J-50.0; 加工圆弧BC

46

N06 G03 X18.856 Y-36.667 R20.0; N07 G01 X28.284 Y-10.0; N08 G03 X28.284 Y10.0 R30.0;

加工圆弧CD 加工直线DE 加工圆弧EF

N09 G01 X18.856 Y36.667; 加工直线FG N10 G03 X0 Y50.0 R20.0; N11 G01 X-20.0; N12 G00 Z35.0; 加工圆弧GB 由点B到点H,切出 抬刀

N13 G40 X0 Y0 M05;
N14 M30 ;

取消刀补,回到对刀点O
程序结束

47

?

加工操作
? ?

?

机床各轴回参考点。建立机床坐标系 夹紧立铣刀。然后在工作台上安装夹具,并调整夹具的芯轴 和销钉中心的连线与Y方向平行。 对刀操作: ? 调整机床使主轴中心与夹具芯轴中心同心。此时,屏幕上 “机床坐标系”项目下显示的X、Y轴的值即为工件原点 与机床原点X、Y轴的偏置值。记下此数据。 ? 按图6-13所示安装工件,然后启动主轴,并手动操作X或 Y轴,将刀具移到工件毛坯将被切掉的某一位置的上方, 再缓慢下降Z轴,当刀具端面与工件表面接触时,表示已 找到工件坐标系Z轴的零点,此时,屏幕上“机床坐标系” 项目下显示的Z轴的值即为工件原点与机床原点Z轴的偏 置值。记下此数据

48

?

先将Z轴抬高35mm,然后使X、Y轴移到工件原点,此时,刀具已处 在起刀点的位置了。
刀具 Z 螺栓 螺帽

垫板 工件 35

30 Y

夹具

图6-13 工件装夹示意图

49

?

输入凸轮加工程序,并进行程序检验(语法检查、空
运行等)、修改,直至程序无错误。 试切并检查零件是否合格,若合格,则说明该程序正 确。否则应分析原因并采取相应措施。

?

50

4.3 用户宏程序
?

用户宏程序:含有变量的子程序叫做用户宏程序

?

用户宏指令:在程序中调用用户宏程序的那条指令叫做用户宏指


?

用户宏功能:系统可以使用用户宏程序的功能叫做用户宏功能 用户宏程序包含有:变量、变量的运算、变量的函数、变量
的赋值、转向语句,此外宏程序还提供了循环语句、分支语句 和子程序调用语句,利于编制各种复杂的零件加工程序,减少 乃至免除手工编程时进行繁琐的数值计算,以精简程序量。

变量:用一个可赋值的代号代替具体的数据,这个代号称为变量。
变量的代号应按系统的规定设置

51

1、变量及常量
公共、局部、系统变量及常量

(1)公共变量:指在主程序内和由主程序呼出
的各用户宏程序内公用的变量。 可在一个文件中 使用,可用操作面板人工设定它的值,可在光屏上 显示其即时值 HNC—21T数控车床:#50~#199 HNC—1M数控铣床:#50~#99

? ?

52

(2)局部变量
? 局部变量:局限于在用户宏程序内使用的变量。 ?只能在当前程序号包括的程序段中使用。主程序中的变 量不能在子程序中使用,反之亦然。 ? 赋值:a.在呼出宏程序的宏指令中赋值 b.在宏程序中直接赋值 ?有的系统可在光屏上显示其即时值,如FNUC系统。
? ?

HNC—21T数控车床:#0~#49 HNC—1M数控铣床:#0~#49

53

(3)系统变量
系统变量:固定用途的变量,它的值决定系统的状态,由系 统说明书规定。包括1)接口的输入/输出变量;2)刀具 形状补偿变量

(4)常量
PI :圆周率

TRUE:真
FALSE:假

54

变量号分配表
变量类型
刀补号100~199的补偿值

变量号范围
#100~#199

刀具长度寄存器H00~H99 #600~#699 刀具半径寄存器H00~H99 #700~#799 刀具寿命寄存器H00~H99 #800~#899 0层局部变量 1层局部变量 2层局部变量 3层局部变量 …… #200~#249 #250~#299 #300~#349 #350~#399 ……

7层局部变量

#550~#599

55

2、变量的运算
? ? ? ?

?

算术运算符 + - * / 条件运算符 EQ(=),NE(≠),GT(>),GE(≥),LT(<),LE(≤) 逻辑运算符 AND,OR,NOT 函数 SIN,COS,TAN,ATAN,ATAN2,ABS,INT, SIGN,SQRT,EXP 表达式 用运算符连接起来的常数,变量构成的表达式。例如: 175/SQRT[2]*COS[55*PI/180]; #3*6GT14

56

3、赋值语句
?
?

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

把常数或表达式的值送给一个宏变量称为赋值。 例如: #2= 175/SQRT[2]*COS[55*PI/180]; #3=124.0

4、条件语句
格式(1): IF 条件表达式 …… 格式(2): IF 条件表达式 ……

ELSE
…… ENDIF

ENDIF

57

5、循环语句
格式: WHILE 条件表达式 …… ENDW

58

6、子程序调用的参数传递规则
调用宏(或子程序,或固定循环)时,系统会将当前程序 行各字段(A~Z,如果没有定义则为零)的内容拷贝到宏执行 时的局部变量#0~#25,同时拷贝调用宏时当前通道九个轴 的绝对位置(机床绝对坐标)到宏执行时的局部变量#30~#38。
子程序当前局部变量号 调用子程序时所带的字段名或系统变量 #0~#25 #26 A~Z 固定循环指令初始平面Z模态值

#30~#38

调用子程序时轴0~8的绝对坐标
轴0~2:X、Y、Z,直线进给轴

注:

轴3~5:A、B、C,旋转进给轴
轴6~8:U、V、W,直线进给轴
59

当前局部变量#0~#38对应的宏调用量传递的字段参数名
宏当前 局部变 量 #0 #1 #2 #3 #4 #5 #6 #7 #8 #9 #10 #11 #12 宏调用时传 递的字段名 或系统变量 A B C D E F G H I J K L M 宏当前 局部变 量 #13 #14 #15 #16 #17 #18 #19 #20 #21 #22 #23 #24 #25 宏调用时传 递的字段名 或系统变量 N O P Q R S T U V W X Y Z 宏当前 局部变 量 #26 #27 #28 #29 #30 #31 #32 #33 #34 #35 #36 #37 #38 宏调用时传递的字段名 或系统变量 固定循环指令初始平面Z模态值 不用 不用 不用 调用子程序时轴0的绝对坐标 调用子程序时轴1的绝对坐标 调用子程序时轴2的绝对坐标 调用子程序时轴3的绝对坐标 调用子程序时轴4的绝对坐标 调用子程序时轴5的绝对坐标 调用子程序时轴6的绝对坐标 调用子程序时轴7的绝对坐标 调用子程序时轴8的绝对坐标
60

系统宏AR[ ]
用途:对于每个局部变量都可用系统宏AR[]来判别该 变量是否被定义,是被定义为增量或绝对方式。 调用格式:AR[#变量号] 返回:0: 表示变量没有被定义 90:表示变量被定义为G90绝对方式 91:表示变量被定义为G91相对方式

61

子程序调用的参数传递规则举例
下面的主程序O1000 在调用子程序O9990 时设置了I、 J、K 之值子程序 O9990 可分别通过当前局部变量#8 #9 #10 来访问主程序的I 、J、 K 之值

%1000 G92 X0 Y0 Z0 M98 P9990 I20 J30 K40 M30 %9990 IF [AR[#8] EQ 0] OR [AR[#9] EQ 0] OR [AR[#10] EQ 0]; 如果没有定义 IJK值 M99 ; 则返回 ENDIF N10 G91 ; 用增量方式编写宏程序 IF AR[#8] EQ 90 ; 如果I 值是绝对方式G90 #8=#8-#30 ;将I 值转换为增量方式, #30 为X 的绝对坐标 ENDIF M99 62

7、宏程序编程举例
例1 :切圆台与方台。要求方台 与圆台相切,圆台在方台之上。 各自加工3个循环。
Z O X O001 #10=10.0;圆台高度 #11=10.0 ;方座高度

#12 =124.0;对刀点X坐标
#13=124.0 ;对刀点Y坐标 #701==13.0;刀具直径1 #702=10.2 ;刀具直径2

Y

#703=10.0 ;(实际)刀具直径3 N01 G92 X0.0 Y0.0 Z50.0

O

X

N03 S600 M03 N05 G00 Z10.0

63

7、宏程序编程举例
加工圆台 Z O #0=0;铣削次数记数 X

N06 G00 X[-#12]Y[-#13];至对刀点
N07 Z[-#10];Z向进刀切圆台 WHILE #0 LT 3;径向进刀切圆台3次

N[8+#0*6]G01 G42 X[-175/2]Y[-175/2]D70[#0+1]F280.0
Y N[9+#0*6]X0 Y[-175/2] N[10+#0*6]G03 J[175/2]
124

O

XN[11+#0*6]G01 X[175/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
64

7、宏程序编程举例
Z O X

加工方座: N50 Z[-#10-#11];Z向进刀加工方座 #0=0; N51 G00 X[-#12]Y[-#13] WHILE #0 LT 3

N[61+#0*6]G01 G42 X[-175/2]Y[-175/2]D70[#0+1]F280.0
N[62+#0*6]G91 X175 Y X O
124

N[63+#0*6]Y175 N[64+#0*6]X-175 N[65+#0*6]Y-175 N[66+#0*6] G00 G90 G40 X[-#12] Y[-#13] #0=#0+1 ENDW N200 G00 Z50 M05 N201 G00 X0 Y0 M06 N201 M02
65

例2:根据以下数据,利用用户宏程序功能加工圆周等分孔。如图:在半径为 50mm的圆周上均匀地钻8个ф10的等分孔,第一个孔的起始点角度为30°,设圆心 为O点,以零件的上表面为Z向零点。

加工主程序为: O6100 #502=50 ;分度圆半径r为50; #503=30 ;起始角度α为30°; #504=8 ;孔数N为8; #505=-20; 孔底Z坐标值为-20; #506=5 ;R平面Z坐标值为5; #507=50 ;F进给量为50 N10 G54 G90 G00 X0 Y0 Z20 N20 M98 P9010 N30 G00 G90 X0 Y0 N40 Z20 N50 M30

图 圆周等分孔
66

O9010 #100=0 ;#100,孔记数n #101=ABS[#504] ;孔数N #102=360/ABS[#504] ;#102 ,孔间角△α N130 #103 = #502 *COS[#503] ;当前孔的 X坐标 #104 = #502 *SIN[#503] ;当前孔的Y坐标 N180 G90 G00 X#103 Y#104 ;定位到当前孔(返回开始平面) N190 G00 Z#506 ;快速进到R平面 N200 G01 Z#505 F#507 ;加工当前孔 N210 G00 Z#506 ;快速退到R平面 #100= #100+1 ;孔计数 #503 = #503 + #102;下一孔角度位置 αn+1 =αn+ △α IF #100 LT #101 ;当#100 < #101时,向上返回到130程序段 GOTO N130 ENDIF N240 M99 ;子程序结束
67

子程序的另一种写法: O9010 #100=0 ;#100,孔记数 #101=ABS[#504] ;孔数N #102=360/ABS[#504] ;#102 ,孔间角△α WHILE #100 LT #101 #103 = #502 *COS[#503] ;当前孔的 X坐标 #104 = #502 *SIN[#503] ;当前孔的Y坐标 N180 G90 G00 X#103 Y#104 ;定位到当前孔(返回开始平面) N190 G00 Z#506 ;快速进到R平面 N200 G01 Z#505 F#507 ;加工当前孔 N210 G00 Z#506 ;快速退到R平面 #100= #100+1 ;孔计数 #503 = #503 + #102;下一孔角度位置 αn+1 =αn+ △α ENDW N240 M99 ;子程序结束
68

宏指令编程例3--系列椭圆
系列椭圆加工:x2/a2+y2/b2=1 x=a×COSα y =b×SINα %0001 #0=5 (定义刀具半径R值) #1=20 (定义a值) #2=10 (定义b值) #3=0 (定义步距角α的初值,单位:度) N1 G92 X0 Y0 Z10 N2 G00 X[#0+#1] Y[#0+#2] N3 G01 Z0 N4 G41 X[#1] N5 WHILE #3 GE [-360] N6 G01 X[#1*COS[#3*PI/180]] Y[#2*SIN[#3*PI/180]] N7 #3=#3-5 ENDW G01 G91 Y[-#0] G00 Z10 M30
α

69

作业:P.53 1,3(图4-17),5 P.54 6,7

70


相关文章:
第3章 数控铣床的操作与编程
第3章 数控铣床的操作与编程_机械/仪表_工程科技_专业资料。数控车床第3 章 数控铣床的操作与编程 3.1 数控铣床及其组成 3.1.1 数控铣床的类型及基本组成 1.数...
数控铣床FANUC系统编程代码
第四章 FANUC-Oi-MD 系统数控铣床编程 1.1 常用编程指令 一:准备功能(G ...3 选择 非模态 非模态 模态 模态 模态 模态 模态 模态 非模态 模态 模态 ...
数控铣床编程实例_图文
第五节 实例一 数控铣床编程实例(参考程序请看超级链接) 毛坯为 70 ㎜×70 ㎜×18 ㎜板材, 六面已粗加工过, 要求数控铣出如图 3-23 所示的槽, 工件材料为...
模块一 数控铣床基础知识3
模块一 数控铣床基础知识3_计算机软件及应用_IT/计算机_专业资料。模块一项目目标 1. 2. 3. 4. 数控铣床基础知识 了解数控铣床组成和工作原理。 掌握编程的基本...
数控操作与编程作业三03版
5、程序都是由程序号、程序内容和程序结束三部分组成。 6、除了换刀程序外,加工中心的编程方法和数控铣床编程方法基本相同。 7、恒线速控制的原理是当工件的...
数铣编程实例(3个例子)
数铣编程实例(3个例子) 数控铣床编程的几个实用例题数控铣床编程的几个实用例题隐藏>> 铣削零件如下图所示 毛坯为 120 ㎜×60 ㎜×10 ㎜板材,5 ㎜深的外轮廓...
华中数控铣床编程与操作-3
华​中​数​控​​床​编​程​与​操​作​-​3 暂无评价|0人阅读|0次下载|举报文档第三章 HNC-21M 的编程指令 3.1 辅助功能 M ...
第三章 数控铣床编程基础
第三章 一. 数控铣床的坐标系 1.机床坐标系 数控铣床编程基础 数控铣床是以主轴轴线方向为 Z 轴方向,刀具远离工件的 方向为 Z 轴正方向 X 轴位于与工件安装...
数控操作与编程作业三答案03
数控操作与编程作业三答案 一、名词解释(每题4分,共16分) 1、机床坐标系原点...T 6、除了换刀程序外,加工中心的编程方法和数控铣床编程方法基 本相同。T ...
3数控铣床实习教案
3数控铣床实习教案_工学_高等教育_教育专区。课题名称 授课日期 授课时数 授课...倒角指令编程(重点) 2. 刀具半径补偿指令使用(重点、难点) 3. 尺寸控制(重点...
更多相关标签:
数控铣床编程实例有图 | 数控铣床编程简单图案 | 数控铣床编程跑车图案 | 数控铣床编程切五角星 | 数控铣床简单编程实例 | 数控铣床编程实例 | 数控铣床编程 | 数控铣床编程学习 |