16-311 Intro to Robotics

Download Report

Transcript 16-311 Intro to Robotics

16-311 Intro. to Robotics
Sensing and Sensors
Steve Stancliff
Credits
• Much borrowage from Mel Siegel’s 16-722 slides
• “Ranging Sensors” section from the old 16-311 slides by:
• Sean Pieper
• Bob Grabowski
• Howie Choset
Outline
• Why Sense?
• Senses / Sensors
• Transduction
• Interfacing - Hardware
• Interfacing - Software
• References
Why Sense?
• Why not just program the robot to perform its
tasks without sensors?
• Uncertainty
• Dynamic world
• Detection / correction of errors
Human Sensing
Sense:
What sensed:
• Vision
• EM waves
• Audition
• Pressure waves
• Gustation
• Chemicals - flavor
• Olfaction
• Chemicals - odor
• Tactition
• Contact pressure
Human Sensing
Sense
What sensed:
• Thermoception
• Heat
• Nociception
• Pain
• Equilibrioception
• Sense of balance
• Proprioception
• Body awareness
Animal Sensing
• Magnetoception (birds)
• Electroception (sharks, etc.)
• Echolocation (bats, etc.)
• Pressure gradient (fish)
Human Sensors
Sense:
Sensor:
• Vision
• Eyes
• Audition
• Ears
• Gustation
• Tongue
• Olfaction
• Nose
• Tactition
• Skin
Human Sensors
Sense:
Sensor:
• Thermoception
• Skin
• Nociception
• Skin, organs, joints
• Equilibrioception
• Ears
• Proprioception
• Muscles, joints
Robot Sensors
Sense:
Sensor:
• Vision
• Camera
• Audition
• Microphone
• Gustation
• Chemical sensors
• Olfaction
• Chemical sensors
• Tactitions
• Contact sensors
• Thermoception
• Thermocouple
• Nociception
• ?
Robot Sensors
Sense:
Sensor:
• Equilibrioception
• Accelerometer
• Proprioception
• Encoders
• Magnetoception
• Magnetometer
• Electroception
• Voltage sensor
• Echolocation
• Sonar
• Pressure gradient
• Array of pressure
sensors?
Robot Sensors
• EM spectrum beyond visual spectrum
• (RADAR, LIDAR, radiation, infrared)
• Chemical sensing beyond taste and smell
• Hearing beyond human range
• Lots more.
Robot Sensors – A Sampling
GPS
Linear Encoder
Camera
Gyroscope
Lever Switch
Sonar Ranging
Laser Rangefinder
Accelerometer
Piezo Bend
PIR
Rotary
Encoder
Resistive Bend
Pressure
Pyroelectric
Detector
Metal Detector
Pendulum Resistive
Tilt
UV Detector
Gas
Magnetometer
IR Modulator
Receiver
Microphone
Infrared Ranging
CDS Cell
Compass
Radiation
Magnetic Reed Switch
Transduction
• What do all of these sensors have in
common?
• They all transduce the measurand into some electrical
property (voltage, current, resistance, capacitance,
inductance, etc.)
Transduction
• Many sensors are simply an impedance
(resistance, capacitance, or inductance) which
depends on some feature of the environment:
• Thermistors: temperature  resistance
• Humidity sensors: humidity  capacitance
• Magneto-resistive sensors: magnetic field  resistance
• Photo-conductors: light intensity  resistance
Transduction
• Other sensors are fundamentally voltage sources:
• Electrochemical sensors: chemistry  voltage
• Photovoltaic sensors: light intensity  voltage
Transduction
• Still other sensors are fundamentally current
sources:
• Photocell : photons/second  electrons/second
• Some sensors collect (integrate) the current,
outputting electrical charge:
• CCD: photons  charge
Interfacing - Hardware
• How can we interface each of these types of
signals to a computer?
• Voltage
• Compare to a reference voltage
• Current
• Pass it through a reference resistor, measure the
voltage across the resistor
• Resistance
• Use a fixed resistor to make a voltage divider,
measure the voltage across one of the resistors
Interfacing - Hardware
• Voltage
• Compare to a reference voltage
• Most microcontroller boards have 0-5V input lines.
The 5V reference is internal to the board.
• If your device outputs a voltage higher than the input
range, use a voltage divider to measure a fraction of it.
Interfacing - Hardware
• Voltage divider:
Vout
R2

