Name | NetID | Section |
---|---|---|
Evan Schmitz | evanls3 | ECE 120 |
Statement of Purpose
For the past couple of years, one thing that I have always wanted to reverse engineer was a vending machine. Vending machines always stood out to me because although they are relatively simple, there are still many components that must work together to make it seamlessly work as a whole. There are inputs, outputs, and logic that all go into it to automate an otherwise easy task. In the end, I think I will learn a lot about the automation of simple, possibly repetitive tasks, such as selling a small item. While vending machines are already commonplace and do not require any improvements, the idea of automation can be transferred to larger, more important tasks, such as any of the applications of the Internet of Things.
Background Research
As far as background research goes, I have spent the last several days researching how vending machines do what they do. Most functions are simple to understand, such as using a pushbutton to input a food/drink choice or turning a motor to release that food/drink. Sorting the coins and the logic behind the amount of money given and returned is where vending machines get a little more interesting, though. I now have a good understanding of the functions of a vending machine, and feel confident in my ability to recreate it through sensors, outputs, and Arduino logic. Another project I considered was using a glove to move a robotic hand. Ultimately, this project required a lot more physical design and I feel the printing of a moveable robotic hand would be too much of an obstacle.
Block Diagram / Flow Chart / System Overview:
Software/actions:
First, the system will wait for a coin to be put into the machine. The coin will be mechanically sorted and then counted by an infrared led/sensor beam. The Arduino will add the coin to a variable named credit. When the user finishes putting in coins, he or she will make a selection. If the user chooses an item that is more expensive than the credit, the machine will display the price of the item, just like a real vending machine. If credit is greater than the cost, the machine will release the product and return any change due to the user. Another action not included in the flowchart may include a change button that will release change at any given time.
Hardware (simple):
Ultimately, everything will be controlled by an Arduino Uno. It will be powered by a 6V battery pack. Inputs will include infrared sensors and push buttons. Outputs will include infrared lights, servo motors, and a three-character seven-segment display.
Parts
Item | Quantity | Model Number | Purpose | Vendor | Total Price |
Arduino Uno | 1 | R3 SMD Edition | Logic, control | Honors Lab Inventory | $18.66 |
Breadboard | 1 | Half size | Easy wiring prototype | Honors Lab Inventory | $0.00 |
Infrared sensors | 4 | Detect coins | Adafruit | $2.95 | |
3-digit 7-seg display | 1 | 6A | Display price/credit | Honors Lab Inventory | $0.00? |
Push Buttons | 8 | E-SWITCH TL1105AF100Q MOMENTARY PC | Choose product/change button | ECE Supply Center | $1.12 |
Servo Motors | 4 | HS-311 | Release change | ECE Supply Center | $55.44 |
Quad AA Battery Holder | 1 | BH-341 | Power Arduino | ECE Supply Center | $2.19 |
AA Batteries | 4 | EN91 | Power Arduino | ECE Supply Center | $1.88 |
Acrylic Sheets | 3 | Sorting, releasing coins | Already have | ||
Filament | 1 | https://www.digikey.com/en/products/detail/lulzbot/RM-PL0376/16186672 | Printing coin sorter | Digikey | $22.99 |
Total: $105.23
I'd also like to note that this is a very open-ended project, and that is part of the reason I picked it. As the semester continues and I make progress, I may order additional materials if I'd like to make the project more advanced. For example, I may work towards physical appearance and practical function, where I might need parts like motors to release the product, etc. Of course, I will be sure to stay below budget as I add these materials.
Possible Challenges
I predict the biggest challenges for this project simply involve the design. For example, I have minimal experience with CAD and 3D printing, and this will be the biggest component in the coin sorter itself. I have started designing this piece already, but it will definitely take more time and research. Another challenge will be coding the seven segment display, as I don’t have much experience with that either. As always, eliminating inconsistencies will be critical to making sure the machine works smoothly.
References
None used so far.