Proyek Arduino UNO R3: Mengukur Suhu dengan LM35 Melalui Serial Monitor Arduino
Sebelum mengenal arduino, mengukur
suhu lingkungan sekitar adalah hal yang cukup merepotkan. Dikatakan
merepotkan karena kita harus memiliki seperangkat alat pengukur suhu
yang sering kita kenal sebagai termometer, baik termometer analog maupun
termometer digital. Tentu alat pengukur suhu tersebut tidaklah didapat
dengan cuma-cuma. Dan ujung-ujungnya, kita wajib menyiapkan dana
tambahan untuk membelinya.
Baiklah untuk mensiasati masalah
diatas, kali ini saya akan menjelaskan bagaimana merangkai alat untuk
mengukur suhu (termometer buatan) dengan mudah menggunakan
mikrokontroller populer, bernama Arduino Uno beserta sensor suhu LM 35,
output berupa suhu yang dideteksi oleh sensor akan ditampilkan oleh
serial monitor arduino. Kita mulai dengan mempersiapkan
komponen-komponen yang kita butuhkan, antara lain :
- Project Board
- Arduino Uno
- Sensor Suhu LM 35
- Kabel Jumper
- Kabel USB Arduino
Sebelum kita rangkai lebih jauh, akan saya jelaskan sekilas
mengenai sensor suhu LM 35. Sensor ini cukup populer sebagai sensor
pengukur suhu dengan harga yang terjangkau. LM35 merupakan IC sensor
suhu dengan bentuk yang mirip dengan transistor. Kaki IC ini hanya ada
tiga, yaitu untuk VCC (kaki 1), Output (kaki 2), dan GND (kaki 3), lebih
jelasnya lihat gambar 1
Gambar 1. Sensor Suhu LM 35 |
Sensor ini bisa digunakan untuk mengukur suhu dari -55 derajat –
150 derajat celcius. Lebih dari cukup untuk mengukur suhu lingkungan
sekitar kita, bukan ! Berdasarkan datasheet LM35, maka kita bisa
menggunakan pengukuran penuh (-55 – 150 derajat celcius) atau pengukuran
sebagian yaitu hanya bisa menghitung dari 2 – 150 derajat celcius.
Maka, yang kita perlukan kali ini adalah pengukuran suhu secara
sebagian, dengan rangkaian dasar sensor sebagai berikut :
Gambar 2. rangkaian dasar sensor suhu |
Gambar 3. Rangkaian sensor suhu LM 35 |
- Sambungkan kaki 1 sensor LM 35 ke VCC 5 Volt Arduino
- Sambungkan kaki 2 (tengah) ke pin analog A0. Alasan disambungkannya kaki tengah ke pin analog adalah input yang akan masuk ke sensor LM35 sejatinya adalah input analog, yaitu suhu. Input analog tersebut nantinya akan ditampilkan dalam bentuk digital.
- Sambungkan kaki 3 ke GND Arduino
Oke, sampai disini cukup mudah, kan ! Yang merasa kesulitan hanyalah yang tidak memiliki komponennya, hehehe, kasian deh....
Rangkaian pada gambar 3 jika dirangkai beneran akan menjadi seperti gambar 4 berikut :
![]() |
Gambar 4 implementasi rangkaian sensor suhu |
Jika kita menggunakan tegangan referensi 5 volt, maka Arduino bisa
mengukur setidaknya hingga 5000 mV. padahal kemampuan LM35 hanya sebatas
150o celcius atau 150 x 10 mV = 1500 mV 1.5 volt). Sehingga tegangan
yang keluar dari kaki output LM35 tidak akan mungkin melebihi 1.5 volt.
Berdasarkan persamaan sederhana, maka kita bisa menghitung suhu
berdasarkan perbandingan antara kapasitas voltase yang bisa dicacah oleh
pin analog Arduino (1024) dan kemampuan LM35 mengukur suhu. Begini cara
menghitungnya :
Suhu dalam Voltase (T) : 0 - 500
Cacahan Voltase input (Vin) : 0 - 1024
0/500 = 0/1024
T/500 = Vin/1024
T = (Vin * 500) / 1024
Program arduino dapat ditulis seperti berikut :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| int PinSuhu = A0 ; float suhu, data ; void setup() { Serial.begin(9600) ; pinMode(PinSuhu, INPUT) ; } void loop() { data = analogRead(PinSuhu) ; suhu = data * 500 / 1024 ; Serial.print( "data : " ) ; Serial.print(data ) ; Serial.print( " Suhu : " ); Serial.print(suhu) ; Serial.print( " C" ) ; Serial.println(); delay(1000) ; } |
Program diatas akan membaca data
dari sensor suhu pada pin A0 di board Arduino kemudian mengkonversinya
menjadi suhu. Informasi suhu akan dikirim ke komputer melalui komunikasi
serial dengan baud rate 9600 setiap 1000 milisekon.
Variabel suhu dan data menggunakan float, yaitu tipe data yang memungkinkan memuat angka desimal. Di sini menggunakan desimal karena adanya pembagian sehingga jika kita menggunakan integer, maka hasil perhitungan kita kurang presisi karena hasil pembagiannya akan selalu dibulatkan.
Fungsi analogRead() digunakan untuk membaca masukan dari sensor analog. Nilai dari analog read ini berkisar dari 0 hingga 1023 berdasarkan kemampuan dari mikrokontroller dalam mencacah dari 0 – 5 volt. Selanjutnya hasil perhitungan suhu akan dimasukkan dalam variabel suhu, lalu nilai dari varibel suhu akan ditampilkan melalui Serial.print(suhu)
Hasil perhitungan suhu ditampilkan dalam serial monitor arduino secara real-time setiap 1000 milisekon.
Agar lebih menarik, maka rangkaian dapat dikembangkan
lebih jauh untuk dapat menampilkan hasil perhitungan suhu melalui layar
LCD. Semoga tutorial sederhana ini bermanfaat bagi teman-teman yang
sedang belajar arduino. Tunggu tutorial proyek arduino berikutnya....
Variabel suhu dan data menggunakan float, yaitu tipe data yang memungkinkan memuat angka desimal. Di sini menggunakan desimal karena adanya pembagian sehingga jika kita menggunakan integer, maka hasil perhitungan kita kurang presisi karena hasil pembagiannya akan selalu dibulatkan.
Fungsi analogRead() digunakan untuk membaca masukan dari sensor analog. Nilai dari analog read ini berkisar dari 0 hingga 1023 berdasarkan kemampuan dari mikrokontroller dalam mencacah dari 0 – 5 volt. Selanjutnya hasil perhitungan suhu akan dimasukkan dalam variabel suhu, lalu nilai dari varibel suhu akan ditampilkan melalui Serial.print(suhu)
Hasil perhitungan suhu ditampilkan dalam serial monitor arduino secara real-time setiap 1000 milisekon.
Output deteksi suhu melalui serial monitor arduino |
Proyek Arduino UNO R3: Mengukur Suhu dengan LM35 Melalui Serial Monitor Arduino
Reviewed by Riki
on
11:25:00 AM
Rating:
No comments:
Post a Comment