Discussion:
NI-9211 Temperature measurements?
(too old to reply)
sthompson
2008-08-14 16:40:11 UTC
Permalink
Being new to temperature measurements with thermocouples, I purchased an NI-9211 thinking this would simplifythings. How do I scale the voltage readings to the correct temperature values? I used SignalExpress and set the CJC optionto 25 and temperature to read from 0 to 100 degress Celsius; taking contiuous samples. When running SignalExpress the"Amplitude" readings are nowhere near the  temperatures expected.I'm using a Watlow K type thermocouple.  If I use Measurement Studio, do I have to apply temperature compensation in software all well as in the DAQmx task setup?Is there a simple procedure (step by step) to get decent temperature readings without being weighed down by all thefine details? Thanks in advance, sthompson.
Notorious JZ
2008-08-14 20:10:12 UTC
Permalink
I am assuming that you are using NI 9211 on cDAQ-9172 chassis with DAQmx driver. NI 9211 has an internal CJC sensor; DAQmx uses the reading from the internal CJC sensor to scale voltage readings into the correct temperature values.  SignalExpress should set up a DAQmx task that performs the temperature scaling for you. Let me verify your settings: you have set Temperature Range to 0 to 100 degrees Celsius, Thermocouple Type should be set to K , CJC Source should be Built In (Since CJC Source is Built In, CJC Value does not factor into scaling.  You only need to set CJC Value if you CJC Source is set as Constant.) You are using a Watlow K type thermocouple, so the yellow wire should be positive end and the red wire should the negative end.  If you use Measurement Studio, you  can set up an AI channel with Thermocouple as the usage type and set the channel properties just like above for Thermocouple Type, CJC Source and Scale Unit to be Celsius.  Then the DAQmx task will apply the temperature compensation internally during scaling and return correct temperature values. You should not have to do the scaling yourself. Please try this out and let me know if this works out for you.   
sthompson
2008-08-14 20:40:10 UTC
Permalink
Thank you very much for the reply. When I said I set the temperature to be read was from 0 to 100 C, I probably made a mistake. I had entered these values into the "Signal Input Range" text boxes under the "Settings" tab. I probably should haveentered the input range of the 9211 module: +/- 80 mv. Is that correct? How do I specify millivolts in those text boxes? Again, many thanks for the help and suggestions. It beats reading through ton of help  files and documents. Regards,sthompson.
Notorious JZ
2008-08-14 20:40:11 UTC
Permalink
Sorry, when I was referring to "Temperature Range", I was actually referring to  the "Signal Input Range" text box under the "Settings" tab.  So what you have: Max = 100, Min = 0, and Scaled Units = deg C is fine.  SignalExpress defaults to Thermocouple "Measurement Type" for NI 9211, so it expects  the fields under the "Signal Input Range" to be in term of degrees instead of volts.
sthompson
2008-08-14 21:10:10 UTC
Permalink
Thanks for explaining that "range" issue. I tried it and compared the measurement with an EXTECH  DMM that has a temperature option. It appears that I'm still off by +5 degrees. It all makes much more sense now. The offset could be due to noise (not using shielded cable), thermocouple non-linearity, etc... Regards,sthompson.
Notorious JZ
2008-08-15 18:10:11 UTC
Permalink
One thing that helps me to make more accurate measurement on 9211 is to configure "Auto Zero Mode" on the "Device" tab. The default for "Auto Zero Mode" is "Once", that means it reads an internal auto zero channel for offset error at the beginning of the task and then subtract that offset from all reading from the module in that task.  This is ideal for temperature that does change very much over time. Setting "Auto Zero Mode" to  "Every Sample" will make the task to read the internal auto zero channel for offset error every sample and subtract the different offset error from each individual channel.  However setting it to "Every Sample" adds an additional internal channel to the scanlist and that will lower the max sample rate for your task since 9211 is a scanning module.  This is ideal for temperature that varies by a large amount over time.  The offset error reading from the internal auto zero channel is usually very small at room temperature, but your testing environment has a more extreme temperature condition, the offset error might be fairly significant.  You can check what the internal auto zero channel is reading by opening up a test panel in MAX and selected "9211/_aignd_vs_aignd" and looking at the acquired data.  This returns data in volts.  If the data return is the range of nanovolts, then the offset error is insignificant.  If the data return is in the range of single digit microvolts, then the offset error is small enough that you can ignore depend on the requirement of your application.  But if it is in tens of microvolts, then the offset error is fairly significant.  
Loading...