Project #2 - Peripherals
Main Embedded Computing - Vision, Navigation, Odometry
Start by going to
a free Pi User Guide and
an introduction to the Pi. Read the entire tutorial.
- the CAMERA we'll be using
- procedure -
- cable the device using ribbon cable, male/female headers. Use
the color convention in the tutorial.
- Install and run the demo code on your Pi.
- report -
- take a team photo
- the Pi-Arduino
interface
- procedure -
- send a messages to the Pi, compute something, send the
proper reply back to the Pi.
- run the peripheral tasks through this interface.
Peripheral Sensor/Motor Frontend - Ping, Photoreflector,
Motors
Start by going to www.arduino.cc >
Learning > Getting Started page and familiarizing yourself with the
basic care and feeding of Arduino-based applications.
In this project, your team complete the interfaces to peripheral
sensor and motors necessary for subsequent projects. Your Arduino
should communicate and (at this stage) receive power from the serial port.
-
MOTORS -
Pololu Dual MC33926 Motor Driver Shield
- There's a Arduino library for the Pololu motor
shield under the "Resources" tab in the IDE. Your can
find a
demo program that should alternately ramp up/down the
speed of your pair of motors.
- procedure -
- read the entire user's guide above.
- Verify that the jumper connecting the power on the
motor shield to the power on the Arduino is NOT
installed.
- Attend a tutorial from the TA (Khoshrav) on the procedure
for charging the 11.1 V LiPo battery in your project box (it is
potentially DANGEROUS to charge these batteries
incorrectly) and give your battery a full charge.
- Build interface cables to connect power from the LiPo
cell and both motors to the motor shield.
- Install and run the demo code on your Arduino.
- report -
- what voltage does your battery produce when fully charged?
- why must you make sure that the jumper is NOT
installed?
- measure and report motor resistances, does it match the
spec sheet?
- what is the motor's torque constant? stall torque?
speed constant?
- PING
Ultrasonic Range Finder
- procedure -
- read the entire tutorial above
- cable the device using 22 gauge solid core wire,. Use
the color convention in the tutorial.
- Install and run the demo code on your Arduino.
- report -
- what is the speed of sound in the embedded systems lab
in meters/sec?
- plot the range data from the Ping vs. ground truth
- measure the sensitivity of the range measurement to
misalignment of the reflecting surface.
- IR reflectance sensor -
- application notes
describe how nearby surfaces with varying reflectance produce
pulses that the Arduino can count.
- A good
tutorial on quadrature encoders.
- Arduino
library for counting pulses from quadrature
encoded signals.
- procedure -
- read the application notes for reflectance sensors and
the tutorial about quadrature encoders.
- cable two of your reflectance sensors and connect
them to your Arduino as learned from the tutorial to
implement a quadrature encoder.
- Install and run the demo code on your Arduino.
- report -
- explain how a quadrature encoder works.
- design an experiment to test your encoder.