Cheers!
Contents
Overview
Have you ever felt frustrated that soda always rises higher than you expect and spills all over your table? We are here to help. 'Cheers' is a automated soda pouring machine that takes a bottled soda and pours it into glassware without spilling the fizz. It utilizes 3D printing techniques for constructing the mechanical framework and an Arduino to control the system. 'Cheers' tilts your soda bottle and glass to an angle towards each other to minimize the fizzing and the tilting mechanism stops after the soda height reaches your desired level and voila, Cheers!
Team Members
- Jessie Shi (Tianjiao): Chemical Engineering, System Engineering ’18
- Haixiang Ren: System Engineering ’18
- Natalie Ng: TA
Objectives
- Replicate the project found on youtube but replace the beer bottle with a soda glass bottle and appropriately sized glassware. There will also be no bottle rotating mechanism. The control for the tilting mechanism will be changed to a pulley rope system outlined in Figure 1. The glassware will be kept on the table instead of swinging.
- Print a sturdy mechanical frame and a stable soda and bottle holder so that they do not misalign while pouring.
- System should be able to handle different size and height of glassware with few restrictions.
- Soda should be poured into glassware smoothly and without spilling.
- Create an algorithm which lets the measures the distance of the liquid in glassware and adjust the speed of servo motor accordingly.
- If possible, conduct the same experiment, but change the Mexican glass soda bottle to a generic soda can or plastic soda bottle.
Steps required to complete project
- Soda bottle should be able to maintain 3 positions. The latter two angles will be determined through experimentation. Position 2 will be when the first drop of soda occurs and position 3 is when all the soda in the bottle can be poured out.
- There will be one pouring mechanism. The bottle should go fast from position 1 to position 2 and slowly from position 2 to position 3 (This is when soda is pouring out from the bottle).
- Distance sensor will be used to estimate the amount of liquid in the glassware and thus control the tilting mechanism.
- Start of the program is initiated by pressing a toggle switch.
- All electronics (Arduino, motor and toggle switch) will be held on top of the mechanical system by constructing a wooden stage.
- The four pulley system cuts the torque needed from the motor to 1/4 its original value.
- Fishing line with 65 lbs limit will be used to prevent the rope from breaking.
- All the soda from the bottle should be poured into the glassware, which would fill it 3 cm to the tip.
- The demo will include a demonstration of pouring soda using the completely assembled model.
- If time permits, we will try to modify the same mechanism for a soda can or plastic soda bottle to increase the utility of the product.
Challenges
- 3D printing
- Learn Solidworks.
- Design specific dimensions of soda bottle, glassware holder etc. (For large parts, we will have to split into two as each print has a maximum dimensions of 8 inches)
- Design base to hold the motor in place.
- Build models using Solidworks and 3D print them.
- Arduino
- Learn Arduino programming language.
- Implementing the Arduino code with distance sensor and servo motor and toggle switch.
- Debugging code and adjusting parameters to control the tilting mechanism.
- Hardware
- Servo motor should keep control system stable during tilting mechanism and not go too fast/slow
- Design a circuit that connects the servo motor, push button and weight sensor to the Arduino.
- Find the various servo motor rotation speeds outlined in the objectives section by conducting experiments (use tap water instead of soda).
- Determine the rpm value on the servo motor as it pulls the fishing line, controlling the tilt angle.
- The soda bottle should be able to tilt at an angle more than 90 degrees (position 3) from its original position.
- Safety
- Electricity hazard when circuit interacts with liquid: elevate the electronic circuit above the mechanical system level to mitigate the risk of wetting the electronics.
- Rope might break: use appropriately weight-rated fishing line.
Budget
- Continuous Rotation Servo Motor x 2: $36 (+$5.50 shipping)
- Toggle switch: $1.95 (+$5.72 shipping)
- Solder bread board: $1.49
- Double pulley (12-pack): $21.98
- AC/DC Switch Power Supply: $6.29
- Maple Board x10 feet:$14.00
- Medium Density Fiber Board=:$5.95
- Poplar board x2: $2.90
- U-bolt x 2= $5.16
- Clear Plastic Cups, 80 Ct: $2.63
- Coca-Cola Mexican Glass Bottle, 355 mL x 6: $5.98 (purchase in Walmart store)
- Mountain Dew Mexican Bottle (12 oz) x 4:$4.49 (purchase in Walmart store)
- Fitzs Fitz's 4 Pack Soda:$4.57(purchase in Schnucks store)
- Lifting platform:$14.49
- Ultrasonic Distance Sensor: provided
- Arduino UNO board: provided
- 3D printing: provided
- Nut and bolts: provided
- Power Pro Fishing Braided line – 65 lbs limit: owned
- Magnet Screw Driver tool kit: owned
- Extension Cord - owned
- Glassware: owned
- Dremel rotary tool: owned
- Super glue: owned
- Double Coated tape: owned
Total: $132.63
Gantt Chart
Design and Solutions
System Framework
In order to monitor the liquid + fizz height in glassware, it is reasonable for us to implement either a distance sensor or a liquid level sensor. The latter could require us to put the sensor directly into the liquid so we eliminated the possibility as most users would not wish to drink soda that was dipped by a sensor.
Our initial design of the system includes the both the bottle and the glassware tilting towards each other for the pour. However, it is very hard to add the distance sensor into the system as the glassware will tilt and the possibility of liquid getting into the sensor in case of an emergency should be minimized. We then switched to the latter design of the project in which we kept the glassware stationary and only tilt the bottle. The pulley system was added so that it can reduce the required torque on the motor to 1/4.
add pics to represent the evolution of design.
The wooden frame was designed so that the electric system is elevated above the mechanical system to minimize chances of electric shock when liquid gets on the electronics.
Electrical System
Mexican Bottle and Glassware
We wish that our system was able to accommodate different kinds of 355 mL (12oz) Mexican bottle as they differ in height, girth, and curvature across various soda brands. In order to do so, we decided to drill 5 sets of holes on the bottle holder for the U-bolts so that we can choose the most appropriate ones to use for each brand.
add 2 picture of SW bottle holder and 1 picture of the real printed part.
The system would be nearly useless if we have to use the same glassware for each trial, so we decided to implement an elevating system using lifting platform to accommodate various glassware heights. By conducting various experiments, we found the limitation on height of glassware to be 7cm - 17cm. In order to make the code more versatile, the user have to manually adjust the height of glassware to align with the height of two posts before starting the program. The standardization height was chosen for convenience because it would be absurd if the user had to use a ruler and measure the height before each trial. A restriction on the diameter of the tip of the glassware was determined empirically to be 7cm as it must have enough room to fit both the ultrasonic distance sensor and the Mexican bottle neck. In addition, the system was also able to be poured into plastic party cups as long as it meets the same requirements.
add 3+1 picture of lifting platform with different height of glassware adjusted to the same height.
Results and Next Steps
Our project was very successful in which we successfuly
Future Considerations
- We can try to accommodating various kinds of bottles on the system, including 500mL plastic soda bottle and soda cans. The reason that we chose to start the project with mexican glass bottle was that it has a very narrow neck which decrease its chance of interfering with the ultrasonic sensor during the pour. We attempted to use this same program on the 500mL coca cola plastic bottle and it was able to work just like the mexican bottle, but time was not enough to complete more experiments.
- Our system require the user to manually adjust the height of glassware using the lifting platform so that the tip of the glassware aligns with the height of the two posts. It would be nice if our system can do that itself. We can 3D print parts that fit a motor well on the knob of the lifting platform and add a laser sensor that detects interference on the highest point of the two posts. We can use the laser as sensor to control how the motor turns, which then will be able to control the height of the lifting platform and thus the height of the glassware.
Repositories
Code
https://bitbucket.org/jessieshi97/cheers/