循环处理
创建的机器人控制程序由多任务构成并存在无限循环的多个任务时,系统将变得不稳定,与Epson RC+的连接可能会断开。
在控制器进行无限循环任务的检测。如果检测到可能会对系统有影响,将发生以下错误,并停止程序。
发生错误时,请修改程序,使其不会成为无限循环。
错误代码:2556
错误信息:检测到过多循环。请减少在循环的任务或重新设置Wait。
请尽量不要进行无限循环以及与无限循环同样的处理。
进行需要循环的计算、I/O等待时,在循环处理内执行Wait命令等避免占用CPU。
Wait命令、机器人动作命令、Print命令、WaitNet命令等,带有Wait的命令在循环内使用时没有问题。
要点
无限循环在以下情况下发生。
在循环内使用的命令仅通过计算命令、赋值命令、IO检查命令等不发生Wait的命令创建。
例1:在输入端口“0”变为ON时,使输出端口“2”为ON的情况
可能会发生问题的程序示例
Do
If Sw(0) = On Then
On(2)
Exit Do
EndIf
Loop
修改示例
Wait Sw(0) = On
On(2)
例2:在循环结构进行大量计算的情况
可能会发生问题的程序示例
For i = 0 To 10000
For j = 0 To 10000
a = a + 1
Next
Next
修改示例
For i = 0 To 10000
For j = 0 To 10000
a = a + 1
Next
Wait 0.01 ' 执行Wait避免占用CPU
Next
← 功能限制 通过CV1/CV2的相机搜索 →