机器人车队运营 实时模型

你负责管理一座仓库的现场,约 24 台自主移动机器人(AMR)把周转箱从存储通道运到四个协作机器人打包单元。每个订单是一趟 240 m 的行程——200 m 穿过机器人专用通道,40 m 穿过有人工作的共享区——外加在单元处的一次拣选。模型根据公开标准和教科书公式,逐分钟计算排队、拥堵、死锁、停止距离、电池能量和充电功率,以及软件版本对停止的影响。这是一个运营原理模型:它不运行机器人软件,数字是通用的,并非任何产品的数据。仅为教学模拟——实际现场应遵循其自身的风险评估。

你将学到什么

模拟器

时间 0 min
在役机器人 24 · 已打包周转箱 360/h · 订单交付周期 0.0 min · 可用机器人 100% · A 区(仅限机器人) 1.5 m/s · 共享区 1.0 m/s (Δ 0.27 m) · 自由(局部避让), 陷入死锁的机器人 0 · 协作单元 0%, 协作单元内有人 0 · 充电器 0/6 (充电器停用 0), 等待充电器的机器人 0 · 平均电池电量 67% · v1 24, v2.0 0, v2.1 0 · 每机器人小时停止次数,最新版本 0.0/h, 每机器人小时停止次数,其余车队 0.0/h⁨24⁩ · ⁨360/h⁩ · ⁨机器人⁩························⁨✓ 1.5 m/s⁩⁨A 区(仅限机器人)⁩⁨无人⁩⁨⚠ 1.0 m/s⁩ · ⁨Δ 0.27 m⁩⁨共享区⁩⁨⛔ 0⁩ · ⁨自由(局部避让)⁩⁨0%⁩ · ⁨协作单元⁩⚙⚙⚙⚙⁨⚡ 0/6⁩ · ⁨⌛ 0⁩ · ⁨充电器⁩······⁨软件:v1 · v2.0 · v2.1⁩⁨v1 24⁩ · ⁨v2.0 0⁩ · ⁨v2.1 0⁩⁨0.0/h 最新⁩ · ⁨0.0/h 其余⁩
  • 执行任务行驶中
  • 在协作单元
  • 等待单元
  • 空闲
  • 充电中
  • 等待充电器
  • 正在更新软件
  • 已停止(通信或定位)
  • 陷入死锁
  • 电量耗尽,被拖走
  • 区域内无人
  • 区域内有人,速度在检测区内
  • 在有人区域速度超出检测区
  • 协作单元内有人
  • 充电器停用

控制

备用机器人从停放区唤醒;停放的机器人不耗电。每台在役机器人每小时耗费一个机器人小时。

A 区禁止人员进入,因此机器人可以快速行驶。如果有人进入,速度必须重新满足人员检测区的要求。

这里始终有人在工作。该速度下的停止距离必须落在 1.3 m 的人员检测区内。

自由:机器人只在局部互相避让——速度快,但两台或更多机器人可能永久互相堵死。区域预约:只有当前方的区域都已为它预约后,机器人才进入路口——不会死锁,每次通过路口只需短暂等待。

立即释放所有陷入死锁的机器人。每释放一台机器人耗费 2 操作员分钟;这不能阻止新的死锁形成。

完成任务时电量等于或低于此值的机器人会加入充电排队。设得越低,电池用得越多,但等待太久的机器人可能会耗尽电量。

充电器在约 70 % 以下以满功率充电;超过后电流逐渐减小。停得低一些,充电器就能更早空出来。

没有任务的机器人会去任意空闲充电器,而不是闲置等待;一旦有订单等待且电量比去充电阈值高出 20 %,就立即返回工作。

单元内无人时的工具速度。一箱 10 件物品在 1 m/s 下需要 25 s。

功率和力限制:被压在周转箱上的手所受的力不得超过 140 N(准静态限值,保守采用),因此这里最多允许 0.67 m/s。

移动滑块会把最新发布的版本推送到车队中这一比例的机器人(按顺序排在最前面的机器人);其余机器人运行 v1。之后发布的版本只有在你再次移动滑块时才会安装。每台更换版本的机器人停用 4 分钟。

