I started this project so that I could easily dispense a preset amount of water into my brew kettle when brewing beer.  My local brew club has a brew house and currently has hoses attached to the water filtration system.  Instead of waiting to fill up jugs of water this device will allow me to set 6.5 gallons, turn on the water and it will automatically shut off at the preset volume of water.  This lets me get started on other things while the water is dispensing and assures an accurate water level.

Parts include:

Arduino Uno $25 but will be replaced with a $3 ATMega Chip Later
YF-S201 Water Flow Meter $11
LCD Display Panel $5
ECHOTech Solenoid Valve $9

WP_20130310_001

The flow meter is hooked up to the Arduino and there is a basic program uploaded that displays the flow rate and total volume of water that has passed through the flow meter.

Below is a video of the flow meter working.  I had to tweak the program to take measurements every 1/8th of a second.

The flow meter in action.

TODO: Wait for solenoid to arrive.
TODO: Code the reset button, Volume Up and Volume Down buttons.
TODO: Hardwire circuit to breadboard for compact mounting.
TODO: Mount in project box (waterproof).

This version of the board looks a little better.  Wired the ground and +5v on the back (and one data line) to reduce the number of line crossings.  There are still two but far better than the first layout.  It follows the same schematic from the original post.  I also added a 470 Ohm variable resistor between the backlight (Pin 15 of the 16 pin header) and the +5v.  (My Dremel skills need reevaluation.)

WP_20130203_003

WP_20130203_004

Here is a video link of the backpack operating.

The completed project with a glimpse at the breadboard prototype version.

This is not the first serial backpack for Arduino and it wont be the last.  I wanted to build one of these because I did not want to pay $16.95 plus shipping for something that could be built for $1.11.

Here is the parts list:

1 x Small Stripboard $0.66
http://www.taydaelectronics.com/small-stripboard-94x53mm-copper.html
1 x 74HC595 8 bit shift register $0.20
http://www.taydaelectronics.com/74hc595-8-bit-shift-register-ic.html
1 x 10pf Ceramic Disc Capacitor $0.01
http://www.taydaelectronics.com/capacitors/ceramic-disc-capacitors/10-x-10pf-50v-ceramic-disc-capacitor-pkg-of-10.html
1 X 40 Pin Pin Header $0.24
http://www.taydaelectronics.com/40-pin-2-54-mm-single-row-female-pin-header.html

The finished product looks like this.  I did a pretty bad job of laying out the wires so there is some overlap.

WP_20130202_003

 

 

 

WP_20130202_006

 

 

 

Here is my feeble attempt at drawing out a schematic.  I used visio so I did not have the luxury of rerouting tools like Eagle has.  Maybe I will try that next.

SerialLCD3Wire2

I used the LiquidCrystal_SR3W.h from here: https://bitbucket.org/fmalpartida/new-liquidcrystal/src/bebe49d613c15933d3c2f41721f707526adc32dc/LiquidCrystal_SR3W.h?at=default

I wound up with this Arduino sketch to do a simple hello world app that outputs the current millisecond and animates an X across the second row of the LCD.  It’s pretty basic but I can now use this in my projects that need to provide the user with a display.

I got the schematic from this link: http://www.electronics-lab.com/projects/mcu/015/index.html

My previous post has a description and laundry list of parts I used.  I wanted to learn how to use the 74HCT595 shift register chips.  These chips are really cool because you can daisy chain them together and then simply shift bits of data into the DS serial input.  The data will write out across all the chips in the chain and you only need three digital IO ports for any number of 595’s in the chain.  You just write out 8 bits of data for each chip.  So if there are 4 595’s chained together you write out 32 bits of data. 

The 595’s operate 8 active low output ports which means they are LOW when there is a (0) bit shifted in to the corresponding pin’s register and HIGH (Vcc) when there is a (1).  So 2 chips let me turn on the positive columns of the cube.

The MC74HC138A I used let me turn on and off the connectivity to the negative voltage.  I only needed 4 of the 8 pins because I only have 4 horizontal rows of cathodes to switch.

The code attached to this only runs a test pattern that appears to turn on all the LED’s in a layer and cycles to the next layer.  I did this to catch some solder points that came undone.  Next I am going to work on building some animations for the cube like rain, sinking letters, bouncing ball…etc.

Here is my parts list with prices:

2 X 74HC595 Shift Registers @ $0.20 each
64 X Blue 5mm LED’s @ $0.038 each
16 X 470 Ohm resisters @ $0.01 each
1 X MC74HC138A @ $0.29

So that was $0.88 in parts if you don’t count the $29 Arduino.

Previous post:
http://davidsandor.com/blog/post/2012/04/29/Notes-on-4x4x4-Arduino-LED-Cube.aspx

Arduino Code