Sensors - University of California,...

61
Sensors Jonathan Bachrach EECS UC Berkeley October 10, 2016

Transcript of Sensors - University of California,...

Page 1: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Sensors

Jonathan Bachrach

EECS UC Berkeley

October 10, 2016

Page 2: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Last Time 1

JITPCB Peripherals

Page 3: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Now 2

Sensors

https://www.adafruit.com/products/245

Page 4: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Sensor Input Techniques 3

DigitalIn simpleDigitalOut enable signalAnalogIn need to map values

UART string parserI2C need addressSPI number of bits

Page 5: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Sensor Input Techniques 4

Voltage any Analog valueEvent touch, IR, magnetic, hall effectLight LED, IR, pulse, camera

Sound knock, micMotion tilting, velocity, acceleration, flex, liquid flow

Distance SONAR, LIDARWeather temperature, humidity,

Time real time, atomic timeMagnetism magnetic contact, compass

Weight load cellPose GPS, encoder, altimeter

UI mouse, game controller, wii, keyboard, keypad

Page 6: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Voltage 5

measuring basic voltage

Page 7: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Potentiometer 6

variable resistoruse map command for mapping values

5v

Page 8: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

MORE ANALOG INPUTS 7

use multiplexor

4051mux

s0s1s2c0c1c2c3c4c5c6c7

z

gnd5v

e

Page 9: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

MEASURING VOLTAGES <= 5V 8

map domain to rangecan use constrain

Page 10: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

MEASURING VOLTAGES > 5V 9

use voltage divider

R1 R2

Vin

Vout

Page 11: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Event 10

measure instantaneous event

Page 12: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

IR Beam Breaking Sensor 11

transmitter and receiveropen collector receiver needs pull up resistor say 10k

https://www.adafruit.com/products/2167

Page 13: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Magnetic Contact Switch 12

reed switch triggered when magnet is < 0.5” away

https://www.adafruit.com/products/375

Page 14: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Hall Effect Sensor 13

measures magnet nearbyhigh strength magnet works bestwire vdd, gnd, digital outuse 10k pull up resistor on out

https://www.adafruit.com/products/158

Page 15: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Touch Sensor 14

breakout board belowsome microcontrollers have touch hardware built inwire to vdd, gnd, out

https://www.adafruit.com/products/1374

Page 16: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Light 15

measuring aspects of light

Page 17: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

DETECTING LIGHT 16

light dependent resistoranalog in with 10k resistor to ground

5v

LDR

10k

sig

Page 18: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Pulse Rate Monitor 17

measure blood pulse through lightneed to sample analog signal and do DSP on it

https://www.adafruit.com/products/1093

Page 19: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Line Camera 18

measure single linealso line sensor with IR light bounced back

https://www.sparkfun.com/products/13582

Page 20: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Camera 19

lots of different interfaces for camerashere’s one with TTL serial interfacealso ones with SPI interface

https://www.adafruit.com/products/397

Page 21: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Pixy CMUcam 20

offloads processor

https://www.adafruit.com/products/1906

Page 22: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

FLIR 21

longwave infrared light sensor80x60 pixelsSPI and I2C

https://www.sparkfun.com/products/13233

Page 23: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Sound 22

measuring aspects of sound waves

Page 24: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

DETECTING SOUND 23

BOB-08669 breakout board from sparkfunwire up aud, gnd, vccjust use analog inneed to use sum of squares

GND

5v

Aud

Page 25: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Motion 24

measuring movement aspects

Page 26: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

DETECTING VIBRATION 25

piezo sensoranalog value > thresholdpolarized – + goes to analog in1 mega ohm is connected across terminals

1M

out+

-

Page 27: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

DETECTING MOTION 26

PIR sensorhookup out, gnd, 5vacts like switch

PIRGND

5vOut

Page 28: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

ACCELERATION 27

read acceleration as proportional to voltage valuesee sparkfun accelerometer selection guide

X5V

GND

ADXL203CE

Y

Page 29: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Flex Sensor 28

measure deflection of surfacechanges resistance with flex

https://www.adafruit.com/products/1070

Page 30: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Flow Sensor 29

liquid flow metercount pulses using interrupt

https://www.adafruit.com/products/833

Page 31: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Distance 30

measuring distance to object

Page 32: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Ultrasonic DISTANCE 31

