Pose Estimation

In this chapter we will explore the concept of pose estimation. We’ll answer the question: “where is my robot in reference to the origin?” This is a fundamental question in robotics, and we’ll explore the math and algorithms that help us answer it.

What you will learn

  • About the concept of pose estimation
  • How to use odometry to estimate the pose of a robot
  • How to use kinematic and dynamic models to estimate the pose of a robot

Terminology

odometry
The use of data from sensors to estimate the position and orientation of a robot
pose estimation
The process of determining the position and orientation of a robot
locomotion
The process of moving from one place to another
kinematic model
A model that describes the motion of a robot based on its geometry and constraints
dynamic model
A model that describes the motion of a robot based on its geometry, constraints, and forces
motion constraint
A constraint that limits the motion of a robot

Lecture

Introduction to pose estimation

Reference frames and configurations

Exercise

Check gradescope.

You will submit your responses on gradescope. Only one partner should submit. The submitter will add the other partner through the gradescope interface.

Additional details for using gradescope can be found here:

You should open the gradescope assignment now so that you know what to work complete.

Grading

I will grade all exercises using a scale of “Nailed It” / “Not Yet”. See the course grading policy for more information, and check gradescope for deadlines.

Overview

For this exercise, I want you to derive the robot’s motion equations. Consider the following diagram for our WMR.

WMR pose

It depicts the global frame \(\{G\}\) and the robot frame \(\{R\}\). The robot has two wheels, each with a radius \(r\), separated by a distance \(d\). The robot’s pose is defined by its position \(({}^Gx, {}^Gy)\) and orientation \(\theta\).

Your task is to develop equations that describe the robot’s motion. That is, given the robot’s wheel velocities \(\dot{\phi}_R\) and \(\dot{\phi}_L\), determine the robot’s linear and angular velocities \({}^G\dot{x}\), \({}^G\dot{y}\), and \(\dot{\theta}\).

Wrap-Up

In the next chapter, we will use these equations to develop a forward kinematics model for our robot.

Resources