DAQExpress

cancel
Showing results for 
Search instead for 
Did you mean: 

Linear Ramp from 0-6 volts.

Hello,

 

I'm relatively new to this hardware and software, so please excuse my ignorance.  I'm hoping this is an easy solution.

 

I have a digital pressure regulator that i am looking to send a linear voltage ramp to.  0 to 6 volts in 3 minutes.

 

I have the USB-6001 & the software that came with it.  I have performed my process in manual increments it works well with the rest of my system, just want to make the process automated with the ramp.

 

Please advise if this is possible, and if so, what is the easiest way to write this in DAQExpress.

 

Thanks,

 

-Matt

0 Kudos
Message 1 of 7
(5,010 Views)

One way you could do this is by using a while loop with your write inside of it. Have the initial input as 0 and then use a case structure to add .05 volts to your input every loop, use a one second wait inside the loop so that it only increments every second and then use a case structure to stop it from incrementing once it is equal to 6 volts. Does that make sense? 

 

-Austin 

0 Kudos
Message 2 of 7
(4,989 Views)

The logic makes complete sense, that is exactly what I want to do.  Would play with the steps and the dwell per my system/response and actually get the data points that i'm after directly (5-90 psi at 5 psi increments).

 

Issue is the execution.  I have never used lab view before and am not very well versed in how to write the code.  Please see the attached screen shot of what I have so far.  Any help would be greatly appreciated.

 

While loop with a wait time of 6 seconds.  Case structure adding 1 volt to the output of the analog output. I have the analog output module set to zero to start.  Not sure where to go from here as it won't let me take the task out value and insert it back into the case structure for the next loop.

 

Again, sorry for my ignorance but I am truly lost.

0 Kudos
Message 3 of 7
(4,982 Views)

I attached a picture of me doing it in LabVIEW. I use a shift register to pass data between each iteration of the loop.

 

-Austin

0 Kudos
Message 4 of 7
(4,978 Views)

Have the loop and the timer all figured out, but i am having issues with the DAQmx block.  When i try to connect the number to the data input, it greys out the wire and gives me an error saying "Type conflict. You have connected a scalar (non-array) data type  and an array data type." 

 

All the research I have done shows users using a DAQ Assistant block and having no issues with similar systems.  My version of labview doesn't have that DAQ Assistant.  What is the best/simplest way to get this done?

 

Appreciate all your help thus far.

0 Kudos
Message 5 of 7
(4,938 Views)

MattMorr,

 

The DAQ Assistant may be simpler, but it is not a very scalable solution - the DAQ Assistant is mostly used for short, quick verifications. I would recommend putting in the time to learn how the DAQmx VI's work, especially if there will be any modification of your VI long term.

 

The error likely occurs because the DAQmx Read is configured for either multiple channel or multiple point, while the data you are sending it is only one number. You should be able to tell by clicking on the DAQmx Read and looking at the configuration on the frame to the right. You can ensure the data type of your input is correct by right clicking on the input node of the DAQmx Read, then clicking "Create Control."

 

Also, the recommendation Austin gave was more of a quick code example. You will still need the DAQmx Read to connected to a full DAQmx task, such as in the Analog Output project example.

 

VanCamp

0 Kudos
Message 6 of 7
(4,927 Views)

Vancamp,

 

Thank you for your input.  Is there any way you could provide a screenshot of what you are talking about?

 

Can you vary an analog output task to the new number that I create inside my loop?

 

 

0 Kudos
Message 7 of 7
(4,891 Views)