Which Arduino to control 6 solenoid valves and possibly a pump


I'm new to Arduino. Haven't done any work with one yet, so I figured I would learn by trying to set it up for an application I'm working on. I currently have a manual system and would like to provide some automation with an Arduino.

I need to control 6 solenoid valves (24 V DC). Two of them already have controller boards that allow a pulse and hold operation (Sends a relatively large pulse to the solenoid to energize, then keeps it energized at a much lower current). At any one time, each of the six valves will be open or closed depending on the process conditions. At the push of a button I would like the Arduino to open or close certain valves. There are about 5 different open/closed valve combinations. In order to keep the power requirements down, I plan on doing a short lag between each of the valve being energized (~50 milliseconds) so they won't be turned on at exactly the same time. Four of the valves require 0.16 amps, two of them require 0.33 amps to open, and with the controller, much less to remain open).

In the future I'd like to be able to have the Arduino turn the pump on or off as well as change direction. Also, I'd like to eventually hook up a pressure sensor that would feed back to the Arduino so it could select the right valve combination based on the pressure reading. This would be opposed to to the operator pushing a button.

I have a good idea of what to use for power supplies and relay modules.

I have the feeling that an Arduino could do this but I'm not sure. Plus if it can do it, which one should I use?

An Uno would be fine for this; it's a good board for basic projects.

To control the six solenoids and motor you would need an eight relay board. Six of the relays would be used for the solenoids and two for the motor. Here's a tutorial on using relay boards. There's also a picture that demonstrates how to connect the motor to two SPDT relays for bidirectional control (but no speed control!).

Freescale has a nice range of pressure sensors which you can find for sale at Digikey/Mouser/Newark. Which one you need depends on your pressure range.

From the top of my head I’d advise using the L293D in its quality of quadruple h-bridge driver (assuming those solenoids are of the latching type).
Coupled with a 74HC595, for extending the arduino’s outputs it should work like a charm :wink:
As for the “arduino” in itself… any UNO (Atmega 328) will do :wink:

Thanks for the replies.

Regarding whether solenoids are latched. I don't think they are since they need current whenever energized. e.g., if a normally open valve is open, current is supplied to it the whole time. So I'm guessing they are not of the latching type.

Also, I just read a little bit about relay shields. If I need 8 relays, could I stack two of these shield?


Each shield has 4 relays and they look like they can be stacked.

You would not be able to control the relays separately with two of those shields stacked. For example, pin 4 would cause relay #4 on both shields to energize at the same time.