ID : 5935
SyncTime
功能
同步执行多台机器人的动作指令。
可使用下述动作指令。
Approach、Depart、Draw、Drive、DriveA、Move、Rotate、RotateH
此指令对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。
- 在动作指令期间,如果指定不同的通过起始位移,则发生错误。
例
但是,@P、@数值、@0的组合进行动作。SyncTime ( Robot0.Move P, @P P1 ), ( Robot1.Move P, @E P2 )
例
但是,@E、@C的组合也进行动作。SyncTime ( Robot0.Move P, @P P1 ), ( Robot1.Move P, @0 P2 )
例
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