Future Plans
After the first box was created, its success spawned interest into future boxes.
Changes to the Original Design
Divider Panel Removed
The first food box had a divider in the lower compartments, primarily for weight support. However, after building and testing with fifty cans, the support was not needed. Removing the divider reduces amount of wood needed, reduces weight, gives space in the back for electronics, and opens up space for larger items in the bottom compartment while improving the aesthetic of the box. The second box built without the divider has the same amount of strength and rigidity in the can rows.
New Circuit Design
In the first box, three circuit boards were required to receive sensor inputs. However, this took up a lot of physical space under the electronics cover and had many points of failure and took too long to build. With more planning, the amount of circuit boards was reduced to only one board for all ten sensors. This helped save space within the box and simplify the electronics, while shortening the build process.
Modular Wiring/Placement
Originally, all of the wires connecting the sensors and electronics were permanently soldered. While this made it stronger, it took a long time to build and issues were hard to fix. Instead, the new box uses a new type of wiring. Using special wires, sensors can how be plugged in and unplugged quickly. Extensions were used for the sensors far away from the circuit board and the wires also plug in directly into the circuit board. This change in wires allow problems to be easily fixed and can be assembled in minutes. Lastly, the computer within the box is plugged into the circuit board rather than soldered so it can be easily replaced.
Modified Code
Using the new circuit design, new programming options opened up. The first box required over 20 lines of code for each sensor just to get a single distance measurement. Sending a sensor signal, reading when a signal bounces back and reaches the sensor, and calculating the distance using these timings had to be done manually. Instead, the new wiring allows new functions to be performed. A distance can be figured out by just typing 'ultrasonic.distance' while doing the same function as the first version. This helps increase reliability and reduces troubleshooting.