Real-Time Measurement and Control

cancel
Showing results for 
Search instead for 
Did you mean: 

problem reading thermocouples reliably with SCXI-1112

I have a problem reading thermocouples reliably.

The system is a PXI-1011 chassis running LabVIEW RealTime 7.1 on the NI-8176.

A PXI-6052E is in the 4th slot and is the SCXI controller.

In SCXI slot 6, I have the SCXI-1112 Thermocouple card.

The entire chassis is full (no unused PXI or SCXI slots).

The system is a few years old, and as I recall, we have always had the problem with the reading of the thermocouples.

We've been ignoring the temperature reports via the DAQ and have just been using hand held temperature measuring tools.

 

Here's the problem: 3 thermocouples at channel 0, 1, and 2 of the SCXI-1112. Nothing in the other five channels.

After a system power up, the readings of the 3 temperatures are fine. Once the system has been running for some time,

maybe a couple hours, maybe ten hours, at least one of the temperature readings jumps from, say 70F to 320F, or 600F. while the other two still read around 70F.

If I unplug the suspect channel, its report doesn't change. However, one of the other "good" channels acts as if it was the disconnected thermocouple. Its report jumps to something like 895F.

 

To illustrate:

After DAQ power up.

ch0 = 70F

ch1 = 71F

ch 2 = 73F (while things are healthy, I can unplug any of the three thermocouples and the appropriate channel shows the fault by displaying 895F.)

 

After a few hours (with all connected).

ch 0 =71F

ch 1 = 73F

ch 2 = 320F (should be about 70F)

 

If I unplug ch 2:

ch 0 = 71F

ch 1 = 895F (this channel should not have changed)

ch 2 = 320F

 

If I unplug ch 0:

ch 0 = 71F

ch 1 = 73F

ch 2 = 895F

 

Clearly the indexing of the channels on the SCXI-1112 is mixed up.

I've swapped out the SCXI-1112 card. No change in the symptom.

I've swapped out the PXI-6052E card. No change in the symptom.

I've run MAX on it over night and MAX always reports the proper values.

 

When this fault is present, the data values from the cards on either side of the thermocouple card still appear correct.

In the attached image, elements 40, 41 and 42 of the array are ch0, ch1 and ch2 of the SCXI-1112.

The hardware is set for 800 scans/sec (72 channels per scan)

The Realtime loop duration is 10 mSec.

 

Is this a hardware / noise / grounding problem? Is it a loop time problem? Where should I begin to try and pinpoint the problem?

 

P.S. This isn't my code. Its ugly and I would love to completely rewrite it, but I have enough on my plate already.

 

Thanks,

Tobin

 

Message Edited by Tobin on 10-01-2008 02:36 PM
0 Kudos
Message 1 of 7
(4,181 Views)

Hi Tobin,

 

This appears to be quite an interesting issue that you are seeing. While this type of issue, in my experience, is almost always related to some kind of grounding issue, I do have quite a few questions which may help in narrowing down the problem. I see that you tried switching out modules, but have you tried the SCXI-1112 in any other slots on the chassis? Also, have you tried using different channels on the SCXI-1112 rather than just channels 0, 1, and 2?

 

Another thing that may be useful to try, since you see that the value rails on an adjacent channel after disconnecting the faulty thermocouple, is to try and ground the faulty channel and see if the values then go to normal on the other channels (to see if the disconnected channel is ghosting to the others). I also want to verify that this behavior is happening randomly on each of the channels, and not just always on channel 2, for instance. Also, once the channel spikes to the higher value, does it ever go back to normal after some amount of time or by grounding the channel or by placing a resistor from the negative terminal to ground when the thermocouple is plugged in? Do the values all return to normal if you stop the program and then start it again immediately?

 

The last bit of information I would be interested in knowing is what version of the Traditional DAQ (Legacy) driver that you are using, and if you are using the Traditional DAQ test panel when you try to take readings in MAX with success. Is there any way to create a smaller program using the API in LabVIEW which just scans the SCXI-1112 channels and run this overnight to see if you can reproduce the same problem? Hopefully trying a few of these suggestions will help to provide some more insight into the problem you are seeing. I look forward to hearing back from you with the results you find.

 

Regards,

Daniel S.
National Instruments
0 Kudos
Message 2 of 7
(4,168 Views)

Daniel,

 

Thank you for your reply.

 

Yesterday, ch2 was the first to report a high value. This morning, ch0 was the one that was reporting 310F. Ch1 and 2 were showing normal values.

Unplugging ch2 cause the report of ch0 to go from 590F to 899F, but the report for ch2 remained 71F.

The point is that Its not always the same channel that first indicates weird values.

 

Once a channel goes bad, it never goes back to normal by itself.

If I stop the real-time vi and then restart the vi, the channels report normal values again.

 

In order for me to ground an input, I need to make some short thermocouple extension cables so I can get access to the wires.

This will take a little time. I need to make three sets, install, and then wait for the fault to occur again. I'll let you know what happens.

The Traditional DAQ version is 7.2.0.

MAX is version 3.1.0.3021

 

I have not tried swapping slots. I'm guessing that would require significant code changes in the real-time vi.

I should be able to change the channels within the card. That should only require changing the MAX properties and moving connection.

I'll look into trying to create a small program that just scans the SCXI-1112.

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

I reassigned the thermocouple inputs from 0, 1, 2 to 4, 5, 6 respectively and ran the system again. The problem still exists. When I came in this morning, channels 5 and 6 were reporting around 615F. Remember that the indexing gets messed up too. Unplugging channel 5 caused channel 6 report to drop to 201F without changing channel 5 report.

Unplugging channel 6 caused channel 4 report to jump to 1600F without changing channel 6 report.

 

One by one, I grounded the negative input of channels 4, 5 and 6. It had no influence on the reported values.

 

I added some temporary code in the main realtime loop that allows me to close-out the analog input process and initialize a new one via a button press (shown below).

This does cause the thermocouple inputs to start reporting correct values again without needing to stop the application and restart it. ( I don't know what this implies).

 

 

 

The condition test outside the case structure just guarantees that the "TRUE" case only executes once from a button press. The "FALSE" case just passes the TaskID and error signals through.

Message Edited by Tobin on 10-06-2008 02:17 PM
0 Kudos
Message 4 of 7
(4,136 Views)

Hi Tobin,

 

Thanks for the updates and additional information. That is an interesting workaround you have found, but I am glad that it is working. The fact that the values are correct again after restarting the task, as well as the facts that these problems do not appear in MAX and they are consistent with multiple devices, would seem to indicate that something strange could be happening in the software. I am interested in knowing if you can reproduce the problem with a smaller program, just running the thermocouple channels on the particular 1112 module, or by running an example program which does the same. This would help us further deduce what kind of issue we may be looking at with the software. Thanks, and I look forward to hearing back from you.

 

Cheers!

Daniel S.
National Instruments
0 Kudos
Message 5 of 7
(4,117 Views)

Daniel,

 

I'll try to setup a smaller app. It may be several days before I post results. I have to steal some time here and there to work on this issue. Thanks again.

 

Tobin G.

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

Hallo Daniel!!

 

 So I think i have similar problem... not that similar... because in my case... all inputs from the card SCXI 1102 ... after a while send me wrong values... but much bigger and negative from the thermocouples....   so maybe you can give me a tip... .what's the problem... I have posted it here...  http://forums.ni.com/ni/board/message?board.id=170&message.id=397866#M397866

 

Thanks!!

Ricardo

Message Edited by Ricbace on 04-01-2009 05:14 AM
0 Kudos
Message 7 of 7
(3,811 Views)