+ All Categories
Home > Documents > CSC 4120/6120 Introduction to Robotics Path...

CSC 4120/6120 Introduction to Robotics Path...

Date post: 30-Jul-2020
Category:
Upload: others
View: 7 times
Download: 0 times
Share this document with a friend
22
CSC 4120/6120 Introduction to Robotics Ashwin Ashok [email protected] TA: Yashaswini Vishwanath [email protected] Path Planning
Transcript
Page 1: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

CSC 4120/6120Introduction to Robotics

Ashwin Ashok [email protected]

TA: Yashaswini [email protected]

Path Planning

Page 2: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Welcome!

• CSC 4120/6120: Introduction to Robotics– M-W 5:30-7:15pm (Langdale 517)

• Instructor: Ashwin Ashok– Office hrs: Wed 4.15-5.15pm (Room 734@25 Park Place)

• TA: Yashaswini– Office hrs: Th 3.30-5.30pm, Room 650@25 Park Place

• Course Materials on Course Website– http://mobile.cs.gsu.edu/aashok/courses/csc4120/

Page 3: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Course Structure• Modular design of a terrestrial robot• 1 kit provided per student• Evaluation of Module through in-class demonstration bi-

weekly on Wednesdays – Complete the module exercises– Complete (design and demonstrate) 2 Assigned

Problems/Questions in each Module (Module 2-5)– Complete 2 projects (Module 6 and 7)

• Project 1: Same project assigned for all• Project 2: Each student proposes their idea and implements

• Separate curves for undergraduate and graduate students

Page 4: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Plagiarism and Grades

• Don’t covet thy neighbor’s code!• We use code checker

– Across all submissions– All submissions in the previous editions of the class– You will get caught!

• Collaboration– Discuss ideas– When in doubt, check with instructors

• Copying results in an F grade• Grades are final – please discuss any grade

requirements you have early and not after the final project demonstration!

Page 5: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Timeline• Monday, Sep 23

– 100% lecture• Wednesday, Sep 25

– 50% assignment description– 50% module in-class workout (Module 3: posted on website)

• Monday, Sep 30– In class working and discussion– Resolve issues/clarifications– Can do early demonstration for preliminary feedback

• Wednesday, Oct 2– Dr. Ashok will be travelling: No office hours that day.– Each student will demonstrate to the TA in class– Module 3: 2 assigned problems– No extensions: those demonstrating on Thu to the TA will be

penalized 2pts

Page 6: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Sensors for Mobile Robots• Contact Sensors: Bumpers• Internal Sensors

– Accelerometers (spring-mounted masses)– Gyroscopes (spinning mass, laser light)– Compasses, inclinometers (earth magnetic field, gravity)

• Proximity Sensors– Sonar (time of flight)– Radar (phase and frequency)– Laser range finders (triangulation, Time-of-Flight, phase)– Infrared (intensity)

• Visual Sensors: Cameras• Satellite-based sensors: GPS

Page 7: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Proximity Sensors

• The central task is to determine P(z|x), i.e., the probability of a measurement z given that the robot is at position x.

• Question: Where do the probabilities come from?• Approach: Let’s try to explain a measurement.

Page 8: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Beam-based Sensor Model• Scan z consists of K measurements.

• Individual measurements are independent given the robot position.

},...,,{ 21 Kzzzz =

Õ=

=K

kk mxzPmxzP

1

),|(),|(

Page 9: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Beam-based Sensor Model

Õ=

=K

kk mxzPmxzP

1

),|(),|(

Page 10: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Typical Measurement Errors of an Range Measurements

1. Beams reflected by obstacles

2. Beams reflected by persons / caused by crosstalk

3. Random measurements

4. Maximum range measurements

Page 11: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Proximity Measurement• Measurement can be caused by …

– a known obstacle.– cross-talk.– an unexpected obstacle (people, furniture, …).– missing all obstacles (total reflection, glass, …).

• Noise is due to uncertainty …– in measuring distance to known obstacle.– in position of known obstacles.– in position of additional obstacles.– whether obstacle is missed.

Page 12: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Dead Reckoning

– Estimates a position based on the change from a previous position

– Does not require maps or outside references

– Utilizes sensor data and the precise physical measurement of the robot

Page 13: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Humans and Dead Reckoning

– Humans can estimate their position by counting their steps and multiplying by the size of each step

– Most people, however, estimate their distance traveled based on how long they have been walking and how fast they typically walk

Page 14: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Robots and Dead Reckoning– For precise positioning, GPS and other external localization aides

can be insufficient

– Additionally many robots operate in areas where there are limited environmental cues to aid in positioning

– Dead reckoning is a technique that is employed by robots in these scenarios

– When to use?– When external references are noisy or imprecise– When positioning systems (GPS) are unavailable or

unreliable

– Important sensors– (Accelerometer, Gyroscope, Compass), Motor Encoders

Page 15: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Basic Dead Reckoning

– xt is the position of the robot at the current time

– x0 is the position of the robot at the previous step

– v is the velocity of the robot

– t is the duration between updates

Page 16: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Probabilistic Dead Reckoning

– If the previous position and velocity are not known precisely, they are often expressed as random variables

– Probability can be used to define the uncertainty of these measurements.

Page 17: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Cumulative Errors

– Center of each circle is the prediction position at each time step

– Size of the circle depicts the uncertainty of the prediction

– As the robot continues to move, the uncertainty increases

Page 18: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Real World

Sensing

Information Extraction

Perc

epti

on

raw-data

Localization Mapping

environmental model local map

CognitionPath Planning

“position”global map

Acting

Path Execution

Mot

ion

Cont

rol

Actuator commands

path

Mission commands

Knowledge, database

Robot Autonomy Architecture

Page 19: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Motion Planning in Robotics

• State space and obstacle representation• Workspace• Configuration space

• Global motion planning• Optimal control• Deterministic graph search• Potential fields• Probabilistic/randomized approaches

• Local collision avoidance• BUG• VFH

Page 20: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Motion Planning Problem

• Problem: find the path in the workspace from an initial location to a goal location avoiding all collisions with obstacles

• Assumption: There exists a good map of the environment for navigation

Page 21: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Motion Planning

• Generally, we distinguish between• Path planning (global)• Obstacle avoidance (local)

•ALGORITHM1. Transform map into a representation useful for

planning (planner dependent)2. Plan a path on the transformed map3. Send motion commands to controller (planner

dependent)

Page 22: CSC 4120/6120 Introduction to Robotics Path Planningmobile.cs.gsu.edu/aashok/courses/csc4120/lectures/2-PathPlanning.… · CSC 4120/6120 Introduction to Robotics Ashwin Ashok aashok@gsu.edu

Where is the robot?

• Localization

Common algorithms• TRIANGULATIONRelies on angle (bearing) measurements � Minimum of two bearing lines (and the locations of anchor nodes or the distance between them) are needed for two-dimensional space

• TRILATERATIONRelies on measured distances between a node and a number of anchor points with known locations


Recommended