Design & Integration Files• Schematic
• Bill of Materials
• Gerber Files
• Layout Files (Allegro)
• Assembly Drawing Download Design Files 612.07 K
Part Numbers with "Z" indicate RoHS Compliance. Boards checked are needed to evaluate this circuit
- EVAL-ADICUP360 ($45.00) EVAL-ADICUP360
- EVAL-CN0394-ARDZ ($50.00) EVAL-CN0394-ARDZ
Features & Benefits
- Flexible 4-channel thermocouple system
- Cold junction compensation
- Arduino-compatible interface to ADICUP360
Markets & Technology
- Instrumentation & Measurement
- Industrial Automation Technology (IAT)
- Aerospace and Defense
- Building Technology
Circuit Function & Benefits
The circuit shown in Figure 1 is a flexible, integrated, 4-channel thermocouple measurement system based on the Arduino- compatible EVAL-ADICUP360 platform, which contains the ADuCM360 low power, precision analog microcontroller. The ADuCM360 has an ARM Cortex™-M3 processor core, a number of peripherals, and also precision analog functions including a dual, 24-bit, Σ-Δ analog-to-digital converter (ADC); multiplexer; programmable gain amplifier (PGA); and voltage reference.
The circuit can process up to four independent thermocouple channels, and the software linearization algorithms support eight different types of thermocouples (B, E, J, K, N, R, S, and T). The four thermocouples can be connected in any combination, and resistance temperature detectors (RTDs) on each thermocouple channel provide cold junction compensation (CJC). No extra compensation is needed. Thermocouple measurements using this system cover the full operating range of the various types of thermocouples.
The circuit interfaces to the EVAL-ADICUP360 Arduino- compatible platform for rapid prototyping. With a USB to UART interface and open source firmware, the EVAL-CN0394-ARDZ and EVAL-ADICUP360 combination can be easily adapted to a variety of thermocouple applications.
Temperature Measurement Introduction
Thermocouples are one of the most frequently used sensors for temperature measurements in industrial applications because of their low cost, ruggedness, repeatability, as well as wide operating temperature range and fast response time. Thermocouples are especially useful for making measurements at high temperatures (up to 2300°C for Type C thermocouples).
A thermocouple consists of the junction of two wires of different metal types, as shown in Figure 2.
The junction is placed where the temperature is to be measured, TTC, and is referred to as the measurement junction. The other end of the thermocouple is connected to a precision voltage measurement system, and this connection is referred to as the reference junction, or alternately the cold junction (CJ). The temperature difference between the measurement junction, TTC, and the cold junction, TCJ, generates a voltage, VTC − VCJ , that is caused by the difference between the temperatures of the two junctions. The voltage generated is typically from several microvolts to tens of millivolts and is dependent on the temperature difference and the thermocouple type.
Cold Junction Compensation (CJC)
The voltage generated by a thermocouple must be converted to temperature. Converting the voltage measured to an accurate temperature can be difficult, because the thermocouple voltage is small, the temperature-voltage relationship is nonlinear, and the cold junction temperature must also be accurately measured.
The total output voltage of the thermocouple is caused by the difference between the temperature of the thermocouple and the cold junction temperature. Figure 2 shows that the cold junction temperature is measured with another temperature sensitive device, typically a thermistor, diode, RTD, or semiconductor temperature sensor. The temperature-sensing device used for this circuit is a Pt1000 RTD, and there is one RTD in each of the four channels for accurate measurements.
In Figure 2, the total thermocouple voltage, VTC – VCJ, is measured with the precision ADC in the ADuCM360 and converted to a digital format using the following equation:
VTC − VCJ is the measured thermocouple voltage.
VREF is the reference used for measurement. For this circuit, the internal 1.2 V reference is used for the thermocouple measurement.
CODE is the 28-bit word in the ADuCM360 ADC data register (ADCxDAT) with a gain of 8.
A constant current source, IEXE (obtained from the ADucM360) drives the series combination of the RTD and a precision 1.6 kΩ reference resistor, R5. The IEXE setting for the CN-0394 circuit is 620 μA that produces a nominal VREF of 1.6 kΩ × 620 μA = 0.992 V, and a drop of 1 kΩ × 620 μA = 0.62 V across the RTD. The voltage across R5 is used as a reference to the ADC. The RTD resistance, RRTD, is calculated using the following equation:
R5 is the reference resistor, R5 = 1.6 kΩ.
CODE is the 28-bit word in the ADuCM360 ADC data register (ADCxDAT) with a gain of 1.
In the CN-0394 circuit, the thermocouple voltage and the RTD voltage are both converted by the ADuCM360 24-bit ADCs. Note that the measurement is ratiometric and not dependent on the accuracy of either the reference voltage or the value of the IEXE excitation current.
The RTD resistance, RRTD, is then converted into the cold junction temperature, TCJ, using either a lookup table or polynomial equations. The RTD transfer function known as the Callender-Van Dusen equation is made up of two distinct polynomial equations to provide a more accurate result and is used in the CN-0394 software. Refer to the Circuit Note CN-0381 for a more detailed explanation of these RTD equations.
The cold junction temperature, TCJ, is then converted into the corresponding thermocouple voltage, VCJ, using the equations in the ITS-90 Thermocouple Database. The CN-0394 software uses the ITS-90 polynomial equations rather than the lookup tables to perform this conversion.
The software then sums the total thermocouple voltage (VTC− VCJ) with the cold junction VCJ to obtain the thermocouple EMF, VTC.
The ITS-90 inverse equations are then used to convert the thermocouple EMF, VTC, to the equivalent thermocouple temperature, TTC.
For the thermocouple theory, linearization tables, equations, and cold junction compensation, refer to the NIST ITS-90 Thermocouple Database, NIST Standard Reference Database 60, Version 2.0 (available on the NIST website). For the general theory of thermocouples and temperature measurements, see Chapter 7 of Sensor Signal Conditioning.
The CN-0394 circuit uses the ADuCM360 integrated, dual, 24-bit, Σ-Δ ADC to perform the conversions. The ADuCM360 contains an input multiplexer and an integrated PGA with gain options of 1 to 128. The ADuCM360 can be configured to have 6 differential inputs or 12 single-ended inputs.
The ADuCM360 also offers a multitude of filter options and output data rates, ensuring that the user has the highest degree of flexibility.
The PGA allows amplification of the small thermocouple voltage to a level that is optimum for the internal sigma-delta ADC. The proper gain setting is determined by the amplitudes of the thermocouple signals and the value of the reference voltage. The CN-0394 software supports eight types thermocouple: B, E, J, K, N, R, S, and T.
Different thermocouples have different ranges and sensitivities, as shown in Figure 3. For instance, Type J thermocouples are made by joining iron and constantan and have an approximate range of −210°C to +1200°C with a sensitivity of 55 μV/°C.
Therefore, by using the integrated PGA of the ADuCM360, the small thermocouple voltage levels can be sensed and accurately converted to a digital representation.
The cold junction temperature range is 0°C to 50°C, and the maximum and minimum output voltage range is determined by examining the voltage swings of the various types and including the cold junction voltage component that is subtracted from the thermocouple voltage. The Type E thermocouple requires the widest range, as shown in Table 1.
|Output||Hot Junction||Cold Junction||Voltage|
The ADuCM360 ADC bipolar differential input range using the internal 1.2 V reference is ±125 mV with the PGA gain set to G = 8. This range covers the output voltage ranges of all eight types of thermocouples, therefore no external signal conditioning circuits are needed, and the PGA can operate at a fixed gain of 8 for all thermocouple types. The 24-bit resolution allows thermo-couples with small signal ranges (such as Type B) to be measured without the need for gain ranging. The thermocouple is connected in the differential mode to the ADC, and the negative input is connected to a 900 mV common-mode bias voltage supplied by the ADuCM360.
The EVAL-CN0394-ARDZ board has four miniature Type U female thermocouple connectors (Omega PCC-SMP-U-100) for connecting to the thermocouples mating male connectors. The cold junctions are formed at the connector contacts, and the CJC RTDs are located close to the connectors.
A simple 2-wire RTD connection is used in the CN-0394 circuit; however, the ADuCM360 contains programmable excitation currents that can be used for 2-wire, 3-wire, and 4-wire RTDs. Details on 3-wire and 4-wire applications can be found in Circuit Note CN-0381 and Circuit Note CN-0383, respectively.
System Noise Measurements and Results
It is important that the system noise be low so that the small amount of voltage from a thermocouple can be measured accurately. Figure 4 shows the histogram of 512 samples taken with the thermocouple connector shorted on one channel. The ADuCM360 sinc3 filter was on, chop mode was enabled, and the data rate was 50 Hz.
From the histogram, the peak-to-peak noise referenced to the input is 2.51 μV. For a full-scale input of 125 mV, the noise free code resolution can be calculated:
System Thermocouple Measurements and Results
Thermocouple system measurement tests require accurate knowledge of the thermocouple temperature over a wide temperature range. Though oil baths are accurate, they have a limited temperature range and are slow to stabilize.
An accurate thermocouple simulator, such as the Time Electronics 1090 temperature calibrator, offers an attractive alternative to the oil bath method. Figure 5 shows a block diagram that explains the simulator test concepts.
The simulator allows the user to input the thermocouple type and temperature as well as the cold junction temperature. The simulator then uses the ITS-90 tables and equations to convert the thermocouple temperature, TTC, and the cold junction temperature, TCJ, into their respective voltages, VTC and VCJ. Then VCJ is subtracted from VTC to yield the simulator output voltage, VTC – VCJ.
The overall accuracy of the simulator depends on the thermocouple type and temperature, but is typically between 0.5°C and 2°C.
Note that the simulator does not test the accuracy of the system cold junction compensation circuit, which must be tested separately with a thermocouple attached.
Figure 6 shows the error between simulated and measured temperature for E, J, K, N, and T type thermocouples, and Figure 7 shows the error for B, R, and S type thermocouples. A zero-scale and full-scale calibration was performed on the ADuCM360 ADC before taking the measurements.
The errors shown in Figure 6 and Figure 7 are a combination of the following sources:
- Simulator error (0.15°C to 3°C depending on type and range)
- ADC reference voltage accuracy (0.2%)
- System offset and gain errors that remains after internal ADC calibration (less than 10 μV)
- ADC nonlinearity (15 ppm FSR, which is 1.9 μV for FSR = 125 mV)
- Error in ITS-90 equations (varies from 0.001°C to 0.06°C depending on type and range)
The reference error (0.1% for the ADuCM360 internal reference) causes a system gain error and can contribute several degrees Celsius of error at high temperatures.
The B, R, and S type thermocouples are more sensitive to offset errors because of their small Seebeck coefficients.
The ADuCM360 nonlinearity and the error in the ITS-90 equations are both negligible with respect to the other error sources.
The measured data shown in Figure 6 and Figure 7 is within the accuracy specifications of all eight standard thermocouples over their respective ranges.
For highest accuracy, especially with B, R, and S type thermo-couples, a system-level zero-scale and full-scale calibration must be performed using a precision external voltage source.
A more accurate external reference, such as the ADR4525 with (0.02% initial accuracy), can also be used to minimize gain errors.
Cold junction compensation was tested by connecting a Type J thermocouple to a channel and maintaining the thermocouple at ambient temperature while cycling the CN-0394 board under a ThermoStream or Thermonics temperature controller. The Type J thermocouple was chosen because of its high sensitivity to temperature change.
The measurements were made at cold junction temperatures of 0°C, 25°C, and 105°C, and the results are shown in Figure 8.
A complete set of documentation for the EVAL-CN0394-ARDZ hardware including schematics, layout files, Gerber files, and bill of materials can be found in the CN-0394 Design Support Package.
System Design Tradeoffs
The EVAL-CN0394-ARDZ board is designed to provide maximum flexibility for any combination of four independent thermocouple input channels, and the circuit design uses a minimum of additional components.
The ADC in the ADuCM360 can provide higher accuracy if a system-level zero-scale and full-scale calibration is performed before making measurements.
The ADC in the ADuCM360 is capable of improved noise performance if the inputs are configured for differential operation and an input anti-aliasing filter is added to each channel. A typical filter arrangement is shown in Figure 9, where R1 + R2 and C3 form a differential mode filter (bandwidth of approximately 800 Hz) and R1/C1 and R2/C2 form common-mode filters (bandwidth of approximately 16 kHz).
The ADuCM360 can be configured in a number of low power operating modes under direct program control, including a hibernate mode (internal wake-up timer active) that consumes only 4 μA. In hibernate mode, peripherals such as external interrupts or the internal wake-up timer can wake up the device. This mode allows the device to operate with ultralow power and still respond to asynchronous external or periodic events.
The ADuCM360 internal 1.2 V reference has ±0.1% initial accuracy. For higher accuracy and reduced full-scale gain error, the ADR4525 2.5 V, ±0.02% reference can be used instead.
Circuit Evaluation & Test
This circuit uses the EVAL-CN0394-ARDZ Arduino shield board and the EVAL-ADICUP360 Arduino platform board. The two board easily stack together easily, with the EVAL-CN0394-ARDZ on the top, and EVAL-ADICUP360 on the bottom. The thermocouples plug into the P1 to P4 sockets of the EVAL-CN0394-ARDZ board.
The system connects to the PC through the USB interface on the EVAL-ADICUP360 board. Both boards are powered from the USB 5 V supply. The RTD sensors are already assembled on the EVAL-CN0394-ARDZ printed circuit board (PCB).
The following equipment is needed:
- PC with a USB 2.0 port and Windows® 7 (64-bit) or later
- EVAL-CN0394-ARDZ Arduino shield-compatible circuit evaluation board
- EVAL-ADICUP360 development board or compatible Arduino platform board
- Any combination of B, E, J, K, N, R, S, and T thermocouples (four total), or Time Electronics 1090 temperature calibrator or equivalent
- ADICUP360 software (IDE), see the CN-0394 User Guide
- Serial terminal software such as PuTTY or Tera Term
- USB A to USB micro cable
- EVAL-CN0394-ARDZ demo code (see the CN-0394 User Guide)
Select the correct jumper settings on the EVAL-ADICUP360 board. The jumper settings are described in detail in the CN-0394 User Guide.
Plug the EVAL-CN0394-ARDZ Arduino shield board into the EVAL-ADICUP360 Arduino-compatible platform board. Connect the thermocouple sensors to the EVAL-CN0394-ARDZ board. Connect the user USB port to the PC. Each of the four channels uses an omega style connector for the thermocouples, which simplifies plugging in and out different thermocouple types. The Type U connector was selected so that all the channels on the board (P1 to P4) are universal and interchangeable.
Load the project demo code onto the ADuCM360 IDE by following the Tool Chain Setup User Guide.
The software must be configured for the thermocouple types on P1, P2, P3, and P4 as described in the CN-0394 User Guide.
When the program is running, the output data is calculated and displayed in the terminal window.
Information regarding the Arduino form factor-compatible ARM Cortex-M3 development platform (EVAL-ADICUP360) is available in the EVAL-ADICUP360 User Guide.
Functional Block Diagram
A block diagram of the test setup is shown in Figure 10.
When the sample code is built and loaded onto the EVAL-ADICUP360 and the EVAL-CN0394-ARDZ is mounted on top, the device communicates with the PC, and continuously updates and displays the following for each channel:
- Channel number and thermocouple type
- RTD resistance
- Linearized RTD temperature (cold junction temperature)
- Linearized thermocouple temperature
Warning messages display if the final linearized temperature for the selected thermocouple is out of the range defined by the ITS-90 equations. Other programming options are described in detail in the CN-0394 User Guide.
Figure 11 shows a photo of the EVAL-CN0394-ARDZ board.