+ All Categories
Home > Documents > Mobile Robot ApplicationsMobile Robot Applications Textbook: –T. Bräunl Embedded Robotics,...

Mobile Robot ApplicationsMobile Robot Applications Textbook: –T. Bräunl Embedded Robotics,...

Date post: 22-Dec-2015
Category:
View: 213 times
Download: 0 times
Share this document with a friend
39
Transcript

• Mobile Robot ApplicationsMobile Robot Applications• Textbook:

–T. Bräunl Embedded Robotics, Springer 2003

• Recommended Reading:• 1. J. Jones, A. Flynn: Mobile Robots, 2nd Ed., AK Peters,

1999

–→ Hobbyist’s introduction, easy reading• 2. R. Arkin: Behavior-based Robotics,

–→ Overview of behavior-based robotics• 3. Kernighan, Ritchie: The C Programming Language• alternatively: <any C programming book>

–→ C programming skills are important!

• Contents Topics:Contents Topics:• Maze driving

–Micro Mouse Contest• Mapping

–Driving in unknown environments• Elementary Image Processing

–Edge detection, color detection, color blobs

• Robot Soccer

–autonomous agents

Mazes and MappingMazes and Mapping

Place p

robot

Know where to go!Know where to go!

Explore while finding the Explore while finding the connection.connection.

MazesMazes

We won local competition in 1990

Two our teams did not complete the run 2004

• This is becoming a competition for sensors, motors and crazy ideas.• Algorithmic problems are already solved.

Long rods for sensing

Cell-based maze for mapping and motion planning

In early contests you can win using this simple algorithm. Next it was changed to make contest more

interesting

• This will not find the object in the middle if there is much empty space around.

Follow left wall Follow left wall AlgorithmAlgorithm

Explore_left: Many Probabilistic variants have been created

See next page for these routines

x,y = coordinates, dir = direction

flags

Depending on current direction, update x and y coordinates of the mouse

Never finds the goldIdea to remember: there are good special algorithms for some kinds of mazes.If you deal with general space or irregular map of labyrinth, you have to use

several algorithms and adapt.

There are many recursive algorithms, we will illustrate one of them

recursionLeft wall following

This explains and illustrates the concept of backtracking that is This explains and illustrates the concept of backtracking that is fundamental to robotics and AIfundamental to robotics and AI

In backtrack point robot knows that it has done a bad decision

Explore will call itself recursivelyrecursively

Mark x and y position

Check situations if front open etc

Set flags front open etc

Use flags front open etc

Recursive call of itself This part shows recursive calls in all

situations : Front open, Left open and right open

We can combine recursion and left -wall-following algorithms in several ways

This map shows calculating distances from the start for labyrinth from bottom left

1. Discuss how it works.

2. How it is represented.

Using grid we start from here and go everywhere adding 1 at each step

One approach to One approach to solve this are the solve this are the

Flood Fill AlgorithmsFlood Fill Algorithms

Flood Fill AlgorithmsFlood Fill Algorithms

• The idea of marking cells appears here again

Algorithm continued

continuation

Example on next slide

Phase 2Phase 1Phase 3

This is like breadth first search

Next Stage of Flood Algorithm:Next Stage of Flood Algorithm: Shortest Path

• Now we have:– Explored the maze– Know the distance to goal from every cell

• Missing:Missing:– Shortest path from start to goal

• Idea:– Generate shortest path from goal backward to

start

• Path already done by robot

• Distances of cells from start position

• Part of map that has been covered so far

• Map of labyrinth

What to visualize in maze algorithms

• Applications in hospitals, museums, mines, big government buildings.

Learn from counting doors or information on walls

Real-world mazesReal-world mazes (hospitals, universities) and (hospitals, universities) and labyrinthslabyrinths (forest, (forest, park, open battlefield)park, open battlefield)

MappingMapping• Mapping an unknown environment is

similar to the maze problem

• However, maze is very simple:– fixed size cells– only 90º angles

• Now: let us look at general environments

Mapping

• Explore unknown environment

• Use infra-red PSD and infra-red proxy sensors only

• Apply DistBug algorithm for wall following once an obstacle is encountered

• Enter sensor measurement data in map

• Use visibility graph with configuration space representation

Exploring cells of the map – grid based

Exploring obstacles in the map - general maps, shapes, no grid.

continuedcontinued

This slide explains how to use grids to draw the map based on sensor This slide explains how to use grids to draw the map based on sensor information and actions executed.information and actions executed.

• Such parts can be next fixed based on general predetermined knowledge of the nature of walls, obstacles and sizes.

This slide explains how to use grids to draw the map based on sensor This slide explains how to use grids to draw the map based on sensor information and actions executed.information and actions executed.

The smaller the error the more accurate the map

You should collect these kinds of data for your robot environment of the demo. Think in advance where our robots will be demonstrated. Deans attrium? Near elevators? Not the lab!!

Conclusion

1. Now that you understand one application of search, go read again the slides about search algorithms and think how they can be used in this application.

2. What can be the cost (fitness) functions?

3. Think about other mapping algorithms. Can you use randomness?


Recommended