1 of 47

ME5751�Robotics Motion Planning

Yizhe Chang (chang@cpp.edu)�Lecture Note Set #1

2 of 47

Outline

  • Course Overview
  • Review: Coordinate Rotation
    • 2D Rotation
    • 3D Rotation

3 of 47

Course Introduction

  • What is motion planning?
    • Piano moving problem: (Given an open subset U in n-dimensional space and two compact subsets C0 and C1 of U, where C1 is derived from C0 by a continuous motion, is it possible to move C0 to C1 while remaining entirely inside U? wolfram alpha)
    • Basically, it is a search problem

4 of 47

Course Introduction

  • What is motion planning?
    • Motion planning is a term used in robotics for the process of breaking down a desired movement task into discrete motions that satisfy movement constraints and possibly optimize some aspect of the movement.

(umich robotics)

5 of 47

Course Introduction

  • 4 Major Modules:

    • Proportional motion control
    • Potential field generation (cost map)
    • A* search
    • Probabilistic road map (PRM)

6 of 47

Proportional Control for point tracking

  • One out of many point tracking method
    • “Plan” robot velocity by given position road map

7 of 47

Potential Field Generation

  • Brushfire (Breadth first search) algorithm

8 of 47

A* path planning

  • The most difficult part of our course

https://fab.cba.mit.edu/classes/865.21/topics/path_planning/robotic.html

9 of 47

Probabilistic Road Map

  • It is random, but faster
  • We will only implement a “lumped version”

10 of 47

Minor Topics and Gap Topics

  • Minor Topics

  • Mobility
  • Localization
  • Probabilistic Mapping
  • Other Planning Methods

11 of 47

Outline

  • Course Overview
  • Review: Coordinate Transformation and Forward Kinematics
  • Review: Homogeneous Transformation
  • Differential Kinematics

12 of 47

Review: Coordinate Transformation

  • Degree of Freedoms

13 of 47

Review: Coordinate Transformation

  • DOF Analysis

 

 

 

 

14 of 47

Review: DoF for 2 wheel differential robot

  • How many DoF does this differential driving robot has?
  • Hint: our robot doesn’t fly

15 of 47

Review: DoF for 2 wheel differential robot

  • Intuitively, 2, x translation and rotation, no y translation
  • Or we can think, two wheel can independently move
  • L = 3, J1 =2, J2 =0
  • DOF=3x(3-1)-2x2=2

16 of 47

Forward Kinematics

  • Forward Kinematics refers to the use of the kinematic equations of a robot to compute the position of the end-effector from specified values for the joint parameters

17 of 47

Where is the end effector?

18 of 47

Forward Kinematics

19 of 47

Review: Coordinate Transformation

  • Starting Problem:
    • We have a point, in O2 coordinate: P2(x2,y2)
    • What is its coordinate in O1: P1(x1,y1)
    • What is its coordinate in O0: P1(x0,y0)

P2 (x,y)

x2

y2

φ

20 of 47

Review: Coordinate Transformation

  • Starting with 2D

21 of 47

Review: Rotation Matrix

22 of 47

Review: Rotation Matrix

  •  

P1 (lx, ly)

23 of 47

Review: Rotation Matrix

  •  

P1 (1, 0)

24 of 47

Review: Rotation Matrix

  •  

P2 (lx, ly)

x2

y2

φ

25 of 47

Review: Rotation Matrix

  •  

P2 (lx, ly)

x2

y2

φ

26 of 47

Mini-summary

  •  

P2 (lx, ly)

x2

y2

φ

O2

27 of 47

Rotation in 3D

  •  

z0

y0

y1

z1

θ

28 of 47

Rotation in 3D

  •  

z0

x0

y0

x1

y1

z1

θ

29 of 47

Rotation in 3D

  •  

z0

x0

y0

x1

y1

z1

θ

30 of 47

Rotation in 3D

  •  

z0

x0

y0

x1

y1

z1

θ

31 of 47

Basic 3D rotation

  •  

32 of 47

Question: composite 3D rotation

  •  

z0

x0

y0

x1

y1

z1

θ1

z0

y0

y1

z1

θ2

z2

y2

x1

x2

x0

33 of 47

Question: composite 3D rotation

  •  

z0

y0

y1

z1

θ2

z2

y2

x2

34 of 47

Question: Composite Rotation 2

  •  

z0

y0

y1

z1

θ2

x1

x0

z0

y1

z1

x0

z2

y2

x2

θ1

35 of 47

Question: Composite Rotation 2

  •  

36 of 47

Question: Composite Rotation 2

  •  

 

37 of 47

Mini Summary:

  •  

38 of 47

Additional Reading: Euler Angle

  • How many fixed-body rotation at MOST we need to rotate from original frame to an ARBITRARY frame?
  • A) 1
  • B) 2
  • C) 3
  • D) 4

39 of 47

Additional Reading: Euler Angle

  • How many fixed-body rotation at MOST we need to rotate from original frame to an ARBITRARY frame?
  • A) 1
  • B) 2
  • C) 3
  • D) 4

40 of 47

Additional Reading: Euler Angle

  • Define a set of intermediate angles:
  • 1. Rotate along z0 by φ from x0y0z0=> x1y1z1
  • 2. Rotate along y1 by θ from x1y1z1=> x2y2z2
  • 3. Rotate along z2 by ψ from x2y2z2=> x3y3z3

41 of 47

Euler Angle

  • Step 1: Rotate along z0 by φ from x0y0z0=> x1y1z1

42 of 47

Euler Angle

  • Step 2: Rotate along y1 by θ from x1y1z1=> x2y2z2

43 of 47

Euler Angle

  • Step 3: Rotate along z2 by ψ from x2y2z2=> x3y3z3

44 of 47

Euler Angle

45 of 47

Euler Angle

46 of 47

Mini summary

  • Euler angle is one of many ways to represent 3d rotation(e.g. rotate along z0, then y1, then z2)
  • Other methods include pitch-roll-yaw, axis/angle representation
  • For Euler angle:
  • 1. Rotate along z0 by φ from x0y0z0=> x1y1z1
  • 2. Rotate along y1 by θ from x1y1z1=> x2y2z2
  • 3. Rotate along z2 by ψ from x2y2z2=> x3y3z3

47 of 47

Summary

  • Rotation can be represented by rotation matrix
  • For 3d rotation, body-fixed coordinate system is commonly used
  • For 3d rotation, the sequence of rotation matters!