Beheer van een robotvloot Live model

Je leidt de vloer van een magazijn waar ongeveer 24 autonome mobiele robots (AMR’s) bakken van de opslaggangpaden naar vier cobot-inpakcellen brengen. Elke order is een rit van 240 m – 200 m door robotgangpaden, 40 m door het gedeelde gebied waar mensen werken – en een pick bij een cel. Het model berekent minuut voor minuut wachtrijen, congestie, deadlocks, stopafstanden, accu-energie en laadvermogen, en het effect van softwareversies op stops, op basis van gepubliceerde normen en formules uit leerboeken. Het is een model van werkingsprincipes: het draait geen robotsoftware, en de getallen zijn generiek, niet die van een product. Alleen een educatieve simulatie – echte locaties volgen hun eigen risicobeoordeling.

Wat je gaat leren

Simulator

Tijd 0 min
Robots in bedrijf 24 · Ingepakte bakken 360/h · Doorlooptijd per order 0,0 min · Beschikbare robots 100% · Zone A (alleen robots) 1,5 m/s · Gedeeld gebied 1,0 m/s (Δ 0,27 m) · Vrij (lokaal uitwijken), Robots vast in deadlocks 0 · Cobotcellen 0%, Persoon in een cobotcel 0 · Laders 0/6 (Lader buiten bedrijf 0), Robots die op een lader wachten 0 · Gemiddelde acculading 67% · v1 24, v2.0 0, v2.1 0 · Stops per robotuur, nieuwste build 0,0/h, Stops per robotuur, rest van de vloot 0,0/h⁨24⁩ · ⁨360/h⁩ · ⁨Robots⁩························⁨✓ 1,5 m/s⁩⁨Zone A (alleen robots)⁩⁨geen mensen⁩⁨⚠ 1,0 m/s⁩ · ⁨Δ 0,27 m⁩⁨Gedeeld gebied⁩⁨⛔ 0⁩ · ⁨Vrij (lokaal uitwijken)⁩⁨0%⁩ · ⁨Cobotcellen⁩⚙⚙⚙⚙⁨⚡ 0/6⁩ · ⁨⌛ 0⁩ · ⁨Laders⁩······⁨Software: v1 · v2.0 · v2.1⁩⁨v1 24⁩ · ⁨v2.0 0⁩ · ⁨v2.1 0⁩⁨0,0/h nieuwste⁩ · ⁨0,0/h rest⁩
  • Rijdt met een taak
  • Bij een cobotcel
  • Wacht op een cel
  • Stilstaand
  • Laadt
  • Wacht op een lader
  • Software wordt bijgewerkt
  • Gestopt (verbinding of lokalisatie)
  • Vast in een deadlock
  • Leeggelopen, weggesleept
  • Zone zonder mensen
  • Mensen in de zone, snelheid binnen het veld
  • Te snel voor het veld waar mensen zijn
  • Persoon in een cobotcel
  • Lader buiten bedrijf

Bediening

Reserverobots worden in het depot geactiveerd; geparkeerde robots verbruiken geen stroom. Elke robot in bedrijf kost één robotuur per uur.

Zone A is afgesloten voor mensen, dus robots mogen snel rijden. Als er mensen binnenkomen, moet de snelheid weer binnen het persoonsdetectieveld passen.

Hier werken altijd mensen. De stopafstand bij deze snelheid moet binnen het persoonsdetectieveld van 1,3 m passen.

Vrij: robots wijken alleen lokaal voor elkaar uit – snel, maar twee of meer kunnen elkaar definitief blokkeren. Zonereservering: een robot rijdt een kruispunt pas op als de zones vóór hem voor hem zijn gereserveerd – geen deadlocks, een korte wachttijd bij elke kruising.

Bevrijdt nu elke vastgelopen robot. Kost 2 operatorminuten per bevrijde robot; nieuwe deadlocks blijven gewoon ontstaan.

Een robot die een taak afrondt met deze lading of minder, sluit aan in de wachtrij voor de lader. Lager benut meer van de accu, maar een robot die te lang wacht, kan leeglopen.

Laders leveren vol vermogen tot ongeveer 70 %; daarboven neemt de stroom af. Eerder stoppen maakt de lader sneller vrij.

Robots zonder taak gaan naar een vrije lader in plaats van stil te wachten, en gaan weer aan het werk zodra er orders wachten en ze 20 % boven het laadniveau zitten.

Gereedschapssnelheid zolang er niemand in de cel is. Een bak met 10 artikelen duurt 25 s bij 1 m/s.

Vermogens- en krachtbegrenzing: een hand die tegen een bak klem raakt, mag niet meer dan 140 N voelen (de quasistatische grens, conservatief toegepast); dat staat hier hoogstens 0,67 m/s toe.

Met de schuifregelaar rol je de nieuwste gepubliceerde build uit naar dat deel van de vloot (de eerste robots op volgorde); de rest draait v1. Een build die later wordt gepubliceerd, wordt pas geïnstalleerd als je de schuifregelaar opnieuw verschuift. Elke robot die van versie wisselt, is 4 minuten buiten bedrijf.

