Pages: [1]   Go Down
Author Topic: Need help: Using PWM on a solenoid for easy release.  (Read 886 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 2
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I'm on a project where I'm injecting a thick liquid into a small applicator.  So the nozzle will not drip after the pre measured liquid flows past, I built a shut off "needle valve" right at the nozzle using a knitting needle (pointy end) attached to a hefty spring loaded solenoid positioned over it.  The device works great - send 12 volts to the solenoid and it lifts the needle up, allowing the fluid to be pushed out.  Remove power and the solenoid's backspring pushes the needle back into the nozzle hole eliminating any drips.  My problem is that the solenoid's back force spring slams the needle down into the nozzle hole so hard it actually gets stuck and will eventually deform the needle.  The needle is aluminum and the nozzle stainless steel.  I tried lighter backsprings but then the needle doesn't seat as firmly as I need.  So I thought = what if PWM could be used to power the solenoid to allow it to release more gently by doing a ramp down from 12 volts to zero (in say 100 ms).  Has anyone ever done this to give softer action on the release of a solenoid?  I have a free channel on my Arduino R3 motor driver board but wondered if it can handle a 1.3 amp hefty magnetic solenoid.  Even though that board uses an isolated power supply (12 volts in my case), I wonder if the back EMF from the coil could damage the boards?

If it is possible, are there some Arduino function sets that do a ramp up and down of a voltage for this type of purpose?

Thanks
Logged

Beijing
Offline Offline
Full Member
***
Karma: 3
Posts: 193
Skype name habib.derbyshire
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Maybe you can add a spring to cusion it.
Logged

What is man's best friend? The breadboard!

Malaysia
Offline Offline
Sr. Member
****
Karma: 7
Posts: 393
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

take the same precaution you would controlling a motor... use a flyback diode. and if you could just use a mosfet....
heres a good tutorial you can use
http://bildr.org/2011/03/high-power-control-with-arduino-and-tip120/
ok for the ramping up and ramping down the power....

my hint is to use for loop()
imagine how you would well increase the brightness of a LED.
ok for your application you would not increase the speed of the solenoid but actually your ramping up the solenoid power and making it pull the needle slowly ....

for the release imaging your fading the led brightness....
this in turn in your application will release the needle slowly....
Logged

Beijing
Offline Offline
Full Member
***
Karma: 3
Posts: 193
Skype name habib.derbyshire
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Or you can use a big capacitor
Logged

What is man's best friend? The breadboard!

Malaysia
Offline Offline
Sr. Member
****
Karma: 7
Posts: 393
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

and make a RC circuit. and really make an analog output....
Logged

The Netherlands
Offline Offline
Edison Member
*
Karma: 35
Posts: 1293
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

PWM is indeed the way to go.
And for sure use a diode to protect your hardware.
Proportional hydraulic systems (the ones i know of) are controlled by a spring loaded valve, of which most on their turn are controlled by a PWM signal.
Remind that keeping the valve / relay open, doesn't take the same energy as opening it.
So once opened, you can start easing the energy by reducing to a duty cycle of about 80 %.
After that, the valve (your needle) will start closing and will probably be closed at about 30 %.
These aren't exact numbers that are always valid, so you'll have to try and see what will be best for your setup.
Even more because you're using a valve that isn't designed as such.
Logged

Have a look at "blink without delay".
Did you connect the grounds ?
Je kunt hier ook in het Nederlands terecht: http://arduino.cc/forum/index.php/board,77.0.html

Offline Offline
Edison Member
*
Karma: 9
Posts: 1010
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I have tried this, although it was with a solenoid valve.
My solenoid valve of steel and brass was very loud, and I tried to 'soften' it somehow.
First I reduced the voltage (12V solenoid at 6V or 24V solenoid at 12V).
Next I tried pwm, short pulses, series of pulses.

I had very little success. If the magnetism is stronger than the spring, the solenoid core starts moving. Not much can be done about that. A PWM signal would not change that. Once the core starts moving, it will go with a certain strength.

I had some success with short pulses. I could make the core move for about 90% and fall back. But moving for 90% and gently continue to 100% with very short pulses was not possible.

Lowering the voltage would help a little. Using a PWM signal is about the same as lowering the voltage. So you could try that.
But in the end, I think you need a mechanical solution.
Logged

The Netherlands
Offline Offline
Edison Member
*
Karma: 35
Posts: 1293
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I have no doubt about that, Krodal.
But you were using a valve.
A proportional valve is designed a bit different, and the difference is in the spring.
TS told us about a spring loaded solenoid, and that he has been experimenting with that spring.
So the solution probably is in some more experimenting with the spring, as well strength as position of that spring, PWM or whatever type of control signal.

I mentioned position of the spring, as there will be some difference to the action of it all.
If the spring is at the end of a lever which is controlled by the coil, its function is to have either on or off function, so to have it really switch.
You might see this in a relay.
If the spring is on the moving part (the needle, travelling through the center of the coil), it will control that part the way i described.

Maybe TS could post a picture of his setup, showing the solenoid, spring and needle.
Logged

Have a look at "blink without delay".
Did you connect the grounds ?
Je kunt hier ook in het Nederlands terecht: http://arduino.cc/forum/index.php/board,77.0.html

Offline Offline
Edison Member
*
Karma: 9
Posts: 1010
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

An air piston or something like that would soften the speed of the core.
I remember a toaster that had a small but effective piston to reduce the pop-up speed.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

good info to me, remember a toaster that had a small but effective piston to reduce the pop-up speed.thank you
Logged

Offline Offline
Edison Member
*
Karma: 27
Posts: 2033
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The problem of speedy valve closure and effective seating is one that has occupied
steam engine engineers and auto engine engineers for about 300 years.

I'd be a bit wary of trying too hard to control a solenoid with PWM  because the
inductance of the device is going to tend to want to confound the idea of rapidly
turning the current on and off all the time.

If the fluid you are controlling is under pressure (  and hence,  will try to "leak" past your valve ),
then the best idea is to have some kind of valve where the pressure in the fluid itself contributes
to keeping the sealing part of the valve well seated.
« Last Edit: January 31, 2013, 02:41:55 am by michinyon » Logged

Pages: [1]   Go Up
Jump to: