Blog

Mobile Robotics Glossary: 50 Terms Every ROS 2 Researcher Should Know

Tom Cosgrove,

Reading Room: The Fictionlab Blog

TL;DR: This mobile robotics glossary defines 66 terms that appear constantly in ROS 2 navigation, perception, and control work – from SLAM and odometry to tf2, costmaps, URDF, QoS, EKF, and RTK. Each entry is one to three sentences, grouped alphabetically, so you can scan it during a code review or a lab onboarding session. The terms reflect the vocabulary used in ROS 2 documentation, Nav2, and the day-to-day engineering behind platforms like the Leo Rover.

Why does a mobile robotics glossary matter when you work with ROS 2?

ROS 2 is a vocabulary problem before it is an engineering problem. A new team member opens a Nav2 configuration file and meets global_costmap, inflation_radius, controller_frequency, and transform_tolerance in the first twenty lines. None of those are self-explanatory. The documentation assumes you already know what a costmap is and why a transform might time out.

The gap costs time. In university labs and integrator teams, the first weeks of a project are often spent decoding terminology rather than building. A shared mobile robotics glossary shortens that ramp. It also reduces a subtler risk: two engineers using the same word for different things. “Odometry” means wheel encoder integration to one person and the fused output of an EKF to another, and that ambiguity shows up later as a debugging session nobody enjoys.

This glossary is written for robotics engineers and researchers who need working definitions, not academic completeness. Where a term has a specific meaning inside ROS 2 that differs from general usage, the entry says so. Terms are grouped alphabetically; entries that belong to the same subsystem cross-reference each other.

What are the core mobile robotics terms from A to C?

These entries cover the foundations of navigation stacks and the hardware vocabulary that surrounds them. Several appear in nearly every ROS 2 mobile robotics launch file.

A

  • Ackermann steering – A steering geometry where front wheels turn at slightly different angles so all wheels trace concentric circles around a common center. Common in car-like robots; it constrains the robot to a minimum turning radius, unlike differential drive.
  • AMCL (Adaptive Monte Carlo Localization) – A particle filter that localizes a robot within a known occupancy grid map using laser scans. In ROS 2 it ships as a Nav2 package and publishes the map-to-odom transform.
  • Action (ROS 2) – A communication pattern for long-running tasks that need feedback and cancellation, such as “navigate to this pose.” Actions sit alongside topics and services as the third core ROS 2 interface type.
  • Actuator – Any component that converts electrical energy into motion: drive motors, servos, linear actuators. In a mobile robotics context the term usually refers to the wheel motors and any manipulator joints.
  • Autonomy level – An informal scale describing how much human input a robot needs, from teleoperation through waypoint following to full mission autonomy. Field robotics projects often sit between the two extremes rather than at either end.

B

  • Base frame (base_link) – The coordinate frame rigidly attached to the robot chassis, by convention at the robot’s center of rotation. Almost every sensor transform in a ROS 2 mobile robotics system is expressed relative to it.
  • Behavior Tree – A hierarchical task structure used by Nav2 to sequence navigation behaviors such as compute path, follow path, and recovery. Unlike a state machine, a behavior tree re-evaluates its branches on each tick, which makes reactive recovery easier to express.
  • Bag file (rosbag2) – A recorded log of ROS 2 messages that can be replayed offline. Essential for debugging field robotics runs where you cannot reproduce conditions in the lab.
  • BLDC motor – A brushless DC motor, electronically commutated, offering higher efficiency and longer life than brushed equivalents at the cost of a more complex driver.

C

  • CAN bus – A differential two-wire serial bus widely used for motor controllers and sensors in robotics and automotive systems. Its noise immunity makes it attractive over longer cable runs than I2C or UART.
  • Cartographer – A SLAM library from Google supporting 2D and 3D mapping with loop closure. It has ROS 2 bindings and is a common alternative to slam_toolbox.
  • Costmap – A 2D grid where each cell stores a cost value representing traversability, built from sensor data and static maps. Nav2 maintains a global costmap for planning and a local costmap for obstacle avoidance.
  • Controller (Nav2) – The component that converts a planned path into velocity commands, sometimes called the local planner. DWB and Regulated Pure Pursuit are two controllers shipped with Nav2.
  • Covariance – A matrix describing the uncertainty of an estimate and the correlation between its dimensions. ROS 2 odometry and pose messages carry covariance fields, and sensor fusion nodes use them to weight inputs.

