configuration space. recap represent environments as graphs –paths are connected vertices –make...
TRANSCRIPT
Configuration Space
Recap
• Represent environments as graphs– Paths are connected vertices– Make assumption that robot is a point
• Need to be able to use realistic representations of robot geometry and find safe paths
Rough idea
• Convert rigid robots, articulated robots, etc. into points– Expand obstacles to compensate
• Can now create graphs in this new space– If no collision along graph, no collision in real
world
Configurations• The configuration of a
moving object is a unique specification of the position of every point on the object. – Usually a configuration is
expressed as a vector of position & orientation parameters: q = (q1, q2,…,qn).
q=(q1, q2,…,qn)
q1
q2
q3
qn
Configurations• The set of points defining the robot is then some
function of q, such as R(q).
q=(q1, q2,…,qn)
q1
q2
q3
qn
Configuration Example• 2D translating circular robot• Shape can be defined as
q = (x,y) R(x,y) = {(x’,y’) | (x-x’) 2 + (y-y’) 2 ≤ r2}
In this case, can think of q as a translation applied to the original robot
Another Example
• Two joint planar arm• Does position of the
end effector describe the configuration?
(x,y)
Another Example
• Two joint planar arm• Does position of the
end effector describe the configuration?
• No! It does not uniquely specify all of the arm.– But joint angle does
q = (,)
Dimension of q
• Same as the degrees-of-freedom (DOFs) of the robot
• Can find DOFs by adding up free variables and subtracting constraints
DOF Example
• Planar translating, rotating triangle robot• Triangle = {p1,p2,p3} = { (x1,y1,z1),
(x2,y2,z2),(x3,y3,z3) }
• 9 free variables
p1
p2
p3
DOF Example
• Planar: z1 = z2 = z3 = 0• 9 – 3 = 6 free variables
p1
p2
p3
DOF Example
• Rigid body constraints• Fix p2 distance:
– D(p1,p2) = r12• Fix p3 distance:
– D(p1,p3) = r13– D(p2,p3) = r23
• 6 – 3 = 3 free variables
p1
p2
p3
DOF Example
• What’s left?• Fix one point p1 = (x,y)• Define rotation of triangle relative to axis• The three things we can choose were
– (x,y,)• Makes a 3 DOF robot
p1
p2
p3
Configuration space• The configuration space C
is the set of all possible configurations.– A configuration is a point in C.– Similar to a
• State space• Parameter space
• The workspace is all points reachable by the robot (or sometimes just the end effector)
• C can be very high dimensional while the workspace is just 2D or 3D
q=(q1, q2,…,qn)
q1
q2
q3
qn
C = S1 x S1
Topology of the configuration Space
• The topology of C is usually not that of a Cartesian space Rn.
• Space is S1 x S1 = T2
0 2p
2p
f
jj
j
f f
Obstacles in the c-space• A configuration q is collision-free, or free, if
a moving object placed at q does not intersect any obstacles in the workspace.
• The free space F is the set of free configurations (also Cfree).
• A configuration space obstacle (C-obstacle) is the set of configurations where the moving object collides with workspace obstacles.
C-Obstacles
• 2D translating robot
Workspace robot and obstacle
C-space robot and obstacle
Polygonal robot translating & rotating in 2-D workspace
workspace configuration space
Polygonal robot translating & rotating in 2-D workspace
x
Articulated robot in 2-D workspace
workspace configuration space
Paths in the configuration space
• A path in C is a continuous curve connecting two configurations q and q’ :
such that t(0) = q and t(1)=q’.
workspace configuration space
Css )(]1,0[:
Free Paths in the configuration space
• A free path in C is a continuous curve connecting two configurations q and q’ :
such that t(0) = q and t(1)=q’.• A semi-free path allows the robot and
obstacles to contact (but not interpenetrate).
Fss )(]1,0[:
• Two paths t and t’ with the same endpoints are homotopic if one can be continuously deformed into the other:
• A homotopic class of pathscontains all paths that arehomotopic to one another.
Homotopic paths
Connectedness of C-Space
• C is connected if every two free configurations can be connected by a path.
• Otherwise C is multiply-connected.• Same as terminology for graphs
More C-space Obstacles
• Exercise