Post on 14-Dec-2015
Controller Systems
Tufts EMID - Spring 2015
Typical Controller System
Sensors
Acquisition System (Arduino)
Mapping Software (Max)
Output (Reason)
Useful Resources
Fraden, A Handbook of Modern Sensors
sensorwiki.org
Datasheets for components
Parts Sources
mouser.com
digikey.com
sparkfun.com
What can we sense?ON/OFF, momentary or toggle
Position, velocity, acceration, rotation
Temperature, light, sound
Pressure, touch, torque, bending, strain
Types of SensorsDiscrete - only can give a value of 0 (off) or 1 (on)
Continuous - Resistors or current generators. Some can be connected directly to the Arduino. Others need buffering, amplification, and/or filtering to provide usable data
Switches
Discrete output
Toggle - on or off
Momentary - on or off when pressed
Rotary: multiple-position
Can provide visual and tactile feedback
Potentiometers
Common types:
Linear taper
Audio taper (logarithmic)
Rotary, linear, multiturn
+Vref
Vout
GND
Soft Potentiometers
Linear
Circular
Other Variable Resistors
Photoresistors
Bend Sensors
Force-Sensing Resistors
Photoresistors/Photocells
Sense the absence or presence of light
Change resistance when amount of light changes
Bend SensorsResistance decreases when bent
Force-Sensitive Resistors
Resistance drops when pressed
Shorthand name: FSR
Variable Resistors
Vout = Vref R2/(R1+R2)
If sensor range = 10k to 35kΩ,
and R2 = 20kΩ then
Vout range = .66*Vref to .36*Vref
Vout
R2
R1 (variable)
+Vref
Accelerometers
Measure inclination (direction), acceleration in 1, 2, or 3 axes
Distance Sensors
Infrared
Ultrasonic
Piezoelectric Materials
Sensitive to vibration
Excellent drum triggers, contact microphones
Capacitive SensorsDetects changes in capacitance, often by measuring your body capacitance
Can detect proximity, distance, location, acceleration
Think: Trackpads, Cell/Tablet Screens, Theremin
Other Sensors
EMG (Muscle Sensor)
Joysticks (X and Y axis variable resistors)
Gesture Recognizers
Rotary Encoders
Connecting SensorsUsing Arduino boards
Read in digital and analog signals
Connect via USB and can talk to MAX
Breadboards
Simple way to create circuits without soldering
Reading in Data in MAX
Using Arduino2MAX
Putting It All Together
Arduino2MAX