Tapped In
How you interact with someone can set the tone for the entire encounter
Fusion has a client with a brand new system for beer, where the unique pouring style and tap itself creates a better end-product. This is not an easy sentiment to convey — doubly so since consumers can’t legally pour beer at an event or bar. Tasked with trying get customers to understand this, we found a way around the “can’t let them pour” rule — virtually.
No, not virtual or even augmented reality — though we’ve done that too. We decided to make a beer pouring game on a table that sat in front of a beer tap — identical to our client’s in every way except our internal modifications. Pulling that tap handle here didn’t pour beer — it controlled the tablet, which showed the virtual beer being poured.
So how did we do it? Like any good nerd, I took the thing apart. I took my caliper and started measuring, drawing everything I could into a free CAD program, Fusion360 by Autodesk. The CAD program allowed me to understand the spaces within the tap I had to work with, and how the whole system worked together.
From Real to Virtual
I knew that I needed to detect the movement of the faucet shaft (3). A plan emerged — use our 3D printer to create a duplicate of the shaft (and maybe another piece or two), and mount electronics inside the valve to detect its movement.
Detecting a linear movement like that narrowed my sensor choices down to sensors called potentiometers. A potentiometer is a variable resistor — a potentiometer in turn changes its resistance when a lever or wheel is moved (some can even be squeezed for different voltages). I can measure this change in resistance by measure the voltage across the resistor, and thus know its position.
In the first design I thought about doing a lever turning the wheel of a thumbwheel potentiometer. They’re the little dials that used to be in stereos for volume control a decade or two ago. I drew up our purchased potentiometer and tried fitting it into the valve with a small crank that would turn the wheel. The design didn’t work out though — most thumbwheels didn’t have room inside the valve to operate, and the tiniest thumbwheels were below the resolution of what our 3D printer could print and work with.
With the thumbwheel out, we looked at a linear potentiometer. It didn’t require the “headroom” of the thumbwheel. I drew up the potentiometer in the CAD program to plan out the next step of the design process.
I wanted the potentiometer to be attached to the faucet shaft, but the original metal one didn’t have a way to easily connect the potentiometer to it, nor did it provide enough room. I went through about twenty or so iterations on the original faucet shaft model to modify it until I could reliably connect the potentiometer to it.
…And Back to Real Again
It took at least twenty variations — likely many more — of designing, measuring, printing, and testing fit to see how it worked. Eventually I settled on a design which had extra room for a brass nut. I selected the infinitesimally small nut by finding the threading of the potentiometer’s shaft by reading its datasheet. I would push the nut into the 3D printed faucet shaft with our soldering iron on a low setting, melting the plastic around the soldering iron and securing it into the print. The potentiometer could then easily screw right in and stay connected.
Next I had to ensure that the potentiometer’s base (the blue boxy part) could float secure in the valve, only allowing its faucet shaft-connected arm to move. I called this part the “casing”.
The casing’s job was to keep the potentiometer secure in both the X and Y planes as the innards of the tap would move, pushing on the potentiometer’s bar. I iterated over a few casing designs, hoping to create a click-together version, but ultimately the sizing was too small. Our printer’s resolution couldn’t reliably produce a the mechanisms at that size. A solid casing was chosen.
After dozens of designs, prints, and attempts (about a week’s worth of work) we had a system that fit securely into the tap. Our demo software worked and we showed we could control a virtual beer pour on a web page with out tap.
The software was a simple node server utilizing node-serialport to listen to an Arduino constantly sending via its UART the current read value of the potentiometer. Later models would utilize just a straight Atmega168 to shrink both size and final costs. Those values are broadcasted to a web page where some Javascript smooths out the values a nd controls the beer pour. Unfortunately, we can’t show the software here due to branding.
Unfortunately, when you’re prototyping things that people aren’t quite sure can be done, sometimes the end result is all your prototyping is for naught. This is one of those cases — the project was killed before it began. It still stands as an excellent example of the power of 3D printing iterative prototyping.