06-15-2022 05:14 AM
Hello
Currently I'm using Module NI scxi 1163, Terminal block scxi 1326 and Chassis scxi 1000 to control multiple Gems Sensors Solenoid Valves and Lee Valves.
I need to control them automatically with some time differnces. I suppose it is a digital output, can someone please to suggest some examples to refer with and any suggestions to develop a LabView code.
(NOTE: here I'm attaching the preliminry program which I developed.)
Thanks in advance.
Tom
06-19-2022 05:22 AM
Hello
Currently I'm using Module NI scxi 1163, Terminal block scxi 1326 and Chassis scxi 1000 to control multiple Gems Sensors Solenoid Valves and Lee Valves.
I need to control them automatically with some time differences. I suppose it is a digital output, can someone please suggest some examples to refer with and any suggestions to develop a LabView code.
(NOTE: here I'm attaching the preliminary program which I developed.)
Thanks in advance.
Tom
06-19-2022 10:35 AM
I'm not familiar with the NI Hardware you are using, so cannot directly comment on the DAQmx code (but have a suggestion, below). Here are some (what I hope are helpful) comments:
Bob Schor
06-19-2022 11:28 AM
Hi Tom,
@Tom147 wrote:
Hello
Currently I'm using Module NI scxi 1163, Terminal block scxi 1326 and Chassis scxi 1000 to control …
And you are using a PCI DAQ card, I guess it's a PCI-6221 from your rather downscaled and blurry image. (Why do you downscale images before uploading?)
That DAQ board (together with your SCXI system) determines the possible DAQmx options: I suggest to put all DO channels into just ONE (1) DAQmx task…
06-20-2022 05:16 AM
All you probably need is control all three booleans by using an array with three elements for the I/O (N lines, 1 point) (30% of the code!).
All your case structures differ only by a single boolean constant that you already get from the case selector, so you can delete all case structures. Right?
06-30-2022 02:56 AM
I 'm working on the control of 6 solenoid valves by means of digital outputs.
I'm using PCI 6024E daq card.
How can I implement a program to control them both manually (clicking start and stop bottoms) and automatically (opening a valve automatically every 0,1 sec)?
06-30-2022 03:21 AM - edited 06-30-2022 03:22 AM
Hi Tom,
no need to start the 3rd thread on the same problem. I merged them all…
Have you taken the suggestions you got so far?
Mind to attach your current VI with those changes incorporated?
@Tom147 wrote:
How can I implement a program to control them both manually (clicking start and stop bottoms) and automatically (opening a valve automatically every 0,1 sec)?
How do you want to control a valve manually when the "automatic" routine will open it anyway after 0.1s?
When you switch between both modes you simply could use a case structure…
07-07-2022 02:41 PM
Thanks for your availability.
I am currently trying to implement a program that can control a valve automatically in the following way: 10 ms open, 990 ms closed, 25 ms open, 975 ms closed, 50 ms open, 950 ms closed in a single cycle, what can be the best approach?
I have the follwing code to open and close the valve by digital output signal can someone help me in opening and closing the valve as mentioned above over time. Thanks in advance.
07-07-2022 02:51 PM - edited 07-07-2022 02:52 PM
Hi Tom,
@Tom147 wrote:
I am currently trying to implement a program that can control a valve automatically in the following way: 10 ms open, 990 ms closed, 25 ms open, 975 ms closed, 50 ms open, 950 ms closed in a single cycle, what can be the best approach?
The "best" approach would get rid of that ExpressVI and use "plain" DAQmx functions! (They are much easier then you might think!)
What do you mean by "single cycle"? Are you talking about using just one loop structure?
What are the requirements on accuracy of the delay times?
Do you want just these 6 delay elements? (With low accuracy on timing?)
Then all you need is:
See how far you get with that suggestion…
07-07-2022 04:07 PM
In my case single cycle refers to operation of values at this different mentioned timings (on/off) should be at go.
Thanks for the response, I will try to use your suggestions.