Powering Solenoid Valves Using Arduino


I am in the process of building an oxygen concentrator and was looking to use 12V solenoid valves (6 of them) programmed through an Arduino microcontroller to open and close them at specific time intervals. Pressurized air would help this process. I have zero experience with such devices. But, it was recommended to me that I purchase a:

MOSFET Power Control Kit 12V/5V Power Supply (2A) 4 Pin Molex Connector

I would write the code in Arduino then transfer it to the microcontroller through USB connection. The current would go from microcontroller to relay to solenoid valve, as I understand it. Are there any specific types of solenoid valves recommended for use with arduinos? Also, what microcontroller would be most recommended for my purposes? As I understand Arduino code is opensource, has a code for time controlled solenoid valves already been written?

Thank you very much.

Controlling solenoids is essentially the same as controlling relays, there is no need to use a relay as an intermediary. You clearly need a relay/ solenoid driver module, possibly using FETs, to do so. The TPIC6B595 would be ideal for solenoids requiring no more than 150 mA each, you would need two of them, so you need firstly to determine what solenoids are available and what their specifications are (in this case, coil resistance 100 ohms or greater).

You will need a 12v regulated power supply; such are available relatively cheaply as self-contained "plug packs" or "bricks" with output leads if you want no more than 2 amps or so. A switchmode regulator module can then power the Arduino. If I tell you you will want an Arduino Nano or Pro Mini for the final design, someone will tell you you should use a UNO for prototyping - no harm in having both.

You might find a similar project already, but it should be quite easy to develop the code. You should start by practicing exercises on an Arduino of some sort controlling LEDs in sequence, while also building your solenoid system. If you start doing that and come back with your progress, you will get further advice on the coding.

My recommendation for prototyping would be a Nano mounted on an "MB102" breadboard - one with continuous rather than broken red and blue lines on the "bus" rails.