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.
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
- Modern Robotics - Northwestern Mechatronics Wiki (specifically, chapter 13)