R1  R2 
V1
Figure from http://hyperphysics.phy-astr.gsu.edu/hbase/electric/voldiv.html
Interfacing - Hardware
• Current:
• Pass it through a reference resistor, measure the voltage
across the resistor
V  IR
Figure from http://digital.ni.com/public.nsf/allkb/82508CD693197EA68625629700677B70
Interfacing - Hardware
• Resistance:
• Use a fixed resistor to make a voltage divider, measure the
voltage across one of the resistors
Vout 
R
Vref Rref
sensor
 Rref

Figure from http://www.kpsec.freeuk.com/vdivider.htm
Interfacing – Hardware
• Higher-level interfacing.
• Complicated sensors (cameras, GPS, INS, etc.) usually
include processing electronics and provide a high-level
output (USB, firewire, RS-232, RS-485, ethernet, etc.)
Interfacing - HB
• Handy Board input ports:
Source: “The Handy Board Technical Reference”, Fred G. Martin, 2000.
Interfacing - HB
• Handy Board input connector:
• Input port has 47k pull-up resistor. When nothing is
connected, it will read +5V
Source: “The Handy Board Technical Reference”, Fred G. Martin, 2000.
Interfacing - HB
• Digital sensor:
• Switch pulls input down to ground when closed.
Source: “The Handy Board Technical Reference”, Fred G. Martin, 2000.
Interfacing - HB
• Resistive sensor:
• Sensor forms voltage divider with internal pull-up resistor.
Source: “The Handy Board Technical Reference”, Fred G. Martin, 2000.
Interfacing - Software
• Calibration
• For many sensors you want to calibrate a maximum and
minimum and/or a threshold value.
• Those values can be subject to ambient conditions,
battery voltage, noise, etc.
• You need to be able to easily calibrate the sensor in the
environment it will operate in, at run time.
Interfacing - Software
• Ex: Calibrating a light sensor:
• Perhaps you want to calibrate the brightest ambient
light value.
• For instance, in the Braitenberg lab, if you know the
brightest ambient value, then anything brighter than that
is the goal.
Interfacing - Software
• Ex: Calibrating a light sensor:
• Manual calibration:
• Robot prints light sensor readings to the LCD.
• Move it around until you find the maximum.
• Press a button to store those values.
• Automatic calibration:
• Robot moves around the room
• (spin in place? drive around randomly?)
• Stores the highest value it encounters.
Interfacing - Software
• Ex: Calibrating an encoder (for a device with a
limited range of motion):
• Manual calibration:
•
•
•
•
Move the device to one end of the motion.
Press a button to record that position.
Move the device to the other end of the motion.
Press a button to record that position.
• Automatic calibration:
• Robot moves the device in one direction until it hits a
limit switch. Records that value.
• Then moves in the other direction until it hits another
limit switch. Records that value.
Interfacing - Software
• Signal conditioning.
• For many sensors if you just take the values straight
from the hardware you will get erratic results.
• Signal conditioning can be done in hardware or
software. Often both are used. We’ll talk about
software methods here.
Interfacing - Software
• Signal conditioning – averaging.
• With a light sensor or a range sensor, you may want to
average several readings together.
• This will reduce errors that are equally distributed
above and below the true value.
Interfacing - Software
• Signal conditioning – debouncing.
• When a switch is pressed, the mechanical contacts will
bounce around briefly. The electrical signal looks
something like this:
50 μs
Figure from slides for 16-778 Mechatronic Design.
stable
bouncing
stable
Interfacing - Software
• Signal conditioning – debouncing.
• The result is that your program may think that the
switch was pressed multiple times.
• One easy way to debounce in software is to only read
the sensor value periodically, with a period larger than
the settling period for the switch.
• In the previous slide, the settling period was 150ms
• The downside to this method is that it reduces the rate
at which you can read real changes.
Ranging Sensors
• Intensity-based infrared:
Ranging Sensors
• Intensity-based infrared:
• Easy to implement (few components)
• Works very well in controlled environments
• Sensitive to ambient light
voltage
Increase in ambient light
raises DC bias
voltage
time
time
Ranging Sensors
• Modulated infrared:
amplifier
bandpass filter
integrator
limiter
demodulator
comparator
Input
Output
600us
600us
http://www.hvwtechnologies.com
http://www.digikey.com
Ranging Sensors
• Modulated infrared:
• Insensitive to ambient light
• Built in modulation decoder (typically 38-40kHz)
• Used in most IR remote control units ( good for
communications)
• Mounted in a metal Faraday cage
• Cannot detect long on-pulses
• Requires modulated IR signal
Ranging Sensors
• Digital infrared:
Optical lenses
+5v
output
input
1k
gnd
1k
Ranging Sensors
• Digital infrared:
•
•
•
•
•
•
•
Optics to covert horizontal distance to vertical distance
Insensitive to ambient light and surface type
Minimum range ~ 10cm
Beam width ~ 5deg
Designed to run on 3v -> need to protect input
Uses shift register to exchange data (clk in = data out)
Moderately reliable for ranging
Ranging Sensors
• Polaroid ultrasonic:
http://www.robotprojects.com/sonar/scd.htm
Ranging Sensors
• Polaroid ultrasonic:
•
•
•
•
•
•
•
Digital Init
Chirp
• 16 high to low
• -200 to 200 V
Internal Blanking
Chirp reaches object
• 343.2 m/s
• Temp, pressure
Echoes
• Shape
• Material
Returns to Xducer
Measure the time
Ranging Sensors
• Problems:
•
•
•
•
•
Azimuth uncertainty
Specular reflections
Multipass
Highly sensitive to temperature and pressure changes
Minimum range
Ranging Sensors
• Naive sensor model
Ranging Sensors
• Problem with naive model:
Ranging Sensors
• Problem with naive model:
Ranging Sensors
• Reducing azimuth uncertainty:
•
•
•
•
Pixel based methods (most popular)
Region of constant depth
Arc transversal method
Focusing multiple sensors
Ranging Sensors
• Certainty grid approach:
• Combine info with Bayes rule
• (Moravec and Elfes)
Ranging Sensors
• Arc transversal method:
• Uniform distribution on arc
• Consider transversal intersections
• Take the median
Ranging Sensors
• Arc transversal method:
Ranging Sensors
• Mapping example:
More To Learn
• There’s a lot more to it:
• Input and output impedance
• Amplification
• Environmental noise
• ADC, DAC noise
• Sensor error and uncertainty
• Data filtering, sensor fusion, etc.
Questions?
References
• Useful books
• Handbook of Modern Sensors: Physics, Designs and
Applications, Fraden.
• The Art of Electronics, Horowitz & Hill.
• Sensor and Analyzer Handbook, Norton.
• Sensor Handbook, Lederer.
• Information and Measurement, Lesurf.
• Fundamentals of Optics, Jenkins and White.
References
• Useful websites:
•
•
•
•
•
•
•
http://www.omega.com/ (sensors + hand-helds)
http://www.extech.com/ (hand-helds)
http://www.agilent.com/ (instruments, enormous)
http://www.keithley.com/ (instruments, big)
http://www.tegam.com/ (instruments, small)
http://www.edsci.com/ (optics ++)
http://www.pacific.net/~brooke/Sensors.html
(comprehensive listing of sensors etc. and links)