Operação de frota de robôs Modelo ao vivo

Você comanda o chão de um armazém onde cerca de 24 robôs móveis autônomos (AMRs) levam caixas dos corredores de estoque até quatro células de embalagem com cobôs. Cada pedido é uma viagem de 240 m — 200 m por corredores só de robôs, 40 m pela área compartilhada onde pessoas trabalham — e uma separação em uma célula. O modelo calcula minuto a minuto filas, congestionamento, deadlocks, distâncias de parada, energia das baterias e potência dos carregadores, e o efeito das versões de software nas paradas, com base em normas publicadas e fórmulas de livros-texto. É um modelo de princípios de operação: não roda software de robôs, e os números são genéricos, não de algum produto. Simulação apenas educacional — locais reais seguem a sua própria avaliação de riscos.

O que vai aprender

Simulador

Tempo 0 min
Robôs em operação 24 · Caixas embaladas 360/h · Tempo de atendimento do pedido 0,0 min · Robôs disponíveis 100% · Zona A (só robôs) 1,5 m/s · Área compartilhada 1,0 m/s (Δ 0,27 m) · Livre (desvio local), Robôs presos em deadlocks 0 · Células de cobô 0%, Pessoa em uma célula de cobô 0 · Carregadores 0/6 (Carregador fora de operação 0), Robôs esperando carregador 0 · Carga média da bateria 67% · v1 24, v2.0 0, v2.1 0 · Paradas por hora-robô, build mais nova 0,0/h, Paradas por hora-robô, restante da frota 0,0/h⁨24⁩ · ⁨360/h⁩ · ⁨Robôs⁩························⁨✓ 1,5 m/s⁩⁨Zona A (só robôs)⁩⁨sem pessoas⁩⁨⚠ 1,0 m/s⁩ · ⁨Δ 0,27 m⁩⁨Área compartilhada⁩⁨⛔ 0⁩ · ⁨Livre (desvio local)⁩⁨0%⁩ · ⁨Células de cobô⁩⚙⚙⚙⚙⁨⚡ 0/6⁩ · ⁨⌛ 0⁩ · ⁨Carregadores⁩······⁨Software: v1 · v2.0 · v2.1⁩⁨v1 24⁩ · ⁨v2.0 0⁩ · ⁨v2.1 0⁩⁨0,0/h mais nova⁩ · ⁨0,0/h restante⁩
  • Andando com uma tarefa
  • Em uma célula de cobô
  • Esperando uma célula
  • Ocioso
  • Carregando
  • Esperando um carregador
  • Atualizando software
  • Parado (link ou localização)
  • Preso em deadlock
  • Sem carga, rebocado
  • Zona sem pessoas
  • Pessoas na zona, velocidade dentro do campo
  • Rápido demais para o campo onde há pessoas
  • Pessoa em uma célula de cobô
  • Carregador fora de operação

Controles

Robôs reserva são ativados no depósito; robôs estacionados não consomem energia. Cada robô em operação custa uma hora-robô por hora.

A zona A é fechada para pessoas, então os robôs podem andar rápido. Se pessoas entrarem, a velocidade precisa voltar a caber no campo de detecção de pessoas.

Aqui sempre há pessoas trabalhando. A distância de parada nesta velocidade precisa caber dentro do campo de detecção de pessoas de 1,3 m.

Livre: os robôs só desviam uns dos outros localmente — rápido, mas dois ou mais podem se bloquear de vez. Reserva de zona: um robô só entra em um cruzamento depois que as zonas à frente dele estão reservadas para ele — sem deadlocks, uma espera curta em cada cruzamento.

Libera agora todos os robôs em deadlock. Custa 2 minutos de operador por robô liberado; não impede que novos deadlocks se formem.

Um robô que termina uma tarefa com esta carga ou menos entra na fila do carregador. Um valor menor aproveita mais a bateria, mas um robô que espera demais pode ficar sem carga.

Os carregadores entregam potência total até cerca de 70 %; acima disso a corrente vai caindo. Parar mais cedo libera o carregador antes.

Robôs sem tarefa vão para qualquer carregador livre em vez de esperar parados, e voltam ao trabalho assim que houver pedidos esperando e estiverem 20 % acima do nível de envio para carga.

Velocidade da ferramenta enquanto ninguém está dentro da célula. Uma caixa de 10 itens leva 25 s a 1 m/s.

Limitação de potência e força: uma mão presa contra uma caixa não pode sentir mais de 140 N (o limite quase estático, usado de forma conservadora), o que permite no máximo 0,67 m/s aqui.

