top of page

Thermocouple Interfacing With Arduino UNO

Updated: Mar 2


Overview of Thermocouple





Thermocouple consists of two different conductors forming an electrical junction at different temperatures.


Due to thermo effect, thermocouples produce a voltage which is dependent on temperature.


Temperature can be found out from this voltage.


ADC output of this voltage can be processed by a microcontroller to give the temperature.


For more information about Thermocouple and how to use it, refer the topic Thermocouple in the sensors and modules section.

 

Connection Diagram of Thermocouple with Arduino





Measure Temperature using Thermouple and Arduino Uno


Measuring temperature using a thermocouple and displaying it on Arduino serial monitor.

 

Here, AD595 is used to connect thermocouple to UNO board. The output voltage from AD595 is given to ADC of UNO board.


The ADC value is then converted into ºC using the formula given below.



Why 0.0027 subtracted in above formula


AD595 provides output as follows,


AD595 Output = (Type K Voltage + 11 uV) x 247.3


  • The above formula shows AD595 provides output with amplified offset voltage. So, we have to eliminate total offset voltage (11 uV * 247.3) to get accurate temperature value.

Note : 11 uV is an offset voltage of IC AD595 instrumentation amplifier for K-type thermocouple.

 

AD595


  • AD595 is a complete instrumentation amplifier (Monolithic Thermocouple Amplifiers) with a Cold Junction Compensation.

  • AD595 is compatible for K-type thermocouple, while AD594 is compatible for J-type thermocouple.

  • It combines ice point reference with the pre-calibrated amplifier to produce a high level output (10mV/ºC) directly from the thermocouple output.

  • AD595 gain trimmed to match transfer characteristic of K-type thermocouple at 25ºC. The output of K-type thermocouple in this temperature range is 40.44uV/ºC.

  • The resulting gain for AD595 is 247.3 (10mV/ºC divided by 40.44uV/ºC).

  • The input offset voltage for AD595 is 11uV, this offset arises because the AD595 is trimmed for a 250 mV output while applying a 25°Cthermocouple input.

  • Output of AD595 is,

AD595 Output = (Type K Voltage + 11 uV) x 247.3


  • The IC AD595 pin diagram is shown in figure below.



Note: If you connect +5 volt and ground to the AD595 you can measure the temperature from 0ºC to +300ºC. For more information, refer AD595 datasheet.

 

Thermocouple Code for Arduino Uno


const int thermocouple_input = A1;	/* AD595 O/P pin */

void setup() {
  Serial.begin(9600);	/* Define baud rate for serial communication */
}

void loop() {
  int adc_val;
  float temperature;
  adc_val = analogRead(thermocouple_input);
  temperature = ( ((adc_val * 4.88) - 0.0027 ) / 10.0 );
  Serial.print("Temperature = ");
  Serial.print(temperature);
  Serial.print("\n\n");
  delay(1000);
}

 


2 views0 comments

Comments


bottom of page