1           免责声明

本手册及样例包均为免费提供,仅供参考。所述版本、应用及案例可能与用户实际应用不符,请用户在使用前认真阅读相关使用说明,根据自身的应用环境及机床特点进行调整,并进行严格的测试,以规避可能存在的风险。对于在使用中发生的人员、财产等损失,由用户自行承担。

以上声明内容的最终解释权归西门子(中国)有限公司所有,后续内容更新恕不做另行通知。

2           概述

多个通道中的多个程序同时参与工件加工,则必须在不同的通道中通过协调指令实现程序过程的协调,本文简单介绍跨通道程序协调指令(INIT、START、WAITM、WAITMC、WAITE、SETM、CLEARM)

3           要求

3.1      软件版本要求

        可实现双通道控制

3.2      其他要求

需设置双通道选项

4           注意事项

4.1      注意事项一

使用通道名称编程

MD10280 $MN_PROG_FUNCTION_MASK,位 1 = TRUE

image.png


MD10280.1=0,编程时<ChanNr>只能使用通道编号,使用通道名称会触发包括

image.png

5           协调指令简介

协调指令 (INIT、START、WAITM、WAITMC、WAITE、SETM、CLEARM)

INIT()

预定义步骤,用于选择需要在所给定通道中执行的   NC 程序

START()

预定义步骤,用于启动在各个通道中选择的程序

WAITM()

预定义步骤,用于等待到达给定通道中的等待标记

WAITE()

预定义步骤,用于等待一个或多个其它通道中的程序结束

WAITMC()

预定义步骤,用于等待到达给定通道中的等待标记,与   WAITM 的不同之处在于,在其它通道尚未到达等待标记的情况下,才会将轴制动至准停状态

SETM()

预定义步骤,用于针对通道协调设置一个或多个等待标记,自身通道中的程序执行不受此影响。   SETM 在通道复位和   NC 启动后仍保持其有效性

CLEARM()

预定义步骤,用于清除通道协调的一个或多个等待标记,自身通道中的程序执行不受此影响



<ChanNr>

通道编号

<Prog>

绝对或相对路径说明(可选)+   程序名称

<AckMode>

应答模式(可选)

<MarkNr>

等待标记编号

5.1     INIT(<ChanNr>, <Prog>, <AckMode>)

预定义步骤,通过程序指令INIT,选择需要在所给定通道中执行的 NC 程序,例如