Mover o controle deslizante instala a build publicada mais nova nessa parcela da frota (os primeiros robôs, em ordem); o restante roda a v1. Uma build publicada depois só é instalada quando você move o controle de novo. Cada robô que troca de versão fica fora de operação por 4 minutos.

Indicadores

Caixas embaladas
360/h
normal
Tempo de atendimento do pedido
0,0min
normal
Robôs disponíveis
100%
normal
Margem de parada onde há pessoas
0,27m
normal
Pedidos em espera0
Margem de velocidade do cobô (limite de potência e força)0,17 m/s
Carga média da bateria67 %
Menor carga de bateria42 %
Robôs esperando carregador0
Robôs carregando0
Robôs sem carga (rebocados)0
Robôs presos em deadlocks0
Deadlocks formados0
Paradas de navegação (link ou localização)0
Paradas por hora-robô, build mais nova0,0 /h
Paradas por hora-robô, restante da frota0,0 /h
Frota na build mais nova0 %
Frota na v2.00 %
Robôs atualizando0
Velocidade ajustada na zona A1,5 m/s
Tempo de operador gasto com robôs0 min
Horas-robô usadas0 h
Robôs em operação24
Robôs andando0
Velocidade real na zona A1,50 m/s
Espera por travessia de cruzamento0,0 s
Consumo de potência da frota0,00 kW
Potência de carga entregue0,00 kW
Células de cobô ocupadas0 %

Tendência

Caixas embaladas: — /h6000

Cenários de crise

Nível 1 · Metade dos carregadores falha antes do pico de pedidos

Turno da manhã, 24 robôs em operação, cerca de 3,7 pedidos por minuto. Depois de uma noite movimentada, a frota começa o turno com 60 % de carga em média. No minuto 15 uma falha elétrica tira quatro dos seis carregadores de operação pelo resto do turno. No minuto 90 começa o pico de pedidos (+25 % por duas horas). Mantenha os pedidos fluindo, entre no pico com a frota carregada, não deixe nenhum robô ficar sem carga e fique dentro do orçamento de robôs do turno.

  • Tempo médio de atendimento durante e após o pico ≤ 3,5 min
  • Frota com pelo menos 49 % de carga média quando o pico começar
  • Nenhum robô fica sem carga
  • No máximo 97 horas-robô no turno
  • Distância de parada sempre dentro do campo onde há pessoas
  • Cobô nunca mais rápido que o limite de potência e força com uma pessoa dentro

Nível 2 · Um corredor fecha, os robôs travam e uma equipe entra na zona A

Cerca de 4,2 pedidos por minuto, 24 robôs, controle de tráfego em circulação livre. No minuto 10 um corredor é fechado para reorganização das estantes: menos cruzamentos, mais encontros de frente e nenhum desvio. No minuto 60 uma equipe de manutenção entra na zona A, só de robôs, por 40 minutos. Mantenha os pedidos andando com pouco tempo de operador, mantenha toda distância de parada dentro do campo de segurança onde há pessoas e volte a rodar a zona A em velocidade máxima assim que ela estiver livre.

  • Tempo médio de atendimento ≤ 6 min
  • Zona A de volta a ≥ 1,4 m/s em média depois que a equipe sair
  • No máximo 1 deadlock formado
  • No máximo 20 minutos de operador com robôs
  • Distância de parada sempre dentro do campo onde há pessoas
  • Cobô nunca mais rápido que o limite de potência e força com uma pessoa dentro

Nível 3 · Implantação canário de um novo software de navegação

Os corredores foram reorganizados ontem à noite, e os robôs com o software atual (v1) perdem a posição ali com mais frequência; cada perda exige um operador. A versão v2.0 corrige isso e já roda em 10 % da frota como canário. Dê ao canário tempo suficiente para avaliá-lo, compare-o com o restante da frota, decida se amplia ou reverte, e leve a frota para uma build boa — em etapas, sem tirar robôs demais de operação ao mesmo tempo.

  • Canário mantido rodando nos primeiros 12 minutos (≥ 5 % da frota na v2.0)
  • Fora da v2.0 com defeito do minuto 30 ao 49 (≤ 1 % da frota nela, em média)
  • Hotfix em no máximo 20 % da frota nos seus primeiros 10 minutos
  • Hotfix implantado rápido: em média ≥ 55 % da frota nele após a publicação
  • Pelo menos 90 % da frota na build mais nova no final
  • Pelo menos 60 % dos robôs disponíveis o tempo todo
  • Distância de parada sempre dentro do campo onde há pessoas
  • Cobô nunca mais rápido que o limite de potência e força com uma pessoa dentro

