Menggunakan Sensor Suhu LM35 dengan Arduino dan Tampilan LCD

Sensor suhu LM35 merupakan salah satu sensor suhu yang bekerja dengan mengubah besaran fisis (suhu) menjadi besaran listrik (tegangan).

Karena keluaran sensor berupa tegangan yang bersifat analog, maka dari itu sensor suhu LM35 dapat dihubungkan dengan board Arduino dengan memanfaatkan port Analog dan ADC (Analog to Digital Converter).

LM35 memiliki keakuratan tinggi dan kemudahan perancangan jika dibandingkan dengan sensor suhu yang lain, LM35 juga mempunyai keluaran impedansi yang rendah dan linearitas yang tinggi.

Kelebihan itu menyebabkan LM35 dapat dengan mudah dihubungkan dengan rangkaian kendali khusus serta tidak memerlukan penyetelan lanjutan. Sumber: Penjelasan Tentang LM35.

Sedangkan proses berubahnya panas menjadi tegangan dikarenakan di dalam LM35 ini terdapat termistor berjenis PTC (Positive Temperature Coefisient), yang mana termistor inilah yang menangkap adanya perubahan panas. 

Prinsip kerja dari PTC ini adalah nilai resistansinya akan meningkat seiring dengan meningkatnya temperatur suhu. Resistansi yang semakin besar tersebut akan menyebabkan tegangan output yang dihasilkan semakin besar. Sumber: Sensor Suhu LM35.

Sensor suhu LM35 mampu mengukur suhu dari -55℃ sampai 150℃. Setiap kenaikan suhu 1℃, tegangan output sensor akan meningkat sebesar 10mV.

Sensor suhu LM35 memiliki spesifikasi sebagai berikut:

  • Minimum and Maximum Input Voltage is 35V and -2V respectively. Typically 5V.
  • Can measure temperature ranging from -55°C to 150°C
  • Output voltage is directly proportional (Linear) to temperature (i.e.) there will be a rise of 10mV (0.01V) for every 1°C rise in temperature.
  • ±0.5°C Accuracy
  • Drain current is less than 60uA
  • Low cost temperature sensor
  • Small and hence suitable for remote applications
  • Available in TO-92, TO-220, TO-CAN and SOIC package

Sensor suhu LM35 memiliki 3 buah kaki yang mewakili VCC, OUT dan Ground.

Menggunakan Sensor Suhu LM35 dengan Arduino dan Tampilan LCD
Gambar 1 Penjelasan Kaki LM35

Bahan-bahan

  1. Arduino Uno.
  2. Sensor suhu LM35.
  3. LCD 16x2.
  4. Potensio (opsional).

Rangkaian-Mengakses LM35 dengan Arduino

Gambar 2 Diagram Skematik Interface Arduino dengan LM35

Diagram Rangkaian LM35 Arduino Uno
Gambar 3 Diagram Rangkain Arduino dengan LM35

Penting: Pada tutorial kali ini saya menggunakan sensor suhu LM35 yang memiliki rentang ukur suhu antara 0℃ - 100℃. Jika menggunakan sensor dengan rentang ukur yang berbeda, dibutuhkan sedikit perubahan kode program.

Jadi di sini kita memanfaatkan pin A1 sebagai penghubung antara Arduino dengan LM35. Selain itu, seperti yang sudah disampaikan di atas, kita menggunakan ADC (Analog to Digital Converter) agar output analog dari LM35 dapat diubah menjadi digital.

Pada bagian ini kita menggunakan board Arduino Uno, karena board ini paling umum dijumpai. Kawan-kawan bisa menggunakan board yang lain seperti Arduino Mega 2560, Arduino Pro Mini dan lain-lain dengan menyesuaikan pin-pin yang digunakan dalam tutorial ini.

Pada bagian ini board Arduino Uno kita hubungkan ke PC/laptop seperti biasanya. Hasil pembacaan suhu dari sensor suhu LM35 akan kita tampilkan pada Serial Monitor pada software Arduino IDE.

Jika kawan-kawan sudah membuat rangkaian di atas, silakan buka software Arduino IDE, buat file baru, dan tempelkan kode program di bawah ini.