How do localization and mapping terms from D to L fit together?

Localization, mapping, and state estimation form the densest cluster of jargon in mobile robotics. These entries define the terms you will meet while tuning a SLAM pipeline or diagnosing a drifting pose estimate.

D

  • Dead reckoning – Estimating position by integrating motion measurements from a known starting point, with no external reference. Error accumulates without bound, which is why dead reckoning is always paired with a corrective source.
  • Differential drive – A drivetrain with two independently driven wheels on a common axis, steering by varying their relative speeds. It can rotate in place, which simplifies motion planning in tight spaces.
  • DDS (Data Distribution Service) – The middleware standard underlying ROS 2 communication, replacing the custom TCPROS protocol of ROS 1. Multiple DDS implementations exist, and switching between them changes discovery and performance behavior.
  • Depth camera – A camera producing per-pixel distance data, typically via structured light, active stereo, or time-of-flight. Output is published as a depth image or a point cloud.
  • DWB – The Dynamic Window Approach controller implementation in Nav2, which samples candidate velocity commands and scores them against critics such as path alignment and obstacle proximity.

E

  • EKF (Extended Kalman Filter) – A recursive state estimator that linearizes nonlinear motion and measurement models around the current estimate. In ROS 2 the robot_localization package provides an EKF node commonly used to fuse wheel odometry, IMU, and GNSS-derived data.
  • Encoder – A sensor measuring shaft rotation, usually optical or magnetic, producing counts that are integrated into wheel odometry. Resolution is expressed in counts per revolution.
  • Executor (ROS 2) – The component that decides which callbacks run and on which threads. The default single-threaded executor serializes the callbacks it executes, which can surprise you when a long callback blocks a control loop.
  • Extrinsic calibration – Determining the rigid transform between two sensors or between a sensor and the robot base. Poor extrinsics produce point clouds that look correct individually but do not align with each other.

F

  • Field robotics – Robotics deployed in unstructured outdoor environments: agriculture, mining, construction, planetary analog sites. The defining constraints are uneven terrain, variable lighting, dust, moisture, and intermittent connectivity.
  • Frame – A named coordinate system in the tf2 tree. ROS 2 conventions define map, odom, base_link, and sensor frames, with a specific parent-child ordering.
  • Footprint – The 2D polygon or radius describing the robot’s outline, used by the costmap to check collisions. Setting it too small produces scraped corners; too large and the robot refuses viable gaps.

G-I

  • GNSS – Global Navigation Satellite System, the generic term covering GPS, GLONASS, Galileo, and BeiDou. Standalone accuracy is typically in the meter range, which is why RTK corrections matter for precision outdoor work.
  • Global planner – The Nav2 component that computes a path from the current pose to the goal across the global costmap. NavFn and Smac Planner are two implementations with different smoothness and kinematic-feasibility characteristics.
  • Gazebo – An open-source physics simulator widely used with ROS 2 for testing navigation and perception before hardware deployment. Modern versions are distributed under the Gazebo (formerly Ignition) naming.
  • IMU – An Inertial Measurement Unit combining accelerometers and gyroscopes, often with a magnetometer. It provides high-rate orientation and acceleration data but drifts over time without correction.
  • Inflation layer – A costmap layer that expands obstacle cost outward by the robot’s radius plus a margin, so planners naturally keep clearance. The inflation radius is one of the most impactful parameters to tune in Nav2.
  • IP rating – An ingress protection code defined by IEC 60529, with two digits for solids and liquids respectively. Check the official specification of any platform rather than assuming, since ratings vary by enclosure and connector.

J-L

  • Jacobian – The matrix of partial derivatives relating joint velocities to end-effector or body velocities. In mobile robotics it appears in kinematic models and in EKF linearization.
  • Kinematics – The study of motion without regard to forces. Forward kinematics maps wheel speeds to body velocity; inverse kinematics does the reverse and is what a differential drive controller computes.
  • LiDAR – A ranging sensor using pulsed laser light, delivering 2D scans or 3D point clouds. Key parameters are range, angular resolution, scan rate, and sensitivity to direct sunlight in outdoor use.
  • Lifecycle node – A ROS 2 node with a managed state machine (unconfigured, inactive, active, finalized). Nav2 uses lifecycle nodes so the stack can be brought up and torn down deterministically.
  • Loop closure – Recognizing a previously visited place and correcting accumulated drift across the whole map. It is a common mechanism for correcting long-term drift in graph-based SLAM.

