Question about proportional valve

Thread Starter

enoob

Joined Jan 6, 2017
22
Hi guys,

Sorry I was MIA. I managed to get a power supply from a friend which is rated 24 V 6.3 A.
Does this mean that if I connect the positive and negative terminals with just a piece of wire, the current through it will be 6.3 A?
If so, I was wondering if it will work for the circuit diagram posted by bertz since I will need to a add a huge resistor to reduce the current from 6.3 A down to 93 mA which in turn would drastically reduce the voltage drop across the valve.

Does this affect valve operation or should I just focus on the current seen by the valve?

Thanks for any inputs!
 

bertz

Joined Nov 11, 2013
327
Proportional Valve Control.jpg View attachment 120740
Hi guys,

Sorry I was MIA. I managed to get a power supply from a friend which is rated 24 V 6.3 A.
Does this mean that if I connect the positive and negative terminals with just a piece of wire, the current through it will be 6.3 A?
If so, I was wondering if it will work for the circuit diagram posted by bertz since I will need to a add a huge resistor to reduce the current from 6.3 A down to 93 mA which in turn would drastically reduce the voltage drop across the valve.

Does this affect valve operation or should I just focus on the current seen by the valve?

Thanks for any inputs!
No, you don't need a huge resistor. Take some time to brush up on Ohm's Law. Here is the circuit you need. Build it on a breadboard and test it.
The resistance of the solenoid is 215 ohms. The resistance of R3 is 47 ohms. Total resistance of the C-E circuit is 262 ohms (ignore drop across transistor junction. Now we apply 24 volts to the circuit. The voltage drop across the solenoid is 215/267 x 24 = 19.7 volts.
Current through the circuit is then I = V/R = 19.7/215 = .092 amps.
Voltage drop across R3= 47/262 x 24 = 4.3V
Current through the resistor is 4.3/47 = .092 amps. See we just proved that the current is the same throughout in a series circuit.
Power dissipated by R3 = 4.3 x .092 = .396 watts Use a 1 watt resistor.
The sketch is pretty simple using the digitalRead and digitalWrite functions.
 
Last edited:

LesJones

Joined Jan 8, 2017
4,511
6.3 amps is the maximum output the power supply can provide. The current is ACTUALLY supplies is governed by the load you put on it. If a 1K ohm resistor was connected across its output it would be supplying 24 mA. The LOWEST resistance you could connect across it's output would be 24/6.3 = 3.8 ohms . With bertz's circuit (Post #13) the maximum current that would flow if the transistor was switched on all of the time (100% duty cycle.) would be 24/215 = 112 mA If you wanted to limit this to 93 mA then you would need a total resistance of 24/0.093 = 258 ohms so you need to would add a series resistor of 258 - 215 = 43 ohms. You could connect a potentiometer to one of the analogue inputs of the Arduino and use the output from the ADC to control the duty cycle or the PWM waveform. You would then have made the Aduino behave like a 555 pulse width modulator.
 

Tonyr1084

Joined Sep 24, 2015
9,744
I saw that the valve can run on PWM
Peanut gallery here:

This valve - you said it is PWM compatible. Are you saying that - suppose the valve has a slew rate of 1 second from full closed to full open, if you PWM it at 50% duty cycle that the valve would open only 50%? I'm wondering if you PWM the valve at 50% it would take 2 seconds to go from full closed to full open (or vice versa).

Regarding your question about the 6.5 amp supply: If your supply was capable of delivering a million amps - that doesn't mean your valve would see that much current. The current is dependent upon the resistance of the valve. So if it's 215 ohms at 24 volts then 24/215=111.6 mA. Change the resistance and you change the current. If you dead short your supply it would only push 6.5 amps through the dead short. That's all that means. That's the limit of capabilities of the supply.

I'm still wondering if this valve is what you want. If so - OK. But using a 10 turn pot would afford greater controllability - assuming this valve will open proportionally to the PWM signal. I still think the valve - when commanded to open will do so either rapidly or slowly depending on the PWM, but eventually it would reach full open. Please correct me if I'm wrong.
 

bertz

Joined Nov 11, 2013
327
Peanut gallery here:
I'm still wondering if this valve is what you want. If so - OK. But using a 10 turn pot would afford greater controllability - assuming this valve will open proportionally to the PWM signal. I still think the valve - when commanded to open will do so either rapidly or slowly depending on the PWM, but eventually it would reach full open. Please correct me if I'm wrong.
No, this is a proportional valve, that is, the valve opening is proportional to the current flowing through the coil. Therefore the slew rate doesn't factor into the discussion. The OP introduced the concept of PWM control using an Arduino believing that this would permit precise control over the valve position. See the attached data sheet. By turning the pot you change the PWM duty cycle and the valve will open or close to a given position and stay there until the pot is changed.

The circuit that I proposed is more along the lines of an academic exercise demonstrating Ohm's Law calculations as well as voltage and current concepts. From a practical standpoint, the 47 ohm resistor isn't really necessary as the coil could easily handle 111mA at 100% duty cycle. It will also give the OP an opportunity to develop a sketch to control the valve opening.

And yes, a 10-turn pot will permit finer control of the valve opening than a single turn pot, OR he can use two pots in series - one for coarse and one for fine control. But that as they say is an exercise left to the student.
 

Attachments

Tonyr1084

Joined Sep 24, 2015
9,744
No, this is a proportional valve, that is, the valve opening is proportional to the current flowing through the coil. Therefore the slew rate doesn't factor into the discussion.
OK. I was thinking of industrial valves I've been associated with that operate normally fully open or fully closed, and actuated by a servo motor. Solenoid valves I've known of also operate either open or closed. I guess I should have thought of valves such as an IACV (Idle Air Control Valve) on a car. I believe that is proportionally controlled, now that I think of it.

Just wanted to be sure the OP was using the right terminology for what he had. I'm not saying I thought he was uninformed, I just wanted to be sure we had it right. Now I can say "I have it right too."

Thanks for the clarity.
 

Thread Starter

enoob

Joined Jan 6, 2017
22
Thank you Tonyr1084 and bertz for taking the time to discuss various issues.
I learned a lot through these discussions for which I'm grateful. :)

A good thing is that the 24 V power supply which I got from a friend provides only 20.33 V when measured so it fits right into the valve specifications.
Over the past couple of days, I was testing the circuit with the Arduino and was getting proper voltages across the valve depending upon my PWM duty cycle (100% gave ~20 V while 50% gave ~10 V and so on). These were just dry tests without any air flow involved.

However, when I tried to drive the EXACT same circuit from a different computer, it kept showing that the voltage across the valve was 0 (weird!). Also, I checked if the Arduino was working properly and saw that the voltages coming from it were fine. Even the valve was fine (seeing no voltage made me think if the valve had become a short somehow) and shows the same resistance with the multimeter.

I'm currently trying to identify the problem so I thought I would update the status as of now.
 

Thread Starter

enoob

Joined Jan 6, 2017
22
Well, I was just using the computer to power the Arduino through its USB port and I had bunched the grounds of the Arduino and the negative of the power supply as well. It seems the problem appears only when the 20 V supply is there.

Should I connect another wire (from where the orange wire is connected) physically to the ground? I was assuming that the negative terminal was somehow internally grounded (possible judgemental error) so I just considered the orange wire to be the ground. Also, like I said, this same configuration was working previously.
 

Attachments

MaxHeadRoom

Joined Jul 18, 2013
30,684
Those supplies are isolated SMPS and do not have a reference to EARTH, GND or COMMON.
The PC P.S. common is usually referenced to earth ground.
Max.
 

Thread Starter

enoob

Joined Jan 6, 2017
22
Thanks for the update, MaxHeadRoom.

I measured the voltage between the V+ and V- terminals and it showed 20.33 V.
However, when I measure the voltage between V+ and the GND terminal (of the INPUT side), it shows something close to 0 V!
Does this mean that despite being connected to the ground through the supply mains, this power supply does not have a proper GND terminal so to speak???

Like I mentioned, I bunched the Arduino GND with the V- terminal of the power supply but that gave no voltage across the valve when connected to the second computer (laptop). The first one (a PC) worked in the same configuration.

Am I missing something here?
 

MaxHeadRoom

Joined Jul 18, 2013
30,684
The frame of the P.S. is grounded, there is also some MOV or Cap decoupling devices from both L1 and N to GND.
But the DC output is not referenced to earth ground, as it usually is in a PC. P.S.
It is up to you to do this if you so chose.
If it is only measuring 20v then you need to adjust the trim pot.
Max.
 

bertz

Joined Nov 11, 2013
327
Thanks for the update, MaxHeadRoom.

I measured the voltage between the V+ and V- terminals and it showed 20.33 V.
However, when I measure the voltage between V+ and the GND terminal (of the INPUT side), it shows something close to 0 V!
Does this mean that despite being connected to the ground through the supply mains, this power supply does not have a proper GND terminal so to speak???

Like I mentioned, I bunched the Arduino GND with the V- terminal of the power supply but that gave no voltage across the valve when connected to the second computer (laptop). The first one (a PC) worked in the same configuration.

Am I missing something here?
First, let's get some basics out of the way. I have to assume that you are powering the Arduino from the USB port of your laptop instead of a separate 5V supply. Is this correct? Answer Yes, No or I'm not sure.

Second, forget about the terminal with ground symbol on your power supply. You are only interested in the V+ and V- terminals. For purposes of this discussion, consider the V- terminal to be your ground or common terminal.

You will NEVER read voltage across the valve unless the 2N2222 is conducting, and the 2N2222 will never conduct unless it sees a PWM signal on its base. Are you getting a voltage reading from the base of the 2N2222 to ground?

Is the V- terminal connected to one of the Arduino ground pins?

Are you using a pot to vary the duty cycle or are you changing the sketch every time you want to change the duty cycle?

It would be nice to post a wiring diagram or photo of your setup so we don't have to play 20 questions.
 

Thread Starter

enoob

Joined Jan 6, 2017
22
Yes, I'm powering the Arduino through the USB and not a separate 5 V supply.

I considered the V- terminal to be the ground and bunched it with the Arduino GND. The signal at the base is averaging ~2.45 V for 100% duty cycle which I think is reasonable. At 50%, this goes down to ~1.27 V.

For now, I am just changing the sketch to vary the duty cycle but I plan on using a potentiometer later.

My main concern is that the EXACT same circuit which worked with a PC is not working with a laptop. Can it be that the transistor is damaged somehow?
 

bertz

Joined Nov 11, 2013
327
Yes, I'm powering the Arduino through the USB and not a separate 5 V supply.

I considered the V- terminal to be the ground and bunched it with the Arduino GND. The signal at the base is averaging ~2.45 V for 100% duty cycle which I think is reasonable. At 50%, this goes down to ~1.27 V.

For now, I am just changing the sketch to vary the duty cycle but I plan on using a potentiometer later.

My main concern is that the EXACT same circuit which worked with a PC is not working with a laptop. Can it be that the transistor is damaged somehow?
Do you have a diode across the coil connected EXACTLY the way I showed you in the schematic?
 

Thread Starter

enoob

Joined Jan 6, 2017
22
Yes, I had it reverse biased (the grey band was towards the positive V+ end of the supply) although it was a 1N4004 instead of a 1N4001.
I read that they fall in the same class with the difference in the peak allowable voltage across their terminals.
 

Plamen

Joined Mar 29, 2015
111
Umm.....could you please elaborate on this method? :oops:

I understand that I would need to modify the Arduino sketch every time I want to change the valve opening. The easiest option was to hook up the valve to a 20 V DC power supply and manually control the current but I figured the control resolution (rotating a knob) would not be as good as with a microcontroller. Also, I saw that the valve can run on PWM so I thought I would use an Arduino board since setting values would be more precise and repeatable than rotating knobs.

Basically, like in my original post, I am trying to drive a proportional valve (the medium is air like I mentioned and is supplied by a pump) and open it variably to change the flow rate under certain conditions. Would I not need to control the potentiometer manually too, like a knob?
Hi All,

I have a question regarding a proportional valve that I just bought from Clippard.
It's the EVP series with the following coil information (http://www.clippard.com/cms/wiki/evp-selection-tips):-

Voltage range: 0 to 20 V
Nominal voltage: 20 V
Coil resistance: 218 Ohm (measured 211 Ohm)
Max.current: 93 mA (probably a bit higher as the measured resistance is slightly different)

I'm planning to drive this with PWM from an Arduino board whose PWM output is from 0 to 5 volts. I'll be amplifying this with a BJT in common emitter mode. Since the gain is basically Rc/Re in emitter degeneration mode, I know I can set the gain to 4 so that the 0 to 5 V of the Arduino goes to 0 to 20 V at the collector output.

However, I'm thinking that if I use the 5 V DC from the Arduino itself, the gain will be clipped at 5 V (basically, I'm just trying to use minimum number of power supplies unless absolutely essential) in which case, I do not need the BJT at all. So the question here is: will the valve close and open completely if I use 0 to 5 V instead of 0 to 20 V? The link above says the valve only cares about the current which corresponds to the amount of travel. So can I assume that the 93 mA (which comes from dividing the nominal voltage by the coil resistance) is the current at which the valve opens fully or is it the current beyond which the coil burns up?

Also, I guess adding the valve in series with the Rc should be enough to limit the current to less than or equal to 93 mA?

I would appreciate your inputs on this before I start testing the actual circuit.

Thank you! :)
Petkan:
There are essentially two options:
1. to directly use PWM signal into what is known as Buck arrangement (switch, fly-wheeling diode, load inductance)
2. to convert the PWM to DC command and use proportionally controlled voltage or current source

