Need to control 3 coils via USB port

Status
Not open for further replies.

fedra

New Member
Hi.
I need to control 3 solenoid valves via USB port. Each valve needs about 200mA so I need some kind of buffer. I have found a board that acts as a buffer but it has a 4-6 mSec delay. **broken link removed** also has 4mSec delay.
I think I can do better if I use open collector transistors.
Can anybody point me to such board (I want to purchase it not to build it)?
Also, which is precision of USB signal that can be generated? I mean there are delays when the computer is busy?
 
Last edited:
4msec is a small fraction of the time it takes a solenoid valve to pull-in. The delay cited in the data sheet is how long it takes the USB signals to get decoded, not a driver delay. If your computer is using Windows and is running multiple applications, there will be additional delays while it does context switching. Windows is NOT a "real-time" operating system.

You will need high-current FET or Transistor drivers to put between the USB card and the solenoids.
 
Why are you so concerned about speed? What are the events that occur that are supposed to enable the solenoids?
 
What are you trying to do? Timing can generally be adjusted to compensate for any static lag by adjusting methods, it's probably more important to know what you're trying to do rather than how you think it should be accomplished. Too many times I have seen posts on here from people looking for how to do various things and when they finally get around to explaining why they want to do that someone has a better idea of how to do it. What you're are doing is more important that how you think it should be done 9 times out of 10, at least if you're asking for help.
 
Last edited:
Explanations

I want to control some solenoid valves. I need to apply a signal to these solenoid valves so they open for 45ms (or less) the vacuum tube and then for 30ms (or less) the pressure tube. The signal needs to be controlled from computer so I can adjust the time.
4ms may be a pretty big error for me. I don't know yet. I hoped that the USB signal can be decoded in less than 4ms. If not, I will have to go for something without a decoder like a parallel port. This is why I also want a board with transistors: to eliminate the extra delay that the coils are adding to the decoding time.

No about the software: I think that if I run the program in High Priority or Real Time mode, it will not get stuck. There are not many programs running in high priority mode.
 
Last edited:
Are your solenoid valves that fast? Typically it takes longer than that to operate such a valve.

To speed the valve opening, you could operate it momentarily from a higher voltage to energize it, and then reduce to voltage to normal (or below) if you leave the valve on. To speed the valves closure you would want to use a high voltage zener or RC network to clamp the inductive spike from the coil. Just using a diode, as is typically done, will significantly increase the time for the valve to close.
 
Usb is a master-slave communication protocol. Usb master initiates communications in 1ms (at the most) intervals so you won't get more accuracy than 1ms for the communication (low and full speed). For high speed, the interval is a multiple of 125 microseconds. The usb device can request a maximum interval between transaction attempts. The host will reply whether or not it can meet the requested rate.
 
Last edited:
Totally discounting the computer for a moment I would love to see the data sheet on the valves you plan to use. Solenoid valves are mechanical devices and in all the valves I have seen and used I never saw a valve that will come close to your requirements.

I suggest you read this valve technical reference material to gain a better understanding of the valves themselves. Note the section that deals with AC and DC coil valves as well as paying attention to flow rates and the actual solenoid actuator. Software and computer response times are the least of your worries.

Ron
 
Out of curiosity, what will be the purpose of that, whatever you are trying to build. And also, I would love to see what kind of valves you are using with that kind of a response time.
 
It is a device that builds microscopic droplets of controlled size.
The valves I have found have a delay of 4ms to open 6ms to close (or the other way around - i don't remember now). They are used with (very) low volumes of liquid.
 
If you just need to control the valve timing opening and closing times accurately but the actual computer delay can be ignored, then you might consider have the computer trigger an external programmable timing circuit to control the actual solenoid times.

Here's a USB timer kit, for example, but I'm not sure if it will cover the timer intervals you need.
 
This sounds very like a bubble jet printer cartridge type situation, the valve itself is passive, a sphincter or simply a hole so small that liquid can't flow at normal temperature/pressure. The pulses are delivered to a heating element which vaporizes the water and creates the pressure which actually release the compound. You need some pretty precise pulse delivery circuitry to control something like this on a small scale, the physical mechanism to hold the print head in position is actually far more complicated than the jets themselves.

You're looking at the pulse width, you'll never get the precision you need with on/off signals from a USB based device, you'll need a controller that can be set for a much finer pulse width resolution for any control. The controller only needs to generate the basic pulse though the data can come from USB.
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…