me 597 autonomous mobile robotsme597/me597-lecture1-navigation.pdf · 1 me 597/747 - lecture 1...

Post on 10-Oct-2020

6 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

ME 597/747 - Lecture 1Autonomous Mobile Robots

Instructor: Chris ClarkTerm: Fall 2005

Figures courtesy of Siegwart & Nourbakhsh

2

Course Description

An introduction to mobile robots and current approaches to robot autonomy. Topics include: – Mobile robot systems and modeling– Control structures– Sensors & Estimation – Localization and Mapping– Motion planning– Multi-robot systems.

3

Course Description

This course will consider the design, construction and programming of robots using existing technology (i.e. off-the-shelf materials).

This course will provide a broad overview of all components related to mobile robots with an emphasis is on robot autonomy.

4

Course Description

Required Text:– “An Introduction to Autonomous Robots”,

Roland Siegwart and Illah R. Nourbakhsh, MIT Press, 2004

Recommended Texts:– “Behavior-Based Robotics”,

Ronald C. Arkin, MIT Press, 1998– “Principles of Robot Motion”, Choset et.

Al., MIT Press, 2005

5

Course Description

Recommended Background: – Basic programming skills, knowledge of

microprocessors, linear algebra, control systems, Matlab, Soldering skills.

6

Course Description

The Mark III Robot

7

Syllabus

1 Sept. 14 Navigation & Control Structures Robot Construction

2 Sept. 21 Robot Programming Robot Programming

3 Sept. 28 Motion Control I – Locomotion & modeling Open Loop Control I

4 Oct. 5 Perception I – Sensor Characteristics Open Loop Control II

5 Oct. 12 Perception II – Sensor Types Sensor Characteristics

6 Oct. 19 Localization I – Rep’s and Markov Loc. Sensor Characteristics

7 Oct. 26 Localization II – Kalman Filter & Mapping Particle Filter I

8 Nov. 2 Cognition I – Motion Planning Particle Filter II

9 Nov. 9 Cognition II – Planning & AI Motion Planning I

10 Nov. 16 Exam Motion Planning II

11 Nov. 23 Multi-Robot Systems Competition Prep.

12 Nov. 30 Robot Competition NA

8

Class Format

Lecture– CPH 3374– 1-1.5 hours theory– Sample Applications

Lab– E3-3146– 1-2 hours

9

Marking – ME 597

10% Assignments35% Experiments45% Midterm10% Competition

10

Marking – ME 747

5% Assignments20% Experiments30% Exam35% Design Project10% Competition

11

Assignments

Done individuallyDue at the beginning of classNecessary for most experimentsMaintain one copy for the experimentWill include Matlab coding for simulations

12

Experiments

Done in groups of 2-3Marks based on– 2/10 Questions– 2/10 Methodology: participation, critical thinking– 4/10 Results: quality, completion– 2/10 Write-up: Background discussion &

conclusions

13

Exam

During lecture (2 hours)Closed book, no notesEquation sheet providedIncludes material up until day of exam

14

Design Project (ME 747 only)

Project proposal is due Sept. 28Final report due in my office:– Dec. 13 (ME 747)

Simulation is required

15

Mini-Sumo Robot Competition

Experiment time to prepare2 sections of round-robin tournament play to qualify into semi-finalsMarking– 1.0 marks for entering each match– 1.0 marks for each win

16

Administrative Info.

Locations– Lectures: CPH-3374– Labs: E3-3146

Web site – http://www.me.uwaterloo.ca/~me597/

17

Administrative Info.

Instructor: Chris Clark – email: cclark@uwaterloo.ca– Office Hours: Thursday 2-3 pm (OBA)

Teaching Asst: April Blaylock – email adblaylo@engmail– Office Hours: TBA

18

Navigation and Control

1. Course Objective2. Example Systems3. Approaches To Control4. Control Architectures5. Navigation Example

19

Course Objective

Provide robots with the ability to accomplish tasks autonomously.

Autonomously?– Different levels dependant on application

Tele-Operation Fully Autonomous

20

Robot Navigation

For autonomous behavior, mobile robots need the ability to navigate:– Learn the environment-> “Model”– Estimate where it is in the environment->

“Localize”– Move to desired locations in the environment

21

Navigation Problem

Problem Characteristics– Environments are Known versus Unknown– Environments are Static versus Dynamic– Environments are Structured versus

Unstructured (Indoors versus Outdoors?)

Most robot navigation systems are tailored to the problem characteristics.

22

Navigation and Control

1. Course Objective2. Example Systems3. Approaches To Control4. Control Architectures5. Navigation Example

23

Historical Examples

The Tortoise (Walter, 1950)

Courtesy of Hans Moravec

24

Historical Examples

Shakey (SRI 1969)

Stanford Research Institute

25

Historical Examples

Stanford Cart (Moravec, 1977)

Courtesy of Hans Moravec

26

Application Examples

Planetary Exploration

Image of jpl’s mars rover

27

Application Examples

Submersible ROV: Remotely Operated Vehicle

MBARI’s ROV Ventana

28

Application Examples

Legged Robots

jpl’s Lemur robot

29

Application Examples

Security Robots

ActiveMedia’s PatrolBot

30

Application Examples

Multi-Robot Systems

USC’s robot platforms

31

Application Examples

UAVs: Unmanned Aerial Vehicles

AUV “Big Blue” from Advanced Ceramics Research, Inc.

32

Application Examples

AGVs: Autonomic Guided Vehicles

Volvo’s AGV

33

Application Examples

Competitions

2002 RoboCup Tournament – Cornell Team

34

Navigation and Control

1. Course Objective2. Example Systems3. Approaches To Control4. Control Architectures5. Navigation Example

35

Approaches to Control

Open-Loop Control

