FANUC宏程序详解

合集下载

FANUC系统宏程式详解

FANUC系统宏程式详解

宏程序的简单调用格式:格式:G65 P程序序号 L重复次数变量分配1.If [条件表达式] GOTO n2.While [条件表达式] DO mEnd m运算符号相等:EQ 不等于: NE 大于:GT 小于:LT 大于等于:GE 小于等于:LEFANUC系统宏程式FANUC系统宏程序编程一变量普通加工程序直接用数值指定G代码和移动距离;例如,GO1和X100.0。

使用用户宏程序时,数值可以直接指定或用变量指定。

当用变量时,变量值可用程序或用MDI面板上的操作改变。

#1=#2+100G01 X#1 F300说明:变量的表示计算机允许使用变量名,用户宏程序不行。

变量用变量符号(#)和后面的变量号指定。

例如:#1表达式可以用于指定变量号。

此时,表达式必须封闭在括号中。

例如:#[#1+#2-12]变量的类型变量根据变量号可以分成四种类型变量号变量类型功能#0 空变量该变量总是空,没有值能赋给该变量.#1-#33 局部变量局部变量只能用在宏程序中存储数据,例如,运算结果.当断电时,局部变量被初始化为空.调用宏程序时,自变量对局部变量赋值,#100-#199 #500-#999 公共变量公共变量在不同的宏程序中的意义相同.当断电时,变量#100-#199初始化为空.变量#500-#999的数据保存,即使断电也不丢失.#1000 系统变量系统变量用于读和写CNC运行时各种数据的变化,例如,刀具的当前位置和补偿值.变量值的范围局部变量和公共变量可以有0值或下面范围中的值:-1047到-10-29或-10-2到-1047如果计算结果超出有效范围,则发出P/S报警NO.111.小数点的省略当在程序中定义变量值时,小数点可以省略。

例:当定义#1=123;变量#1的实际值是123.000。

变量的引用为在程序中使用变量值,指定后跟变量号的地址。

当用表达式指定变量时,要把表达式放在括号中。

例如:G01X[#1+#2]F#3;被引用变量的值根据地址的最小设定单位自动地舍入。

发那科用户宏程序资料知识讲解

发那科用户宏程序资料知识讲解
发那科用户宏程序资料
2
3
一、变量
1、变量
使用用户宏程序时,数值可以直接指定或用 变量指定。当用变量时,变量值可用程序或用 MDI面板上的操作改变。
#1=#2+100;
G01 X#1 F300;
2、变量的表示
计算机允许使用变量名,用户宏程序不行。 变量用变量符号(#)和后面的变量号指定。
表达式可以用于指定变量号。此时,表达式 必须封闭在括号中。
6
被引用变量的值根据地址的最小设定单位自 动地舍入。
例如: G00 X#1, 以1/1000mm的单位执行时, CNC把12.3456赋值给变量#1,实际指令值为 G00 X12.346;。
改变引用变量的值的符号,要把负号(一)放 在#的前面。
例如:G00 X-#1;
当引用未定义的变量时,变量及地址字都被 忽略。
②ARCCOS #I=ACOS[#j] 取值范围
180°~0°
26
3π/2 π
π/2
-1 0 1
π/2 -1
01 -π/2
π π/2 -1 0 1
27
③ ARCTAN #i=ATAN[#j]/[#K]; 取值范围 当No.6004.0=0时 :0°~360° No.6004.0=1时 :-180°~180°
●在NC语句地址中,ROUND函数根据地值得最小设 定单位指定四舍五入。
例如 #1=1.2345;
#2=2.3456;
G00 G91 X-#1;
G01 X-#2 F300;
G00 X[#1+#2];
1.2345+2.3456=3.5801=3.580不返回到初始位置
或 G00 X-[ROUND[#1]+ROUND[#2]]

FANUC宏程序详解

FANUC宏程序详解

FANUC宏程序详解在FANUC系统中,宏程序是一种非常重要的功能,通过编写宏程序,我们可以让机器在无人值守的情况下完成一系列复杂的操作。

本文将对FANUC宏程序进行详细地介绍,包括宏程序的作用、编写方法、语法规则等方面。

1. 宏程序的作用宏程序是指一组可以重复使用的指令序列,通常用于执行一些常见的任务,例如生产线上的自动化操作、零件加工等。

通过编写宏程序,我们可以节省大量的时间和人力成本,提高整个生产线的效率和产能。

在FANUC系统中,宏程序主要有以下两个作用:1.1 缩短程序编写时间FANUC系统使用G代码编写程序,编写复杂的G代码序列会消耗大量的时间和精力。

而宏程序可以将常用的代码封装起来,减少了程序的编写时间。

例如,在加工中心上,我们可以编写一个宏程序来完成换刀操作,这样就可以省去手动编写换刀程序的时间。

1.2 提高工作精确度宏程序可以确保在每一次执行相同的任务时保持一致性,从而提高工作的精确度和可靠性。

例如,在装配生产线上,我们可以编写一个宏程序来完成紧固螺丝的操作,这样就可以确保每次紧固力度一致,避免螺丝过紧或过松的情况发生。

2. 编写宏程序在FANUC系统中,我们可以通过两种方式来编写宏程序:手动编写和自动生成。

手动编写是指通过手工输入代码来编写宏程序,而自动生成则是指通过FANUC系统自动生成宏程序。

2.1 手动编写手动编写是编写宏程序的最常见方式。

在手动编写宏程序时,我们需要按照FANUC系统的语法规则来编写G代码序列,并保存在一个文件中。

一般情况下,宏程序的文件扩展名为“.mac”。

以下是一个简单的宏程序:O1234G00 X10 Y10G01 Z-5 F500M30上述宏程序的功能是将机器头移动到坐标(10,10)点处,然后向下移动5个单位,同时切削速度为500,最后停止机床。

2.2 自动生成除了手工编写宏程序,我们还可以通过FANUC系统自动生成宏程序。

在FANUC系统中,系统提供了各种预制宏程序,我们可以在需要的时候直接调用这些宏程序。

FANUC用户宏程序[谷风详析]

FANUC用户宏程序[谷风详析]
• 4.刀补400个:补偿个数为400, #10001~#10400
特制分析
40
BEIJING-FANUC
刀具补偿(M)
• 刀具补偿存储器A,参数8136#6 ★
★为0i-D 适用
特制分析
41
BEIJING-FANUC •刀补补偿存储器C,参数8136#6=0;6000#3=0 ★
特制分析
42
BEIJING-FANUC
BEIJING-FANUC
一、接口信号
.. .
特制分析
31
BEIJING-FANUC
特制分析
32
BEIJING-FANUC
特制分析
33
BEIJING-FANUC
...
特制分析
34
BEIJING-FANUC
特制分析
35
BEIJING-FANUC
特制分析
36
BEIJING-FANUC
举例
特制分析
• 公共变量的写保护:参数6031~6032 ★对#500~#999进行保护, 属性为READ,以防止输入/全清的误操作.
• 系统变量:在系统中固定,属性有只读、只写、可读可写三种. • 系统常量:其值不变的常量,属性只读.
特制分析
13
BEIJING-FANUC
变量的显示
四、变量的显示与设定
1).按下MDI面板上 的功能键 OFFSET
嵌套
宏程序 可使用变量 G65 P_ L _<自变量赋值> ;
M99; 4重
0i-D:5重★
子程序 不可以使用变量
M98 P_ _; M99; 4重
注释:★为0i-D、30i系列的新增功能
特制分析

FANUC系统宏程式详解

FANUC系统宏程式详解

宏程序的简单调用格式:格式: G65 P 程序序号 L 重复次数变量分配变量对照表控制命令1. If [ 条件表达式 ] GOTO n2. While [ 条件表达式 ] DO mEnd m 运算符号相等:EQ 不等于: NE 大于:GT小于:LT 大于等于: GE 小于等于: LEFANUC系统宏程式FANUC系统宏程序编程一变量普通加工程序直接用数值指定G代码和移动距离;例如,GO1和X100.0 。

使用用户宏程序时,数值可以直接指定或用变量指定。

当用变量时,变量值可用程序或用MDI 面板上的操作改变。

#1=#2+100G01 X#1 F300 说明:变量的表示计算机允许使用变量名,用户宏程序不行。

变量用变量符号(例如:#1表达式可以用于指定变量号。

此时,表达式必须封闭在括号中例如:#[#1+#2-12]变量的类型变量根据变量号可以分成四种类型变量号变量类型功能#0空变量该变量总是空, 没有值能赋给该变量.#1-#33局部变量局部变量只能用在宏程序中存储数据,例如,运算结果.当断电时, 局部变量被初始化为空.调用宏程序时, 自变量对局部变量赋值,#100-#199 #500-#999公共变量公共变量在不同的宏程序中的意义相同.当断电时,变量#100-#199 初始化为空.变量#500-#999 的数据保存, 即使断电也不丢失.#1000系统变量系统变量用于读和写CNC运行时各种数据的变化,例如, 刀具的当前位置和补偿值.变量值的范围局部变量和公共变量可以有0 值或下面范围中的值: -1047 到-10-29 或-10-2 到-1047 如果计算结果超出有效范围,则发出P/S 报警NO.111.小数点的省略当在程序中定义变量值时,小数点可以省略。

例:当定义#1=123 ;变量#1 的实际值是123.000 。

变量的引用为在程序中使用变量值,指定后跟变量号的地址。

当用表达式指定变量时,要把表达式放在括号中。

FANUC用户宏程序编程操作说明

FANUC用户宏程序编程操作说明

FANUC用户宏程序编程操作说明一、宏程序的概念和作用宏程序是一种FANUC机器人控制器中的编程语言,用于定义和执行一系列操作指令。

宏程序可以通过使用特定的编程语法,实现自动化的工作过程。

在机器人控制器上创建和调用宏程序可以有效提高生产效率,减少人力成本。

4.确认并保存宏程序。

确保没有语法错误,并将其保存在机器人控制器的内存中。

三、宏程序的调用和执行1.在主程序中调用宏程序。

可以使用特定的指令来调用已创建的宏程序,以便在工作流程中执行相关的任务。

2.配置宏程序的输入参数。

在调用宏程序之前,可以设置相关的输入参数,以便宏程序能够根据不同的情况执行不同的动作。

3.执行宏程序。

一旦宏程序被调用和配置完成,机器人控制器将根据宏程序中定义的指令序列依次执行相应的动作。

4.检查宏程序执行结果。

可以通过监视机器人、制作运动轨迹的视觉效果或通过输出信号检查机器人执行宏程序后的运动状态,确保宏程序的执行效果符合预期。

四、宏程序的调试和优化1.进行宏程序的语法和逻辑检查。

在调用和执行宏程序之前,可以使用FANUC机器人控制器提供的调试工具对宏程序进行语法和逻辑检查,以确保程序的正确性。

2.调整宏程序的时间和空间复杂度。

根据实际应用需求和机器人控制器的性能,可以对宏程序进行适当的优化,以减少程序执行时间和占用的内存空间。

3.进行宏程序的场景仿真。

在实际生产环境之前,可以使用机器人控制器提供的仿真工具对宏程序进行虚拟场景的测试,以确保宏程序的执行效果满足预期,同时减少实际生产中的错误和故障。

五、宏程序的应用示例1.示教和运动控制:通过将示教动作转化为相应的宏指令,可以实现机器人在特定位置和角度上的运动控制,以完成精确的操作。

2.任务自动化:将一系列任务步骤组织成宏程序,可以实现从物料处理到产品组装等一系列任务的自动化执行。

3.智能感应:通过编写合适的宏指令,可以实现机器人对环境的感知和判断,并根据实际情况自动调整动作和运动轨迹。

FANUC用户宏程序详解 PPT

FANUC用户宏程序详解 PPT
FANUC用户宏程序详解
主要内容:
一、变量 二、运算指令 三、控制指令 四、简单练习 五、系统变量 六、宏程序调用
主程序
宏程序
宏程序的适用范围:
✓ 形状类似但大小不同(圆、方及其它) ✓ 大小相同但位置不同(组孔、阵列等) ✓ 特殊形状(椭圆、球等) ✓ 自动化功能(刀具长度测量、生产管理等) ✓ 其它
用<空>赋值
当#1=<空>时
#2=#1 ↓ #2=<空>
#2=#1﹡5 ↓ #2=0
#2=#1+#1 ↓ #2=0
当#1=0时
#2=#1 ↓ #2=0
#2=#1﹡5 ↓ #2=0
#2=#1+# 1 ↓ #2=0
条件表达式 指令
#2 EQ #1 #2 NE #1 #2 GT #1 #2 LT #1 #2 GE #1 #2 LE #1
• 改变引用变量的值的符号,要把负号放在#的前面
G00 X-#1;
• 当引用未定义的变量时,变量及地址字都被忽略
G00 X#1 Y#2; 当#1=0,#2为空时,
G00 X0;
• 程序号、顺序号和任选程序段跳转号不能使用变量
O#1; N#3 Y200.0; /#2 G00 X10.;
4.未定义变量
2.将光标移至欲设定的变量 号上。
• 键入变量号并按 键
• 按换页键 、

.变量的使用
表示方法
# i = <表达式>
将计算结果赋值 给对应的变量号
常数、变量、函数 和运算符的组合
#1= #2 + 100 ; #1= #2 + #18 * SIN[#5] ;
ROUND ABS

FANUC系统宏程式详解.doc

FANUC系统宏程式详解.doc

宏程序的简单调用格式:格式: G65 P 程序序号L 重复次数变量分配变量对照表A #1 I #4 T #20B #2 J #5 U #21C #3 K #6 V #22D #7 M #13 W #23E #8 Q #17 X #24F #9 R #18 Y #25 H #10 S #19 Z #26 控制命令1. If [ 条件表达式 ] GOTO n2.While [ 条件表达式 ] DO mEnd m运算符号相等: EQ 小于: LT 不等于 : NE大于等于:GE大于: GT小于等于:LEFANUC系统宏程式FANUC系统宏程序编程一变量普通加工程序直接用数值指定G代码和移动距离;例如,GO1和 X100.0 。

使用用户宏程序时,数值可以直接指定或用变量指定。

当用变量时,变量值可用程序或用MDI 面板上的操作改变。

#1= #2 + 100G01 X#1 F300说明:变量的表示计算机允许使用变量名,用户宏程序不行。

变量用变量符号(#)和后面的变量号指定。

例如: #1表达式可以用于指定变量号。

此时,表达式必须封闭在括号中。

例如: #[#1+#2-12]变量的类型变量根据变量号可以分成四种类型变量号变量类型功能#0 空变量该变量总是空 , 没有值能赋给该变量 .#1-#33 局部变量局部变量只能用在宏程序中存储数据, 例如 , 运算结果 . 当断电时 , 局部变量被初始化为空 . 调用宏程序时 , 自变量对局部变量赋值,#100-#199 公共变量公共变量在不同的宏程序中的意义相同. 当断电时 , 变量 #100-#199 初始化为空 . #500-#999 变量 #500-#999 的数据保存 , 即使断电也不丢失 .#1000 系统变量系统变量用于读和写CNC运行时各种数据的变化, 例如 , 刀具的当前位置和补偿值 .变量值的范围局部变量和公共变量可以有0 值或下面范围中的值:-1047 到-10-29 或 -10-2 到 -1047如果计算结果超出有效范围, 则发出 P/S 报警 NO.111.小数点的省略当在程序中定义变量值时,小数点可以省略。

FANUC系统宏程序讲义

FANUC系统宏程序讲义
• 举例: • #1=0 • N10 G0 X 100. Z 0; 若条件满足转移到此程序段中) • … (程序部分) • IF [#1 LE 10] GOTO10;若条件不满足执行下面程序 • G0 X 50. Z50.;
(3)循环指令:
WHILE[条件表达] DO1;
当条件表达式满足时,循环标有END1之间的程序, 如果表达式不满足时,不做循环,执行END1之后的 程序。
G0 X 100.;
关于循环控制的注意事项
G65 宏程序非模态调用
格式:G65 P_ X_ Z_ A_ B_ C_ ; G65为自变量,直接对相对应的变量号赋 值,被调用的程序内无需再赋值, P表示被 调用的程序号。,X对应#24,Z对应#26, A对应#1,B对应#2,C对应#3。被调用 的程序最多可以4级嵌套,被调用的程序可 以再执行程序调用。被调用的程序结束坯直径为Ф225,每次粗车3mm,精车留量1mm; O1234; M3 S200 T101; G0 X230.; Z2.; #1=1(精车次数); #101=222(留量); #102=-300(加工长度); N10WHILE[#101GE200]DO1; G0 X#101; G1 Z#102 F0.25; G0 U5. Z2.; #101=#101-3(每次粗车3mm); END1; #101=200(精车最终尺寸); #1=#1-1(精车控制); IF[#1EQ0]GOTO10; G0 X300. Z300.; M30;
G0 X300.;
M30;
被调用的宏程序:

O9001;

G0 X#1;(此时X值为100)

G1 X#2 ;(此时X值为200)

FANUC数车宏程序使用详解

FANUC数车宏程序使用详解

说明
• 1.无限循环:当指定DO而没有WHILE语句时,产生
从DO到END的无限循环。
• 2.处理时间:当在GOTO语句中有标号转移的语句时,
进行顺序号检索,反向检索要比正向检索的时间长, 用WHILE 语句实现循环可减少处理时间。
• 3未定义的变量:在使用EQ和NE的表达式中<空>和
零有不同的效果,在其他形式的表达式中,空被当作 零。
• 从图中可以看出,编程所需节点,除A、 D、E 三点外, B、C 点均与球径 R 有关。 下面给出各节点坐标。
加工程序如下:
%1001 G98 S800 M3; T0101; G00 X45.0 Z2 .0M07; G71 U2 R1; G71 P10 Q20 U1 W0.2 F0.4 S750; N10 G0 X0 Z0 S1200; #1=15 G3 X[2*#1] Z-#1 R#1 F0.15; G1 Z[-20-2*#1]; X40.0 Z-60.0; Z-100.0; N20 X45; G70 P10 Q20; G0 X200. Z200.0; M30;
• 变量的赋值
程序中的地址 在宏程序体中的 变量 程序中的地址 在宏程序体中的 变量
A
#1
Q
#17
B
C
#2
#3
R
S
#18
#19
D
E F H I J K
#7
#8 #9 #11 #4 #5 #6
T
U V W X Y Z
#20
#21 #22 #23 #24 #25 #26
M
#13
• 变量的算术与逻辑运算
局部变量 局部变量只能用在宏 程序中存储数据,例 如运算结果。当断电 时局部变量被初始化 为空,调用宏程序时 自变量对局部变量赋 值。

法兰克fanuc系统编程用户宏程序教程

法兰克fanuc系统编程用户宏程序教程

法兰克Fanuc系统编程用户宏程序教程一、认识法兰克Fanuc系统法兰克Fanuc系统是数控机床领域中广泛应用的一种控制系统,其强大的编程功能为用户提供了极大的便利。

在本教程中,我们将重点介绍用户宏程序的编写与应用,帮助您更好地掌握法兰克Fanuc系统的编程技巧。

二、宏程序基础知识1. 宏程序概念宏程序是一种简化编程过程的方法,它允许用户将复杂的操作步骤封装成一个程序,以便在后续编程中重复调用。

通过使用宏程序,可以大大提高编程效率。

2. 宏程序分类法兰克Fanuc系统中的宏程序分为两类:系统宏程序和用户宏程序。

本教程主要针对用户宏程序进行讲解。

3. 宏程序编写原则(1)简洁明了:尽量使宏程序结构清晰,便于阅读和维护。

(2)通用性强:编写宏程序时,要考虑其在不同场景下的适用性。

(3)易于扩展:预留接口,方便后期对宏程序进行功能扩展。

三、用户宏程序编写步骤1. 确定宏程序功能在编写宏程序之前,要明确宏程序需要实现的功能。

例如,可以实现一个用于加工圆形轮廓的宏程序。

2. 设计宏程序结构(1)宏程序参数:定义输入输出参数,以便在不同场景下调用。

(2)宏程序主体:实现宏程序功能的代码部分。

(3)宏程序调用:在其他程序中调用宏程序。

3. 编写宏程序代码(1)宏程序参数定义:100 = 圆心X坐标101 = 圆心Y坐标102 = 半径103 = 起始角度104 = 终止角度(2)宏程序主体:200 = 100 + 102 COS[103]201 = 101 + 102 SIN[103]G01 X[200] Y[201]IF [103 LT 104] THEN103 = 103 + 1GOTO 100ENDIF(3)宏程序调用:G65 P1000 A100 B101 C102 D103 E104法兰克Fanuc系统编程用户宏程序教程五、实战演练:编写一个钻孔宏程序在这一部分,我们将通过一个具体的实例,来实践如何编写一个用于钻孔的宏程序。

FANUC宏程序详解

FANUC宏程序详解

GOTO #10;
用户宏程序
2. 条件转移(IF语句)
IF [<条件表达式>] GOTO n; • 若满足<条件表达式>,下步操作转移到程序 段号为n的程序段去。
• 若不满足,执行下个程序段。
IF [<条件表达式>] THEN … ;
• 若满足<条件表达式>,执行THEN后的宏程 序语句,只执行一个语句。
用<空>赋值
用户宏程序
条件表达式 指令 #2 EQ #1 #2 NE #1 #2 GT #1 #2 LT #1 意思 #2=#1 #2≠#1 #2>#1 #2<#1
#2 GE #1
#2 LE #1
用户宏程序
#2≥#1
#2≤#1
条件表达式 EQ和NE中的<空>不同于0
当#1=<空>时 #1 EQ #0 ↓ 成立 #1 NE 0 ↓ 成立 当#1=0时 #1 EQ #0 ↓ 不成立 #1 NE 0 ↓ 不成立
用户宏程序
M30;
时间信息
变量号 #3001 #3002 #3011 #3012 单位 毫秒 小时 功能 计时器。电源接通时复位为0。 计时器。循环启动灯亮时开始计 时。即使在断电时也保存该值 赋值 可以 可以 不可 不可
读取当前的日期。 年月日 1999年12月31日 19991231 读取当前的时间。 时分秒 下午3点34分56秒 153456
数据处理
种 类 下取整
上取整 四舍五入 绝对值
函数名 FIX
FUP ROUND ABS
格 式 #i = FIX[ #k ]
#i = FUP[ #k ] #i =ROUND[ #k ] #i =ABS[ #k ]

FANUC 代码与程序(宏程序)

FANUC 代码与程序(宏程序)

NO6079
调用程序号9009的M代码(在此参数下设定M的值,如设为19)
1
例: 设 NO6071=6(意思:当程序执行到M6时,即跳到并执行子程序O9001) 主程序 子程序 O0001; O9001; M06 ; M06; 视作M代码处理 M30; M99; 在主程序中出现了M06时,意思是调用子程序O9001,当M06在子程序中再次出现 时,则是换刀命令。
★:需要PMC处理的M码如下。 M00: F9.7 程序停止 (程序执行到M00,即停止,按START继续执行) M01: F9.6 程序选择停止 M02: F9.5 程序结束 M30: F9.4 程序结束(同时RESET)
2
★ ☆:宏程序界面的输入输出信号
NC #1000 ~#1015 #1032 #1100 ~#1115 #1132 #1133 例: O01 IF[#1000EQ1]GOTO20; F56 ~F59 宏程序输出信号 宏程序输入信号 PMC
代码与程序
◇系统专用M代码:即不需要PMC处理的M代码,系统直接可以执行。
M98 M99 M96 M97 子程序呼叫 子程序结束 中断型程序呼叫开始 中断型程序呼叫结束 G53.3:中断信号。此信号 仅对M96有效,当 NO6303.7=1时,有效。
◇M代码呼叫宏程序
解释 宏程序:即此程序中带有“#”,即可以改变数值的变量,称为宏程序。 如:换刀程序,其要换的刀并不能确定,需要指定等。 通过参数定义的M代码不作为M功能使用,而作为程序呼叫指令使用,不需 PMC参与处理,例如:M06-刀具交换指令。 NO6071 调用程序号9001的M代码(在此参数下设定M的值,如设为9)
G54 ~G55
F54 ~F55
G54.0

FANUC数控宏程序知识详解

FANUC数控宏程序知识详解

一变量普通加工程序直接用数值指定G代码和移动距离;例如,GO1和X100.0。

使用用户宏程序时,数值可以直接指定或用变量指定。

当用变量时,变量值可用程序或用MDI面板上的操作改变。

#1=#2+100G01 X#1 F300说明:变量的表示计算机允许使用变量名,用户宏程序不行。

变量用变量符号(#)和后面的变量号指定。

例如:#1表达式可以用于指定变量号。

此时,表达式必须封闭在括号中。

例如:#[#1+#2-12]变量的类型变量根据变量号可以分成四种类型#0 空变量该变量总是空,没有值能赋给该变量.#1-#33 局部变量局部变量只能用在宏程序中存储数据,例如,运算结果.当断电时,局部变量被初始化为空.调用宏程序时,自变量对局部变量赋值,#100-#199 #500-#999 公共变量公共变量在不同的宏程序中的意义相同.当断电时,变量#100-#199初始化为空.变量#500-#999的数据保存,即使断电也不丢失.#1000 系统变量系统变量用于读和写CNC运行时各种数据的变化,例如,刀具的当前位置和补偿值.变量值的范围局部变量和公共变量可以有0值或下面范围中的值:-1047到-10-29或-10-2到-1047如果计算结果超出有效范围,则发出P/S报警NO.111.小数点的省略当在程序中定义变量值时,小数点可以省略。

例:当定义#1=123;变量#1的实际值是123.000。

变量的引用为在程序中使用变量值,指定后跟变量号的地址。

当用表达式指定变量时,要把表达式放在括号中。

例如:G01X[#1+#2]F#3;被引用变量的值根据地址的最小设定单位自动地舍入。

例如:当G00X#/;以1/1000mm的单位执行时,CNC把123456赋值给变量#1,实际指令值为G00X12346.改变引用变量的值的符号,要把负号(-)放在#的前面。

例如:G00X-#1当引用未定义的变量时,变量及地址都被忽略。

例如:当变量#1的值是0,并且变量#2的值是空时,G00X#1 Y#2的执行结果为G00X0。

FANUC宏程序大全实例讲解

FANUC宏程序大全实例讲解

FANUC宏程序大全实例讲解FANUC宏程序大全+实例讲解一、变量普通加工程序直接用数值指定G代码和移动距离;例如,GO1和X100.0。

使用用户宏程序时,数值可以直接指定或用变量指定。

当用变量时,变量值可用程序或用MDI面板上的操作改变。

#1=#2+100G01 X#1 F300说明:变量变量的表示计算机允许使用变量名,用户宏程序不行。

变量用变量符号(#)和后面的变量号指定。

例如:#1表达式可以用于指定变量号。

此时,表达式必须封闭在括号中。

例如:#[#1+#2-12]变量变量的类型变量根据变量号可以分成四种类型变量值的范围局部变量和公共变量可以有0值或下面范围中的值:-1047到-10-29或-10-2到-1047如果计算结果超出有效范围,则发出P/S报警NO.111.小数点的省略当在程序中定义变量值时,小数点可以省略。

例:当定义#1=123;变量#1的实际值是123.000。

变量的引用为在程序中使用变量值,指定后跟变量号的地址。

当用表达式指定变量时,要把表达式放在括号中。

例如:G01X[#1+#2]F#3;被引用变量的值根据地址的最小设定单位自动地舍入。

例如:当G00X#/;以1/1000mm的单位执行时,CNC把123456赋值给变量#1,实际指令值为G00X12346.改变引用变量的值的符号,要把负号(-)放在#的前面。

例如:G00X-#1当引用未定义的变量时,变量及地址都被忽略。

例如:当变量#1的值是0,并且变量#2的值是空时,G00X#1 Y#2的执行结果为G00X0。

双轨迹(双轨迹控制)的公共变量对双轨迹控制,系统为每一轨迹都提供了单独的宏变量,但是,根据参数N0.6036和6037的设定,某些公共变量可同时用于两个轨迹。

未定义的变量当变量值未定义时,这样的变量成为空变量。

变量#0总是空变量。

它不能写,只能读。

引用当引用一个未定义的变量时,地址本身也被忽略。

(b) 运算除了用<空>赋值以外,其余情况下<空>与0相同。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 改变引用变量的值的符号,要把负号放在#的前面
G00 X-#1;
编辑ppt
18
BEIJING-FANUC
• 当引用未定义的变量时,变量及地址字都被忽略
G00 X#1 Y#2; 当#1=0,#2为空时,
G00 X0;
• 程序号、顺序号和任选程序段跳转号不能使用变量
O#1;
N#3 Y200.0;
编辑ppt
#5(SBM) 用户宏程序语句中, 0: 单程序段不停止 1: 单程序段停止
#6(CCV) 复位(Reset)后,公共变量#100~#199
#7(CLV) 复位(Reset)后,局部变量#1~#33
编辑ppt
0: 清空 1: 不清空 0: 清空 1: 不清空
6
BEIJING-FANUC
#4(NE9) 编辑程序号为9000~9999的程序
/#2 G00 X10.;
19
BEIJING-FANUC
4.未定义变量
当变量值未定义时,这样的变量成为<空>变量
• 变量#0 总是空变量,它不能写只能读 未定义变量的引用
当引用一个未定义的变量时,地址本身也被忽略
当#1=<空>时
G90 X100 Y#1 ↓
G90 X100
当#1=0时
G90 X100 Y#1 ↓
例: #10, #1005
▪ 表达式也可以用于指定变量号,需封闭在括号中。
例: #[#2-1], #[#500/2]
▪ 可在程序段结尾加注释说明变量内容,需用括号 封闭。
编辑ppt
例: #2=#3-1(TOOL NUMBER);
9
BEIJING-FANUC
变量的种类
变量号 变量类型
用途
#0
空变量
总为空
0: 不禁止 1: 禁止
#6(NPE) 程序登录时,对含有M02,M99,M30的程序段
0: 视为登录结束
1: 不视为登录结束
编辑ppt
7
BEIJING-FANUC
一、变量
• 变量的种类 • 变量的显示与设定 • 变量的使用 • 未定义变量
编辑ppt
8
BEIJING-FANUC
1. 变量的种类
变量的表示 变量符号(#)+ 变量号
G90 X100 Y0
编辑ppt
20
BEIJING-FANUC
未定义变量的计算
除了用<空>赋值以外,其余情况下<空>与0 相同
当#1=<空>时
当#1=0时
用<空>赋值
#2=#1
↓ #2=<空>
#2=#1 ↓ #2=0
#2=#1﹡5 ↓ #2=0
#2=#1﹡5 ↓ #2=0
#2=#1+#1 ↓ #2=0
#2=#1+# 1 ↓ #2=0
编辑ppt
21
BEIJING-FANUC
条件表达式
指令 #2 EQ #1
意思 #2=#1
#2 NE #1
#2≠#1
#2 GT #1
#2>#1
#2 LT #1
#2<#1
ห้องสมุดไป่ตู้
#2 GE #1
#2≥#1
#2 LE #1
#2≤#1
编辑ppt
22
BEIJING-FANUC
条件表达式
编辑ppt
13
BEIJING-FANUC
4.按 、 显示局部和公共 变量值
编辑ppt
14
BEIJING-FANUC
公共变量的设定
1.找到显示公共变量的画面。
2.将光标移至欲设定的变量 号上。
• 键入变量号并按 键
• 按换页键 、

光标键将光标移至欲设定
的变量号上
3.键入数据并按
编辑ppt
15
BEIJING-FANUC
3.变量的使用
表示方法
# i = <表达式>
将计算结果赋值 给对应的变量号
常数、变量、函数 和运算符的组合
#1= #2 + 100 ; #1= #2 + #18 * SIN[#5] ;
编辑ppt
16
BEIJING-FANUC
变量的定义
•当在程序中定义变量值时,小数点可以省略
#1 = 123;
#1 123.000
变量的引用
• 跟在地址后面的数值可用变量来代替。
G01 X10.0 F#1;
F
G01 X-[#1+#2] F#1;
编辑ppt
把表达式放 在括号中
把#1值作为F 的指令值
17
BEIJING-FANUC
• 把变量用于地址数据的时候,被引用变量的值根据地址 的最小设定单位自动地四舍五入 G01 X#1; 当#1赋值为12.3456时,实际指令值为G01 X12.346;
EQ和NE中的<空>不同于0
当#1=<空>时
当#1=0时
#1 EQ #0
↓ 成立
#1 EQ #0
↓ 不成立
#1 NE 0
↓ 成立
#1 NE 0
↓ 不成立
#1 GE #0
↓ 成立
#1 GE #0
↓ 成立
#1 GT 0
#1 GT 0


编辑ppt
不成立
不成立
23
BEIJING-FANUC
二、运算指令
• 运算命令的种类 • 运算顺序
编辑ppt
上一页
4
BEIJING-FANUC
宏程序与子程序的比较:
宏程序
子程序
使用变量
可使用变量
不可以使用变量
调用方式 G65 P_ L _<自变量赋值> ; M98 P_ _;
调用行有其 它NC指令时
无条件调用
先执行NC指令,再 调用子程序
嵌套
4重
4重
编辑ppt
5
BEIJING-FANUC
宏程序相关的参数
变量的范围
正值 0
负值
+10-29 ~ +1047 0
-10-29 ~ -1047
编辑ppt
11
BEIJING-FANUC
2.变量的显示与设定
变量的显示
1.按下MDI面板上 的功能键 OFFSET
SETTING
2.按几次 键, 直至出现
编辑ppt
12
BEIJING-FANUC
3.按下
显示
宏程序变量值
#1~#33
#100~#199 #500~#999
局部变量 公共变量
只能用在当前宏程序中存储变量, 断电后数据初始化
在不同的程序中意义相同,各宏程 序公用。断电后#100~#199初始化 为空, #500~#999数据保存
#1000~
系统变量 可用于读写CNC运行时的各种数据
编辑ppt
10
BEIJING-FANUC
编辑ppt
24
BEIJING-FANUC
加减乘除
1.运算命令的种类
种类 加法 减法 乘法 除法
BEIJING-FANUC
用户宏程序
编辑ppt
1
BEIJING-FANUC
主要内容:
一、变量
二、运算指令
三、控制指令
四、简单练习
五、系统变量
六、宏程序调用
编辑ppt
2
BEIJING-FANUC 主程序
宏程序
编辑ppt
下3一页
BEIJING-FANUC
宏程序的适用范围:
✓ 形状类似但大小不同(圆、方及其它) ✓ 大小相同但位置不同(组孔、阵列等) ✓ 特殊形状(椭圆、球等) ✓ 自动化功能(刀具长度测量、生产管理等) ✓ 其它
相关文档
最新文档