LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Constant current generator

Hello,
 
I am a student currently trying to develop a constant current generator using the DAQ-6008 pad. I went through the student manual that was included with the student edition and it taught me how to do the gradual step up analog out signal. However, I need a constant .3 mA current; but this value may increase or decrease depending on the resistance. Although the change in resistance will be small, I need LabVIEW 8.0 to keep the current at approximately .3 mA. Furthermore, I need to use this in a protocol of short uneven bursts. The first burst will last 3 seconds of current, followed by a 180s no current, followed by a 6 second burst, followed by a 180s no current, etc. What is the best way to do this?
 
Any help is much appreciated, thanks!
0 Kudos
Message 1 of 6
(4,149 Views)
you should use a feedback whenever you have the chance, in such way you can archive a much better accuracy.

As I know, 6008 contains a voltage source instead of a current source, which means you need to insert a small sample resistor in the loop to measure the current in the circuit, and adjust the output of the AO correspondingly to stably the output.
0 Kudos
Message 2 of 6
(4,143 Views)
What would be the best way to get the timing down for the current? I need it to output a constant current for 10 s, then 180 s no current, 20 s current, 180s no current etc.
 
Thanks!
0 Kudos
Message 3 of 6
(4,114 Views)
The timing has nothing to do with the constant current except the value.

How do you set or select the timing values? Are they preset and fixed or can the user change them? What is the maximum number of output changes (the words cycle or period are inappropriate because the times change) which will be required? What accuracy and precision do you need? What are the minimum and the maximum times between output changes?

There are many ways to control the timing. Which is best depends on your application.

Lynn
0 Kudos
Message 4 of 6
(4,107 Views)

I just need something basic. The timing values are preset and should never be changed. Within 0.5 second precision would be adequate.

What I essentially am trying to do is build a program that will output the same current for different intervals. These set intervals will be 10 s on, 180s off, 20s on, 180s off, 40s on, 180s off, 80s on, 180s off, 160s on, off.

Thanks!

 

 

0 Kudos
Message 5 of 6
(4,101 Views)
For that case I would create an array with the values. Read the clock and add the [i]th value from the array. Read the clock again until the current time is greater than the sum. Then toggle the output and get the next value from the array.

Since this is a school project I will let you figure out the details.

Lynn
0 Kudos
Message 6 of 6
(4,091 Views)