SIMULASI SENSOR SUHU LM35 DENGAN ARDUINO PADA TAMPILAN LCD DAN PARAMETER TAMBAHAN BERUPA LED PADA PROTEUS


SIMULASI SENSOR SUHU LM35 DENGAN ARDUINO PADA TAMPILAN LCD DAN PARAMETER TAMBAHAN BERUPA LED PADA PROTEUS

Proteus merupakan gabungan dari program ISIS dan ARES. Dengan penggabungan kedua program ini maka skematik rangkaian elektronika dapat dirancang serta disimulasikan dan dibuat menjadi layout PCB. Proteus dapat mensimulasikan berbagai jenis mikroprosesor dan mikrokontroler, termasuk mikrokontroler keluarga AVR. Diharapkan dengan menggunakan program simulasi ini maka perancangan rangkaian berbasis mikrokontroler dapat lebih mudah dilakukan serta mengurangi biaya produksi dan menghemat waktu. Proteus dilengkapi program compiler, sehingga dapat mengkompilasi file kode sumber seperti Assembly menjadi file HEX sehingga nantinya dapat digunakan oleh mikrokontroler yang sebenarnya.
Arduino adalah pengendali mikro single board yang bersifat open source, diturunkan dari wiring platform, diancang untuk memudahlan penggunaan elektronik dalam berbagai bidang. Hardwarenya memiliki prosesor atmel AVR dan softwarenya memiliki bahasa pemrograman sendiri. Pin analog pada Arduino (dan mikrokontroller lain pada umumnya) dapat digunakan untuk input dan output digital. Hanya saja pin analog memiliki fitur untuk dapat mengubah sinyal analog yang masuk menjadi nilai digital yang mudah diukur. Pin digital hanya dapat mengenali sinyal 0 volt sebagai nilai LOW dan 5 volt sebagai nilai HIGH. Sedangkan Pin analog dapat mengenali sinyal pada rentang nilai voltase tersebut. Hal ini sangat berguna ketika kita hendak mengukur sesuatu dari sensor dan menggunakan nilai masukan tersebut untuk keperluan lain.
Pin analog ini terhubung dengan converter pada mikrokontroller yang dikenal dengan istilah analog-to-digital converter (disingkat ADC atau A/D). Converter ini mengubah nilai analog berbentuk sinyal voltase ke dalam bentuk digital/angka supaya nilai analog ini dapat digunakan dengan lebih mudah dan aplikatif. Pada Arduino (mikrokontroller ATMega) converter ini memiliki resolusi 10 bit, artinya nilai hasil konversi berkisar dari 0 hingga 1023. Pada Arduino UNO, pin analog ditandai dengan label A0 sampai A5. Pada board lainnya, pin-pin yang diberi tanda A, Analog, ADC adalah pin analog. Fungsi yang kita gunakan untuk membaca nilai analog pada Arduino adalah analogRead([nomorPin]).
LCD (Liquid Crystal Display) adalah suatu jenis media tampil yang menggunakan kristal cair sebagai penampil utama. LCD sudah digunakan diberbagai bidang misalnya alal–alat elektronik seperti televisi, kalkulator, ataupun layar komputer. Pada bab ini aplikasi LCD yang dugunakan ialah LCD dot matrik dengan jumlah karakter 2 x 16. LCD sangat berfungsi sebagai penampil yang nantinya akan digunakan untuk menampilkan status kerja alat. Adapun fitur yang disajikan dalam LCD ini adalah:
·         Terdiri dari 16 karakter dan 2 baris.
·         Mempunyai 192 karakter tersimpan.
·         Terdapat karakter generator terprogram.
·         Dapat dialamati dengan mode 4-bit dan 8-bit.
·         Dilengkapi dengan back light.
Project kali ini akan menggunakan arduino sebagai mikrokontrolernya, LCD sebagai penampil data suhu dan sensor suhu LM35 yang berfungsi sebagai sensor. 


Ketika jalur RS berada dalam kondisi low “0”, data yang dikirimkan ke LCD dianggap sebagai sebuah perintah atau instruksi khusus (seperti bersihkan layar, posisi kursor dll). Ketika RS dalam kondisi high atau “1”, data yang dikirimkan adalah data ASCII yang akan ditampilkan dilayar. Misal, untuk menampilkan huruf “A” pada layar maka RS harus diset ke “1”. Jalur kontrol R/W harus berada dalam kondisi low (0) saat informasi pada data bus akan dituliskan ke LCD. Apabila R/W berada dalam kondisi high “1”, maka program akan melakukan query (pembacaan) data dari LCD. Instruksi pembacaan hanya satu, yaitu Get LCD status (membaca status LCD), lainnya merupakan instruksi penulisan. Jadi hampir setiap aplikasi yang menggunakan LCD, R/W selalu diset ke “0”. Jalur data dapat terdiri 4 atau 8 jalur (tergantung mode yang dipilih pengguna), DB0, DB1, DB2, DB3, DB4, DB5, DB6 dan DB7. Mengirim data secara parallel baik 4-bit atau 8-bit merupakan 2 mode operasi primer. Untuk membuat sebuah aplikasi interface LCD, menentukan mode operasi merupakan hal yang paling penting.
Mode 8-bit sangat baik digunakan ketika kecepatan menjadi keutamaan dalam sebuah aplikasi dan setidaknya minimal tersedia 11 pin I/O (3 pin untuk kontrol, 8 pin untuk data).Sedangkan mode 4 bit minimal hanya membutuhkan 7-bit (3 pin untuk kontrol, 4 pin untuk data). Bit RS digunakan untuk memilih apakah data atau instruksi yang akan ditransfer antara mikrokontroller dan LCD. Jika bit ini di set (RS = 1), maka byte pada posisi kursor LCD saat itu dapat dibaca atau ditulis. Jika bit ini di reset (RS = 0), merupakan instruksi yang dikirim ke LCD atau status eksekusi dari instruksi terakhir yang dibaca.

            I.     ALGORITMA PROGRAM
