By Tolerance Labs engineering team · Updated
A mobile manipulator runs drive motors, an arm, a computer and sensors from one battery. A power budget written before the battery is chosen tells you how long a shift lasts, how heavy the pack is and how often the robot must dock.
This guide builds the budget for a whole robot. Power supplies and batteries for robot joints covers bus voltage, cell ratings, voltage sag and wiring, and those steps are not repeated here.
List every load
Start with a list of everything that draws power, with its draw in each state. Measure where you can: most joint drivers report bus current, and a clamp meter on a bench supply gives the rest.
| Load | States to list | Notes |
|---|---|---|
| Drive motors | Driving on flat, climbing, accelerating, stopped | Rolling resistance is small; acceleration, ramps and motor losses dominate |
| Arm joints, moving | Average over a typical pick or task cycle | Includes holding torque between moves |
| Arm joints, parked | Brakes on, drivers powered | Spring-applied brakes draw no power when engaged; drivers still draw some |
| Gripper | Closing, holding, open | Some grippers hold with no power; others draw current to keep grip |
| Compute | Idle, typical, peak | GPU loads often vary widely with the perception task |
| Sensors | Always on | Lidar, cameras, IMU and their hubs |
| Other | Always on | Network radio, lights, display, safety controller |
| Conversion losses | Always on | DC-DC converters and the charger, typically 85 to 95% efficient |
Arm brakes matter more than they seem. An arm that holds a pose with motor current instead of a brake draws holding power for every idle minute; see brakes for robot joints.
Duty cycles
Next, set how the robot spends a shift. Take an 8 h shift with three states: driving 30% of the time (2.4 h), manipulating 40% (3.2 h) and waiting 30% (2.4 h). The arm is parked while the robot drives or waits, 4.8 h in all. Compute, sensors and the other loads run for the whole shift.
Use a real task log where one exists. Teams often underestimate waiting time and overestimate driving time, and the always-on loads make waiting expensive.
Worked budget for one shift
The figures below are assumptions for a robot of about 100 kg with a six-axis arm on a 48 V bus. Replace them with your own measurements.
| Load | Power when on (W) | Hours on per shift | Energy (Wh) |
|---|---|---|---|
| Drive motors, driving | 80 | 2.4 | 192 |
| Arm joints, moving | 150 | 3.2 | 480 |
| Arm joints, parked with brakes on | 15 | 4.8 | 72 |
| Gripper, working | 10 | 3.2 | 32 |
| Compute | 60 | 8 | 480 |
| Sensors | 25 | 8 | 200 |
| Network, lights, safety controller | 10 | 8 | 80 |
| DC-DC loss on the 95 W of low-voltage loads at 90% | About 10.6 | 8 | 84 |
| Total | About 1,620 |
- Each row is power × hours. For the arm: 150 W × 3.2 h = 480 Wh.
- The DC-DC row: 95 W ÷ 0.9 ≈ 105.6 W drawn, so 10.6 W lost, and 10.6 × 8 ≈ 84 Wh.
- Sum: 192 + 480 + 72 + 32 + 480 + 200 + 80 + 84 = 1,620 Wh, an average of 1,620 ÷ 8 ≈ 203 W.
Compute, sensors and the other always-on loads come to 480 + 200 + 80 + 84 = 844 Wh, more than half of the total. Drive motors, the load most people think of first, are about 12%. Cutting 25 W from the computer saves 200 Wh per shift, more than the base uses to drive.
Sizing the battery
- Usable fraction: plan on using about 80% of rated capacity. 1,620 ÷ 0.8 ≈ 2,025 Wh.
- Aging: if the pack must still last a shift when it has faded to 80% of its new capacity, 2,025 ÷ 0.8 ≈ 2,530 Wh.
- At 48 V nominal, that is 2,530 ÷ 48 ≈ 53 Ah.
- Pack-level specific energy for lithium-ion is roughly 100 to 200 Wh/kg depending on cells and enclosure, so the pack weighs roughly 13 to 25 kg.
That mass adds to the base, which raises drive power a little; redo the drive row once. If the pack is too heavy, charge during the shift instead, as described below.
Peak current when loads overlap
Capacity comes from the average. Fuses, connectors, cell current and voltage sag come from the peak, and the peak happens when several loads work at once.
- Worst overlap: both drive motors accelerate up a ramp at 400 W each, the arm lifts at 600 W, the computer peaks at 90 W, the gripper closes at 40 W, and sensors and other loads draw 35 W. Total: 800 + 600 + 90 + 40 + 35 = 1,565 W.
- On a nearly empty, sagging pack at 42 V: 1,565 ÷ 42 ≈ 37 A.
- If the motion planner limits the arm to 200 W while the base accelerates: 800 + 200 + 165 = 1,165 W, or 1,165 ÷ 42 ≈ 28 A.
On the 53 Ah pack, 37 A is only 0.7C, which any cell handles. On a small pack sized for opportunity charging, the same current can be 3 to 4C, and the peak then decides the cells. Braking the base on a ramp and lowering the arm return energy to the bus; regenerative braking and bus overvoltage covers that case.
DC-DC rails
Joints and drive motors run from the battery bus. Everything else runs from converters.
| Rail | Loads | Example load | Example converter |
|---|---|---|---|
| Battery bus, 48 V class | Drive motors, arm joints | Up to about 1,400 W peak | None; fused branches from the pack |
| 24 V | Brake coils, safety I/O, gripper, some sensors | About 30 W | 60 to 100 W |
| 12 or 19 V | Compute | 60 W typical, 90 W peak | About 150 W |
| 5 V | Cameras, USB hubs, microcontrollers | About 10 W | About 25 W |
- Choose converters whose input range covers the bus from its lowest sag to its highest regeneration voltage.
- Size each converter for its rail’s peak with margin, and check its efficiency at the typical load, where it runs most of the time.
- Keep compute and sensors alive through an emergency stop. The stop should cut motor power, not the computer.
- Give brake coils a regulated rail if the bus can sag below their release voltage.
Charging and docking time
Full charge between shifts. Charging the 2,530 Wh pack from 20% to 80% puts 0.6 × 2,530 ≈ 1,518 Wh into it. At 1,000 W into the pack, that takes about 1.5 h. Above about 80%, chargers switch from constant current to constant voltage and the current tapers, so the last 20% takes longer.
Opportunity charging. Suppose the robot docks for 10 minutes each hour at 1,000 W. It gains 1,000 × 10 ÷ 60 ≈ 167 Wh per hour and uses about 203 Wh per hour, including the time docked. The net drain is about 36 Wh per hour, or about 290 Wh over a shift. A much smaller pack could then work, but peak current, cell charge-rate limits and dock contact wear decide how small.
- Dock contacts carry 1,000 W ÷ 50 V = 20 A. Rate them for that current and for many thousands of mating cycles.
- Cells usually accept less charge current than discharge current. Check the cell maker’s charge rating.
- Most lithium-ion cells must not be charged below about 0 °C. Check the charge temperature range if the robot works in a cold store or outdoors.
Checklist
- List every load with its power in each state, measured where possible.
- Set duty cycles from a real task log, with waiting time counted.
- Build the Wh-per-shift table and find the largest loads.
- Size capacity for usable fraction and end-of-life fade.
- Find the worst load overlap and check fuses, connectors and cell current against it.
- Plan DC-DC rails for sag and regeneration, and keep compute alive through an emergency stop.
- Decide between full charges and opportunity charging, and check dock current and charge limits.
Browse robot arms, motor drivers and power and control cables, and compare them in Robot Parts.
More guides
Not sure what fits? Tell us what you're building.
We procure every part of the robot. Send a sentence or a BOM and we come back with options and a landed quote.
Send a request