使用手册-routing字段:设置车辆必经点(必不经点)逻辑

来自MDCS wiki
Yuhang讨论 | 贡献2023年10月16日 (一) 21:59的版本 (创建页面,内容为“<big>通过routing字段配置路径</big> routing字段为simple中内置的站点字段,将其标记在路径终点可以实现指定路径的功能,其值及含义如下表。 {| class="wikitable" |+ !字段值 !含义 |- |origin:siteId1-passAll:siteId2,siteId3,siteId4 |如果车辆来自siteId1点,其必须经过siteId2、siteId3、siteId4点 |- |origin:siteId1-passNone:siteId2,siteId3,siteId4 |如果车辆来自siteId1点,其不能经过siteId2…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳到导航 跳到搜索

通过routing字段配置路径


routing字段为simple中内置的站点字段,将其标记在路径终点可以实现指定路径的功能,其值及含义如下表。

字段值 含义
origin:siteId1-passAll:siteId2,siteId3,siteId4 如果车辆来自siteId1点,其必须经过siteId2、siteId3、siteId4点
origin:siteId1-passNone:siteId2,siteId3,siteId4 如果车辆来自siteId1点,其不能经过siteId2、siteId3、siteId4点
origin:siteId1-passAny:siteId2,siteId3,siteId4 如果车辆来自siteId1点,其必须经过siteId2、siteId3、siteId4点中的一个

以下将分别介绍三个字段值的使用说明,simple工程中各点的id如下图所示

1.passAll

代表必须经过passAll中的所有点,可以为一个也可以为多个点,如下图所示,若不在路径终点标记routing字段,agv应该通过1-2-3-4-5的顺序到达终点,在终点标记了routing:origin:1-passAll:6字段后,代表从1号点来的车辆,必须经过6号点,所以路线变为1-2-6-7-8-5。

2.passNone


代表不能经过passNone中的任何点,可以为多个点也可为一个点。如下图所示,在终点标记了routing:origin:1-passNone:3,8,表示从1号点过来的车辆,不能经过3号和8号点,所以其路线变为1-2-6-7-4-5。


3.passAny

代表必须经过passAny中的任意一个点,如下图所示,在终点标记了routing:origin:1-passAny:6,8,表示从1号点过来的车辆,必须经过6号和8号中的一个点。当两个点都可用时,会选择总距离最短的点,当其中一个点被占用时,会选择另一个点。

如下图所示,由于标记了routing:origin:1-passAny:6,8,且选择8号点时路径较短,所以路径变为1-2-3-4-8-5

当8号点被占用时,其需要经过6号点,所以路径变为1-2-6-3-4-5。

这些字段也可以配合使用,比如需要实现“必须经过某点且不能经过某点”,可以用“|”进行分割,如下图所示,在终点设置了字段routing:origin:1-passAll:3|origin:1-passNone:4,代表从1号点过来的车辆,必须经过3号点且不能经过4号点,所以路线变为1-2-3-7-8-5。