异步子程序简介 西门子系统一直走在工业发展的前沿,因此,许多机床厂家以及工业产品都需要西门子数控系统的支持,这就导致西门子的数控产品在国内外都有着广泛的客户群体。 而今天要介绍的异步子程序就是在西门子产品(西门子程序)中常见的一各组成部分,在许多西门子产品的程序备份中我们都一一看到 AUSP 这样的一个程序块,那么到底什么是 AUSP,以及应该如何应用呢?下面就给大家详细介绍一下。 1)什么是异步子程序(ASUP) 5)基于 NC 的异步子程序的初始化和触发 1、什么是异步子程序(ASUP) 异步子程序 asynchronous subprogram (ASUP)也称中断程序(Interrupt routine)在加工过程中工具折断。由此触发一个信号,这个信号中止正在运行的处理过程并同时开始一个子程序,也就是那个所谓的中断程序。在这个子程序中有所有在这种情况下应当被执行的指令。 如果子程序已执行完毕(并且因此而恢复运行就绪状态),控制 系统就会跳回到主程序中,并且-根据 REPOS 指令-在中断点继续执行加工。 2、如何触发异步子程序 1)触发信号(中断源) PLC 信号触发(外部 IO 信号)NC 信号触发 1、快速 IO 触发2、同步指令触发 通常保存在制造商目录。中断号,通常840D 使用1~8中断号,828D 只支持中断号1~2。优先级,系统支持128个优先级,1最高。 3)多次中断触发 Ø优先级高的中断子程序可以中断优先级低中断子程序,高优先级程序执行完后,返回低优先级中断子程序继续执行。 Ø最多六个激活的中断等级,当前处理的中断等级和五个等待的中断等级。 Ø再次触发正在执行中断子程序,触发无效。触发异步子程序 3、异步子程序编程 N10 PROC INT_DSC SAVE DISPOF SBLOF N20 DEF INT _ TNo N30 R82 = 0 N40 STOPRE … N50 R74=$P_F N410 GETEXET(_TNo) N420 $TC_DP3[_TNo,1]=R73 N500 RET N10:定义异步子程序名称 Ø SAVE:备份主程序 G 代码运行状态。 Ø DISPOF:运行时,禁止显示 Ø SBLOF:运行时,禁止单段 N20~N420:执行动作 Ø 按需求完成动作要求 N490:断点返回 ØREPOSA:返回断点位置 4-1、840D 基于 PLC 异步子程序的初始化 A I 7.7 AN #_fb4.Req //避免多次触发 S #_fb4.Req CALL #_fb4 Req := PIService:='PI'.ASUP Unit :=1 Addr1 :=#Path Addr2 :=#ProgName Addr3 := Addr4 := WVar1 :=W#16#5 WVar2 :=W#16#1 Error := Done := State := A #_fb4.Done O #_fb4.Error R #_fb4.Req //请求信号只能被_fb4 的完成 Done 或错误信号 Error 清除 4-2、828D 基于 PLC 异步子程序的初始化 4-3、中断源(PLC 触发异步子程序) A I 7.7 AN M 200.0 S M 200.0 CALL 'ASUP' Start :=M200.0 ChanNo :=1 //Channel number IntNo :=5 //Interrupt number Activ :=M200.1 Done :=M200.2 Error :=M200.3 StartErr :=M200.4 Ref :=MW202 A M 200.2 O M 200.3 R M 200.0 //Toolbox 块标准时序 5-1、基于 NC 的异步子程序的初始化 异步子程序 NC 初始化,使用系统自带的 PROG_EVENT.SPF 异步子程序接口 Ø PROG_EVENT.SPF 接口触发条件。 $P_PROG_EVENT 变量的含义如下,只在 PROG_EVENT.spf 子程序中有效。 5-2、中断源(NC 触发异步子程序) NC 触发异步子程序可分为: 1、硬件的快速 IO 触发 序,以此类推。 2、虚拟快速 IO 触发 2)快速输出与快速输入短路 条件:短路的快速输入没有外部硬件 相当于$A_IN[5] = $A_OUT[5] 3)同步指令触发中断号 异步子程序总结 异步子程序应用举例 异步子程序的应用范围很广,但最多的还是应用在开机程序以及一些换刀或换附件头的程序之中,如下图 |
|
来自: 阿明哥哥资料区 > 《72.西家传动.电气.数控服务》