2018
April Tuesday 24

Bookmark and Share

Related Articles...

MILWAUKEE WI Arduino Meet Up Make Space

WANTED: CORE TEAM MEMBER TO HELP START NON-PROFIT GROUP.

WANTED: Angle Investor Start-Up Funding

Large Industrial Zoned Arduino Make Space Acquired!

Email :

COASMailBox @ gmail.com

MILWAUKEE WI Raspberry Pi Meet Up Make Space

WANTED: CORE TEAM MEMBER TO HELP START NON-PROFIT GROUP.

WANTED: Angle Investor Start-Up Funding

Large Industrial Zoned Raspberry Pi Make Space Acquired!

Email :

COASMailBox @ gmail.com

MILWAUKEE WI Internet of Things (IoT) Meet Up Make Space

WANTED: CORE TEAM MEMBER TO HELP START NON-PROFIT GROUP.

WANTED: Angle Investor Start-Up Funding

Large Industrial Zoned Make Space Acquired!

Full Advanced Fabrication Facility, machine Shop, Welding, Electronics Lab Equipment Acquired!

Email :

COASMailBox @ gmail.com

MILWAUKEE WI Machine Repair, & Installation  - Tier 1 Business Support

Machine Technician Mechanic 20+ Years  Personal Experienced In Industrial Factory Machine Servicing, Rebuilding, Installation And Repair - Plus A 35+ Years Experienced Computer Engineer Service Technician Team Ready For Your Outsourced Market Advantage Needs!

Hartung Industrial - Member - CGI Science & Technology Group

Email :

COASMailBox @ gmail.com


2018 April REVIEW

 

Arduino Thermometer | Arduino Thermistor
| Gene's Quick Lab Ref

2017 | by Gene Casanova

Senior Systems/Network/Internet Engineer; Senior Technical Writer/Author/Editor


Thermistor

A thermistor is an accurate component used to measure temperature.

A thermistor is an analog sensor; changing resistance to electrical energy flow through it, in portion to temperature change.

Different thermistors are classified by the method of resistive response to temperature change.

A 'Negative Temperature Coefficient' (NTC) thermistor, resistance decreases with an increase in temperature.

A 'Positive Temperature Coefficient' (PTC) thermistor, resistance increases with an increase in temperature.

NTC Thermistor

A NTC thermistor is made with a semiconducting material (metal oxide or ceramic) heated and compressed, to form a temperature sensitive conducting material.

The sensitive conducting material contains charge carriers, enabling electrical current to flow through it.

High temperatures cause the semiconducting material to release more charge carriers.  In a NTC thermistor made of ferric oxide, electrons are the charge carriers.  In a nickel oxide NTC thermistor, the charge carriers are electron holes.


A THERMISTOR CIRCUIT

The resistance of a thermistor must be measured before a temperature can be computed.

An Arduino systemboard is not enabled to measure resistance.

An Arduino systemboard is enabled to measure voltage levels.

An Arduino can measure the voltage at a point between the thermistor and a known resistor.  This is known as a "voltage divider" circuit.  The equation for a voltage divider is:

Thermistor Equation

The variables in the equation are:

Vout
Voltage between thermistor and known resistor
Vin
Voltage input Vcc (+)
R1
Known resistor value
R2
Known resistance of thermistor.

This equation can be rearranged and simplified to solve for R2, the resistance of the thermistor.

Thermistor Equation 2

the Steinhart-Hart equation is used to convert the resistance of the thermistor, to a temperature reading.

The Steinhart–Hart equation is a model of the resistance of a semiconductor at different temperatures.


THE CIRCUIT

The value of the reference resistor should be equal to the resistance of the thermistor.

For an example, the resistance of the thermistor will be 100K Ohms.  The resistor must then be 100K Ohms.

Use a multimeter or Ohm meter, to determine a thermistor resistance value in Ohms.

An Arduino Ohm Meter can be built.

Only the magnitude of a thermistor needs to be known.  If a thermistor resistance is 34,000 Ohms, then it is a 10K thermistor.  If  340,000 Ohms, then the thermistor is a 100K thermsitor.

The example circuit:

1) Connect the resistor between the thermistor and ground on Ardiuno.

2) Connect the other lead of the thermistor, to the 5V pin of an Arduino systemboard.

3) Connect a lead from pin A0 (analog 0) on the Arduino, to the thermistor pin connected to the resistor.


THE SOURCE CODE

Upload the following source code (sketch) to the connected Arduino and thermistor.

The following source code example will produce an Arduino program to output  temperature readings from the thermistor, in Fahrenheit units of meassure, to the serial port.

int ThermistorPin = 0;
int Vo;
float R1 = 10000;
float logR2, R2, T;
float c1 = 1.009249522e-03, c2 = 2.378405444e-04, c3 = 2.019202697e-07;
void setup() {
 Serial.begin(9600);
}
void loop() {
 Vo = analogRead(ThermistorPin);
 R2 = R1 * (1023.0 / (float)Vo - 1.0);
 logR2 = log(R2);
 T = (1.0 / (c1 + c2*logR2 + c3*logR2*logR2*logR2));
 T = T - 273.15;
 T = (T * 9.0)/ 5.0 + 32.0;
 Serial.print("Temperature: ");
 Serial.print(T);
 Serial.println(" F"); 
 delay(500);
}

To display the temperature in degrees Celsius, comment out the line "T = (T * 9.0)/ 5.0 + 32.0;" by inserting two forward slashes ("//") at the beginning of the line; // T = (T * 9.0)/ 5.0 + 32.0;

int ThermistorPin = 0;
int Vo;
float R1 = 10000;
float logR2, R2, T, Tc, Tf;
float c1 = 1.009249522e-03, c2 = 2.378405444e-04, c3 = 2.019202697e-07;
void setup() {
  Serial.begin(9600);
}
void loop() {
 Vo = analogRead(ThermistorPin);
 R2 = R1 * (1023.0 / (float)Vo - 1.0);
 logR2 = log(R2);
 T = (1.0 / (c1 + c2*logR2 + c3*logR2*logR2*logR2));
 Tc = T - 273.15;
 Tf = (Tc * 9.0)/ 5.0 + 32.0; 
 Serial.print("Temperature: ");
 Serial.print(Tf);
 Serial.print(" F; ");
 Serial.print(Tc);
 Serial.println(" C");
 delay(500);
}

Use The Technology Wisely & Keep It Simple

- Cheers!

Gene Casanova


Cyber Security Since 1979 - Consulting Available | IoT Full Stack And App Developer

CGI Computer Wares | EST 1979

Send E-MailCONTACT: [click]@CGIComputerWares.com