LP1 & LP2 —— M4 电梯调度的两种模式

为什么电梯调度需要两种模式
在多楼层仓储和生产场景中,电梯是机器人跨楼层作业的必经通道。当现场只有少量机器人、电梯资源相对充足时,谁用谁占、用完释放,逻辑清晰;但随着规模扩大、机器人密度提升,“一次只进一台”的方式开始成为瓶颈。
M4 目前支持两种电梯调度模式:LP1 和 LP2,是针对不同现场条件的两套方案,配置路径为:场景编辑 → 电梯 → 调度模式。
LP1模式:独占乘梯
LP1 是 M4 电梯调度最早支持的模式,底层使用 Timeline(时间轴) 算法。核心规则是:同一时间只允许一台机器人进入同一部电梯,电梯资源在机器人完成乘梯流程、到达后置点后才释放。
1. 适用场景
现场没有多车同乘需求,或电梯数量足够、排队等待不构成效率瓶颈时,LP1 是推荐选项。LP1 的配置门槛低,建图要求简单,运维直观。
2. 电梯口等待数量
LP1 支持配置每层电梯口允许等待的机器人数量(配置路径:调度场景编辑 → 配置 → 电梯),用于缓解多车、多任务场景下因选梯分配不均导致电梯区域拥堵的问题。
这里的数量是每个楼层各自独立计算的,不是所有楼层的总和。默认值为 0,表示不限制。
3. 建图要求
每部电梯在每个楼层配置一个 SM 点即可。电梯相关的关键点位关系如下:
- 等待点:前置点的前一个点,机器人在此等候电梯到达,等待点不能阻挡机器人离开电梯区域的路线
- 前置点:SM 点的前一个点,机器人从这里进入电梯
- 后置点:与 SM 点直接相连的出梯方向点,机器人到达后置点即视为本次乘梯完成
举例说明:路线结构为 LM4 → LM3 → SM1 → LM2,则 LM4 为等待点,LM3 为前置点,LM2 为后置点。
4. 调度模式切换的时机限制
LP1 模式下,电梯的"调度模式"与"非调度模式"之间可以切换,但有约束:
- 机器人到达等待点之前,可以将电梯切换为非调度模式
- 机器人到达等待点后,直到到达后置点的整个过程中,无法切换为非调度模式
这一设计的目的是防止机器人在乘梯过程中因电梯被人工接管而无法完成乘梯。一般情况下,有机器人正在使用电梯时不推荐切换模式。如需切换,应通过调度场景中的呼叫、关门操作来进行切换。
LP2模式:多车同乘
随着电梯载重和空间允许的场景增多,单次只载一台机器人的方式利用率偏低。LP2 模式的引入初步解决了这一问题,底层使用 Greedy(贪心) 算法,支持多台机器人同时乘坐一部电梯。
1. 电梯内的 SM 点结构要求
LP2 最核心的建图约束来自电梯内部:需要配置多个 SM 点,且这些 SM 点必须构成堆栈或队列结构。
- 堆栈结构:多个 SM 点通过双向路径串联,只有一个出入口(堆顶点)。机器人从堆顶进出,先进的机器人在里面,后进的机器人在外面,出梯时后进先出。
- 队列结构:多个 SM 点通过单向路径串联,队尾进入、队首离开,先进先出。队列必须是单向的,禁止双向队列。
选用堆栈结构还是队列结构,是由电梯的物理开门方式决定的:只有一个门的电梯,机器人只能从同侧进出,只能构成堆栈;前后贯通有两个门的电梯,机器人从一侧进、另一侧出,才能构成队列。无论哪种结构,每个 SM 点有且仅有 2 条路径(一进一出)。
同一部电梯内可以同时存在多组堆栈或队列结构,但各组结构之间不能相连——它们在电梯内部是相互独立的。外面的前置点可以相连。
同一电梯的不同楼层,结构必须完全一致——不仅结构类型(堆栈/队列)要相同,每层 SM 点的数量、位置坐标和点位间距也必须保持一致。现场常见的问题包括:某楼层漏配点位,或点位间距与其他楼层不一致,导致机器人无法正常进入电梯。
2. 容量上限与等候限制
LP2 不允许超出电梯容量后,多余的机器人继续前往前置点排队等候。
早期的做法是允许机器人在前置点外侧等待,但多车乘梯场景中电梯口通常比较紧张,机器人进出顺序对效率影响较大。多余的机器人聚集在电梯口,不仅占用空间,还可能打乱已规划好的进出顺序,反而增加调度复杂度。因此,LP2 在电梯达到容量后,不再分配新的机器人前往等待,待电梯有空位后再调度。
3. 机器人组的边界
LP2 支持场景中存在多个机器人组。规则是:同一组内的机器人可以拼梯,不同组的机器人不能共乘同一部电梯。这适用于同一现场中存在不同业务线或不同货物类型、需要隔离的场景。
4. 操作注意事项
- 机器人进出电梯期间,尽量避免取消运单或重置机器人。如果必须操作,需要人工确认机器人处于电梯外的安全位置后再进行。
- 在从前置点前往 SM 点的过程中重置机器人,系统无法自动将机器人推出电梯,需要人工介入。
两种模式对比
| LP1 | LP2 | |
|---|---|---|
| 多车同乘 | 不支持 | 支持 |
| 底层算法 | Timeline | Greedy |
| 电梯内 SM 点 | 每个机器人组一个 | 多个,需构成堆栈或队列结构 |
| 超容排队 | 支持在前置点等候 | 不支持超容后继续前往前置点 |
| 机器人组隔离 | 不涉及 | 同组才可拼梯 |
| 建图复杂度 | 低 | 中 |
| 运维复杂度 | 低 | 低 |
| 推荐场景 | 无多车需求,或电梯资源充足 | 空间允许多车、希望提升电梯空间利用率 |
如何选择
没有多车乘梯需求的现场,建议使用 LP1。LP1 在绝大多数场景下已经能满足需求,建图简单、调度逻辑清晰、排查问题直观。
引入 LP2 之前,建议先评估几个前提条件:
- 电梯的物理空间是否足以容纳多台机器人同时在梯内
- 机器人进出顺序是否与货物流向相容(队列 vs 堆栈结构的选择)
- 现场运营人员是否具备处理 LP2 异常情况的能力(进出顺序紊乱、重置机器人的处置方式)
LP2 能在高密度、高吞吐场景下带来显著的效率提升,但其收益建立在正确建图和规范运营的基础上。在条件不具备的情况下强行切换,可能引入比 LP1 排队等待更复杂的运维问题。