LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

issues making a program for vacuum chamber bakeout control

I am using the NI DAQ USB-6008 and Labview 8.5.

I am building a program that controls the bakeout for a vacuum chamber.  It will need an analog input for voltage

(0-100mV) from the ion pump which is converted into pressure (torr) and records it. I pretty much have that taken

care of.  If the pressure gets too high, it needs to send a voltage (digital out: 0/+5V) to a relay that shuts off the

bake until the pressure goes down, then turns the bake back on.  This would be the master on/off.  It would also

need a master manual override on/off.  Now it needs to have three more analog inputs (0-10mV) for K-type thermocouples (I

have found that I need to use voltage and convert it, the built in thermocouple DAQ assistant doesn't work right: no

CJC constant.  Also have found that I need to compress the sampling so that it is an average of samples over a

second; to reduce the noise, I'm +/- 1mV or so, which isn't good for a thermocouple reading. These two things are

the major problems for me).  The three thermocouples control three circuits of heating for the three different

areas of the vacuum chamber.  So, once the individual areas get too hot, then they need to shut off and turn back on

individually (Three more 0/+5V digital outs for the relays), with the pump pressure being the master shutoff/turn on for

the three thermocouples still.

I have the start of the program done, I just need some help getting the details worked out.  I've only had a semester class on Labview a year ago. I can email the .vi's that I

have so far. They are actually a pump pressure recorder and then the thermocouple module program, I was trying to

separate the pieces so that I could get them working individually and then splice them together. The pump recorder

program has a conversion from voltage to pressure that I got accurate for the pressure for the pump within a couple of torr or

less.

Any help is appreciated. Thanks!

modi81
U of N IA Physics


0 Kudos
Message 1 of 31
(4,019 Views)
Hi modi,

your message is hard to read when there are some many line breaks.Smiley Sad


Help for "analog inputs (0-10mV) for K-type thermocouples (I have found that I need to use voltage and convert it, the built in thermocouple DAQ assistant doesn't work right: no CJC constant.":
In mathematics->numerics->scaling you find a "Convert Thermocouple Reading" function which allows input of CJC voltage. Don't always rely on DAQ Assistent (or Express vis in general)!Smiley Wink

For other problems:
We can't do your work. Please post code with some detailed description of where you get stucked. Then we will help you!
Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 2 of 31
(4,000 Views)
Sorry, I don't know why it made those breaks.  I don't have a CJC constant because I don't know what it would be, or where to get it.  I probably could have been clearer on that.  Also, I tried to use the compress samples DAQ assist but then the vi  wouldn't adjust to a varying input, it would just stay constant.  I tried 10, 100, and 1000 samples to compress into one and it did it all the same, over 100 seconds at 1 sample/sec, 10 samp/sec and 1000 samp/sec each.  I tried each sample rate with each compression rate.  I just get too much noise and end up averaging all of the points after I put the data into an Excel file. So how can I make that work better, or is there another way to average a sample over a second and graph it?

Can I output the code into text or just copy/paste out of the block diagram (which doesn't seem like it would work)?  Thanks!
0 Kudos
Message 3 of 31
(3,983 Views)
Hi modi,

LabView uses a graphical programming language ("G"), there is no "code into text". You can paste the block diagram as picture in the forum (this will be helpful then), but the real vi is preferred as we can check all settings/make changes/include comments...

Averaging is simple: avg=sum(samples)/(num of samples). You can use primitives to calc this or also find functions to calc a mean in the math palette... No need to use Excedl for that!


Message Edited by GerdW on 07-11-2008 10:09 AM
Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 4 of 31
(3,977 Views)
0 Kudos
Message 5 of 31
(3,967 Views)
0 Kudos
Message 6 of 31
(3,965 Views)
Hi modi,

I changed one of your vis and included a running average in the measurement loop. Look if it fits your needsSmiley Wink
Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 7 of 31
(3,956 Views)
Thanks, that looks useful. How can I make it average over more samples?  My signal still looks noisy.  Thanks
0 Kudos
Message 8 of 31
(3,953 Views)
Hi modi,

use a bigger array to collect data? At the moment I took the value from "samples/sec", simply wire a constant (or a second control) instead...
Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 9 of 31
(3,950 Views)
So I wired a constant of 50 to the quotient & remainder terminal and it seems ok.  I tested by running it and getting room temp and then putting it into boiling water for a while, then taking it back out.  It jumps up to the temp after a while and takes a while to come back down when I take it out, and the thermocouple reader I'm using (an actual multimeter) drops way faster.  I have both thermocouples within an inch of each other.  I probably should just play with the sample averaging. Thanks!
0 Kudos
Message 10 of 31
(3,944 Views)