1 / 24

Car-Like Robot: How to Park a Car? (Nonholonomic Planning)

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.

sinjin
Download Presentation

Car-Like Robot: How to Park a Car? (Nonholonomic Planning)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Car-Like Robot:How to Park a Car?(Nonholonomic Planning)

  2. 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

  3. 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

  4. f q f Car-Like Robot L q y x Configuration space is 3-dimensional: q = (x, y,q)

  5. 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]

  6. 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

  7. 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

  8. 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

  9. 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

  10. Type 2 Maneuver  Allows pure rotation

  11. Combination

  12. Combination

  13. + q q’ Coverage of a Path by Cylinders q y x Path created ignoring the car constraints

  14. Path Examples

  15. Drawbacks • Final path can be far from optimal • Not applicable to car that can only move forward (e.g., think of an airplane)

  16. Reeds and Shepp Paths

  17. 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

  18. Example of Generated Path Holonomic Nonholonomic

  19. 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

  20. 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.

  21. Computed Paths Tractor-trailer Car That Can Only Turn Left jmax=45o, jmin=22.5o jmax=45o

  22. Application

  23. Architectural Design: Verification of Building Code C. Han

  24. 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!)

More Related