What do the remaining mobile robotics terms from M to Z mean?

The final group covers message interfaces, motion control, and the outdoor-specific vocabulary that matters most in field robotics deployments. These terms complete the mobile robotics glossary.

M-O

  • Map frame – The globally referenced frame in which localization results are expressed. It may jump discontinuously when the localizer corrects itself.
  • micro-ROS – A ROS 2 client framework for microcontrollers that communicates with the ROS 2 graph through a micro-ROS agent. Useful when motor control or sensor sampling must run on an MCU with real-time timing requirements.
  • Nav2 – The ROS 2 navigation stack, providing planning, control, recovery behaviors, and lifecycle management through a behavior tree architecture. It is the successor to the ROS 1 navigation stack.
  • Node – The basic ROS 2 process unit, which publishes topics, offers services, and hosts parameters. A single executable may contain several nodes via composition.
  • Occupancy grid – A discretized map where each cell holds a probability of being occupied, free, or unknown. Published as nav_msgs/OccupancyGrid and consumed by costmaps and AMCL.
  • Odometry – An estimate of pose and velocity derived from motion sensing, most often wheel encoders fused with an IMU. In ROS 2 it is commonly published as nav_msgs/Odometry, while the corresponding odom-to-base_link transform is typically published separately; it is locally smooth but drifts globally.

P-R

  • Parameter (ROS 2) – A named, typed configuration value owned by a node, settable at launch or at runtime. Unlike ROS 1, there is no global parameter server; parameters belong to nodes.
  • Point cloud – An unordered set of 3D points, often with intensity or color, published as sensor_msgs/PointCloud2. The message format is binary and field-descriptive, which keeps it efficient but awkward to inspect by hand.
  • Pose – Position plus orientation, together defining a rigid body’s placement in a frame. ROS 2 represents orientation as a quaternion, not Euler angles.
  • QoS (Quality of Service) – DDS settings controlling reliability, durability, history depth, and deadline for a ROS 2 topic. Mismatched QoS between publisher and subscriber is a frequent cause of “the topic exists but I receive nothing.”
  • Quaternion – A four-component representation of 3D rotation that avoids gimbal lock and interpolates smoothly. ROS 2 uses the (x, y, z, w) ordering.
  • Rclpy / rclcpp – The Python and C++ client libraries for ROS 2, both built on the shared rcl layer. Behavioral differences between them usually trace back to executor and threading models.
  • Recovery behavior – An action Nav2 takes when normal navigation fails: clearing costmaps, spinning in place, backing up, or waiting. Recovery sequences are defined in the behavior tree.
  • RTK (Real-Time Kinematic) – A GNSS technique using carrier-phase measurements and corrections from a base station or network to reach centimeter-level positioning. It requires a correction link and a clear sky view, and accuracy degrades as the baseline to the base station grows.
  • RViz2 – The ROS 2 3D visualization tool for displaying transforms, sensor data, costmaps, and planned paths. It is primarily a visualization and debugging tool rather than a complete operator interface.