指标

已打包周转箱
360/h
正常
订单交付周期
0.0min
正常
可用机器人
100%
正常
有人区域的停止裕度
0.27m
正常
等待中的订单0
协作机器人速度裕度(功率和力限制)0.17 m/s
平均电池电量67 %
最低电池电量42 %
等待充电器的机器人0
充电中的机器人0
电量耗尽的机器人(被拖走)0
陷入死锁的机器人0
已形成的死锁0
导航停止(通信或定位)0
每机器人小时停止次数,最新版本0.0 /h
每机器人小时停止次数,其余车队0.0 /h
运行最新版本的车队比例0 %
运行 v2.0 的车队0 %
正在更新的机器人0
A 区速度设定1.5 m/s
花在机器人上的操作员时间0 min
已用机器人小时0 h
在役机器人24
行驶中的机器人0
A 区实际速度1.50 m/s
每次通过路口的等待0.0 s
车队用电功率0.00 kW
充电器输出功率0.00 kW
协作单元占用0 %

趋势

已打包周转箱: — /h6000

危机场景

第 1 级 · 订单高峰前一半充电器故障

早班,24 台机器人在役,每分钟约 3.7 个订单。经过繁忙的一夜,车队开班时平均电量为 60 %。第 15 分钟,一次电气故障使六台充电器中的四台在本班剩余时间内停用。第 90 分钟订单高峰开始(两小时内 +25 %)。保持订单流动,让车队带着充足电量进入高峰,不要让任何机器人电量耗尽,并控制在本班的机器人预算之内。

  • 高峰期间及之后的平均交付周期 ≤ 3.5 min
  • 高峰开始时车队平均电量至少 49 %
  • 没有机器人耗尽电量
  • 本班最多 97 机器人小时
  • 在有人区域,停止距离始终在检测区内
  • 单元内有人时,协作机器人绝不超过功率和力限制速度

第 2 级 · 通道关闭、机器人堵死,维修人员进入 A 区

每分钟约 4.2 个订单,24 台机器人,交通管控设为自由行驶。第 10 分钟,一条通道因货架重新布置而关闭:路口更少,迎面相遇更多,且无路可绕。第 60 分钟,一支维修人员进入机器人专用的 A 区,停留 40 分钟。用尽量少的操作员时间保持订单流动,在有人的地方让每个停止距离都保持在安全检测区内,并在 A 区清空后恢复全速。

  • 平均交付周期 ≤ 6 min
  • 维修人员离开后,A 区平均速度恢复到 ≥ 1.4 m/s
  • 最多形成 1 个死锁
  • 花在机器人上的操作员时间最多 20 分钟
  • 在有人区域,停止距离始终在检测区内
  • 单元内有人时,协作机器人绝不超过功率和力限制速度

第 3 级 · 新导航软件的金丝雀发布

昨晚通道货架重新布置,运行当前软件(v1)的机器人在那里更常丢失位置;每次丢失都需要一名操作员处理。v2.0 版本修复了这个问题,并已作为金丝雀在 10 % 的车队上运行。给金丝雀足够的时间来判断,将其与车队其余部分比较,决定扩大还是回滚,并把车队迁移到一个好的版本——分阶段进行,不要一次让太多机器人停用。

  • 前 12 分钟保持金丝雀运行(≥ 5 % 的车队运行 v2.0)
  • 第 30 至 49 分钟撤下有缺陷的 v2.0(平均 ≤ 1 % 的车队运行它)
  • 热修复发布后前 10 分钟内最多覆盖 20 % 的车队
  • 及时推出热修复:发布后平均 ≥ 55 % 的车队运行该版本
  • 结束时至少 90 % 的车队运行最新版本
  • 任何时候至少 60 % 的机器人可用
  • 在有人区域,停止距离始终在检测区内
  • 单元内有人时,协作机器人绝不超过功率和力限制速度

依据:数字背后的模型

模拟器使用的每一个关系式及其来源。标注为假设的常数是示意性校准值。