Indicatoren

Ingepakte bakken
360/h
normaal
Doorlooptijd per order
0,0min
normaal
Beschikbare robots
100%
normaal
Stopmarge waar mensen zijn
0,27m
normaal
Wachtende orders0
Snelheidsmarge cobot (vermogens- en krachtgrens)0,17 m/s
Gemiddelde acculading67 %
Laagste acculading42 %
Robots die op een lader wachten0
Ladende robots0
Leeggelopen robots (weggesleept)0
Robots vast in deadlocks0
Ontstane deadlocks0
Navigatiestops (verbinding of lokalisatie)0
Stops per robotuur, nieuwste build0,0 /h
Stops per robotuur, rest van de vloot0,0 /h
Vloot op de nieuwste build0 %
Vloot op v2.00 %
Robots in update0
Snelheidsinstelling zone A1,5 m/s
Operatortijd aan robots0 min
Gebruikte roboturen0 h
Robots in bedrijf24
Rijdende robots0
Werkelijke snelheid in zone A1,50 m/s
Wachttijd per kruising0,0 s
Vermogensopname van de vloot0,00 kW
Geleverd laadvermogen0,00 kW
Bezette cobotcellen0 %

Trend

Ingepakte bakken: — /h6000

Crisisscenario’s

Niveau 1 · De helft van de laders valt uit vóór de orderpiek

Ochtenddienst, 24 robots in bedrijf, ongeveer 3,7 orders per minuut. Na een drukke nacht begint de vloot de dienst gemiddeld 60 % geladen. Op minuut 15 schakelt een elektrische storing vier van de zes laders uit voor de rest van de dienst. Op minuut 90 begint de orderpiek (+25 % gedurende twee uur). Houd de orders in beweging, ga de piek in met een geladen vloot, laat geen robot leeglopen en blijf binnen het robotbudget van de dienst.

  • Gemiddelde doorlooptijd tijdens en na de piek ≤ 3,5 min
  • Vloot gemiddeld minstens 49 % geladen wanneer de piek begint
  • Geen robot loopt leeg
  • Hoogstens 97 roboturen voor de dienst
  • Stopafstand waar mensen zijn altijd binnen het veld
  • Cobot nooit sneller dan de vermogens- en krachtgrens met een persoon in de cel

Niveau 2 · Een gangpad gaat dicht, robots lopen vast en een ploeg stapt zone A in

Ongeveer 4,2 orders per minuut, 24 robots, verkeersregeling op vrij rijden. Op minuut 10 wordt een gangpad afgesloten voor het herinrichten van de stellingen: minder kruispunten, meer frontale ontmoetingen en geen omwegen. Op minuut 60 betreedt een onderhoudsploeg voor 40 minuten zone A, die alleen voor robots is. Houd de orders in beweging met weinig operatortijd, houd elke stopafstand binnen het veiligheidsveld waar mensen zijn, en laat zone A weer op volle snelheid rijden zodra die vrij is.

  • Gemiddelde doorlooptijd ≤ 6 min
  • Zone A gemiddeld weer op ≥ 1,4 m/s zodra de ploeg weg is
  • Hoogstens 1 deadlock ontstaat
  • Hoogstens 20 operatorminuten aan robots
  • Stopafstand waar mensen zijn altijd binnen het veld
  • Cobot nooit sneller dan de vermogens- en krachtgrens met een persoon in de cel

Niveau 3 · Canary-uitrol van nieuwe navigatiesoftware

De gangpaden zijn vannacht heringericht en robots op de huidige software (v1) raken daar vaker hun positie kwijt; elk verlies vraagt een operator. Release v2.0 lost dat op en draait al als canary op 10 % van de vloot. Geef de canary genoeg tijd om hem te beoordelen, vergelijk hem met de rest van de vloot, beslis of je uitbreidt of terugdraait, en breng de vloot naar een goede build – in fasen, zonder te veel robots tegelijk uit bedrijf te halen.

  • Canary de eerste 12 minuten laten draaien (≥ 5 % van de vloot op v2.0)
  • Van minuut 30 tot 49 weg van de foutieve v2.0 (gemiddeld ≤ 1 % van de vloot erop)
  • Hotfix in de eerste 10 minuten op hoogstens 20 % van de vloot
  • Hotfix snel uitgerold: na publicatie gemiddeld ≥ 55 % van de vloot erop
  • Aan het eind minstens 90 % van de vloot op de nieuwste build
  • Altijd minstens 60 % van de robots beschikbaar
  • Stopafstand waar mensen zijn altijd binnen het veld
  • Cobot nooit sneller dan de vermogens- en krachtgrens met een persoon in de cel

Grondslag — het model achter de getallen

Elk verband dat de simulator gebruikt, met bron. Constanten die als aanname zijn gemarkeerd, zijn illustratieve kalibraties.

