子程序和程序块重复,标记LBL
应用
利用子程序和程序块重复功能,只需对加工过程编写一次程序,之后可以多次调用运行。 用子程序在程序结束后插入轮廓或完整加工步骤并在NC数控程序中调用此子程序。NC数控程序期间,程序块重复一次或多次NC数控程序段。也可结合子程序和程序块重复。
子程序和程序块重复可用NC数控功能 LBL编程。
相关主题
- 在另一个NC数控程序中执行NC数控程序
- 条件跳转,类似于if-then判断。
功能说明
标记LBL,用其定义加工步骤进行子程序和程序块重复。
数控系统提供以下与标记有关的按键和图标:
按键或图标 | 功能 |
---|---|
创建LBL | |
调用LBL:跳转到NC数控程序的标记 | |
对于LBL号:自动输入下一个可用编号 |
用LBL SET定义标记
LBL SET功能在NC数控程序中定义新标记。
在NC数控程序中,必须用标记名或标记号明确定义每一个标记。如果标记号或标记名在NC数控程序出现两次,数控系统在NC数控程序段前显示警告。
LBL 0表示子程序结束。这个标记号在NC数控程序中唯一,可无限次使用。
输入
11 LBL "Reset" | ; 重置坐标变换的子程序 |
12 TRANS DATUM RESET | |
13 LBL 0 |
NC数控功能包括以下指令元素:
指令元素 | 含义 |
---|---|
LBL | 标记的指令符 |
0或" " |
用CALL LBL调用标记
CALL LBL功能调用NC数控程序中的标记。
数控系统读到CALL LBL时,跳转到定义的标记处并从NC数控程序段开始继续执行NC数控程序。数控系统读到LBL 0时,跳回到CALL LBL后的下一个NC数控程序段 处。
对于程序块重复,可选定义数控系统执行跳转多次。
输入
11 CALL LBL 1 REP2 | ; 调用标记1两次 |
NC数控功能包括以下指令元素:
指令元素 | 含义 |
---|---|
CALL LBL | 调用标记的指令符 |
编号," "或QS | 标记号或标记名。 固定或可变号或名 输入:1...65535 或文字宽32或0...1999 可从选择菜单选择标记,包括NC数控程序中的全部标记。 |
REP | 重复次数,直到数控系统执行下一个NC数控程序段 可选指令元素 |
子程序
子程序允许在NC数控程序的不同点处调用NC数控程序中的部分程序(例如,加工位置或轮廓)任意次数。
子程序从LBL标记开始,在LBL 0结束。CALL LBL在NC数控程序的任何点处调用子程序。在此期间,不能用REP定义重复。
数控系统执行NC数控程序,操作如下:
- 数控系统执行NC数控程序直到CALL LBL功能。
- 数控系统跳转到定义的子程序LBL的起点。
- 数控系统执行子程序直到LBL 0子程序结束。
- 之后,数控系统跳转到CALL LBL后的下一个NC数控程序段并继续执行NC数控程序。
以下条件适用于子程序:
- 不允许子程序调用自身
- 不允许CALL LBL 0(调用标记0)(标记0只用于标记子程序结束)。
- 在含M2或M30的NC程序段后编写子程序
如果子程序位于含M2或M30的NC程序段之前的NC程序中,那么即使未被调用,也至少被执行过一次。
数控系统在状态工作区的LBL选项卡中显示有关当前子程序的信息。
程序块重复
程序块重复功能允许重复NC数控程序的部分程序任意次数(例如增量式进刀进行轮廓加工)。
程序块重复功能从LBL标记开始,并在标记调用CALL LBL指令达到最新编程的重复次数REP后结束。
数控系统执行NC数控程序,操作如下:
- 数控系统执行NC数控程序直到CALL LBL功能。
在此过程中,由于需重复的程序块位于CALL LBL功能前,数控系统已执行程序块一次。
- 数控系统跳转到程序块重复LBL的起点。
- 数控系统重复执行程序块REP编程的次数。
- 然后,数控系统继续执行NC数控程序。
以下条件适用于程序块重复功能:
- 需要将程序块重复功能编程在M30或M2的程序结束前。
- 不可将LBL 0与程序块重复功能一起定义。
- 程序块执行的总次数一定比编程的重复次数多一次,这是因为第一次重复是在第一次加工后。
数控系统在状态工作区的LBL选项卡上显示有关当前程序块重复的信息。
注意
- 默认情况下,数控系统在结构中显示NC数控功能 LBL SET。
- 允许程序块连续重复运行的次数不能超过65 534次
- 标记名可用以下字符:# $ % & , - _ .0 1 2 3 4 5 6 7 8 9 @ a b c d e f g h i j k l m n o p q r s t u v w x y z- A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
- 标记名不可用以下字符:<blank>!" ‘ ( ) * + : ; < = > ? [ / ] ^ ` { | } ~
- 创建NC数控程序前,用If-Then判断方法比较子程序和程序块重复编程技术。
因此,可避免可能的误解和程序错误。