rough distance valuesping sensor is one exampleping and measure time back and convert to distanceuse pulseIn to measure pulse size

GND

5v

Sig

Page 33: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

MaxBotix EZ1 32

no pingingcontinuous distance valuesuse pulseIn to measure pulse size

GND

5v

PW

Page 34: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

IR sensor 33

accurate distance valuessmaller range (1 to 2m) butuse table to interpolate values to distance

GND

5v

Out

Page 35: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Liquid Level 34

analog in and need to convert to length

https://www.adafruit.com/products/463

Page 36: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

LIDAR Lite V3 35

measure distance to grid of pointsuse spinning laser and cameraI2C interface

https://www.sparkfun.com/products/14032

Page 37: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Weather 36

measuring weather attributes

Page 38: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

TEMPERATURE SENSOR 37

1 mv per 0.1 deg ccelcius = (value * 500L) / 1024 (max temp is 500)

GND

5v

Aud

Page 39: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Humidity 38

I2C interface

https://www.adafruit.com/products/3251

Page 40: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Moisture 39

CLK / DAT for clocking out values

https://www.adafruit.com/products/1298

Page 41: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Barometric Pressure (Altitude) 40

I2C Interfacebarometric pressure changes with altitude

https://www.adafruit.com/products/1603

Page 42: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Pose 41

measuring angle / location either relative or absolute

Page 43: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Rotary Movement 42encodertwo outputs and groundduring high to low transistion can detect direction of movement bylooking at state of other pinencoders use steps per revolution (from say 16 to 1000)might be low to high instead in some casesmultiple encoders require multiple state machinescan do this using interrupt handler

GND

A

B

C

Page 44: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

GPS 43

serial interfaceparse sentencepopular one is USGlobalSatEM-406Atinygps in an arduino driver

TX5V

GNDUSGlobal

SatEM-406A

RX

Page 45: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

GYROSCOPE 44

LY530AL output proportional to rotation ratealso have ones that use I2C3 axis one is ITG-3200

OUT3.3V

GNDLY530AL

SCLSDA

3.3VGND

ITG-3200

Page 46: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

COMPASS 45

hm55b compass module from parallax #29123wire gnd, 5v, en, dat, clkSPI interface (sw one in example)calcAngle = atan2(−ydat , xdat)/MP I ∗ 180

EN

DAT5V

GND

HM55BCLK

Page 47: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

TILT SENSOR 46

just like a switchdigital inputpull up resistor

Page 48: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

UI 47

composite input device

Page 49: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

KEYPAD 48

wire the rows and columns from the keypadrows are input with pull up resistorcols are outputsscan out data by writing 0 and reading rows

1 2 3

4 5 6

7 8 9

* 0 #

c1 r0 c0 r3 c2 r2 r1

Page 50: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

RFID tags 49

parallax rfid readerhook up out to rx pin onset baud rate to 2400 baud (or whatever works)start character followed by 10 digit tag in asciienable reader lowcheck if have have enough characters

Enable

5v

OutRFIDGND

Page 51: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Joystick 50

two potentiometers

https://www.adafruit.com/products/245

Page 52: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Footswitch 51

switch for the foot

https://www.adafruit.com/products/423

Page 53: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Coin Sensor 52

coins are assigned number of pulses

https://www.adafruit.com/products/787

Page 54: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Time 53

keeping track of time

Page 55: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Real Time 54

much more accurate than microcontrollerbattery backupI2C interface

https://www.adafruit.com/products/264

Page 56: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Real Time from Satellite 55

read atomic clock measurement from satelliteenable signal and looks like serial interface

https://www.adafruit.com/products/746

Page 57: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Weight 56

measuring weight or force

Page 58: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Load Cell 57

measure weight

https://www.sparkfun.com/products/13879 https://www.sparkfun.com/products/13330

Page 59: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Logistics 58

Basic JITPCB out today due next Tuesday

Page 60: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

Next Time 59

Actuators

Page 61: Sensors - University of California, Berkeleyinst.eecs.berkeley.edu/~cs194-126/fa16/lectures/sensors.pdfSensors Jonathan Bachrach EECS UC Berkeley October 10, 2016. Last Time 1 JITPCB

References 60

Arduino Cookbook, Michael Margolis30 Arduino Projects for the Evil Genius, by Simon Monk