15 Robotics Intro
15 Robotics Intro
15 Robotics Intro
Amitabha Mukerjee
IIT Kanpur, India
Readings:
R&N 3d ed.
ch.25
25.1 to 25.4, 25.6
Roomba vacuum
Cleaning robot
By i-robot
Price: ~ rs. 15-30K
Algorithms for Robot motion
Roomba vacuum
Cleaning robot
By i-robot
Price: ~ rs. 30K https://www.youtube.com/watch?v=dweVBqei9L
Models of Robot Motion
Circular robot
World Frame
(Workspace frame)
Models of Robot Motion
Circular robot
World Frame
(Workspace frame)
Models of Robot Motion
R DEFINITION:
degrees of freedom:
number of parameters needed
Robot frame to fix the robot frame R
in the world frame W
(x,y) = configuration
W y (vector q)
World Frame
(Workspace frame)
Models of Robot Motion
R NOTE:
Given robot frame R, every
point on the robot is known
Robot frame
x given configuration q
World Frame for a certain pose of the
(Workspace frame) robot, the set of points on
the robot is a function of the
configuration: say R(q)
Non-Circular Robot
DEFINITION:
degrees of freedom:
number of parameters needed
to fix the robot frame R
in the world frame W
Turtlebot
Based on i-robot (roomba) platform
(with kinect RGB-D sensor)
Configuration: q : (x,y, θ)
Kinematic chain:
Transformation between
frame of link (n-1) and link n,
depends on a single motion
parameter, say θn
Exercise:
What are the coordinates of
the end-effector center?
Exercise:
Sketch the robot pose for the configuration [0, -90]
Fixing frames
Link Frames:
workspace
Fix framen on Link n.
Every point on the link is
rigidly fixed to framen.
workspace configuration
space
θ2
θ1
flat torus
θ1
θ2
cut 1 θ1
cut 2
Configuration Space Topology
torus θ2
flat torus
θ1
θ2
Circle (sphere-1) θ1
topology : S1
Can approximate it θ1
as bounded region
Euclidean
toplogy can also be
used.
Controlled Mobility
Articulated Mechanisms
Articulated Mechanisms
omni-wheel steering
Omni-wheel platforms
Tri
omni-wheel
Mobile Mechanisms
Robot Motion Planning
Amitabha Mukerjee
IIT Kanpur, India
Designing motion algorithms
Assume that environment and robot parameters are known
Objective:
• Model the robot’s body (geometry + kinematics), as
R(q) a function of its configuration q
• Model the obstacles B
Aldebaran Nao
• continuum:
treat motion space as single continuum
optimization
• discretization:
decompose motion space into regions / segments
graph-search
Potential fields
Potential fields
start
1. Goal: negative (attractive)
potential
Obstacles: positive (repulsive)
goal
potential
2. Robot moves along gradient
3. Problems:
- need to integrate the potential
over the area of robot
Obstacle B
- problem of local minima
Potential fields
Potential fields
Potential fields
Finite area robots
Problem:
With control points r1 and
r2 on robot R(q), edge E1
may still hit Obstacle.
Attempt to reduce
computation to points
Local Minima
R DEFINITION:
degrees of freedom:
number of parameters needed
Robot frame to fix the robot frame R
in the world frame W
y
(x,y) = configuration
W y (vector q)
x x given configuration q
World Frame for a certain pose of the
(Workspace frame) robot, the set of points on
the robot is a function of the
configuration: say R(q)
Robot Motion Planning
start q
goal q
Q QB
QB = [ q | R(q) ∩ B ≠ Ø }
Motion Planning in C-space
path
configurations are points in
C-space
start q path P is a line
goal q
if P ∩ QB = Ø, then path is
in Qfree
Q QB
Motion Planning in C-space
workspace Q
Configuration space
Robot Motion Planning
goa
start l path
CB
C-obstacle
Mobile robots with Rotation
W
Mobile robots with Rotation
W
Mobile robots with Rotation
C-space with rotation θ (polygonal obstacle)
Configuration Space Analysis
Basic steps (for ANY constrained motion system):
1. determine degrees of freedom (DOF)
2. assign a set of configuration parameters q
e.g. for mobile robots, fix a frame on the robot
Main idea:
C-Space computation is same for ALL kinds of robots
Articulated Robot C-space
Neighbourhood of q is mappable to R2
Point obstacle in
workspace
Complexity:
Direct visibility test: O(n3)
(tests for each vtx: O(n) emanations
x O(n) obst edges)
Plane sweep algorithm: O(n2logn)
Visibility Graph methods
Reduced Visibility Graph
Connectivity:
path exists between any q′START and q′GOAL in RM
Accessibility:
exists a path from any qSTART ∊ Qfree to some q′START
∊ RM
Departability:
exists a path from some q′GOAL ∊ RM to any qGOAL ∊
Qfree
Staying away from Obstacles:
Generalized Voronoi Graphs
Voronoi diagram:
set of q equidistant from at least two obstacles
GVG Roadmaps
Accessibility / Deparability:
Gradient descent on distance from dominant
obstacle :
guaranteed to reach from any
qSTART ∊ Qfree to some q′START ∊ RM
Connectivity:
GVG is Connected if path exists
Sensor based Voronoi roadmap
construction
Cell decomposition methods
Trapezoidal decomposition:
Each cell is convex.
Graphsearch: O(nlogn)
Complexity:
any navigation path-planning problem can
n O(n 4)
be solved in p (logp)w time
Probabilistic Roadmap (PRM)
Probabilistic Roadmap
Time:
Exponential in DOFs [sinha mukerjee dasgupta 02]
Design for manipulability
O(kd) space /
time
Navigation Function : Sphere space
• Spherical wall (r0), with spherical obstacles inside
• Obstacle distance wall
obstacles
center qi
radius ri
Rimon Koditschek 92
Navigation Function : Sphere space
• Spherical wall (r0), with spherical obstacles inside
• Obstacle distance wall
obstacles
k=4 k=6
+ +
k=8 k=10
Choset etal 05
Navigation Function
φ : S → [0, 1] :
navigation function on
sphere space S.
then φ = φ∘ h is a
navigation function on F
Choset etal 05
Sensori-motor map learning
Cognitive Architecture: Levels of Abstractions
Newborns
(10-24 days)
Small weights
tied to wrists
[A. van der Meer, 1997: Keeping the arm in the limelight]
Observing self motions
Mobility and Intelligence
The capacity to predict the
outcome of future events—critical
to successful movement— is, most
likely, the
ultimate and most common of all
global brain functions.
- Rodolfo Llinas
Motricity Nervous system
[llinas 02]
Motricity Nervous system
[llinas 02]
Motricity Nervous system
[llinas 02]
Predicting Planning