uKxdesired Gcontrol plant

xw

u xKxdesired Gcontrol plant

wClosed-Loop Control

36

Approaches to Control

1. Planning Based Control– Traditional methods born out of AI (1960’s +)

2. Reactive (i.e. Behavior) Based Control– More recent (mid to late 1980’s)

3. Mixture of Planning and Reactive– Today

37

Approaches to ControlPlanning Based Control

Through perception and sensors fusion, a model of the “real” world is captured in memory.A goal is given and a plan is generated, assuming the “real” world is not changing.Then, the “plan” is executed, one (abstract) “operation” at a time.

38

Approaches to ControlPlanning Based Control

Example: A robot is equipped with a camera and two arms to perform an assembly task.– Goal: put part A into part B– World: where are A and B?– Plan:

move left arm to A; move right arm to B; grab A; grab B; move left and right arm closer; assemble

39

Approaches to ControlPlanning Based Control

Example continued:– What the camera sees is a world of “pixels”.– What is “interesting” in the “real” world to be

captured?– At what level of details should we represent

the “real” world?– What if during plan execution, the “real” world

changes? e.g., drop part A.

40

Approaches to ControlPlanning Based Control

Planning-based navigation architecture

41

Approaches to ControlPlanning Based Control

Perception, modeling and planning are computationally intensive.Our model of the “real” world must be at all times accurate (consistent and reliable).Sudden changes in the world may not be reflected instantly in our model.This approach works well in a predictable world.

42

Approaches to ControlBehavior-Based Control

Actions are connected to precepts via “behaviors”.No internal model: The real world is our model.A robot reacts to changes and exhibits complex behaviors due to both internal and external interactions.

43

Control StructuresBehavior-Based Control

A robot is equipped with many “simple” behaviors.Each behavior defines its own sensor data and actions.Interactions among the behaviors are resolved by coordination.These behaviors are concurrent and independent; they react to changes instantly.

44

Control StructuresBehavior-Based Control

Example: A simple roaming mobile robot is equipped with the following behaviors:

45

Control StructuresBehavior-Based Control

Different behaviors may share same sensors and/or actuators.Noisy sensor data are masked by redundant behaviors.Competitive or cooperative actions are handled by careful coordination.Behaviors may be added or deleted incrementally.

46

Control StructuresBehavior-Based Control

Subsumption Architecture– Behavioral coordination can be based on a fixed

priority of suppression.

47

Control StructuresBehavior-Based Control

Subsumption Architecture– Behavioral coordination can be based on a

fixed priority of suppression.

48

Control StructuresBehavior-Based Control

Each behavior may generate more than one type of actions.Multiple subsumption orderings may coexist at the same time.A behavior may be lower in one ordering, but be higher in an other.Each behavior’s decision “cycle” time is independent.

49

Control StructuresPlanning Based Control

Perception

Localization Cognition

Motion Control

Prior Knowledge Operator Commands

50

Control StructuresBehavior-Based Control

Perception

Localization Cognition

Motion Control

Prior Knowledge Operator Commands

Behaviors

51

Motion Control

Software: Low-Level Control (e.g. PID)

Hardware: Motors, legs, wheels

52

Perception

Hardware: Sensors

Software: Filtering raw data

53

Localization

Modeling and Mapping

54

Cognition

Hardware: Processors

Software: Planning Algorithms

55

Navigation and Control

1. Course Objective2. Example Systems3. Approaches To Control4. Control Architectures5. Navigation Example

56

Control Architectures

Today, most robots control systems have a mixture of planning and behavior-based control strategies.To implement these strategies, a control architecture is used.Control architectures should be:– Modular

57

Control ArchitecturesDesired Characteristics

Code Modularity– Allows programmers to interchange

environment types sensors, path planners, propulsion, etc.

Localization– Embed specific navigation functions within

modules to allow different levels of control (e.g. from task planning to wheel velocity control)

58

Control ArchitecturesDecomposition

Decomposition allows us to modularize our control system based on different axes:

1. Temporal Decomposition– Facilitates varying degrees of real-time processes

2. Control Decomposition– Defines how modules should interact: serial or

parallel?

59

Control ArchitecturesTemporal Decomposition

Factors affecting temporal decomposition:– Sensor response time– Temporal memory and

horizon– Spatial Locality– Context Specificity

T. Memory & Horizon

Context Specificity

Spatial Locality

Sensor Response Time

60

Control ArchitecturesTemporal Decomposition

Example

61

Control ArchitecturesTiered Architectures

A general tiered architecture for episodic planningRole of the Executive is:– Switch behaviors– Monitor failures– Call the planner

Planning only when required (e.g. blockage)

62

Control ArchitecturesTiered Architectures

A tiered architecture for integrated planning

Planning is fast and is embedded as a behavior.

63

Control ArchitecturesTiered Architectures

An integrated planning architectureRole of the Executive is:– Switch behaviors– Monitor failures– Call the planner

64

Control ArchitecturesControl Decomposition

An example of a control decomposition using a mixture of serial and parallel approaches.

65

Navigation and Control

1. Course Objective2. Example Systems3. Approaches To Control4. Control Architectures5. Navigation Example

66

Example System 1: Minerva

Courtesy of Sebastian Thrun

67

Example System 2: Mark III

IR Range Sensor

Servo Motor

OOPic Micro-Controller

Line Sensor

68

Lab

For first lab, there is nothing to hand-in.However, you must demonstrate a working robot at the beginning of the third lab.

69

Lab

Decide if you will take the courseForm a group of threeMeet at Room E3 – 3112Collect manual and Equipment from the TACheck all parts are presentBegin constructing robot by dividing responsibilities

– Circuit board (start with resistors)– Mechanical (start with motors).– Familiarize with software gui (start with tutorial)

top related