Kode Program LM35 dengan Arduino

const int sensor = A1;
int tempc;
float tempf;
float vout;
float adc;

void setup()
{
 Serial.begin(9600);
 Serial.println("https://mahirelektro.com");
 Serial.println("Tutorial Arduino: Mengakses sensor suhu LM35");
 Serial.println(" ");
 pinMode(sensor, INPUT);
 delay(100);
}

void loop()
{
 adc = analogRead(sensor);
 vout = adc / 1023 * 5;
 tempc = vout * 100;
 tempf = (tempc * 1.8) + 32;

 Serial.print("Suhu (Celcius)= ");
 Serial.print(tempc);
 Serial.println(" °C");

 Serial.print("Suhu (Fahrenheit)= ");
 Serial.print(tempf);
 Serial.println(" °F");
 Serial.println(" ");
 delay(100);
}

Jika sudah ditempel, silakan compile untuk memastikan tidak ada kesalahan. Jika tidak ada kesalahan / error silakan unggah program. Setelah program berhasil diunggah, buka serial monitor, pilih baud rate 9600, pastikan tampilan yang muncul kurang lebih seperti gambar di bawah ini.

Gambar 4 Serial Monitor

Jika kawan-kawan sudah berhasil mengakses sensor suhu LM35 dengan Arduino dan menampilkan pembacaan sensor pada serial monitor kini saatnya melangkah ke tahap selanjutnya, yakni menampilkan hasil pembacaan sensor suhu LM35 ke sebuah LCD 16x2. 

Rangkaian-Menampilkan Pembacaan Suhu LM35 Pada LCD

Rangkaian-Menampilkan Pembacaan Suhu LM35 Pada LCD
Rangkaian untuk menampilkan pembacaan suhu LM35 pada LCD

Berbeda dari sebelumnya dimana kita menampilkan hasil pembacaan sensor suhu LM35 ke serial monitor, kali ini kita akan menampilkan hasil pembacaan sensor suhu LM35 pada sebuah LCD 16x2. 

Pertama silakan kawan-kawan ikuti skematik di atas. Jika sudah silakan paste kode program yang saya berikan di bawah. Kemudian, pastikan port dan jenis Arduino yang digunakan benar. Lalu compile untuk memastikan tidak ada kesalahan. Jika compile berhasil, silakan upload program. 

Kode Program-Menampilkan Pembacaan Suhu LM35 Pada LCD

#include <LiquidCrystal.h>
const int rs = 9, en = 8, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
const int sensor = A1;
int tempc;
float tempf;
float vout;
float adc;

void setup()
{
 Serial.begin(9600);
 pinMode(sensor, INPUT);
 lcd.begin(16, 2);
 lcd.setCursor(0, 0);
 lcd.print("mahirelektro.com");
 lcd.setCursor(0, 1);
 lcd.print("Tutorial Arduino");
 delay(800);
 lcd.clear();
}

void loop()
{
 adc = analogRead(sensor);
 vout = adc / 1023 * 5;
 tempc = vout * 100;
 tempf = (tempc * 1.8) + 32;

 lcd.setCursor(0, 0);
 lcd.print("Suhu= ");
 lcd.print(tempc);
 lcd.print((char)223);
 lcd.print("C");

 lcd.setCursor(0, 1);
 lcd.print("Suhu= ");
 lcd.print(tempf);
 lcd.print((char)223);
 lcd.print("F");
 delay(80);
}

Oke, setelah program di atas diunggah, pastikan program berjalan dengan benar, kurang lebih seperti video di bawah ini. 

Akhir Kata

Itulah dia tutorial menggunakan sensor suhu LM35 menggunakan Arduino dan menampilkan data hasil pembacaan ke LCD 16x2. Jika kawan-kawan tertarik untuk mengukur suhu dan kelembaban, kawan-kawan bisa membaca salah satu tutorial saya di blog ini yakni: Cara Mengukur Suhu dan Kelembaban dengan DHT11 dan Arduino.  Di artikel berikutnya kita akan membahas tutorial lain yang berhubungan dengan dunia elektronika.