Wet van Little: alle orders die nog niet zijn ingepakt – wachtend of al op een robot – gedeeld door het tempo waarin bakken echt worden ingepakt, geeft de doorlooptijd.
lead time W = L / X, L = orders waiting + orders on a robot, X = totes packed per minute (smoothed, τ = 10 min)[5]
De snelheid daalt naarmate meer robots de gangpaden delen (lineaire snelheid-dichtheidrelatie van Greenshields).
v_eff = v · max(0.1, 1 − n_moving / N_jam), N_jam = 120 robots (80 with an aisle closed)[7][9]Illustratieve waarden, niet die van een echte locatie of een echt product. Echte locaties stellen velden, snelheden en grenzen vast op basis van hun eigen risicobeoordeling en de gegevens van de fabrikant.
Zonder reservering kunnen twee robots elk wachten op de ruimte die de ander bezet – een circulaire wachtsituatie. Ontmoetingen groeien met het kwadraat van het aantal rijdende robots.
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]Illustratieve waarden, niet die van een echte locatie of een echt product. Echte locaties stellen velden, snelheden en grenzen vast op basis van hun eigen risicobeoordeling en de gegevens van de fabrikant.
Zonereservering: een robot rijdt pas in als de zones vóór hem voor hem zijn gereserveerd (allemaal tegelijk, in een vaste volgorde), wat de circulaire wachtsituatie wegneemt; elk kruispunt gedraagt zich dan als een wachtrij met één bediende en een vaste kruistijd.
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]Illustratieve waarden, niet die van een echte locatie of een echt product. Echte locaties stellen velden, snelheden en grenzen vast op basis van hun eigen risicobeoordeling en de gegevens van de fabrikant.
Waar mensen kunnen zijn, moet de stopafstand – reactieweg plus remweg – binnen het persoonsdetectieveld passen.
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]Illustratieve waarden, niet die van een echte locatie of een echt product. Echte locaties stellen velden, snelheden en grenzen vast op basis van hun eigen risicobeoordeling en de gegevens van de fabrikant.
Vermogens- en krachtbegrenzing: de hoogste snelheid waarbij een contact met een hand onder de toegestane kracht blijft, berekend uit de gereduceerde massa van hand en robot en de stijfheid van de hand. De quasistatische grens wordt ook voor kort contact gebruikt, wat conservatief is.
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]Illustratieve waarden, niet die van een echte locatie of een echt product. Echte locaties stellen velden, snelheden en grenzen vast op basis van hun eigen risicobeoordeling en de gegevens van de fabrikant.
Een bak kost grijptijd plus twee reikbewegingen per artikel; met een persoon in de cel werkt de cobot op de collaboratieve snelheid. Robots worden geholpen in de volgorde waarin ze de cellen bereiken, seconde voor seconde binnen elke minuut.
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]Illustratieve waarden, niet die van een echte locatie of een echt product. Echte locaties stellen velden, snelheden en grenzen vast op basis van hun eigen risicobeoordeling en de gegevens van de fabrikant.
Rijvermogen: een vaste elektronicabelasting, rolweerstand en de remenergie die bij elke stop-en-start verloren gaat.
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]Illustratieve waarden, niet die van een echte locatie of een echt product. Echte locaties stellen velden, snelheden en grenzen vast op basis van hun eigen risicobeoordeling en de gegevens van de fabrikant.
Laders leveren vol vermogen tot ongeveer 70 % lading, daarna neemt de stroom af (eerst constante stroom, dan constante spanning).
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]Illustratieve waarden, niet die van een echte locatie of een echt product. Echte locaties stellen velden, snelheden en grenzen vast op basis van hun eigen risicobeoordeling en de gegevens van de fabrikant.
Een robot stopt wanneer de verbinding met de vlootmanager langer stil is dan zijn watchdog; een kortere watchdog vangt veel meer korte wifi-onderbrekingen op.
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]Illustratieve waarden, niet die van een echte locatie of een echt product. Echte locaties stellen velden, snelheden en grenzen vast op basis van hun eigen risicobeoordeling en de gegevens van de fabrikant.
Canary-vergelijking: stops per robotuur van de robots op de nieuwste build tegenover de rest van de vloot.
stops per robot-hour, canary vs control: 60·stops / robots (smoothed τ = 10 min); update or rollback = 4 min out of service[13]
Overige constanten van dit model
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-minIllustratieve waarden, niet die van een echte locatie of een echt product. Echte locaties stellen velden, snelheden en grenzen vast op basis van hun eigen risicobeoordeling en de gegevens van de fabrikant.

Willekeur: een mulberry32-generator met seed; gebruikte verdelingen — uniform, exponentieel (inverse CDF), normaal (Box–Muller), Poisson (Knuth). De seed wordt getoond en kan worden gedeeld.

Bronnen

  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

Wie dit beroepsmatig doet

Educatief model — niet bedoeld voor operationele beslissingen. Echte locaties stemmen elke constante af op hun eigen apparatuur en gegevens.