In March 2024, I visited an auto parts plant in Jiaxing, Zhejiang. They had just deployed 24 bin-carrying AMRs with a brand-new RCS — but it wasn't connected to their six-year-old MES yet. The plant manager walked me to the final assembly line, where a line-side picker named Xiao Fang was clutching a paper shortage slip, shuttling back and forth between the racks and the line. I asked why the AMRs weren't delivering. "There are no orders in the system, so the robots can't move," he said. "I have to go find the planner, get her to create a call-off in the MES, then transfer it to the RCS for dispatch. By the time that loop is done, the line has been down for 11 minutes."
That was the fourth "sleeping fleet" scene I had witnessed in two years. AMR brochures all promise unmanned, intelligent operations. But the share of plants that have genuinely connected AMRs to their line-side call-off logic is, by my cross-checking of industry reports and site visits, well below half. In most cases, a strip of manual work still separates the RCS from the MES.
Where the RCS-MES integration gap comes from
The RCS (Robot Control System) manages robots: which vehicle goes where, how routes are planned, how obstacles are avoided. The MES manages production: which step each work order is at, when materials are needed, which station is starving. The ideal integration: when a work order advances to a preset trigger point in the MES, the dispatch system automatically generates a delivery task, and an AMR brings the material to the line side.
Reality is messier. The two systems were usually bought from different vendors in different years — the MES in 2018, the robot controller in 2023. Their data models don't match: a "material" in the MES is a work-order line item; a "good" in the RCS is a carrier (bin or pallet). Nobody agrees on when a call-off should fire — the MES side thinks staging should begin at work-order release, while the robot side only starts counting time when it receives a task. Who writes the logic in between?
The Jiaxing plant is a textbook case. Their MES was custom-built by a local integrator; the RCS came bundled with the AMRs. No standard interface existed between them, so the planner manually entered each order twice. The result: an average call-off response time of 47 minutes, and roughly 230 hours of line downtime attributable to material waiting in the first half of 2024. Those figures came from the plant manager's internal reports; I cross-checked the MES downtime logs and the magnitudes line up.
Contrast that with a 3C contract manufacturer in Suzhou I visited the same year. Their solution is worth describing: instead of wiring the two systems together directly, they inserted a dispatch orchestration layer. The MES only posts call-offs to this layer; the dispatch side only picks up tasks from it. The layer does three things: translate work-order language from the MES into carrier-task language for dispatch; consolidate tasks using real-time line-side inventory (merging same-direction deliveries onto one vehicle); and most importantly, move the trigger from "work-order release" to "70% operation completion." That 70% wasn't a guess — it was derived backwards from their AMRs' average delivery time (14 minutes) and the line takt. After the change, on-time line-side delivery rose from 61% to 93%, per their Q4 2024 production reports.
Kitting: the most underestimated link in line-side call-off
Single-item call-offs are relatively easy; kitting is the hard part. One station needs six materials to assemble; missing any one stops the work. The traditional approach fires six separate call-offs for six materials, sending six vehicles on six trips. Line-side congestion and line waiting both start here.
This is where RCS-MES integration earns its keep. Only with work-order data flowing through can the scheduler know that "these six materials belong to the same station's same work order," and only then can it consolidate tasks and orchestrate sequencing.
A battery PACK plant in Changzhou offers a representative example. When they went live in May 2024, their kitting rate — the share of deliveries arriving complete with no follow-up trips needed — was just 54%. The root cause was trigger logic: the six material line items in the MES came from six different purchasing batches, the kit check lived in the WMS, and the robot side had no notion of what "complete" meant. Their fix was to move the kit check upstream: when the MES releases a work order, an intermediate logic layer first checks available line-side inventory against the BOM; incomplete orders are held back, and only complete ones become a "kit task package" for dispatch. The RCS receives a package, not six loose orders, and dispatches vehicles and plans routes by package. Three months after go-live, the kitting rate reached 88%, and follow-up replenishment trips fell by roughly 60%. The logistics manager shared these figures at an industry exchange in October 2024; I later obtained report screenshots to verify the trend.
But here is the counterintuitive finding: a higher kitting rate is not always better. In early 2025 the Changzhou plant set a 98% target, and delivery trips actually increased. To assemble complete kits, the system held back materials that could have gone ahead in earlier batches — waiting for the slowest item while upstream stations starved. Their optimum settled between 88% and 92%, with the remainder handled through an exception replenishment channel. In other words, kitting completeness and timeliness form a trade-off with a sweet spot, not a monotonic "higher is better" relationship. Their Q1 2025 downtime data backs this up: during the two weeks at 98% kitting, line waiting downtime ran 40 minutes higher than at 90%.
Running the numbers: what does the integration layer actually cost
Many plants hesitate on deep RCS-MES integration because the ROI is hard to pin down. Pulling together data from several sites, here is a rough framework (the absolute numbers vary widely; the structure is what matters):
| Cost / benefit item | Typical magnitude | Notes |
|---|---|---|
| Middleware / interface development | One-time, mid-six-figure RMB range | Depends on how open the two systems are; standard APIs cut it by half or more |
| Line waiting downtime reduction | Dozens to hundreds of hours per year | Convert using fully loaded hourly downtime cost (labor + depreciation + order delays) |
| Line-side space released | 10%–20% | On-time delivery lets line-side safety stock drop from 4 hours to 2 |
| Picking / delivery labor | 1–2 fewer people per shift | Call-off phone calls and paper slips disappear |
The key variable is downtime cost. For a components plant with around RMB 1 billion in annual output, the fully loaded cost of one hour of line stoppage is typically well above RMB 10,000. At the Jiaxing plant's 230 annual hours, cutting even half pays back the interface development several times over. But for a small plant with generous takt and low stoppage costs, the math may not work. So my judgment: prioritize RCS-MES integration by "downtime cost × call-off frequency," not by "whether you own AMRs." A plant with AMRs but a relaxed takt may gain more from re-laying out its line-side storage first.
A trend in motion: the RCS is swallowing the orchestration layer
Notably, since late 2024, several leading AMR vendors have started shipping MES integration modules inside their robot controllers: prebuilt interface templates for common MES platforms (Siemens Opcenter, SAP ME and the like), with kitting logic and trigger rules exposed as configuration. The "middle layer" described above is being absorbed into the RCS product.
Tracking several vendors' roadmaps, I expect this to accelerate through 2025–2026. The reason is commercial, not technical: the AMR hardware price war has hit bottom, so vendors must earn on software value-add, and "MES connectivity" is the hardest value-add to argue with. For plants, two implications: first, anyone deploying AMRs after 2026 will face a much lower integration bar — no in-house middleware team required; second, plants that already built their own middle layer should evaluate whether to keep maintaining it or migrate to the vendor's standard module — most people underestimate the maintenance cost of a homegrown layer.
But productization has a price: standard modules ship generic kitting logic, and the plant-specific tuning — the "70% trigger point," the "88% sweet spot" — may not be configurable. My recommendation: write "to what granularity are trigger rules configurable" into the technical terms of the tender, rather than just ticking "supports MES integration."

Back to Jiaxing
When I returned in June 2025, Xiao Fang's paper shortage slips were gone. Work orders advancing to preset nodes in the MES trigger automatic RCS dispatch, and the line-side dashboard shows the next shift's delivery plan. They didn't buy the most expensive option — the original MES integrator added the interface, the AMR vendor supplied a standard integration module, total spend under RMB 400,000. The plant manager told me line waiting downtime had fallen below 10 hours a month.
Then he added: "The systems talk now, but when the BOM data is wrong, we deliver the wrong materials faster than before." That sentence deserves attention from every plant considering integration: once RCS and MES are connected, the bottleneck moves from information flow to data quality. Inaccurate BOMs, inventory record mismatches, work orders released early — under manual call-off, humans absorbed these problems; the planner would ask one more question from experience. With systems wired directly, bad data circulates at machine speed.
So the real question may not be "how does the RCS integrate with the MES," but: is your master data good enough for automation? There is no standard answer — but every plant should answer it honestly before kicking off the project.
By Dr. Chen, Supply Chain Researcher