通道1程序语句:INIT(CHAN2,"CHAN2_TEST_MPF"

通道2当前选择的程序是ABCD.MPF

image.png


通道1程序执行,通过INIT指令,通道2完成程序CHAN2_TEST.MPF的选择装载

image.png


使用变量定义的形式编程

DEF INT chanNo2 ;定义通道 2 的用户变量

chanNo2 = CHAN2 ;将设置的通道名称分配给通道 2

INIT(chanNo2,"CHAN2_TEST_MPF")

调用工件目录的路径示例(绝对路径)

INIT(CHAN2,"/_N_WKS_DIR/_N_WELLE1_WPD/_N_ABSPAN1_MPF")

5.2     START(<ChanNr>, <ChanNr>, ...)

预定义步骤,用于启动在各个通道中选择的程序,通道编号或通道名称,不能是当前通道

程序代码

注释

START(CHAN1)

通道 1 启动(MD10280.1=1

START(CHAN2)

通道 2 启动(MD10280.1=1

START(1)

通道 1 启动

START(2)

通道 2 启动

示例:

image.png

5.3     WAITM(<MarkNr>, <ChanNr>, <ChanNr>, ...)

预定义步骤,用于等待到达给定通道中的等待标记,在自身通道中会通过 WAITM 设置给定的等待标记。前一个程序段通过准停结束。等待标记会在同步后被清除。每个通道最多可同时设置 10 个标记。 

编程示例

通道1,已选择并启动程序 /_N_MPF_DIR/_N_MPF100_MPF

N10 INIT(2,"MPF200","N") ;选择程序 MPF200,通道 2

N11 START(2) ;通道 2 启动

; ...

N80 WAITM(1,1,2)   ;等待通道 1 和 2 中的 WAIT 标记 1

N81                        ; ...  通道 1,N81 和通道 2,N71

;同步开始

; ...

N180 WAITM(2,1,2)  ; 等待通道 1 和 2 中的 WAIT 标记 2

N181   ; ... 通道 1,N181 和通道 2,N271

;同步开始

;...

N200 WAITE(2)  ; 等待通道 2 中的程序结束

N201                 ; ... N201 在通道 2 中的 MPF200 程序结束后才开始

N201 M30        ; 通道 1 中的程序结束

通道2,在通道 1 中通过程序段 N10 和 N20 选择并启动通道 2 中的程序MPF200_MPF

; $PATH=/_N_MPF_DIR ;程序 MPF200

; ...

N70 WAITM(1,1,2) ; 等待通道 1 和 2 中的 WAIT 标记 1

N71  ; ... 通道 1,N81 和通道 2,N71

; 同步开始

; ...

N270 WAITM(2,1,2)   ;等待通道 1 和 2 中的 WAIT 标记 2

N271  ; ... 通道 1,N181 和通道 2,N271

; 同步开始

; ...

N400 M30   ; 通道 2 中的程序结束

-image.png


5.4     WAITE(<ChanNr>, <ChanNr>, ...)

预定义步骤,用于等待一个或多个其它通道中的程序结束

与WAITM区别

image.png

5.5     WAITMC(<MarkNr>, <ChanNr>, <ChanNr>, ...)

如果在一条通道中执行 WAITMC 之前已经在其他通道中出现了所有需要的等待标记,那么在该通道中,运行不会减速,程序不会停止,而是继续执行后续程序段。

与 WAITM 的不同之处在于,在其它通道尚未到达等待标记的情况下,才会将轴制动至准停状态

               前提条件,必须在通道中激活以下功能:

                              ● 连续路径运行(G64, G641, G642, G643, G644 或 G645)

                              ● “预读”功能

5.6     SETM(<MarkNr>, <MarkNr>, ...)

预定义步骤,用于针对通道协调设置一个或多个等待标记,自身通道中的程序执行不受此影响。 SETM 在通道复位和 NC 启动后仍保持其有效性,需要在程序开始使用CLEARM(<MarkNr>, <MarkNr>, ...)清除通道协调标记

               示例:

               通道1测试程序C1.MPF

                              ;CHAN1, $PATH=/_N_MPF_DIR

                              N10 CLEARM(1)

                              N20 INIT(2,"C2_MPF")

                              N30 START(2)

                              N40 MSG("1")

                              N50 G4F20

                              N60 WAITMC(1,CHAN2)   ;等待通道2通道协调

                              N70 G4F200

                              N80 M30

               通道2测试程序C2.MPF

                              N10 CLEARM(1)

                              N20 G4F30

                              N30 SETM(1)   ;确认标记1,如果通道1还未到标记1,通道2继续执行,不会等待


                              N40 G4F300

                              N50 M30

 image.png

5.7       CLEARM(<MarkNr>, <MarkNr>, ...)

预定义步骤,用于清除通道协调的一个或多个等待标记,自身通道中的程序执行不受此影响。

CLEARM() 清除通道中的所有等待标记。

CLEARM(0) 仅清除等待标记“0”。

CLEARM 在通道复位和 NC 启动后仍保持其有效性。

5.8     关于测试的建议

以上协调指令,可在Sinutrain上建立好机床环境,进行测试

image.png

6           参考文献

1.     SINUMERIK 840D sl / 828D 扩展功能 功能手册, 08/2018

2.     SINUMERIK 840D sl/ 828D 工作准备部分 编程手册,08/2018

7           作者/联系人

Cao Peng

2021.01.05