DS1631 – Arduino Code and Temperature Validation

Summary of DS1631 – Arduino Code and Temperature Validation


The article discusses the DS1631, a low-cost digital thermometer with a 12-bit resolution and I2C interface, measuring temperatures from -55°C to +125°C. The author validates the DS1631 against a type J thermocouple using a NI 9214 input module, providing wiring schematics and Arduino code compatible with IDE version 1.6.6. The data collected shows temperature variations during heating with a heat gun and ambient changes in an office setting, highlighting differences due to sensor packaging.

Parts used in the DS1631 Digital Thermometer Validation Project:

  • DS1631 Digital Thermometer IC
  • NI 9214 Thermocouple Input Module
  • Type J Thermocouple
  • Arduino Board (compatible with IDE 1.6.6)
  • Heat Gun (for testing)
  • Wiring components (pull-down resistors for address pins)

Basic information

The DS1631 is a low cost, I2C interface digital thermometer popular in the maker community. Capable of providing 12-bit temperature readings over a -55°C to +125°C range. I have need for a digital thermometer in many of my projects and thought it would be nice to do a simple validation against a standard thermocouple. I have also provided an Arduino Script for use with the Arduinos IDE. This code comes from the archived Arduino forums; I have updated it so it will work with a newer IDE (version 1.6.6) and Wire.h library.

 

Image- Arduino Code and Temperature Validation

The thermocouple is read using a NI 9214 thermocouple input module as shown below. The wiring schematic for the DS1631 as tested is also provided. All three address pins are pulled low, to give the chip an address of 0x90.

 

Schematic

Schematic- Arduino Code and Temperature Validation

Data

The figures below are a brief set of data collected during testing of the DS1631. Here the IC is tested against a type J thermocouple. Data in the first figure was collected using a heat gun to heat up both sensors. The heat gun was set to 100 C, and the data was collected at 500 Hz for both sensors. The difference in the recorded temperature may be a factor of how the DS1631 package holds heat, vs the bare tip of the thermocouple. The second set of data was collected over a few hours in my office. You can clearly see the temperature swing at the beginning when I leave my office.

For More Detail: Arduino Code and Temperature Validation


About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:
LinkedinTwitter

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top