Alexandre Gravelle, Trevor St-Jean,
Jean Sébastien Loiselle, Department of Mechanical Engineering,
University of Ottawa
Objective: To
create an automated
beer pouring machine that can:
Pour
beer from a bottle to a glass with limited foam
Remove
cap from bottle
And
prevent spills caused by beer over flow
Materials:
Arduino Duemilanove
Electrical wires
Wood
Screws
Metal plates
String
Light sensor
3 hacked servo motors
1 finger clamp
6 resistors (2.7kΩ)
Project
development:
In order for our system to pour
beer into a glass, we decided to use a swing set type
arrangement. The image below demonstrates our first step in
building our structure.
To effectively hold the bottle,
we needed a simple mechanism that could accommodate multiple
types of bottles. The mechanism itself is shown in the image
below. Also we added supports on each side to be able to produce
the swinging motion required.
We installed a horizontal piece
of wood with an opening and a strap to have the glass in the
right position for our system to properly function. The reason
for this piece of wood is to always have the top of the glass at
the same position regardless of its geometry, the opening itself
simply permits the beer from entering the glass. The strap was
installed to ensure that the glass was in position to prevent
spills during operation.
We used
a3 finger clamp as seen below to hold
different types of glasses regardless of their geometry.
When we first ordered our servo motors,
we didn’t realise that servo motors could only do 180 degrees in
general. Hence this was a very large problem for our system
since these motors have very limited torque. As a solution to
our limitations in torque we decided to hack our motors for
continuous rotation and use pulley systems as shown below.
Since our project consists of
several sequential procedures, we decided to use an arduino
duemilanove so that we could synchronize our system.
As
mentioned earlier, it was required that our servo motors be
hacked to have continuous rotation.Here is how to do so:
After having hacked a servo
motor, we come across several problems. For one, hacked servo
motors cannot be processed using angles and secondly they cannot
recognize their current position since the potentiometer has
been removed. Hacked servo motors can only be controlled by
speed and direction of rotation. In order to properly use these
motors, we need to find the proper stop angles, or more
precisely ‘stop signal’ for each motor. To do so, we created a
small program to help us find it as seen below.
Stop signals are usually found around 90 however trial and error
is required since not all resistors are perfect.