Robottikaluston operointi Reaaliaikainen malli

Johdat varaston lattiaa, jossa noin 24 autonomista mobiilirobottia (AMR) kuljettaa laatikoita varastokäytäviltä neljään cobot-pakkaussoluun. Jokainen tilaus on 240 m:n matka — 200 m vain roboteille tarkoitetuilla käytävillä, 40 m yhteisalueella, jossa ihmiset työskentelevät — ja keräily solussa. Malli laskee minuutti minuutilta jonot, ruuhkat, lukkiumat, pysähtymismatkat, akkuenergian ja laturitehon sekä ohjelmistoversioiden vaikutuksen pysähdyksiin julkaistujen standardien ja oppikirjakaavojen pohjalta. Se on toimintaperiaatteiden malli: se ei aja robottiohjelmistoja, ja luvut ovat yleisiä, eivät minkään tuotteen. Vain opetuskäyttöön tarkoitettu simulaatio — todelliset kohteet noudattavat omaa riskinarviointiaan.

Mitä opit

Simulaattori

Aika 0 min
Robotteja käytössä 24 · Pakatut laatikot 360/h · Tilauksen läpimenoaika 0,0 min · Käytettävissä olevat robotit 100% · Vyöhyke A (vain robotit) 1,5 m/s · Yhteisalue 1,0 m/s (Δ 0,27 m) · Vapaa (paikallinen väistäminen), Lukkiumaan juuttuneet robotit 0 · Cobot-solut 0%, Ihminen cobot-solussa 0 · Laturit 0/6 (Laturi poissa käytöstä 0), Laturia odottavat robotit 0 · Akkujen keskimääräinen varaus 67% · v1 24, v2.0 0, v2.1 0 · Pysähdyksiä / robottitunti, uusin versio 0,0/h, Pysähdyksiä / robottitunti, muu kalusto 0,0/h⁨24⁩ · ⁨360/h⁩ · ⁨Robotit⁩························⁨✓ 1,5 m/s⁩⁨Vyöhyke A (vain robotit)⁩⁨ei ihmisiä⁩⁨⚠ 1,0 m/s⁩ · ⁨Δ 0,27 m⁩⁨Yhteisalue⁩⁨⛔ 0⁩⁨Vapaa (paikallinen…⁨0%⁩ · ⁨Cobot-solut⁩⚙⚙⚙⚙⁨⚡ 0/6⁩ · ⁨⌛ 0⁩ · ⁨Laturit⁩······⁨Ohjelmisto: v1 · v2.0 · v2.1⁩⁨v1 24⁩ · ⁨v2.0 0⁩ · ⁨v2.1 0⁩⁨0,0/h uusin⁩ · ⁨0,0/h muut⁩
  • Ajaa tehtävää
  • Cobot-solulla
  • Odottaa solua
  • Joutilaana
  • Latautuu
  • Odottaa laturia
  • Päivittää ohjelmistoa
  • Pysähtynyt (yhteys tai paikannus)
  • Jumissa lukkiumassa
  • Tyhjentynyt, hinattu
  • Vyöhyke ilman ihmisiä
  • Ihmisiä vyöhykkeellä, nopeus kentän rajoissa
  • Liian nopea kentälle ihmisten lähellä
  • Ihminen cobot-solussa
  • Laturi poissa käytöstä

Säätimet

Vararobotit heräävät varikolta; pysäköidyt robotit eivät kuluta virtaa. Jokainen käytössä oleva robotti maksaa yhden robottitunnin tunnissa.

Vyöhyke A on suljettu ihmisiltä, joten robotit saavat ajaa nopeasti. Jos sinne tulee ihmisiä, nopeuden on taas mahduttava henkilöntunnistuskenttään.

Täällä työskentelee aina ihmisiä. Pysähtymismatkan tällä nopeudella on mahduttava 1,3 m:n henkilöntunnistuskenttään.

Vapaa: robotit vain väistävät toisiaan paikallisesti — nopeaa, mutta kaksi tai useampi voi tukkia toisensa pysyvästi. Vyöhykevaraus: robotti ajaa risteykseen vasta, kun sen edessä olevat vyöhykkeet on varattu sille — ei lukkiumia, lyhyt odotus jokaisessa risteyksessä.

Vapauttaa heti kaikki lukkiutuneet robotit. Maksaa 2 operaattoriminuuttia jokaista vapautettua robottia kohden; ei estä uusien lukkiumien syntymistä.

Robotti, joka päättää tehtävän tällä varauksella tai pienemmällä, siirtyy laturijonoon. Matalampi raja käyttää akkua enemmän, mutta liian kauan odottava robotti voi tyhjentyä kokonaan.

Laturit antavat täyttä tehoa noin 70 %:iin asti; sen yli virta pienenee vähitellen. Aiemmin lopettaminen vapauttaa laturin nopeammin.

Tehtävättömät robotit menevät mihin tahansa vapaaseen laturiin joutokäynnin sijaan ja lähtevät taas töihin heti, kun tilauksia odottaa ja niiden varaus on 20 % lataukseen lähettämisen rajan yläpuolella.

Työkalun nopeus, kun solussa ei ole ketään. 10 tuotteen laatikko vie 25 s nopeudella 1 m/s.

Tehon ja voiman rajoitus: laatikkoa vasten puristuva käsi ei saa kokea yli 140 N:n voimaa (kvasistaattinen raja, sovellettuna varovaisesti), mikä sallii tässä enintään 0,67 m/s.

Liukusäätimen siirtäminen jakaa uusimman julkaistun version tälle osuudelle kalustosta (ensimmäiset robotit järjestyksessä); muut ajavat v1:tä. Myöhemmin julkaistu versio asennetaan vasta, kun siirrät liukusäädintä uudelleen. Jokainen versiota vaihtava robotti on poissa käytöstä 4 minuuttia.

Mittarit

Pakatut laatikot
360/h
normaali
Tilauksen läpimenoaika
0,0min
normaali
Käytettävissä olevat robotit
100%
normaali
Pysähtymisvara ihmisten lähellä
0,27m
normaali
Odottavat tilaukset0
Cobotin nopeusvara (tehon ja voiman raja)0,17 m/s
Akkujen keskimääräinen varaus67 %
Pienin akun varaus42 %
Laturia odottavat robotit0
Latautuvat robotit0
Tyhjentyneet robotit (hinattu)0
Lukkiumaan juuttuneet robotit0
Syntyneet lukkiumat0
Navigointipysähdykset (yhteys tai paikannus)0
Pysähdyksiä / robottitunti, uusin versio0,0 /h
Pysähdyksiä / robottitunti, muu kalusto0,0 /h
Kalusto uusimmalla versiolla0 %
Kalusto v2.0:lla0 %
Päivittyvät robotit0
Vyöhykkeen A nopeusasetus1,5 m/s
Operaattoriaika roboteille0 min
Käytetyt robottitunnit0 h
Robotteja käytössä24
Ajavat robotit0
Todellinen nopeus vyöhykkeellä A1,50 m/s
Odotus risteystä kohden0,0 s
Kaluston tehonotto0,00 kW
Laturien antama teho0,00 kW
Cobot-solujen käyttöaste0 %

Trendi

Pakatut laatikot: — /h6000

Kriisiskenaariot

Taso 1 · Puolet latureista vikaantuu ennen tilaushuippua

Aamuvuoro, 24 robottia käytössä, noin 3,7 tilausta minuutissa. Kiireisen yön jälkeen kaluston keskimääräinen varaus vuoron alussa on 60 %. Minuutilla 15 sähkövika vie neljä kuudesta laturista käytöstä vuoron loppuun asti. Minuutilla 90 alkaa tilaushuippu (+25 % kahden tunnin ajan). Pidä tilaukset liikkeessä, aloita huippu ladatulla kalustolla, älä anna yhdenkään robotin tyhjentyä ja pysy vuoron robottituntibudjetissa.

  • Keskimääräinen läpimenoaika huipun aikana ja jälkeen ≤ 3,5 min
  • Kaluston keskimääräinen varaus vähintään 49 % huipun alkaessa
  • Yksikään robotti ei tyhjene
  • Enintään 97 robottituntia vuorossa
  • Pysähtymismatka aina kentän sisällä ihmisten lähellä
  • Cobot ei koskaan tehon ja voiman rajaa nopeampi, kun sisällä on ihminen

Taso 2 · Käytävä suljetaan, robotit lukkiutuvat ja ryhmä kävelee vyöhykkeelle A

Noin 4,2 tilausta minuutissa, 24 robottia, liikenteenohjaus vapaalla ajolla. Minuutilla 10 yksi käytävä suljetaan hyllyjen uudelleenjärjestelyn vuoksi: vähemmän risteyksiä, enemmän nokkakohtaamisia eikä kiertoteitä. Minuutilla 60 huoltoryhmä tulee vain roboteille tarkoitetulle vyöhykkeelle A 40 minuutiksi. Pidä tilaukset liikkeessä vähällä operaattoriajalla, pidä jokainen pysähtymismatka turvakentän sisällä ihmisten lähellä ja aja vyöhykettä A taas täydellä nopeudella, kun se on vapaa.

  • Keskimääräinen läpimenoaika ≤ 6 min
  • Vyöhyke A taas keskimäärin ≥ 1,4 m/s ryhmän lähdettyä
  • Enintään 1 lukkiuma syntyy
  • Enintään 20 operaattoriminuuttia roboteille
  • Pysähtymismatka aina kentän sisällä ihmisten lähellä
  • Cobot ei koskaan tehon ja voiman rajaa nopeampi, kun sisällä on ihminen

Taso 3 · Uuden navigointiohjelmiston canary-käyttöönotto

Käytävien hyllyt järjestettiin uudelleen viime yönä, ja nykyistä ohjelmistoa (v1) ajavat robotit kadottavat siellä sijaintinsa useammin; jokainen menetys vaatii operaattorin. Julkaisu v2.0 korjaa tämän ja on jo käytössä 10 %:lla kalustosta canaryna. Anna canarylle riittävästi aikaa sen arvioimiseen, vertaa sitä muuhun kalustoon, päätä laajennetaanko vai palataanko edelliseen versioon, ja saa kalusto toimivalle versiolle — vaiheittain, ottamatta liian monta robottia pois käytöstä kerralla.

  • Canary pidetty käynnissä ensimmäiset 12 minuuttia (≥ 5 % kalustosta v2.0:lla)
  • Pois viallisesta v2.0:sta minuuteilla 30–49 (keskimäärin ≤ 1 % kalustosta sillä)
  • Hotfix enintään 20 %:lla kalustosta ensimmäisten 10 minuuttinsa aikana
  • Hotfix otettu käyttöön ripeästi: julkaisun jälkeen keskimäärin ≥ 55 % kalustosta sillä
  • Vähintään 90 % kalustosta uusimmalla versiolla lopussa
  • Vähintään 60 % roboteista käytettävissä koko ajan
  • Pysähtymismatka aina kentän sisällä ihmisten lähellä
  • Cobot ei koskaan tehon ja voiman rajaa nopeampi, kun sisällä on ihminen

Perusta — lukujen takana oleva malli

Kaikki simulaattorin käyttämät yhteydet lähteineen. Oletuksiksi merkityt vakiot ovat havainnollistavia kalibrointeja.

Littlen laki: kaikki vielä pakkaamattomat tilaukset — odottavat tai jo robotin kyydissä olevat — jaettuna sillä tahdilla, jolla laatikoita todella pakataan, antaa läpimenoajan.
lead time W = L / X, L = orders waiting + orders on a robot, X = totes packed per minute (smoothed, τ = 10 min)[5]
Nopeus laskee, kun yhä useampi robotti jakaa käytävät (Greenshieldsin lineaarinen nopeus–tiheys-riippuvuus).
v_eff = v · max(0.1, 1 − n_moving / N_jam), N_jam = 120 robots (80 with an aisle closed)[7][9]Havainnollistavia arvoja, eivät todellisen kohteen tai tuotteen arvoja. Todellisissa kohteissa kentät, nopeudet ja rajat asetetaan oman riskinarvioinnin ja valmistajan tietojen perusteella.
Ilman varausta kaksi robottia voi kumpikin odottaa tilaa, jonka toinen varaa — kehämäinen odotus. Kohtaamiset kasvavat ajavien robottien määrän neliössä.
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]Havainnollistavia arvoja, eivät todellisen kohteen tai tuotteen arvoja. Todellisissa kohteissa kentät, nopeudet ja rajat asetetaan oman riskinarvioinnin ja valmistajan tietojen perusteella.
Vyöhykevaraus: robotti ajaa sisään vasta, kun sen edessä olevat vyöhykkeet on varattu sille (kaikki kerralla, kiinteässä järjestyksessä), mikä poistaa kehämäisen odotuksen; jokainen risteys käyttäytyy silloin kuin yhden palvelijan jono, jossa ylitysaika on kiinteä.
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]Havainnollistavia arvoja, eivät todellisen kohteen tai tuotteen arvoja. Todellisissa kohteissa kentät, nopeudet ja rajat asetetaan oman riskinarvioinnin ja valmistajan tietojen perusteella.
Siellä, missä voi olla ihmisiä, pysähtymismatkan — reaktiomatka plus jarrutus — on mahduttava henkilöntunnistuskenttään.
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]Havainnollistavia arvoja, eivät todellisen kohteen tai tuotteen arvoja. Todellisissa kohteissa kentät, nopeudet ja rajat asetetaan oman riskinarvioinnin ja valmistajan tietojen perusteella.
Tehon ja voiman rajoitus: suurin nopeus, jolla kosketus käteen pysyy sallitun voiman alla, laskettuna käden ja robotin redusoidusta massasta ja käden jäykkyydestä. Kvasistaattista rajaa käytetään lyhyissäkin kosketuksissa, mikä on varovainen valinta.
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]Havainnollistavia arvoja, eivät todellisen kohteen tai tuotteen arvoja. Todellisissa kohteissa kentät, nopeudet ja rajat asetetaan oman riskinarvioinnin ja valmistajan tietojen perusteella.
Laatikollinen tuotteita vie tarttumisajan sekä kaksi käsivarren liikettä tuotetta kohden; kun sisällä on ihminen, cobot toimii yhteistyönopeudella. Robotit palvellaan siinä järjestyksessä, jossa ne saapuvat soluille, sekunti sekunnilta kunkin minuutin sisällä.
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]Havainnollistavia arvoja, eivät todellisen kohteen tai tuotteen arvoja. Todellisissa kohteissa kentät, nopeudet ja rajat asetetaan oman riskinarvioinnin ja valmistajan tietojen perusteella.
Ajoteho: elektroniikan kiinteä kuorma, vierintävastus ja jokaisessa pysähdyksessä ja liikkeellelähdössä menetetty jarrutusenergia.
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]Havainnollistavia arvoja, eivät todellisen kohteen tai tuotteen arvoja. Todellisissa kohteissa kentät, nopeudet ja rajat asetetaan oman riskinarvioinnin ja valmistajan tietojen perusteella.
Laturit antavat täyttä tehoa noin 70 %:n varaukseen asti, sitten virta pienenee (ensin vakiovirta, sitten vakiojännite).
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]Havainnollistavia arvoja, eivät todellisen kohteen tai tuotteen arvoja. Todellisissa kohteissa kentät, nopeudet ja rajat asetetaan oman riskinarvioinnin ja valmistajan tietojen perusteella.
Robotti pysähtyy, kun yhteys kalustonhallintaan on hiljaa sen vahtikoiraa (watchdog) pidempään; lyhyempi vahtikoira tarttuu paljon useampaan lyhyeen Wi-Fi-katkokseen.
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]Havainnollistavia arvoja, eivät todellisen kohteen tai tuotteen arvoja. Todellisissa kohteissa kentät, nopeudet ja rajat asetetaan oman riskinarvioinnin ja valmistajan tietojen perusteella.
Canary-vertailu: pysähdykset robottituntia kohden uusinta versiota ajavilla roboteilla verrattuna muuhun kalustoon.
stops per robot-hour, canary vs control: 60·stops / robots (smoothed τ = 10 min); update or rollback = 4 min out of service[13]
Mallin muut vakiot
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-minHavainnollistavia arvoja, eivät todellisen kohteen tai tuotteen arvoja. Todellisissa kohteissa kentät, nopeudet ja rajat asetetaan oman riskinarvioinnin ja valmistajan tietojen perusteella.

Satunnaisuus: siemenellä alustettu mulberry32-generaattori; käytetyt jakaumat — tasainen, eksponentiaalinen (käänteinen kertymäfunktio), normaali (Box–Muller), Poisson (Knuth). Siemen näytetään ja se on jaettavissa.

Lähteet

  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

Kuka tekee tätä työkseen

Opetusmalli — ei operatiivisten päätösten tekoon. Todelliset laitokset kalibroivat jokaisen vakion omien laitteidensa ja tietojensa mukaan.