Base — o modelo por trás dos números

Todas as relações que o simulador usa, com a respetiva fonte. As constantes marcadas como pressupostos são calibrações ilustrativas.

Lei de Little: todos os pedidos ainda não embalados — em espera ou já em um robô — divididos pela taxa em que as caixas são de fato embaladas dão o tempo de atendimento.
lead time W = L / X, L = orders waiting + orders on a robot, X = totes packed per minute (smoothed, τ = 10 min)[5]
A velocidade cai à medida que mais robôs dividem os corredores (relação linear velocidade–densidade de Greenshields).
v_eff = v · max(0.1, 1 − n_moving / N_jam), N_jam = 120 robots (80 with an aisle closed)[7][9]Valores ilustrativos, não de um local ou produto real. Locais reais definem campos, velocidades e limites a partir da sua própria avaliação de riscos e dos dados do fabricante.
Sem reserva, dois robôs podem esperar cada um pelo espaço que o outro ocupa — uma espera circular. Os encontros crescem com o quadrado do número de robôs andando.
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]Valores ilustrativos, não de um local ou produto real. Locais reais definem campos, velocidades e limites a partir da sua própria avaliação de riscos e dos dados do fabricante.
Reserva de zona: um robô só entra quando as zonas à frente dele estão reservadas para ele (todas de uma vez, em uma ordem fixa), o que elimina a espera circular; cada cruzamento passa a se comportar como uma fila de servidor único com tempo de travessia fixo.
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]Valores ilustrativos, não de um local ou produto real. Locais reais definem campos, velocidades e limites a partir da sua própria avaliação de riscos e dos dados do fabricante.
Onde pode haver pessoas, a distância de parada — percurso de reação mais frenagem — precisa caber dentro do campo de detecção de pessoas.
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]Valores ilustrativos, não de um local ou produto real. Locais reais definem campos, velocidades e limites a partir da sua própria avaliação de riscos e dos dados do fabricante.
Limitação de potência e força: a maior velocidade em que um contato com a mão fica abaixo da força permitida, calculada a partir da massa reduzida da mão e do robô e da rigidez da mão. O limite quase estático é usado mesmo para contatos breves, o que é conservador.
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]Valores ilustrativos, não de um local ou produto real. Locais reais definem campos, velocidades e limites a partir da sua própria avaliação de riscos e dos dados do fabricante.
Uma caixa leva o tempo de pega mais dois alcances por item; com uma pessoa dentro, o cobô trabalha na velocidade colaborativa. Os robôs são atendidos na ordem em que chegam às células, segundo a segundo dentro de cada minuto.
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]Valores ilustrativos, não de um local ou produto real. Locais reais definem campos, velocidades e limites a partir da sua própria avaliação de riscos e dos dados do fabricante.
Potência de deslocamento: uma carga fixa da eletrônica, a resistência ao rolamento e a energia de frenagem perdida a cada para e anda.
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]Valores ilustrativos, não de um local ou produto real. Locais reais definem campos, velocidades e limites a partir da sua própria avaliação de riscos e dos dados do fabricante.
Os carregadores entregam potência total até cerca de 70 % de carga, depois a corrente vai caindo (corrente constante, depois tensão constante).
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]Valores ilustrativos, não de um local ou produto real. Locais reais definem campos, velocidades e limites a partir da sua própria avaliação de riscos e dos dados do fabricante.
Um robô para quando o link com o gerenciador de frota fica em silêncio por mais tempo que o seu watchdog; um watchdog mais curto pega muito mais falhas curtas de 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]Valores ilustrativos, não de um local ou produto real. Locais reais definem campos, velocidades e limites a partir da sua própria avaliação de riscos e dos dados do fabricante.
Comparação canário: paradas por hora-robô dos robôs na build mais nova contra o restante da frota.
stops per robot-hour, canary vs control: 60·stops / robots (smoothed τ = 10 min); update or rollback = 4 min out of service[13]
Outras constantes deste modelo
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-minValores ilustrativos, não de um local ou produto real. Locais reais definem campos, velocidades e limites a partir da sua própria avaliação de riscos e dos dados do fabricante.

Aleatoriedade: um gerador mulberry32 com semente; distribuições usadas — uniforme, exponencial (inversa da CDF), normal (Box–Muller), Poisson (Knuth). A semente é apresentada e compartilhável.

Fontes

  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

Quem faz isso profissionalmente

Modelo educativo — não para decisões operacionais. Os locais reais calibram cada constante para seu próprio equipamento e dados.