子程序调用与返回指令共有4条。调用指令与无条件转移的区别在于,调用指令通过自动方式的堆栈操作对断点进行了保护,待子程序返回时可以调用子程序指令的下一条指令处。2.返回指令返回指令共有两条:子程序执行完后,程序应返回到原调用指令的下一指令处继续执行。返回指令有两条,即子程序返回指令RET和中断服务子程序返回指令RETI。......
2023-11-17
1.宏程序调用
(1)调用指令
用户宏程序既可以作为独立程序运行,也可以由其他CNC加工程序调用。宏程序可通过表5.2-2所示的多种指令调用。
表5.2-2 宏程序的调用指令一览表
(2)自由调用和特定调用
用户宏程序调用有自由调用和特定调用两种方式。自由调用是指调用指令可自由指定需要调用的宏程序号,它用于G65、G66调用,调用过程如图5.2-1所示。
自由调用的指令格式如下:
p:宏程序号;
l:重复调用次数;
图5.2-1 用户宏程序的自由调用
特定调用是指调用指令和调用的宏程序号一一对应的调用方式,它用于特定G、M、T代码的调用。特定调用的宏程序号固定,其调用代码需要通过CNC参数进行设定,例如,设定PRM6050=70、PRM6051=71,则调用宏程序O9010、O9011的G代码分别为G70、G71;设定PRM6071=60、PRM6080=50,则调用宏程序O9001、O9020的M代码分别为M60、M50;设定PRM6001.5=1,程序中所有T代码均可调用宏程序O9000等。
以设定CNC参数PRM6080=50为例,宏程序的特定调用过程如图5.2-2所示。
图5.2-2 用户宏程序的特定调用
特定调用的指令编程格式如下:
l:重复调用次数;
变量赋值的方法见后述。
(3)宏程序返回
宏程序返回和子程序返回相同,它也通过结束指令M99返回。一般情况下,宏程序执行完成后,程序将返回到调用程序段,然后继续执行下一程序段。但也可通过结束指令,使得宏程序执行完成后,返回到程序号为n的程序段,有关内容可参见第2章2.1节。
2.自变量传送赋值
自变量传送赋值是通过宏程序调用指令中的指定程序字,直接将变量值写入到局部变量#1~#33的赋值方法,它可采用自变量指定Ⅰ、自变量指定Ⅱ和混合赋值3种方式赋值。
(1)自变量指定Ⅰ
采用自变量指定Ⅰ赋值时,局部变量中的#1~#26可利用程序字A~Z赋值,变量#27~#33不能赋值。自变量指定Ⅰ的程序字与赋值变量的对应关系见表5.2-3。
表5.2-3 自变量指定Ⅰ的程序字与局部变量对应关系表
自变量指定Ⅰ赋值时需要注意:局部变量号和程序字的字母次序无对应关系,如程序字D所赋值的变量为#7而不是#4等;赋值指令中的I、J、K必须按次序排列,其余程序字次序无要求。例如,调用指令:
可对宏程序O9100中的局部变量进行如下赋值:
#1=30.0、#2=45.0、#4=50.0、#18=-58.0、#24=100.0、#25=-200.0、#26=-80.0。
(2)自变量指定Ⅱ
自变量指定Ⅱ赋值在CNC参数PRM6008.7设定为0时有效,采用本方式赋值时,局部变量#1~#33可利用程序字A、B、C和I、J、K赋值,其中,I、J、K可在调用指令中多次重复编程,它可对全部局部变量进行赋值。自变量指定Ⅱ的程序字与赋值变量的对应关系见表5.2-4。
表5.2-4 自变量指定Ⅱ的程序字与局部变量对应关系表
(3)混合赋值
宏程序调用指令也可采用自变量指定Ⅰ、自变量指定Ⅱ混合赋值的方式,对局部变量#1~#33进行赋值。两种赋值方式的优先级相同,如同一局部变量进行了重复赋值,则后赋值的变量值有效。例如,执行指令:
独立赋值的局部变量为#1=30.0(A)、#2=45.0(B)#4=-3.0(I1指定);重复赋值的变量有#7=4.0(I2指定)和#7=5.0(D指定),以后定义的D值有效,变量#7=5.0。
有关FANUC-0iD编程与操作的文章
子程序调用与返回指令共有4条。调用指令与无条件转移的区别在于,调用指令通过自动方式的堆栈操作对断点进行了保护,待子程序返回时可以调用子程序指令的下一条指令处。2.返回指令返回指令共有两条:子程序执行完后,程序应返回到原调用指令的下一指令处继续执行。返回指令有两条,即子程序返回指令RET和中断服务子程序返回指令RETI。......
2023-11-17
2)通过PMC程序,在PMC输出信号G053.5上发送宏程序中断信号UNIT。中断方式Ⅰ有效时,只要输入宏程序中断信号UNIT,CNC将立即中止现行程序段的执行,转入宏程序。如中断宏程序中无普通NC程序段,其处理与中断方式Ⅰ相同。图5.3-7 宏程序中断的返回1)正常返回:如宏程序以M99指令结束,执行完成后正常返回,并根据不同的中断方式处理被中止的程序段。......
2023-06-25
子程序调用可通过辅助机能M98代码进行,在M98指令中,子程序号由地址P规定。如“N15 M98 P30100;”为调用子程序O0100三次,而“N15 M98 P3100;”则表示调用子程序O3100一次。......
2023-06-25
C语言中所有函数的定义都是平行的,也就是说,不能在函数定义中再定义其他函数。但是C语言允许在函数定义中再调用其他函数,这就是函数的嵌套调用。本例可编写两个函数,一个是用来计算平方值的函数f1(),另一个是用来计算阶乘值的函数f2()。图5.4函数的嵌套调用函数的嵌套调用使程序形成了一种自顶向下树型结构,如图5.5所示。一个C语言程序通常不是由少数几个大函数组成,而是由许许多多小函数组成。......
2023-11-18
调用注坐标点命令,可以在总平面图上标注测量坐标或者施工坐标,取值则根据世界坐标或者当前用户坐标UCS。下面以如图8-41所示的注坐标点结果为例,介绍调用注坐标点命令的方法。01按Ctrl+O组合键,打开配套光盘提供的“第8章/8.4.1注坐标点.dwg”素材文件,结果如图8-42所示。图8-43 对话框图8-44 施工坐标......
2023-08-22
如果需要进行工件坐标系的零点偏置设定,应将机床操作面板上的存储器保护开关置OFF位置,取消存储器保护功能。2)按软功能键〖工件坐标系〗,LCD将显示图8.3-3所示的工件坐标系零点偏置页面。7)重复以上步骤3)~6),完成工件坐标系零点偏置设定。图8.3-4 工件坐标系的测量输入例3)选择MDI方式、按MDI面板的功能键显示偏置/设定页面。6)按软功能键〖测量〗,Z轴在工件坐标系上的位置即被确定。......
2023-06-25
图7.3-10 参数写入保护的取消4)宏程序编辑使能后,可将CNC参数PRM3202.4设定为“0”,使得宏程序编辑成为允许状态。表7.3-1 宏指令的替代字符......
2023-06-25
当然,OB35的周期设置可以根据工艺实际要求而定。表9-3 PID软件编程步骤为了保证执行频率一致,块应当在循环中断OB中调用。图9-3 设置SFB41的背景DB为DB3具体的PID调用程序如图9-4所示。图9-4 PID程序调用在PID程序调用中,“CYCLE”参数对应的是扫描时间,必须将程序块调用的间隔时间赋值在这里。当前值显示在窗口的右上部。9)单击“关闭”按钮,终止曲线记录器的功能。......
2023-06-18
相关推荐