2 Mobile Robot Kinematics and the Perception-Action Loop
2.1 Overview: Close the Loop Before Choosing the Motion Model
A mobile robot is not just a moving mechanism. It is a system that repeatedly observes the world, decides what the observations mean, selects an action, and discovers what that action changed. The perception-action loop is the basic building block of autonomy because every useful robot behavior must close this cycle.
1. Perceive
Measure the robot and its environment.
2. Estimate
Turn measurements into a usable state.
3. Decide
Select a control action or planned motion.
4. Act
Drive the mechanism and change the world.
The loop can be organized in three increasingly stateful ways:
- A reactive controller maps current sensor readings directly to an action. It is fast, but it has no internal account of what happened before.
- A reactive controller with memory adds state variables or a filter. The action can depend on a history summarized into the current estimate.
- A deliberative controller predicts future states and plans a sequence of actions before committing to one.
These are architectural choices, not a ranking from bad to good. A collision reflex may need to be reactive even inside a robot whose route planner is deliberative.
2.1.1 Two Independent Sensor Axes
Robot sensors are classified along two different axes. Do not collapse them into one list.
Proprioceptive
Measures the robot's own body or internal state: motor speed, joint angle, or battery voltage.
Exteroceptive
Measures the environment around the robot: range, light intensity, or an observed object.
Passive
Receives ambient energy without deliberately illuminating the scene: a camera, microphone, or temperature probe.
Active
Emits energy and measures the response: ultrasonic ranging or an infrared proximity measurement.
A sensor can occupy one category on each axis. An active wheel encoder is proprioceptive because it measures the robot, while an active ultrasonic ranger is exteroceptive because it measures the environment. The hardware mechanism does not decide the information role by itself.
2.1.2 Degrees of Freedom and Controllability
A degree of freedom (DOF) is one independent coordinate needed to describe motion. A motor shaft controls one rotational DOF; a plotter carriage controls one translational DOF. A robot pose on a flat floor normally needs three coordinates, , even if the platform has only two independent motor commands.
That comparison produces the core classification:
- Holonomic: controllable DOF equals total DOF. The robot can command every instantaneous motion the state description allows.
- Non-holonomic: controllable DOF is smaller than total DOF. A differential-drive robot has a sideways coordinate but cannot instantaneously slide sideways.
- Redundant: controllable DOF exceeds the task’s required DOF. More than one actuator combination can produce the requested task motion.
Uncertainty remains inside every class. Wheels slip, mechanisms carry slack, inexpensive circuits add sensor noise, and the world moves between observations. Kinematics describes the intended geometry; feedback is what keeps that geometry useful in reality.
2.2 Practitioner: Turn Wheel Speeds into a Motion Contract
For a differential-drive robot, let each wheel have radius , let the wheels be separated by axle length , and let their angular speeds be and . The mechanism turns two actuator inputs into two body-frame motion quantities:
The average wheel speed gives forward velocity . The wheel-speed difference gives angular velocity . From those equations you can read three useful operating modes without memorizing a table:
- If both wheels turn forward at the same speed, and the robot drives straight.
- If the right wheel is faster, under the stated sign convention and the robot curves left.
- If the wheels turn at equal and opposite speeds, and the robot rotates in place.
In the robot’s body frame, the non-holonomic constraint is explicit:
The zero is load-bearing. It says the drive can create no instantaneous lateral velocity. A path planner may still move the robot to a point beside it, but only through a sequence of forward motion and turns.
2.2.1 Inverse Kinematics: Ask for Feasible Motion
Inverse kinematics runs the contract in the other direction. Given a feasible forward velocity and angular velocity , command:
Suppose , , , and . Then:
The right wheel must turn faster, which agrees with the intended positive turn. This sign-and-shape check catches command swaps before a numerical test does.
2.2.2 Open Loop or Closed Loop?
After a planner produces a path, the controller still has to follow it.
Open-loop path following
Replay precomputed commands without observing whether the robot remains on the path. The result depends on the model and disturbances staying as expected.
Closed-loop path following
Move briefly, observe the new state, compare it with the path, and recompute. Wheel slip, sensor error, and moving obstacles become evidence for the next command.
Closed loop is more robust because it makes model error visible. It does not make the sensor estimate perfect, nor does it guarantee a feasible replanned path. A production motion contract should therefore record the state estimate used, command limits, update rate, saturation behavior, and the safe response when perception becomes stale.
2.3 Under the Hood: Rotate Frames, Respect Constraints, Plan Curvature
Body-frame motion becomes world-frame motion by rotating the translational axes through heading :
The inverse rotation gives and , but it does not erase the mechanism’s constraint. A commanded world velocity must still satisfy:
That equation is why an apparently simple pose-error controller cannot independently command arbitrary and for a differential drive. The planner must produce a curve whose tangent follows the robot’s heading.
2.3.1 Goal Poses and Cubic Bezier Curves
A cubic Bezier path offers one construction. Let be the current position and the goal. Choose the inner control points along the current and goal headings:
The curve now leaves along the current orientation and arrives along the target orientation. Its curvature supplies the turn-rate schedule. This does not automatically make every choice of and safe: curvature, wheel-speed, obstacle-clearance, and acceleration limits still have to be checked.
2.3.2 Compare Models by State and Control Rank
All three examples are non-holonomic or underactuated in the immediate sense shown: the state has more independent coordinates than the actuator input vector. Their equations differ because their mechanisms differ. Reusing a differential-drive controller on a bicycle or quadrotor is not abstraction; it is a model mismatch.
2.4 Summary
- The perception-action loop connects sensing, estimation, decision-making, and physical action.
- Proprioceptive/exteroceptive and passive/active are separate sensor-classification axes.
- A differential drive has three planar pose coordinates but only two independently controllable instantaneous motions.
- Forward kinematics predicts motion from wheel speeds; inverse kinematics maps feasible body motion back to wheel commands.
- Closed-loop following repeatedly measures and replans because kinematics alone cannot remove disturbance or uncertainty.
2.5 Key Takeaway
A useful mobile-robot controller starts with an honest motion model. State what the robot can measure, what its actuators can command, and which velocities its mechanism forbids; then close the loop around that contract.
2.6 See Also
- Actuator Classifications — the practical actuator-selection framing that this chapter extends into full mobile-platform kinematics.
- Servo Motors — an arm-specific inverse-kinematics example that contrasts with mobile base motion.
- Braitenberg Vehicles — a complete reactive perception-to-action example.
- UAV Trajectory Control — quadrotor motion theory applied to flight-control practice.
- Classical Control Architectures for Mobile Robots — the next chapter’s taxonomy of how controllers turn estimates into behavior.
