首页 理论教育 使用EXTCALL指令执行外部子程序

使用EXTCALL指令执行外部子程序

时间:2023-06-18 理论教育 版权反馈
【摘要】:此路径和EXTCALL中指定的程序路径或者程序标志合在一起,组成了目标程序的完整路径。2)通过USB驱动外部执行,如果需要通过USB接口从外部USB驱动器载入外部子程序,则此处只能使用名为“TCU_1”的接口X203。如果在给定的路径下存在子程序,则在EXTCALL调用后执行子程序。②如果没有在预设的路径下找到调用的子程序,则继续从用户存储器的目录查找EXTCALL调用的说明。选择用于“从外部执行”的子程序在进行复位操作或零件程序结束后,选择仍生效。

使用EXTCALL指令执行外部子程序

使用EXTCALL指令可从外部程序存储器(本地驱动、网络驱动、USB驱动)载入零件程序,将它作为子程序执行。如果外部程序包含跳转指令(GOTOF、GOTOB、CASE、FOR、LOOP、WHILE、REPEAT、IF、ELSE、ENDIF等),跳转目标必须位于载入存储器区域内。可以通过MD18360 MM_EXT_PROG_BUFFER_SIZE指令设置载入存储器的大小。在调用外部程序时,无法向该程序传送参数。

在SD42700 $SC_EXT_PROG_PATH设定数据中可以预设外部子程序目录的路径。此路径和EXTCALL中指定的程序路径或者程序标志合在一起,组成了目标程序的完整路径。

(1)编程格式

EXTCALL("<路径/><程序名称>")

(2)指令参数说明

EXTCALL:调用一个外部子程序的指令。

"<路径/><程序名称>":字符串型常量/变量

<路径/>:绝对或相对路径说明(可选)。

<程序名称>:设定程序名称时不添加“_N_”前缀。可使用字符“_”或“.”将扩展名(“MPF”、“SPF”)添加在程序名上(可选)。例如"WELLE"或者"WELLE_SPF"。

编写程序时需要注意:

1)在指定路径时可使用以下缩写:

.LOCAL_DRIVE:本地驱动。

.CF_CARD:CF卡。

.USB:前端USB接口CF_CARD和LOCAL_DRIVE可以互换使用。

2)通过USB驱动外部执行,如果需要通过USB接口从外部USB驱动器载入外部子程序,则此处只能使用名为“TCU_1”的接口X203。

(3)编程示例

从本地驱动执行主程序。

程序代码 注释

N010 PROC MAIN ;主程序Main.MPF

N020…

N030 EXTCALL("SCHRUPPEN") ;从本地驱动上调用子程序SCHRUPPEN(www.xing528.com)

N040…

N050 M30

外部子程序

N010 PROC SCHRUPPEN

N020 G1 F1000

N030 X=...Y=...Z=...

N040…

N9999 M17

编程说明:主程序“Main.MPF”位于NC存储器中,并已选择执行该程序。需要下载的子程序“SCHRUPPEN.SPF”或“SCHRUPPEN.MPF”位于本地驱动器的目录:“/user/sinumerik/data/prog/WKS.DIR/WST1.WPD”下。未设定路径时,必须为此示例设定以下EXTCALL指令:EXTCALL("LOCAL_DRIVE:WKS.DIR/WST1.WPD/SCHRUPPEN")。

(4)编写EXTCALL指令时的注意事项

1)子程序路径的默认设置为:SD42700 $SC_EXT_PROG_PATH="LOCAL_DRIVE:WKS.DIR/WST1.WPD"。

2)EXTCALL调用带绝对路径说明。如果在给定的路径下存在子程序,则在EXTCALL调用后执行子程序。如果不存在该子程序,则中断程序执行。

3)EXTCALL调用带相对路径说明或不带路径说明。根据下列模式查找存在的程序存储器:

①如果在SD42700 $SC_EXT_PROG_PATH中预设了路径说明,则首先从此路径出发查找EXTCALL中的设定(程序名或者相对路径说明)。

②如果没有在预设的路径下找到调用的子程序,则继续从用户存储器的目录查找EXTCALL调用的说明。

③一旦找到子程序,查找结束。如果没有找到子程序,则程序中断。

4)可设定的加载存储器(FIFO缓存器)。在“从外部执行”模式中编辑某个主程序或者子程序时,在NCK中需要有一个加载内存。后装载存储器的大小预设置为30KB,可如同其他存储器相关的机床数据那样,仅由机床制造商根据需求修改。对于所有同时在“从外部执行”模式中被处理的程序而言,必须相应设置一个加载内存。

5)通过复位和上电,可以中断外部的子程序调用,并且清除各自的后装载存储器。选择用于“从外部执行”的子程序在进行复位(RESET)操作或零件程序结束后,选择仍生效。然而通电操作后,选择失效。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