In the first case the Buck arrangement will drive rising and falling current (DC+ripple) into the load with the PWM frquency.
The amount of ripple will be defined by the load inductance and PWM frequency. During On time the current will be rising at a rate defined by 20V/Lload. During off state the current will be declining at a rate defined by also the load resistance. You have to evaluate the amount of ripple at your PWM frequency. Too low would allow the valve to follow the pulses. Too high may induce too much losses in the valve magnetic core.
Some peaople deliberately use the ripple to prevent "sticking" i.e. "dead zone" created by friction.
Note that solenoid pulling force is proportional to current, not voltage. With voltage mode driving your pulling force will vary with variations of voltage and winding resistance (self heating effect). That makes more attractive current mode control. This would require current sense resistor (in series with the load and possibly current sense amplifier. You can close the current control loop in SW (by comparing actual to required current and adjusting PWM).

The second option implies completely independent external proportionally controlled current source. The PWM command is converted to DC current demand by RC low pass filter and compared by error amplifier with current feedback (actual current). The error amplifier controls the duty cycle of a Buck (powered by 20V). The beauty of this approach is that your current will be enforced even into a dead short circuit and will be limited ven when the Arduino hangs.
If you are interested in further detail send me a mail at plamen_petkov5@hotmail.com for eventual LTSpice example.
 
Top