Connecting 1/8 NTP Analog sensor

Hi!

Can you advise me please, how to connect 1/8 NTP Analog sensor (this is from automotive to read oil temperatura) such this: https://www.reveltronics.com/en/shop/59/19/measurement-systems/sensors/temperature-sensor-ntc-oil-engine-water-detail
?

The sensor has two cables. How to connect this to Arduino board?

Thanks in advance!

Google "using thermistor with Arduino" for information on how thermistors work and how to connect them to Arduino. Then refer to the data sheet for how to convert the voltage read by the ADC to temperature.

Thanks!

So looking at the chart of the NTC sensor, it has the following range: 62000-430 Ohms.
Looking back at the attached scheme - how to connect a thermistor to Arduino I have the following question - should I use 62k Ohms resistor together with this NTC to get proper readings?

Thanks!

One of the many tutorials that show up for a Google search for "arduino thermistor".

hould I use 62k Ohms resistor together with this NTC to get proper readings?

The usual resistor for a 10K thermistor (for a thermistor that is approximately 10K at room temperature like yours) is 10K Ohms.

The link shows a 50kohm NTC thermistor (50k@25C).
You would normally connect a thermistor between an analogue pin and ground, and use a fixed value resistor between pin and 5volt.
The optimum value of that pull up resistor depends on the temp range you want to measure.
If you are interrested in room temp, then use a ~50k resistor (47k).
If you want to measure water temp in a car (~85C), then you could use ~5k6 (see datasheet graph).
Since you're also interrested in a lower water temp, you could compromise by using a 10k resistor.
Convenient, because most thermistor codes assume a 10k pull up resistor (can be changed in the code).
This Adafuit tutorial explains a bit more.
Change "#define THERMISTORNOMINAL 10000" to "#define THERMISTORNOMINAL 50000" in the final code.
Leo..

Hi! Thanks for all replies.

Finally managed to do some development but got stuck with higher temps.

As I've mentioned in my first post, I have automotive thermistor.
Accordingly to it's specification: Oil and water temperature sensor up to 150°C NTC

it has:

  • detailed mapping resistance/temp
  • reference resistance at 25 Celsios deg which is about 52 kOhm

So, I connected it to arduino board adding 47 kOkm resistor.
I'm reading its resistance using belows function, and having the resistance and the thermistor mapping as per below - resistance->temp I calc the temp.

The code:

  1. Calculating resistance

float readResistance(int pin,float series) {
float reading;

reading = analogRead(pin);

Serial.print("Analog reading ");
Serial.println(reading);

// convert the value to resistance
reading = (1023 / reading) - 1; // (1023/ADC - 1)
reading = series / reading; // 10K / (1023/ADC - 1)
return reading;
}

  1. Calculating temperature

float calcTemp(float resistance) {
float temp;
...
scan mapping provided by the manufacturer: resistance->temp
...
return temp
}

  1. Main loop
    float resistance = readResistance(THERMISTORPIN,SERIESRESISTOR);

float temp = calcTemp( resistance );

Serial.print("temp: ");
Serial.println( temp );

#define SERIESRESISTOR 46300
#define THERMISTORPIN A0

The problem is, when I try to read temp for water ex. that has 100 Celsius deg I get very big resistance... works fine till the temps is 20-30...
Can any one help what am I missing there ?

Thank you in advance!

cnmorph:
So, I connected it to arduino board adding 47 kOkm resistor.

So you want to measure room temperature, not oil temperature?
Did you even read my post?
Leo..

Hi

I've read your post, thanks but maybe I didn't understand it properly.

You mentioned:
If you want to measure water temp in a car (~85C), then you could use ~5k6 (see datasheet graph).

I want to measure temps between let's say 40-140... so what resistance should I use?

With a thermistor, resolution (A/D steps per degreeC) unfortunately drops when the thermistor resistance differs from the pull up resistor value.

So use a ~5k6 resistor (or 5k, or 10k), to you have max resolution in the middle of that temp range,
and a bit less at the extremes.
You ofcourse have to enter that new value in your code.
Leo..