Hello, I'm trying to control a proportional solenoid valve to control air flow using an Arduino. I was intending to use a ULN2803 controlled by a PWM output to operate the valve, but I can't get the valve to open at all. It's this valve here: McMaster-Carr
I tried hooking it to a 5v 4A power supply, and also my benchtop power supply at 10v, but nothing. No current drawn, can't blow air through it.
Does it need to be driven with PWM, or should hooking up a continuous power source, as I have done, open the valve? I have tried two different valves and also reversed the wires, but I don't think it is polarized so I'm at a loss. Is there something else simple I'm missing here?
That makes sense, it is a 12V solenoid. With the ULN2803 I would be surprised if you get more then 8.4 volts on the coil. Go to the proper power supply. Take a look at using a MOSFET lowside driver, that should work great if it is properly driven. The Input Signal Voltage 0V DC-10V DC, not PWM. The specs are confusing for a 2 wire device. I would suggest you contact the manufacturer for some application data.
This solution can not prevent the valve from sticking in some place preventing proper positioning or causing oscillating regulators. That's why most valve manufacturers suggest a low PWM frequency range to overcome valve friction.
It does not refer to any PWM frequency or duty cycle.
The "duty cycle" referred to is its working cycle, in other words it can be used/controlled continuously, it does not required cool down or rest periods.
The relevant bit is the "Input Signal Voltage" == 0V to 10Vdc.
It is an analog voltage input.
Your Arduino probably has PWM output but no analog voltage level.
You can make a RC low pass filter to "convert" the PWM to a variable DC level, but with a current consumption of 158mA you will need a buffer amplifier.