Hej..I am building a project with four NTC 10k ohm temperature sensor with Arduino. It is easy to measure only one NTC temperature sensor. There is many examples for NTC measurement for example code written with Steinhart-Hart Equation or reading ADC Thermistor with Lookup Table.
I found one example with Steinhart-Hart Formula. I am not so good at coding with Arduino but I Manage and build to write code for only one NTC sensor and read it with Nokia LCD 5110. The question is how to do code for Multiple NTC sensors?
/* NTC temperature mesurment 13-08-2017
*
* Using Nokia LCD 5110
*/
#include "LCD5110_Graph.h"
LCD5110 myGLCD(8, 9, 10, 12, 11); // Setup Nokia 5110 Screen SCLK/CLK=5, DIN/MOSI/DATA=6, DC/CS=7, RST=8 Chip Select/CE/SCE=9,
extern uint8_t SmallFont[];
extern uint8_t MediumNumbers[];
int tempPin = 0; // A0 analog input
int Vout, charTc ;
float R1 = 10000; //otpornost na sobnoj temperaturi 10K ili 10000 oma
float R2, Tk, Tc;
float Ac = 1.009249522e-03, Bc = 2.378405444e-04, Cc = 2.019202697e-07;
char charBuffer[10];
void setup(){
myGLCD.InitLCD(); //initialize LCD with default contrast of 70
myGLCD.setContrast(68);
myGLCD.setFont(SmallFont); // Set default font size. tinyFont 4x6, smallFont 6x8, mediumNumber 12x16, bigNumbers 14x24
myGLCD.clrScr();
myGLCD.print("Temp test",CENTER,0);
myGLCD.print("Check",CENTER,12);
myGLCD.print("Please Wait",CENTER,24);
myGLCD.update();
delay(5000);
myGLCD.clrScr();
}
void loop() {
Vout = analogRead(tempPin);
R2 = R1 * (1023.0 / (float)Vout - 1.0); // konvertovanje iz analogne u digitalnu
Tk = (1.0 / (Ac + Bc*log(R2) + Cc*log(R2)*log(R2)*log(R2))); // Temperature in Klven
Tc = Tk - 273.15; //temperature converted to celcious
charTc=dtostrf(Tc, 3, 2, charBuffer);
myGLCD.clrScr();
//myGLCD.print("Discharging",CENTER,0);
//myGLCD.print("Temperature:",CENTER,0);
myGLCD.print("Temp1:",0,0);
//myGLCD.print( charTc,CENTER,20 );
myGLCD.print( charTc,36,0 );
myGLCD.print("Temp2:",0,10);
myGLCD.print("Temp3:",0,20);
myGLCD.print("Temp4:",0,30);
myGLCD.update();
delay(2000);
myGLCD.clrScr();
}
int tempPin = 0; // A0 analog input
specify which analog input that should be used as input for reading the NTC value. Then you can expand the code with the analog inputs that is needed.