利特尔法则:所有尚未打包的订单——无论在等待还是已在机器人上——除以周转箱实际打包的速率,就得到交付周期。
lead time W = L / X, L = orders waiting + orders on a robot, X = totes packed per minute (smoothed, τ = 10 min)[5]
共享通道的机器人越多,速度越低(Greenshields 线性速度–密度关系)。
v_eff = v · max(0.1, 1 − n_moving / N_jam), N_jam = 120 robots (80 with an aisle closed)[7][9]示意性数值,并非任何真实场地或产品的数值。真实场地根据自身的风险评估和制造商数据设定检测区、速度和限值。
没有预约时,两台机器人可能各自等待对方占用的空间——即循环等待。相遇次数随行驶中机器人数量的平方增长。
free traffic: P(new deadlock in a minute) = 1 − e^(−κ·n_moving²/n_I), κ = 0.00001 (× 300 with an aisle closed, n_I = 6 → 4); a robot behind joins with p = 0.5 (≤ 8); the fleet manager re-plans with p = 0.2/min (0.03/min with no detour)[8][10]示意性数值,并非任何真实场地或产品的数值。真实场地根据自身的风险评估和制造商数据设定检测区、速度和限值。
区域预约:只有当前方的区域都已为它预约后(一次性全部预约,按固定顺序),机器人才进入,从而消除循环等待;此时每个路口就像一个单服务台、通过时间固定的排队系统。
zone reservation: a robot enters only when the zones ahead are granted to it → no circular wait; each crossing W = ρτ / (2(1 − ρ)), ρ = λ_I·τ, τ = 2 s, 6 crossings per task[8][6][9]示意性数值,并非任何真实场地或产品的数值。真实场地根据自身的风险评估和制造商数据设定检测区、速度和限值。
在可能有人的地方,停止距离——反应行程加制动距离——必须落在人员检测区内。
d_stop = v·t_r + v²/(2a) + C ≤ F (t_r = 0.3 s, a = 0.8 m/s², C = 0.1 m, F = 1.3 m ⇒ v ≤ 1.17 m/s where people can be)[1][2]示意性数值,并非任何真实场地或产品的数值。真实场地根据自身的风险评估和制造商数据设定检测区、速度和限值。
功率和力限制:与手接触时仍低于允许力的最高速度,由手与机器人的折算质量以及手的刚度求得。即使是短暂接触也采用准静态限值,这是保守的做法。
v ≤ F / √(μ·k), μ = (1/m_H + 1/m_R)⁻¹, m_R = M/2 + m_L; hand: F = 140 N (quasi-static limit, used conservatively), k = 75 N/mm, m_H = 0.6 kg; M = 24 kg, m_L = 3 kg ⇒ v ≤ 0.67 m/s[3][4]示意性数值,并非任何真实场地或产品的数值。真实场地根据自身的风险评估和制造商数据设定检测区、速度和限值。
一箱物品需要抓取时间,外加每件物品两次伸手动作;单元内有人时,协作机器人以协作速度运行。机器人按到达单元的先后顺序接受服务,在每一分钟内逐秒处理。
tote time = 10 items × (1.5 s + 2 × 0.5 m / v_cobot); v_cobot = collaborative speed while a person is in the cell; 4 cells, served in order of arrival within the minute[3]示意性数值,并非任何真实场地或产品的数值。真实场地根据自身的风险评估和制造商数据设定检测区、速度和限值。
行驶功率:固定的电子设备负载、滚动阻力,以及每次走走停停损失的制动能量。
P = 60 W + C_rr·m·g·v/η + 0.03/m · v · ½mv²·(1 − r)/η (C_rr = 0.012, m = 500 kg, η = 0.75, r = 0.5)[12]示意性数值,并非任何真实场地或产品的数值。真实场地根据自身的风险评估和制造商数据设定检测区、速度和限值。
充电器在电量约 70 % 以下以满功率充电,之后电流逐渐减小(先恒流,后恒压)。
P_charge = 0.8 kW up to 70 % SoC, then × (1 − 0.9·(SoC − 70)/30); battery 0.8 kWh; stranded at 1 %[11][10]示意性数值,并非任何真实场地或产品的数值。真实场地根据自身的风险评估和制造商数据设定检测区、速度和限值。
当与车队管理系统的通信中断时间超过其看门狗时间时,机器人就会停下;看门狗越短,捕捉到的短暂 Wi-Fi 中断就越多。
P(link silent > W in a robot-minute) = 0.224·e^(−W/0.1 s); watchdog W: v1 0.5 s, v2.0 0.15 s, v2.1 0.5 s; stop 2 min[13]示意性数值,并非任何真实场地或产品的数值。真实场地根据自身的风险评估和制造商数据设定检测区、速度和限值。
金丝雀对比:运行最新版本的机器人与车队其余机器人的每机器人小时停止次数对比。
stops per robot-hour, canary vs control: 60·stops / robots (smoothed τ = 10 min); update or rollback = 4 min out of service[13]
本模型的其他常数
task 200 m in zone A + 40 m in the shared area · 6 intersections · 4 cobot cells, a person inside 25 % of minutes · 6 chargers · shift-start charge stratified over mean ± 27.5 % · v1 mislocalises 0.6 % per driving minute in re-racked aisles (others 0.04 %), 6-min stop + 3 operator-min · clearing a deadlock 2 operator-min per robot · tow 15 operator-min示意性数值,并非任何真实场地或产品的数值。真实场地根据自身的风险评估和制造商数据设定检测区、速度和限值。

