06-25-2010 08:47 AM
I have a Keithley 2750 set up with a 7708 thermocouple and two sensors in channels 1 and 2 to take readings.
Basically I need to take readings 12121212121212...etc. and plot the results.
I have no trouble doing this with a simple flow program, but the problem is that it needs to do the channel scan every time if I do it this way.
This means that I get maybe 1 reading per thermocouple every 2 seconds, not good when they can switch at about 3ms based on the stats.
It works if I only scan once per run and place the read sensor VI and plot data in a while loop, but I cannot find a way to maximize the reading speed without getting error from both of the sensors trying to read at the same time.
I have also tried a sequence in the while loop, but it just ignores the second scan and only reads from one thermocouple channel.
Any ideas?
06-25-2010 09:07 AM
Can you post some of you code, or an image (.png prefered, NOT .bmp) so we can get an idea of how you are currently trying to tackle this? Please include version of LabVIEW you are using.
06-25-2010 09:07 AM
Here is a screen shot of it.
06-25-2010 09:11 AM
Sorry, I'm new to this. The screen shot is 2009, but the actual program is in 8.0
06-25-2010 09:15 AM - edited 06-25-2010 09:15 AM
How are you running this VI? Are you using the Run Continuously button in the toolbar? If so, STOP. The Run Continuously is intended for debugging purposes, not normal operation. You need to use a while loop in your VI, and you should place the configuration stuff before the loop, and just the reading part inside the loop. Close the sessions once the loop ends. In other words, you want this kind of setup:
Try changing your VI to that kind of architecture and see if anything improves. Post back to let us know.
06-25-2010 09:18 AM - edited 06-25-2010 09:19 AM
In the screen shot you are doing everything serially. How are you looping? Are they seperate instruments? If not, then why do you do a serial port configure for each? If they aren't different instruments, then you should only have to do the serial setup, channel configurations, the close once, these on the outside of any loop you might have, then putting the actual measurement inside the loop.
smecurio_fc types too fast!!
06-25-2010 09:23 AM
You need to set it up so that both channels are scanned at once and then you read the results from both channels. Look at the examples for continuous and finite multi reads. Since you are new, perhaps you do not know about the example finder? Help>Find Examples>Hardware Input and Output>Instrument Drivers>LabVIEW Plug and Play. Using the search tab also works if you search for 'Keithley'.
06-25-2010 09:30 AM
Ok, so there is a while loop. I made this quickly on my laptop because the desktop is not connected to the internet.
And just to clarify, the readings cannot happen simultaneously. That's the problem.
Like I said, the channel sweep only needs to run once per channel per run, but each one needs to do it independently.
06-25-2010 09:35 AM
I also have tried sequences which almost worked but would not recognize that the readings were to be taken from different channels.
06-25-2010 09:55 AM - edited 06-25-2010 09:56 AM
No, of course you cannot read the channels simultaneously. That is the nature of a 'scan'. There would not be independent scans.
A sequence structure would seem to be a waste of time. Did you not look and see how it's done in the examples? You need to specify both channels in the scan list and change from a single point read.
Please don't post back until you have looked at the examples and run them. If and when you post back and mention modified code, attach the modified code since it is very unclear as to what you are attempting. Also, please take some time to read the manual to get an understanding of a multi-channel scan and how to read the results from such a scan.