Membuat program dengan simulasi adc tegangan, arus, dan daya menggunakan proteus dan arduino :
1.      Buka software Proteus 8 Professional
2.      Untuk membuat project baru klik “New Project”
3.      Ubah “Project Name” pada kolom  Name untuk mengubah nama proyek sesuai dengan yang diinginkan, lalu klik “Next”.
4.      Pilih Schematic Design yang sesuai, dalam program ini yang dipilih adalah Landscape A4, lalu klik “Next” sampai “Finish”. 
5.      Pilih komponen-komponen yang dibutuhkan dalam pemograman dengan cara :
      ·         Klik P untuk memilih ARDUINO UNO R3, LM016L, LED, MINRES330R dan LM35.
      ·         Klik TERMINAL untuk memilih POWER , dan GROUND.
6.      Rangkai komponen-komponen tersebut seperti gambar di bawah ini :



7.      Buka software arduino untuk membuat script agar program yang di simulasikan berjalan.
8.      Script yang dibuat pada arduino adalah sebagai berikut :
#include <LiquidCrystal.h>
int Vin;
float Temperature;
float TF;
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(2, 3, 4, 5, 6, 7);
void setup() {
  pinMode(13, OUTPUT);
  pinMode(12, OUTPUT);
  lcd.begin (16,2) ;
  lcd.print("Temperature:");
}
void loop() {
  Vin = analogRead (A1);
  if (Temperature > 20) {
    digitalWrite (13, HIGH) ;
    digitalWrite (12, LOW);
  }
  if (Temperature < 20) {
    digitalWrite (13, LOW) ;
    digitalWrite (12, HIGH);
  }
  Vin = analogRead(A0) ;
  Temperature=(500*Vin)/1023;
  lcd.setCursor (0,1);
  lcd.print(Temperature);
  lcd.print ("C") ;
  delay (500) ;
}
9. Tampilan dalam arduino :


10. Klik check list pada arduino sampai “Done Compiling”
11.  Masukan script arduino ke dalam arduino yang ada di Proteus
12.  Klik Play pada Proteus

            II.     FLOW CHART PROGRAM







       III.     PEMBAHASAN
Pada simulasi sensor suhu LM35 dengan arduino pada tampilan lcd dan parameter tambahan berupa led ini memakai LCD tipe LM016L, dengan tambahan LED warna merah dan biru. Pada percobaan ini saya mengatur bahwa ketika suhu dinaikan di atas 200C yang diatur melalui sensor suhu,  maka lampu LED biru akan menyala. Kemudian  jika suhu diturunkan di bawah 200C, maka lampu LED merah akan menyala. Berikut ini adalah gambar LED yang bekerja di atas 200C dengan sensor suhu pada arduino di proteus :
Kemudian Berikut ini adalah gambar LED yang bekerja di bawah 200C dengan sensor suhu pada arduino di proteus :

 

Simulasi kali ini memanfaatkan LCD dengan ukuran 16X2 yang fungsinya yaitu untuk menunjukkan nilai temperature yang diatur oleh sensor suhu LM35 yang dihubungkan pada kaki kiri yaitu kaki analog (pada A1 dan A2). Pada simulasi kali ini dengan bahasa pemograman yang tertera pada algoritma program, ketika dimasukkan script arduinonya terhadap Arduino UNO R3 di proteus dapat berjalan sesuai dengan keinginan. Hal ini berarti bahasa pemograman tepat sehingga dapat dijalankan dalam suatu program yang memanfaatkan sensor suhu sebagai parameter utamanya.
       IV.     KESIMPULAN
Pada simulasi sensor suhu LM35 dengan arduino pada tampilan lcd dan parameter tambahan berupa led dapat disimpulkan bahwa :
      1.   Parameter yang didapat akan muncul sesuai dengan bahasa pemograman dari library arduino.
      2.   Arduino yang digunakan adalah Arduino UNO.
      3.   Ketika sensor suhu diatur di bawah 200C maka LED merah akan menyala.
      4.   Ketika sensor suhu diatur di atas 200C maka LED biru akan menyala.

       

      

Komentar