- IMPORTANT!!! Cover the bottom of the ADC and Encoder headers with electrical tape to avoid shorting them on the USB ports of the Pi!!!
- This is a cape for the Raspberry Pi that contains helpful inputs for robotic systems control. It has a dual H-Bridge motor driver, dual encoder readers, and a 10-bit ADC.
ADC (SPI0): CS=26 DI=19 DO=21 SCK=23
H-Bridge: IN_LOW1=16 IN_LOW2=15 IN_LOW3=13 IN_LOW4=11 PWM_LOW_A=33 PWM_LOW_B=12
Encoder Readers (SPI1): MOSI=38 MISO=35 SCK=40 CS1=36 CS2=37
To enable SP1, go to boot/overlays.txt and add
This enables SPI1 with 2CS pins, and selects GPIO pins 16 and 26 as the CS pins. To enable SPI0, just
go to interfacing and enable SPI
Code for ADC at http://raspberrypi-aa.github.io/session3/spi.html Code for the motor driver and encoder readers can be found below in the robot code section
Analog Sound Board
- The analog sound board, designed by Mauricio de Oliveira with PCB layout by Colin Zyskowski, consists of a preamp
- with AC- or DC-coupled outputs, a signal summer and subtractor, an envelope detector, and a threshold detector. The center of the board contains a patching
- section that allows any stage of the board to be routed to any other. The purpose of the board is to perform analog signal analysis and
- to easily interface with digital micro-controllers.
- Envelope Detector:
- Robot Code
- As of 03/16/16
- The following code is the present state of programming for the sound-detecting robots.
- The code consists of two main parts right now - a server and a client. The robot runs the
- client code that sends information regarding it's position and physical/sonic environment
- to the server. The server then creates a graphic map of that robot's environment. The
- third bit of code is the module for the HMC5883l magnetometer that is being incorporated
- into the odometry system for the robot. So far, everything runs in Python on a Beaglebone Black.