Additional Content/Files

3D Printer Files

All of our 3D files can be found on in our github repository here:

Servo Mounts

Servo mount files that were provided were edited to give the robot some more height. We extended the part and added an extra set of holes to elevate the robot.

servo_mounts

Sensor Holders

We made a line sensor holder to keep all the line sensors at the same height above the ground. This made finding the thresholds between white and black surfaces much easier.

sensor_holders

Printed Circuit Board

To help simplify some of the circuitry, we decided to make a PCB. We were planning on making an Arduino shield; first, we would make one for the microphone circuitry and then we were going to make additional ones for the multiplexer, which was used to connect more analog sensors. The board layout of the first shield is shown below:

pcb_layout

As labeled in the picture, there are 4 elements that were on this board: A - the IR circuit detecter, B - the Microphone its amplfier and filter circuit, C - leds for debugging and D - breakout pins for the sensor schematic.

We were ultimately unable to use this board as when we were soldering the pins to it. Some solder got on some of the copper on the top of the board and shorted out 2 pins and the two traces near it. We attempted to remove it using copper braid and the desoldering pump and even tried cutting the trace, but decided that short of using wires to connect the traces after cutting the shorted sections out, we would not actually be able to ust the PCB.

Threshold Helper Code

Throughout the course of this lab, we encounted the issue that the values of the line sensor would change everytime we upload new code, or change the portable battery. In response, we decided to make a semi-automated threshold value finder code that would take samples of values of the white sensor value, black sensor value, and calculate an intermidiate threshold value for each line sensor.

Below is our threshold helper code:

code