<< 向前        下一页 >>

ID : 5935

SyncTime

功能

同步执行多台机器人的动作指令。

可使用下述动作指令。
ApproachDepartDrawDriveDriveAMoveRotateRotateH

此指令对Ver.1.9.*以上的版本有效。

格式

SyncTime (动作指令), (动作指令)[, (动作指令)[, (动作指令)]][, Next]

指定项目

动作指令

在各动作指令的开头指定(Robot*.)要动作的机器人并进行记述。
关于各指令的记述,请参照各指令的手册。

    SyncTime ( Robot0.Move P, P0, Speed = 40 ), ( Robot1.Move P, P1, Speed = 70 ), Next

但是,无法指定“目标位置的连续记载”和“Next选项”。


无法使用下述P[5]和Next。

    SyncTime( Robot0.Move P, P[2], P[5], Speed = 30, Next ), ( Robot1.Move P, P1 ), Next

解说

同步执行多台机器人的动作指令。将此类动作称为“同步动作”。

执行该指令时,必须获取指定的各机器人轴的控制权。

相关事项

SyncMove

注意事项

  • 协调功能专用的指令
  • 由于Time,Speed,Accel,Decel与最慢的机器人同步,因此有时不会根据指示进行动作。
  • 不支持ArchMove。
  • 在动作指令期间,如果指定不同的通过起始位移,则发生错误。

        SyncTime ( Robot0.Move P, @P P1 ), ( Robot1.Move P, @E P2 )
    但是,@P、@数值、@0的组合进行动作。

        SyncTime ( Robot0.Move P, @P P1 ), ( Robot1.Move P, @0 P2 )
    但是,@E、@C的组合也进行动作。

        SyncTime ( Robot0.Move P, @C P1 ), ( Robot1.Move P, @E P2 )
  • 用通过动作(此处包括位置指定的通过动作)连接同步动作时,注意事项如下。

    不可使3台以上的机器人进行通过动作。
    使2台机器人进行通过动作时,机器人组合需要一致。

     

    可动作模式和不可动作模式的例子如下图所示。

    可进行动作

    以Robot0、Robot1的动作和通过动作连接Robot0动作(要进行通过动作的机器人为2台时)。

    '程序例
      Robot0.Move L, @P P1, Next
      SyncTime (Robot0.Move L, P2),(Robot1.Move L, P4)

    以通过动作连接Robot0和Robot1的动作(要通过动作的机器人组合一致时)。

    '程序例
      SyncTime (Robot0.Move L, @P P1),(Robot1.Move L, @P P3), Next
      SyncTime (Robot0.Move L, P2),(Robot1.Move L, P4)

    用NEXT选项执行Robot0和Robot1组合中的动作,以及Robot2和Robot3组合中的动作后,以通过动作连接Robot0和Robot1的动作(要通过动作的机器人组合一致时)。

    '程序例
      SyncTime (Robot0.Move L, @P P1),(Robot1.Move L, @P P3), Next
      SyncTime (Robot2.Move L, P11),(Robot3.Move L, P21), Next
      SyncTime (Robot0.Move L, P2),(Robot1.Move L, P4)

    此时,在第2个动作中包含第1个动作的机器人(Robot0和Robot1)很重要。第2个动作含有Robot0或Robot1中的某一个时,就会以通过动作与第1个动作连接。这样,由于机器人的组合不一致,因此无法使机器人动作。

    不可进行动作

    以通过动作连接Robot0动作、Robot0和Robot1以及Robot2的动作(要执行通过动作的机器人为3台以上时)。

    '程序例
      Robot0.Move L, @P P1, Next
      SyncTime (Robot0.Move L, P2),(Robot1.Move L, P4),(Robot2.Move L, P14)

    以通过动作连接Robot0和Robot1的动作、以及Robot0和Robot1及Robot2的动(要通过动作的机器人为3台以上,且组合不一致时)。

    '程序例
      SyncTime (Robot0.Move L, @P P1),(Robot1.Move L, @P P3), Next
      SyncTime (Robot0.Move L, P2),(Robot1.Move L, P4),(Robot2.Move L, P14)

    以通过动作连接Robot0和Robot1的动作、以及Robot1和Robot2的动(要通过动作的机器人组合不一致时)。

    '程序例
      SyncTime (Robot0.Move L, @P P1),(Robot1.Move L, @P P3), Next
      SyncTime (Robot1.Move L, P4),(Robot2.Move L, P14)
  • 符合以下任一条件时,如果执行某个特定动作,有时多个机器人的动作开始时间会发生偏差。
    只使用Ehernet作为机器人控制器之间的通信方法时。
    未将协调控制同步选项设定成“提高同步精度”时(协调控制同步选项的初始值为“提高同步精度”)。
    机器人控制器的软件版本比2.5.*早时。

    特定动作是指按以下顺序执行同步动作或协调动作(使用SycnMove动作选项的动作)时的动作。

    1. 在通过起始位移中指定@E以外,且执行同步动作或协调动作这两动作之外的动作
    2. 执行同步动作或协调动作

     

    在上述情形中,抑制动作开始时间偏差时,请按以下任一内容变更同步动作或协调动作之前的动作指令。

    将之前指令的通过起始位移指定为@E。
    将之前指令的通过起始位移指定成@0,在同步动作或协调动作之间插入Delay指令进行调整。

    例1

        Move P, @0 P0 '将SyncTime之前的动作的通过起始位移指定为@0或@E
        为Delay( 30 ) '@0时,在与SyncTime之间插入Delay指令。@为E时不需要Delay
        SyncTime ( Robot0.Move P, @P P1 ), ( Robot1.Move P, @P P2 )

    例2

        'SyncTime之前的动作指令为SyncTime,SyncMove时,不需要Delay
        SyncTime ( Robot0.Move P, @P P3 ), ( Robot1.Move P, @P P4 ) 
        SyncTime ( Robot0.Move P, @P P5 ), ( Robot1.Move P, @P P6 )

关于协调控制同步选项

  • 软件版本为2.5.*之前的机器人控制器中没有协调控制同步选项。
  • 在软件版本为2.5.*或更高的机器人控制器中使用软件版本低于2.5.*的机器人控制器数据(项目)时,协调控制同步选项为“标准”。
  • 如果变更协调控制同步选项的设定,机器人程序的循环时间可能会能改变。
  • 设定/确认协调控制同步选项时,首先设成“维护”后,然后按以下操作路径操作多功能教导器。

    操作路径 : [F6 设定]-[F9 协调]

     

    打开[协调设定]窗口,设定/确认No.76的“协调控制同步选项”。

应用示例

    Robot0.TakeArm '获取机器人0的控制权
    Robot1.TakeArm '获取机器人1的控制权
    SyncTime ( Robot0.Move P, P0, Speed = 40 ), ( Robot1.Move P, P1, Speed = 70 ), Next 

ID : 5935

<< 向前        下一页 >>