随机性:带种子的 mulberry32 生成器;所用分布包括均匀分布、指数分布(逆 CDF)、正态分布(Box–Muller)和泊松分布(Knuth)。种子会显示出来,并且可以分享。

来源

  1. ISO 3691-4:2023 Industrial trucks — Safety requirements and verification — Part 4: Driverless industrial trucks and their systems (personnel detection, zones, speed) — ISO/TC 110/SC 2, 2023
  2. ISO 13855:2024 Safety of machinery — Positioning of safeguards with respect to the approach of the human body (minimum distance S = K·T + C; replaces the 2010 edition) — ISO/TC 199, 2024
  3. ISO/TS 15066:2016 Robots and robotic devices — Collaborative robots (Annex A: body-region limits; transient contact speed v = F/√(μk), μ = (1/m_H + 1/m_R)⁻¹, m_R = M/2 + m_L) — ISO/TC 299, 2016
  4. ISO 10218-2:2025 Robotics — Safety requirements — Part 2: Industrial robot applications and robot cells (collaborative applications; takes over the ISO/TS 15066 body-region data) — ISO/TC 299, 2025
  5. J. D. C. Little — A Proof for the Queuing Formula: L = λW — Operations Research 9(3):383–387, 1961
  6. M. Harchol-Balter — Performance Modeling and Design of Computer Systems (M/G/1 Pollaczek–Khinchine mean wait; M/D/1) — Cambridge University Press, 2013
  7. B. D. Greenshields — A Study of Traffic Capacity (linear speed–density relation) — Highway Research Board Proceedings 14:448–477, 1935
  8. E. G. Coffman, M. Elphick, A. Shoshani — System Deadlocks (the four necessary conditions; prevention by ordered resource allocation) — ACM Computing Surveys 3(2):67–78, 1971
  9. I. F. A. Vis — Survey of research in the design and control of automated guided vehicle systems (fleet sizing, zone control, deadlocks, battery management) — European Journal of Operational Research 170(3):677–709, 2006
  10. M. De Ryck, M. Versteyhe, F. Debrouwere — Automated guided vehicle systems, state-of-the-art control algorithms and techniques (traffic, deadlock avoidance, battery charging strategies) — Journal of Manufacturing Systems 54:152–173, 2020
  11. BU-409: Charging Lithium-ion (constant current to about 70 % state of charge, then constant voltage while the current tapers) — Battery University
  12. T. D. Gillespie — Fundamentals of Vehicle Dynamics (rolling resistance F = C_rr·m·g; kinetic energy lost in braking) — SAE International, 1992
  13. The Site Reliability Workbook — Ch. 16 Canarying Releases (canary vs control, multi-stage rollout, rollback) — Beyer, Murphy, Rensin, Kawahara, Thorne (eds.), O'Reilly, 2018

谁在从事这份工作

教育模型,不可用于实际运营决策。真实站点会根据自己的设备和数据校准每一个常数。