Six problems
None of them is a robot problem
Each of these goes wrong on a floor full of capable machines, for reasons that have nothing to do with the machines — and each is answered by a rule rather than by a feature.
Every vendor’s robots are coordinated separately
Each fleet manager optimises its own robots and none of them can see the others. Here every vendor reports into one record through its own interface, and one allocator hands work across vendor boundaries — including the shared lift or charger none of them knew the others were using.
A schedule gets published that the floor cannot run
It assumed material that had not arrived, a cell booked for maintenance or a robot that faulted overnight. A schedule here is planned against the live state of all three, and one that depends on something missing is refused naming what it needed — before the shift, not during it.
Maintenance happens when something breaks
Predictions are built from the condition signals your systems already emit, each shown with the evidence behind it, and maintenance windows are booked into the production plan so a robot in service is never scheduled for work.
The energy bill is decided by accident
A fleet that charges at shift change and two lines starting together set next month’s demand charge. Schedules here are checked against the contracted demand limit and the tariff on the day before release, and only work a planner marked as flexible is ever moved.
Nobody can say why a robot sat idle
Waiting time is attributed to its cause — a resource another robot held, a handover, material, a fault — because every assignment and every wait is recorded with its reason rather than inferred from a utilisation chart afterwards.
The bottleneck is a matter of opinion
The constraining operation is identified from measured cycle times, waits and stoppages rather than from nominal rates, and every figure on the report can be walked back to the events that produced it.