S-Z

  • SLAM – Simultaneous Localization and Mapping: building a map of an unknown environment while tracking the robot’s pose within it. In ROS 2, slam_toolbox and Cartographer are common 2D implementations, with ROS 2 ports of LIO-SAM and similar packages used for 3D LiDAR-inertial work.
  • Sensor fusion – Combining measurements from multiple sensors to produce an estimate better than any single source. The robot_localization package is the standard ROS 2 entry point via its EKF and UKF nodes.
  • Service (ROS 2) – A request-response interface between nodes, suited to short queries rather than streaming data or long tasks.
  • Skid steering – A drivetrain with four or more wheels driven in left and right groups, turning by forcing wheels to slip laterally. It is mechanically simple and robust on loose terrain, but the slip makes wheel odometry less reliable than on differential drive.
  • Teleoperation – Direct remote control of a robot by a human operator, typically over a video feed with a gamepad or web interface. It remains the fallback mode in most field robotics deployments.
  • tf2 – The ROS 2 transform library maintaining a time-stamped tree of coordinate frames and answering queries between any two of them. If a transform lookup fails, check tree connectivity, timestamps, and clock synchronization before suspecting the math.
  • Topic – A named, typed, many-to-many publish-subscribe channel, the default ROS 2 pattern for streaming sensor and command data.
  • Twist – The geometry_msgs/Twist message carrying linear and angular velocity, published on /cmd_vel to command most mobile robots.
  • URDF – The Unified Robot Description Format, an XML description of links, joints, inertial properties, visual meshes, and collision geometry. ROS 2 tools such as robot_state_publisher use it to publish transforms, and simulators use it to construct robot models.
  • Visual odometry – Estimating motion by tracking features across consecutive camera frames. It fails in low-texture or low-light scenes, so it is usually fused with inertial data as visual-inertial odometry.
  • Waypoint following – Navigating through an ordered list of goal poses, with Nav2 providing a waypoint follower that handles per-waypoint tasks and failure policies.
  • Xacro – An XML macro language that generates URDF, adding variables, math, and includes. Robot descriptions with symmetric or repeated structures are often written in xacro.
  • Yaw – Rotation about the vertical axis. For planar mobile robots it is the only orientation component most planners and controllers reason about.
  • Zero-copy transport – A transport optimization, supported by some DDS implementations and ROS 2 configurations, that can avoid copying or serializing data between processes on the same machine. It matters when moving high-bandwidth point clouds or camera images.

How can you apply this glossary in research and teaching?

A mobile robotics glossary earns its keep in three situations. The first is onboarding: give it to a new student before their first Nav2 session and the first-week question volume can drop. The second is specification writing, where agreeing on terms up front prevents interface mismatches later. The third is debugging, where naming the layer at fault – tf2, QoS, costmap, controller – is usually most of the diagnosis.

Terms become concrete faster on hardware than in slides. Running slam_toolbox on a real platform, watching odometry drift accumulate on a gravel path, and then seeing an EKF with GNSS input correct it teaches the vocabulary in a way reading cannot. That is one reason compact field-capable platforms are common in university research groups and in robotics teaching programs: the same ROS 2 terms you meet in documentation map directly onto a machine you can drive outdoors.

Frequently asked questions about mobile robotics terms

What is the difference between odometry and localization?

Odometry estimates motion incrementally from the robot’s own sensors and is smooth but drifts over distance. Localization fixes the robot in a global map using external references such as a laser scan match or GNSS, correcting drift at the cost of occasional discontinuous jumps. In ROS 2 the two are separated into the odom-to-base_link and map-to-odom transforms.

Do I need SLAM if I already have an accurate map?

No. If the environment is static and you have a reliable occupancy grid, AMCL localization against that map is lighter and more predictable than running SLAM continuously. SLAM is needed when the map is unknown, changing, or when you want to build the map in the first place.

Why does my ROS 2 topic publish but my subscriber receives nothing?

The most frequent cause is a QoS mismatch – for example a sensor publishing with best-effort reliability while a subscriber requests reliable delivery. Check the QoS profiles on both ends, then verify DDS discovery across machines and that the ROS domain IDs match.

How accurate is RTK GNSS compared with standard GNSS?

Standard GNSS positioning is typically accurate to the meter range, while RTK can reach centimeter-level accuracy when a correction stream is available and satellite visibility is good. Consult the receiver manufacturer’s official specification for exact figures, since performance depends on baseline length, multipath, and the number of visible constellations.

What is the difference between skid steering and differential drive?

Differential drive uses two driven wheels on a shared axis and rotates cleanly about its center. Skid steering drives four or more wheels in left and right groups and turns by forcing lateral slip, which is robust on rough terrain but degrades wheel odometry accuracy, so inertial or visual fusion becomes more important.

Is URDF enough to describe a robot, or do I need xacro?

URDF is the format that ROS 2 tools consume, but writing it directly becomes repetitive for any robot with symmetric or repeated structures. Xacro generates URDF from macros and parameters, and it is the practical authoring format for most projects.

Which terms should a beginner learn first?

Start with node, topic, message, tf2, frame, and URDF, since they underpin everything else in ROS 2. Add odometry, costmap, and Nav2 next, then move to QoS, lifecycle nodes, and EKF once the basic pipeline runs.

Ready to turn these definitions into running code on real hardware? Explore how research teams deploy ROS 2 navigation and perception stacks outdoors at Fictionlab’s research applications page.


Read more