Ariel Ekblaw - HTMAA Portfolio

Circuits with Sensor Inputs

This week, we explore "inputs" for circuits, or sensors that read data from environmental conditions on/in/around the circuit and send results over serial data connection for use in later analysis.

In keeping with the goal of making progress on the final project, I tried to make this week's circuit applicable for the self-assembling buckyball project, modeled and printed below (where each tile will include a cutsom PCB):

Each tile will include surface mount circuitry, enabling an emergent functionality when all tiles have been successfully connected. I began this week's (extensive) design process by selecting a 6DOF acceleromter/magnetometer sensor. In the final design, I would like to measure the linear and angular position data of the tiles, as they tumble in zero gravity in a LEO orbit, the temperature (in both the sun and out-of-sun portions of the orbit), and magnetic field (via magnetometer). This will likely require a 9DOF sensor, that includes both an accelerometer and gyro, but there were no 9DOF sensors stocked in the lab. Both the 6DOF sensor and 9DOF sensor typically come with an extra temperature sensor embedded (per their data sheets), so I will not need a separate temp sensor. I decided to use the LSM303DLHC stocked in Fab Inventory.

Modular Approach

To prepare for flexibility to receive data from other sensors (perhaps the 9DOF sensor, if later ordered), I decided on a modular approach. I designed the sensor on a breakout board that could be replaced by a new breakout board, when I later wish to upgrade the sensor. For the brains of the circuit, or the main "chip board", I selected the ATMEGA 328P, primarily for the number of pins and readily available firmware code from many adafruit/arduino tutorial projects.

Sensor schematic and original sensor board (separated into a breakout board for modularity):

I later realized that my sensor board needed to be flipped differently to properly mate with the header pins on the main chip board, requiring the redesign below. When preparing this file for milling, because the pads on the sensor are so close together, I removed pixels in photoshop until the space between traces was sufficient to match the milling resolution of the modela. Alternatively, you can edit the sensor part in Eagle and save this with narrower pads.

Chip (aka the brains) schematic and board (adapted with my required voltage reg, resonator and header pins for the sensor)

Attempt at milling--first pass tool path for modela (clearly not clean enough). You can see from the image below that certain pads of the 328p chip are blending together, which would short those connections on the board. To fix this problem, I went back into Eagle and found a version of the 328p chip from the Fab library that had narrower pads.

Finally, after several milling attempts and an exploration into even finer bits than 1/64" (which I later realized were not necessary), I was able to get a cleanly milled chip and sensor board, with distinct traces for the delicate ATMEGA328P chip legs and the LSM303DLHC sensor pads.

Notes on circuit design considerations

Progress on this board continues in week 10, "Outputs" and is also documented on my final project tracking page. Because I am already working on my final board design, I did not complete the full board in a single week, but am rather adding progress week over week. Therefore, the sensor output as well as LED output is documented in the following circuit week. .