Need some direction on a project

Hello… New to the Arduino world, and could use a point in the right direction by someone here…

What I need to accomplish


I have a client that runs a small liquid fertilizer business. I built him a bottle filling station using a momentary pushbutton and a solenoid (all 12vdc), and it has worked quite well. However, he would like to upgrade to an auto-filler, that measures the output, and will stop at a predetermined volume (8,16,32oz)

Because of 2 filling stations attached to the pump, flow is variable, so a timed measure is not possible. (tried it)

What I have


I bought an Uno R3, a 4char 7 seg display shield, a 10k pot, and a 5v relay from sparkfun. Found out the hard way the display doesnt come with headers, had to order them after the fact. Bought a hall effect flow switch from fleabay that will measure actual liquid flow, which will provide feedback to the Uno.

I am a plumber by trade, but I used to repair computers prior, and am not afraid to solder stuff, investigate/etc…

I am doing the hardware only on this project, a friend is doing all the coding once I get the wiring set.

So, I need someone to steer me in the right direction with a rough schematic/etc. I am not afraid to pay for proper support.

Thanks in advance

Jerry

Pittsburgh PA

Edit----

Just to clarify- i need help with where to terminate my wiring on the Uno itself, I can handle the rest. Thanks.

We will need links to the data for the shield to know what pins it uses. Also info on the 5v relay to know if it needs a driver or not. And info on the Hall effect flow meter (?switch?), I can guess at it’s output but I’d rather not.

Can I assume the pot is to dial up the volume of liquid to be dispensed ? That this variable amount is preferable to 3 buttons/switches for the 8, 16, 32 ozs you mentioned ? How is the Uno to be powered ? You mentioned 2 filling stations, the above sounds like enough to do 1.

Thanks for the reply.

The shield is here

https://www.sparkfun.com/products/11849

Relay

https://www.sparkfun.com/products/100

Unfortunately I dont have any specs on the hall effect switch, other than it sends a pulse signal of whatever input voltage is used.

The pot would be used like a rotary encoder, to set the “volume” or amount of pulses from the hall effect, which would be displayed from 0-10k on the led display.

Yes this is for 1 filling station, i’m going to duplicate the hardware for the 2nd station once the 1st is up and running

I run the whole system (pumps, solenoids, etc) on a 12v, 30a power supply now, which will also power the ard via the coax power input

Tnx

-jerry

Hi Jerry:

Swap out the Arduino and swap in a PC and I had the same thing running last summer to fill bottles of mineral oil. I just got a Beaglebone to use instead of a PC (there are some things I want to do with it that an Arduino can’t handle), but haven’t gotten back to the project yet. I want to package up the entire thing in to a single unit since I have some ideas where it can be used.

If you want any specific help, or just to bounce ideas off me, send me a PM. I’d really like to talk with you.

Looking at the relay data it appears that it’s not wise to drive that relay’s coil directly from a digital output pin of any Arduino. It needs a “driver” (of some sort). Was it your intention to have the Arduino directly activate the 5V relay and then use that relay to activate the 12V solenoid that presently turns on/off the pump ? Was the momentary switch used to activate the solenoid going to be re-used to tell the Arduino to turn on the pump (turn off to be automated, hopefully with some manual turn off as well) ?

If so then perhaps it would be simpler to come up with a “driver” for the 12V solenoid instead, skipping the relay. Or 2 such “drivers”, as you’ll end up w/two filling stations. A “driver” in this case might be nothing more than a transistor, resistor and diode or, if you prefer, a single IC to do both solenoids. Do you have any coil data for the 12V solenoid, such as current draw or resistance ?

Mee_n_Mac: Sorry I wasnt more specific, yes the momentary switch would be the call to activate the cycle, and the relay would be switching the 12v current to the solenoid. Solenoid is 1a max at 12vdc. If i need to use a driver/etc, dont care. Whatever gets the job done. I bought the smallest relay i could find for the minimum coil draw

Lyndon: I still have a new acct here, so I dont think it will let me initiate a new PM, feel free to send me one tho.

My day job is kickin my a**, so I gota reach out to fellow geeks for a hand, otherwise I’d figure this out on my own. Too much work, too little time

Thanks

-jerry

How about measuring the weight to determine if the bottle is full? If the 3 containers are different sizes, you could use microswitches to read the bottle diameter (or height) to tell the Arduino which size bottle is on the filler.

Dave Mueller:
How about measuring the weight to determine if the bottle is full? If the 3 containers are different sizes, you could use microswitches to read the bottle diameter (or height) to tell the Arduino which size bottle is on the filler.

We thought of that, but with calibrations, and general wear/tear with use, not to mention different bottle types (plastic and metal), that method would be problematic.

thanks tho

-j

Mee_n_Mac:
Looking at the relay data it appears that it’s not wise to drive that relay’s coil directly from a digital output pin of any Arduino.

Measured the resistance on the relay’s coil, got 57ohms for approx 82ma at 5vdc… Not good…

Wonder if I can bridge 2 digital outputs for double the amperage? prolly not.

Hmm either a transistor or a lower draw relay

edit–

ok some browsing on mouser got me a 20.8ma relay at 5v with a 3a contact… not bad at 3$… leads are a little small but pigtails are ok

http://www.mouser.com/ProductDetail/Omr … jJRht3Q%3d

-j

The pins are still only rated for 40ma. You can use a common transistor…

Another question if I may before I propose a potential solution …

Are you using just one Arduino and display per filling station ? It would seem a waste to do so but making the display “work” when both are in simultaneous use is … less than user friendly. Since you opted for a shield for a display, vs a non-shield form factor, it leans to towards a duplicate of your setup, but you could save some $$s doing otherwise.

A single Arduino can certainly do both simultaneous tasks. Measuring the flowed volume of 2 channels and controlling 2 (?) pumps ? Will you have 2 pumps controlled by 2 solenoids or 1 pump and 2 valves ?

I’m a stickler for getting the details as ironed out as possible before designing things.

Im actually much closer to a working project now, I have my hardware 80% ironed out, passed on my inputs/outputs config to the software guy, he's gonna get back to me when he feels he has a working piece of code, and Im gonna wire the whole thing up and hope for no magic smoke… heh

Pumps are self-controlled by pressure. They have an internal pressure switch that shuts them down at 55psi. Only i/o used are momentary switch for cycle start, 5v output to relay to control solenoid, and 5v input from hall effect… And a 10k pot to control setpoint, tho I may change that to an encoder

I am contemplating using 1 arduino for everything, I def have enough i/o slots for it… Would have to put an a/b switch in to control which station is adjusting the fill cycle variable. Not impossible tho. I just want to get one station working, then we can take the next step from there, with v2.0 heh

thanks

-j