当调度中某个机器人的任务失败,导致动作块用户需要调度能够自动处理一些任务重做逻辑。目前调度能够处理下面三种自动重做任务。
1. 充电任务失败自动重做
默认情况下,当调度判断车子距离任务起点的距离小于 0.1 m 或者车子在线路中更靠近起点的位置,决策车子先去前置点,再执行充电任务。否则调度让车子直接执行充电任务。
在有些场景下,任务失败会报错,导致机器人无法重做任务。这是需要用户手动清除错误。如果要调度自动清除错误,需要将下面的参数勾选。
参数名称 | 参数位置 | 单位 | 默认值 | 最小值 | 最大值 | 支持版本 |
---|---|---|---|---|---|---|
ClearErr | 模型文件-TaskStrategy-reDoChargeFail | false | bool | 0.1.8.221115 | ||
充电失败时是否自动清除错误 |
2. 叉车任务自动重做
默认情况下,当叉车任务失败后,控制权被用户回收,又释放后,叉车会重做任务。当叉车执行线路的非最优一个任务时,调度会叉车会操作当前任务。当叉车执行到线路的最后一个任务时,调度会让叉车先去前置点,再去目标点。
在有些场景下,在叉车的执行最后一个任务时,客户不想让叉车回前置点。这个时候需要配置下面参数。
参数名称 | 参数位置 | 单位 | 默认值 | 最小值 | 最大值 | 支持版本 |
---|---|---|---|---|---|---|
gotoPrePoint | 模型文件-TaskStrategy-fork | true | bool | 0.1.8.221115 | ||
叉车重做最后一个任务是否要先回前置点。 |
3. 识别任务自动重做
对于普通的识别任务,默认情况下,当调度判断车子距离任务起点的距离小于 0.1 m 或者车子在线路中更靠近起点的位置,决策车子直接重做任务,否则调度让车子先去前置点,再重做任务。
如果车子报错是识别错误 52961,则直接从前置点开始重新执行任务。
4. 控制权被回收释放自动重做
对于所有任务,当调度检测到机器人的控制权被回收了,并且检测到机器人正在执行的任务不是调度下发的任务,或者当前机器人的任务被取消了或者失败了。调度就会重新规划去终点的任务。
5. 在运单中标记任务重做时需要先回到前置点
0.1.8.230704
运单中新增字段 prePointRedo
,用于描述该运单是否在触发动作块重做策略时,是否需要先回到前置点,如果运单该字段为 True,那么强制机器人先回前置点再去任务点,如果该字段为 False,则采用上面 1 2 3 的逻辑进行判定是去前置点还是直接去任务点。
该字段只在普通订单中包含,分拨单、拼合单不包含此字段。