2015_1009_Line following - Braitenberg, robot examples

Lecture 3,
May 11,
2012
Review and
Ideas for future
Projects
Projects with robots for teens.
What we already discussed.
1.
2.
3.
4.
Line following robots
Y shaped lines for robots that drive to selected locations.
Robots following walls on corridors.
Algorithms for mazes:
1.
2.
3.
4.
5.
6.
Right Wall Following Algorithm (RWFA)
Left Wall Following Algorithm (LWFA)
Deterministic Switch from from RWFA and LWFA based on mapping the known part of maze
to memory.
Variants of searching mazes to find an exit.
Deterministic and probabilistic combinational behavior based on input –
output matrix and multiplication of matrix by vector.
Combinational and State Machine based Braitenberg Vehicles
Analysis of a Braitenberg robot with
memory
S1
J
S2
Q
M1
K Q
M2
S1
S2
LOGIC
M1
M2
0= happy
1 =angry
S1
S2
Q
S1
J
S2
K
Q
Q+
Q+
M1
M2
0
0
00
00
00
00
0
1
0
0
10
00
01
11
1
0
0
1
00
01
10
0
0
1
0
1
10
01
11
0
0
1
1
S1
1
0
S2
0
01
Q
11
00
Q+
00
10
M1
11
0
M2
0
0
1
0
1
01
1
0
11
10
1
1
0
1
1
001
S1
1
S2
1
1Q
Q+
0
0
1
0
0
0
0
0
1
Analysis
1. Analyze how this behaves
in room with no light.
2. Analyze how this behaves
in room with light on floor,
oriented towards robot.
3. Analyze how this behaves
in a maze.
4. Draw snaphsots of movie
of robot position ,
orientation and internal
state in time
0= happy
1 =angry
S1
S2
LOGIC
M1
M2
Maze
exit
Wall is on the
left
Robots marks his
motion for Left
Wall algorithm in
blue
exit
Robots maps its position
in memory and now is
back in the same point
Robots marks his
motion for Left
Wall algorithm in
blue
exit
Robot moves to other
wall
Robot starts left wall
following algorithm (wall
at left)
X
X
exit
Robots marks his
motion for Left
Wall algorithm in
crosses
Robot executes left wall
following algorithm (wall
at left)
X
X
exit
Robot executes left wall
following algorithm (wall
at left)
X
X
X
exit
Robot executes left wall
following algorithm (wall
at left)
X
X
X
X
exit
Robot found the solution to exit by changing
the wall in the corridor but still using the left
wall following algorithm (wall at left)
X
X
X
X
X
X X X
X
X X X X
X
X
X
X
X X
X X
X
X
X
X
exit
Projects with robots for teens
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Robot finding cans and bringing them to safe place.
Robot attacking or escaping other robots.
Robots boxing.
Robots shooting one another.
Robots fencing.
Repeated Prisoner Dilemma for robots.
Repeated Chicken for robots.
Subsumption Architecture
Maze Searching
Genetic Algorithm
Tree search
Advanced
Line
Following
SENSOR ARRAY
7 sensors
Observe the
order of
variables from
outside to the
center
MINIMUM DISTANCE BETWEEN SENSORS IS 1cm
THE PRIORITY ENCODER
Number
of
sensor as
output
7 sensors
as inputs
Problem:
Design such priority
encoder as a circuit
using Kmaps
THE NO SURFACE LOGIC
A
B
0
0
C
A
B
C
NS signal = no
line detected
0
1
0
1
0
0
NS signal = no
line detected
INPUTS TO THE MICROCONTROLLER
NS
signal =
no line
detected
NS GS
A2
A1
A0 STATE IN
ACTION
1
X
X
X
X
No surface is detected
Stop the motors
0
1
X
X
X
No line is detected
Execute the no line code
(specially designed
algorithm)
0
0
0
0
0
A detects the line
Sharp turn left
0
0
0
0
1
B detects the line
Sharp turn right
0
0
0
1
0
C detects the line
Turn left
0
0
0
1
1
D detects the line
Turn right
0
0
1
0
0
E detects the line
Move left
0
0
1
0
1
F detects the line
Move right
0
0
1
1
0
G detects the line
Go straight
0
0
1
1
1
Forbidden state
Software
reset
processor
the
How this algorithm based on
sensors works?
LINE FIND MODE
Generalizations
•
•
•
•
Wall following
Vision based Wall following
Labyrinth problems
Can collecting tasks
FLOW CHART
RESULT AND CONCLUSION
1. The robot follows a line as demonstrated.
2. It effectively overcomes problems such as
“barren land syndrome” and line breaks.
3. The hardware and software works as
designed.
APPLICATIONS OF LINE
FOLLOWING IDEAS
1. Industrial automated equipment carriers
2. Automated cars.
3. Tour guides in museums and other similar
applications.
4. Second wave robotic reconnaissance
operations.
LIMITATIONS
1. Choice of line is made in the hardware abstraction and
cannot be changed by software.
2. Calibration is difficult, and it is not easy to set a perfect
value.
3. The steering mechanism is not easily implemented in
huge vehicles and impossible for non-electric vehicles
(petrol powered).
4. Few curves are not made efficiently, and must be
avoided.
…LIMITATIONS
1. Lack of a four wheel drive, makes it not
suitable for a rough terrain.
2. Use of IR even though solves a lot of
problems pertaining to interference, makes it
hard to debug a faulty sensor.
3. Lack of speed control makes the robot
unstable at times.
FUTURE SCOPE
1. Software control of the line type (dark or
light) to make automatic detection possible.
2. “Obstacle detecting sensors” to avoid
physical obstacles and continue on the line.
3. Distance sensing and position logging &
transmission.
Mechanical
Designs of
robots
Robot that delivers stuff to
locations
1.
2.
3.
4.
We will compare robots A, B, C, D, E, F
Robot can be prototyped with Lego NXT
Then we can add components from Tetrix
It is often faster, cheaper and better to design the robot from
wood, plastic and metal by yourself and only use gears and
motors with encoders from Tetrix.
5. We use this approach in our theatre.
6. Needs:
1. Doll grabbing (lifting)
How to design
2. Linear motion
3. Base control
mechanically robots
that can grab some
items and deliver to
certain locations?
Robot A
1. Deliver dolls to locations
1. Grabs an item
2. Releases the item
2. Can be used to deliver little robot actors to
locations in robot theatre
3. Uses line following
Robot takes some object (a doll)
in place X and delivers it to the
location in place Y
Robot D
• The same as before, robot delivers dolls to
locations
Robot B
Robot B
• Robot delivers dolls to locations, as before
Robot C- to play volleyball
1. Robot plays volleyball
Robot to play hockey
Robot to play hockey
Robot to play hockey
Robot to play hockey
Robot to play hockey
Philosophy How
to Design a
Robot
General Design Considerations
• Effectiveness
– Does the robot do what you want it to?
– Speed & accuracy
• Reliability
– How often will it work?
• Ease of Implementation
– Balance complex, effective solutions with simple to build
solutions
– Faster implementation means that you have more time
allowed for debugging,
• and probably, it means less debugging
Effectiveness
Mechanical
1. – Bearing surfaces
2. – Stiffness
3. – Appropriate constraints on
degrees of Freedom
4. – Gearing
5. – Speed
6. – Low mass / moment of inertia
• Electrical
1. Multiple stages
2. Efficient use of
inputs/outputs
3. Low power usage
4. Effective Motor
use
5. Sensor placement
/use
Reliability
Mechanical
1. – Stiffness
2. – Appropriate
constraints on
degrees
3. of freedom
4. – Simplicity
• Electrical
1. Circuit
modularity
2. Grounding
3. Shielding
Ease of Implementation
Mechanical
1.
Off-theshelf parts
2. Simplicity
3. Design for
loose
tolerances
• Electrical
1. Multiple stages
2. Board layout –
related ccts on 1
board
3. Circuit modularity
4. Accessibility
Grabbing Items
Using some
intelligence
Tower of Hanoi Problem
1. Write the software for Tower of Hanoi
Problem for a robot, with few pegs only.
2. Write the recursive software.
Robot
Theatre
Projects from Lego Robots
A piano-playing robot
The piano-playing robot positions itself correctly in front of the piano (using a camera
following a color target) and then plays with its two-fingered hand.
Projects from Lego Robots
1. Smiley face also has a small camera that tracks colors so it can follow the orange
target.
2. The mouth and eyebrows move using servo motors.
1.
Smiley face robot
chases the moving
orange target.
2. The eyebrows and
mouth move to
show happy and
sad.
Robots for
Autism Therapy
Teleoperated bear
developed at MU
University of Hertfordshire
UK
Yale University
University of Sherbrooke
Sensors for TigerPlace
to Help Older Adults Age Safely
Basic Sensors
Detection of Falls
See also http://eldertech.missouri.edu
hands
head
Personal
computer
PC
Bluetooth
connection
GPU supercomputer
The robot theatre concept
• This generic situation, where the
robot’s behavior is conditioned
upon the input from the feature
detectors connected to the
camera, maps to a constraint
satisfaction problem as described
here.
• The way this would work is that
the human / camera / robot
system would generate
optimization and satisfiability
problems, to determine how the
robot’s effectors should fire, and
these problems can be remotely
solved using Orion.
• For example, you could acquire a
Hansen Robotics Einstein, sit it
him on your desk, train a camera
on your face, use an anger feature
detector that causes the Einstein
robot to laugh harder the angrier
you get.
BIBLIOGRAPHY
• Programming and Customizing the PIC
microcontroller by Myke Predko
• PICmicro Mid-Range MCU Family Reference
Manual by MICROCHIP
• PIC Robotics, A beginner’s guide to robotics
projects using the PICmicro by John Iovine
…BIBLIOGRAPHY
Websites referred…
• The Seattle Robotics Society Encoder library of
robotics articles
• Dallas Personal Robotics Group. Most of these
tutorials and articles were referred.
• Go Robotics.NET, this page has many useful links to
robotics articles.
…BIBLIOGRAPHY
• Carnegie Mellon Robotics Club. This is the links page
with lots of useful resources
• This page is called the “Micro-mouse Handbook” and
an excellent tutorial for small scale robotics.
• This is the main website of microchip. Thousands of
application notes, tutorials & manuals can be found
here.