Robotics Navigation

Preview:

Citation preview

Robot Navigation

Introduction• In the first step we get familiar with basic concepts of 2D geometry

• Then we apply our perspective to obtain practical results to obtain robots motion and pose

• And finally we present the most basic robot problem and how to approach and solving it

2D Geometry• Cartesian coordinates:

• Augmented vector:

• Homogeneous coordinates: = • Points at = 0 represent infinity

Primitive operations in 2D geometry• To represent a line we need an offset from the origin and a direction

• Mathematical representation is in the following form:

• =

• = ax + by + c =0

Intersection of two lines

Line joining two points : = x

Point of intersection : = x

2D transformation

We see how the homogeneous coordinate system simplifies the transformation operations

Robot ExampleRobot is located somewhere in space

Position : x , y

Orientation : (yaw angle)

X = =

Robot poseRobot is located inX = 0.7

Y = 0.5

Position matrix:

X = =

What happens if we move the robot 1m forward?

The resulting coordinate on global frame is:

= X => =

From homogeneous coordinates we have: =

What happens if robot moves 0.2m forward , 0.1m sideward and turn by 10 degreesWe obtain transformation matrix in previous manner

U = =

Now multiplying by pose matrix

= XU =

Estimating robots motion(Odometry)• We know what commands are issued to the robot• Based on our commands we predict the robots motion• Three main methods are used depending on robots application• 1.control based :models predict the estimated motion• 2.odometry based :distance sensors estimate the motion(e.g.,

wheeled robots)• 3.velocity based : velocity sensors estimate the motion(flying robots)

Motion models• Integrating IMU readings results in motion

of robot• IMU readings are sensor outputs with a

certain frequency (e.g., 200hz).• Estimating robot pose based on issued

controls (IMU readings) and the previous location • Motion model = f( , )

Recommended