280 likes | 548 Views
Car-Like Robot: How to Park a Car? (Nonholonomic Planning). Types of Path Constraints. Local constraints: e.g., lie in free space Differential constraints: e.g., have bounded curvature Global constraints: e.g., have minimal length. Types of Path Constraints.
E N D
Types of Path Constraints • Local constraints: e.g., lie in free space • Differential constraints: e.g., have bounded curvature • Global constraints: e.g., have minimal length
Types of Path Constraints • Local constraints: e.g., lie in free space • Differential constraints: e.g., have bounded curvature • Global constraints: e.g., have minimal length
f q f Car-Like Robot L q y x Configuration space is 3-dimensional: q = (x, y,q)
f dx/dt = v cosq dy/dt = v sinq dx sinq – dy cosq = 0 q dq/dt = (v/L) tan f f |f| <F Example: Car-Like Robot L q y x Configuration space is 3-dimensional: q = (x, y,q) But control space is 2-dimensional: (v, f) with |v| = sqrt[(dx/dt)2+(dy/dt)2]
f dx/dt = v cosq dy/dt = v sinq dx sinq – dy cosq = 0 q dq/dt = (v/L) tan f f |f| <F Example: Car-Like Robot L q y x Lower-bounded turning radius
f q (x,y,q) L (dx,dy,dq) q q f y x y dx/dt = v cosq dy/dt = v sinq (dx,dy) x q dq/dt = (v/L) tan f |f|<F How Can This Work?Tangent Space/Velocity Space dx sinq – dy cosq = 0
f q (x,y,q) L (dx,dy,dq) q q f y x y dx/dt = v cosq dy/dt = v sinq (dx,dy) x q dq/dt = (v/L) tan f |f|<F How Can This Work?Tangent Space/Velocity Space
CYL(x,y,dq,h) h h dq (x,y,q0) • = 2rtandq d = 2r(1/cosdq - 1) > 0 (x,y) Type 1 Maneuver q r dq dq Allows sidewise motion r When dq 0, so does d and the cylinder becomes arbitrarily small
Type 2 Maneuver Allows pure rotation
+ q q’ Coverage of a Path by Cylinders q y x Path created ignoring the car constraints
Drawbacks • Final path can be far from optimal • Not applicable to car that can only move forward (e.g., think of an airplane)
Reeds and Shepp Paths CC|C0 CC|C C|CS0C|C Given any two configurations,the shortest RS paths betweenthem is also the shortest path
Example of Generated Path Holonomic Nonholonomic
dx sinq – dy cosq = 0 dx/dt = v cos q dy/dt = v sin q dq/dt = (v/L) tan f |f| <F Other Technique: Control-Based Sampling • 1. Select a node m • 2. Pick v, f, and dt • 3. Integrate motion from m • new configuration
Other Technique: Control-Based Sampling Indexing array:A 3-D grid is placed over the configuration space. Each milestone falls into one cell of the grid. A maximum number of milestones is allowed in each cell (e.g., 2 or 3). Asymptotic completeness:If a path exists, the planner is guaranteed to find one if the resolution of the grid is fine enough.
Computed Paths Tractor-trailer Car That Can Only Turn Left jmax=45o, jmin=22.5o jmax=45o
Other “Similar” Robots/Moving Objects (Nonholonomic) • Rolling-with-no-sliding contact (friction), e.g.: car, bicycle, roller skate • Submarine, airplane • Conservation of angular momentum: satellite robot, under-actuated robot, catWhy is it useful? - Fewer actuators: design simplicity, less weight - Convenience (think about driving a car with 3 controls!)