IARMasterclass
Course companion · 0 / 17

Lesson 02 · Book chapter pointer

Locomotion and representations

Read the chapter source: locomotion.tex — do not treat this note as the book.

Learning goals

  • Name common locomotors and the motions they make easy or impossible.
  • Use degrees of freedom without confusing joints, pose, and controllable DoF.
  • Tell static stability from dynamic stability on a real chassis.
  • Place a body frame and a world frame and say how a point moves between them.
  • See why representation (matrices, angles) is part of mechanism, not decoration.

Teaching note

Locomotion is the first honesty test. A robot that cannot move in the way the algorithm imagines is not “bad software”; it is a different machine. Wheels like the indoor world: mostly flat, mostly hard, mostly free of stairs. Legs forgive terrain and punish power budgets. Tracks smear the difference. Aerial vehicles buy a third dimension and pay for it in energy and downwash. Before you write a controller, walk around the vehicle and ask what slipping, tipping, or stalling looks like.

Degrees of freedom are a counting argument, not a vibe. A free rigid body in space has six. A car on a plane, if we ignore suspension, has three in pose — \(x, y, \theta\) — but only two controls if it cannot slide sideways. That gap between pose DoF and control DoF is the whole plot of nonholonomic mobile robots. Students mix “the arm has seven joints” with “the hand pose is six numbers.” Keep three piles on the board: configuration, task, and actuation.

Stability is where mechanism meets gravity. Static stability asks whether the center of mass hangs over the support polygon when nothing is accelerating. Dynamic stability allows a body to be falling as long as the next step or the next thrust catches it. A slow rover wants the first. A runner or a hopping robot lives on the second. If your lab robot is a squat differential drive, you still care: acceleration, a ramp, or a grabbed payload can walk the center of mass to the edge of the polygon.

Frames are the quiet hero of this chapter. Pick a world frame you will not apologize for — maybe the corner of the lab, maybe the map origin. Pick a body frame bolted to the robot, usually with \(x\) forward and \(z\) up or out of the page. Every later chapter — kinematics, vision, localization — is a story about transforming points and twists between those frames. If a team cannot draw the frames on a whiteboard, they are not ready for rotation matrices.

Representations matter because computers do not understand “a little to the left.” Homogeneous transforms pack rotation and translation so you can concatenate them. Euler angles are human-friendly and have singularities. Quaternions wait in the wings. You do not need every parameterization on week two, but you do need to treat “how we write pose” as an engineering choice with failure modes. A wrap-around angle bug has grounded more demos than a bad motor.

Classroom drill: take one robot, list support points, sketch the support polygon, mark the center of mass, then write the pose in the world frame. Only then allow a kinematic equation. The studio unicycle demo is the moving version of this drill — watch how a body frame leaves a trail in the world frame when the wheels disagree.

Key equation

A planar rigid transform of a point: \(\begin{bmatrix}x\\y\\1\end{bmatrix}^{W} = \begin{bmatrix}\cos\theta & -\sin\theta & t_x \\ \sin\theta & \cos\theta & t_y \\ 0 & 0 & 1\end{bmatrix} \begin{bmatrix}x\\y\\1\end{bmatrix}^{B}\).

Self-check

1. A unicycle can reach any planar pose given time. Does that mean it has three control inputs?
No. Controllability of the pose is not the same as instantaneous control authority. It typically has forward speed and yaw rate — two inputs — and cannot slide sideways this instant.
2. Why might a statically stable robot still fall on a demo day?
Acceleration, slopes, and a shifted payload move the effective support question. Static polygons assume no inertial forces.
3. What goes wrong if two teammates use different body-frame conventions?
Every rotation looks like a bug. Pick axes once, write them on the robot in tape, and refuse to be polite about it.