// Deklarasi pin sensor NTC
const int ntcPin = A0;
// Variabel untuk menampung suhu
float temperatureCelsius;
void setup() {
Serial.begin(9600); // Inisialisasi komunikasi serial
}
void loop() {
// Membaca nilai analog dari sensor NTC
int sensorValue = analogRead(ntcPin);
// Mengkonversi nilai analog ke suhu dalam derajat Celsius
temperatureCelsius = convertToCelsius(sensorValue);
// Menampilkan suhu ke Serial Monitor
Serial.print("Temperature: ");
Serial.print(temperatureCelsius);
Serial.println(" °C");
delay(1000); // Delay 1 detik
}
// Fungsi untuk mengkonversi nilai analog menjadi suhu dalam derajat Celsius
float convertToCelsius(int rawValue) {
// Resistor referensi pada rangkaian (dalam ohm)
float R_ref = 10000.0; // Nilai ini bisa disesuaikan dengan resistor yang digunakan
// Nilai resistor NTC pada suhu referensi (25 °C)
float R_ntc_ref = 10000.0; // Nilai ini bisa disesuaikan dengan karakteristik NTC yang digunakan
// Konstanta beta NTC
float beta = 3950.0; // Nilai ini bisa disesuaikan dengan karakteristik NTC yang digunakan
// Tegangan referensi (dalam volt)
float V_ref = 5.0;
// Konversi nilai analog menjadi tegangan (dalam volt)
float V_ntc = V_ref * (float(rawValue) / 1023.0);
// Menghitung resistansi NTC (dalam ohm)
float R_ntc = (R_ref * V_ntc) / (V_ref - V_ntc);
// Menghitung suhu (dalam derajat Celsius)
float temperature = (1.0 / ((log(R_ntc / R_ntc_ref) / beta) + (1.0 / 298.15))) - 273.15;
return temperature;
}