Laporan Akhir 2 Modul 2







1. Jurnal [Kembali]


LCD menampilkan teks "Kondisi Panas" ketika suhu >= 30 dan "kondisi Aman" ketika suhu <30


2. Alat dan Bahan [Kembali]

A. Alat
1. Jumper

2. Breadboard
   
2. Kabel USB

 
B. Bahan


1. LCD




2. LM35





3. Mikrokontoler Arduino Uno





3. Rangkaian Simulasi [Kembali]




4. Prinsip Kerja Rangkaian [Kembali]

Rangkaian terdiri dari 1 Arduino Uno, 1 LM35, dan 1 LCD. Pin analog arduino (A0) dihubungkan ke sensor LM35 sebagai inputan, pin 7 dihubungkan ke pin D7 LCD, pin 6 dihubungkan ke pin D6 LCD, pin 5 dihubungkan ke pin D5 LCD, pin 4 dihubungkan ke pin D4 LCD, pin 3 dihubungkan ke pin E, pin 2 dihubungkan ke pin RS. Lalu pin VDD LCD dihubungkan ke power, pin VSS, VEE, dan RW dihubungkan ke ground.

Berdasarkan kondisi percobaan jika suhu menunjukkan pada kisaran besar sama 30derajat maka akan muncul teks “Kondisi Panas”. Namun, ketika seuhu menunjukkan kisaran kecil dari 30 derajat maka akan muncul teks “Kondisi Aman”. Berikut program arduino:


#include <LiquidCrystal.h>    //Deklarasi library LCD

#define LM35 A0    //Deklarasi pin A0 untuk LM35


LiquidCrystal lcd(2,3,4,5,6,7);   //Deklarasi pin 2-7 untuk LCD 

int nilaiSuhu;    //Deklarasi variabel nilaiSuhu


void setup()    //Semua kode dalam fungsi ini dieksekusi sekali

pinMode(A0, INPUT);   //Deklarasi pin A0 sebagai OUTPUT

lcd.begin(16,2);    //Dimensi LCD yang digunakan

}


void loop()   //Semua kode dalam fungsi ini dieksekusi berulang

{

nilaiSuhu=((5*analogRead(LM35)*100.00)/1024);   //Mencari nilai Suhu

lcd.clear();     //Menghapus layar LCD

lcd.setCursor(0,0);    //Menentukan posisi kursor pada awal penulisan 

lcd.print("LM35 Sensor Suhu");    //Menampilkan text pada LCD 

delay(250);   //Waktu delay 250 ms setelah dieksekusi

if(nilaiSuhu>=30){    //percabangan dengan kondisinya suhu besar sama 30

for (int i=0; i<16; i++){   //Perulangan dari 0 sampai 16 decreament

  lcd.setCursor(0,1);   //Meletakkan cursor pada kolom 0 di baris 1

  lcd.print(nilaiSuhu);   //Menampilkan nilaiSuhu pada LCD

  lcd.setCursor(3,1);   //Meletakkan cursor pada kolom 3 di baris 1

  lcd.print("Kondisi Panas");   //Menampilkan teks "Kondisi panas" pada LCD

  lcd.scrollDisplayRight();   //Semua tampilan teks bergulir ke kanan 

  delay(250);   //Waktu delay 250 ms setelah dieksekusi

}

}

else{   //kondisi percabangan else suhu dibawah 30

  lcd.setCursor(0,1);   //Meletakkan cursor pada kolom 0 di baris 1

  lcd.print(nilaiSuhu);   //Menampilkan nilaiSuhu pada LCD

  lcd.setCursor(3,1);   //Meletakkan cursor pada kolom 3 di baris 1

  lcd.print("Kondisi Aman");    //Menampilkan teks "Kondisi panas" pada LCD

}


delay(1000);    //Waktu delay 100 ms setelah dieksekusi

}


Untuk penjelasan program arduino yaitu deklarasi library dari LCD dengan #include <LiquidCrystal.h>. Kemudian #define LM35 A0 untuk mendefenisikan pin A0 digunakan untuk sensor LM35. Kemudian LiquidCrystal lcd(2, 3, 4, 5, 6, 7); sebagai deklarasi pin LCD. Setelah itu int nilaiSuhu untuk deklarasi variabel dengan tipe data int. Lalu int led1 = 8; bahwa pin 8 untuk led1 dan int led2 = 9;bahwa pin 9 untuk led2. 

Setelah itu ada void setup () menunjukkan kode dalam fungsi ini hanya dibaca satu kali. Kode-kode yang ada di dalamnya yaitu pinMode(A0,INPUT) untuk deklarasi pin A0 sebagai input dan lcd.begin(16, 2) untuk menunjukkan lcd yang digunakan berukuran 16x2.

Setelah itu ada fungsi void loop() menunjukkan semua kode dalam fungsi ini akan dibaca berulang. Untuk kode-kode di dalamya yaitu nilaiSuhu = ((analogRead(A0) * 500.00) / 1024) sebagai rumus mencari suhu, lcd.clear() untuk menghapuslayar LCD, lcd.setCursor(0, 0) untuk menentukan posisi kursor pada awal penulisan pada k0lom 0, baris 0, lcd.print("LM35 Sensor Suhu") untuk menampilkan teks LM35 Sensor Suhu, delay(250); waktu delay 250 ms.

Setelah itu didalamnya ada percabangan if dengan kondisi if((suhu>=30) jika terpenuhi maka dilakukan perulangan for (int i=0; i<16; i++) dimulai dari 0 sampai 16 decreament dengan lcd.setCursor(0,1) dan lcd.print(nilaiSuhu) akan menampilkan teks berupa variabel suhu di kolom 0 baris 1 LCD dan dengan lcd.setCursor(3,1), lcd.print("Kondisi Panas"), lcd.scrollDisplayRight() ) akan menampilkan teks berupa “Kondisi Panas” di kolom 3 baris 1 LCD yang bergulir ke kanan, lalu delay 250 ms untuk membuat LCD berkedip.

Selanjutnya kondisi else ketika kondisi selai dari yang dideklarasikan atau suhu di bawah 30 maka dengan lcd.setCursor(0,1) dan lcd.print(nilaiSuhu) akan menampilkan teks berupa variabel suhu di kolom 0 baris 1 LCD dan dengan lcd.setCursor(3,1), lcd.print("Kondisi Panas"), lcd.scrollDisplayRight() ) akan menampilkan teks berupa “Kondisi Aman” di kolom 3 baris 1. Setelah itu program diberi delay 1000 ms. 

Setelah disimulasikan dapat dilihat pada suhu >=30 LCD akan menampilkan “Kondisi Panas” dan ketika suhu < 30 makan LCD akan menampilkan “Kondisi Aman”. Hal ini terjadi karena proses pengonversian data analog ke digital di mana sensor LM35 merupakan inputan analog bagi arduino dan kemudian diolah oleh ADC sehingga menghasilkan sinyal digital sehingga sensor dapat digunakan. 


5. Video Rangkaian [Kembali]




6. Analisa [Kembali]

1. Tuliskan dan jelaskan sintaks program yang digunakan untuk menampilkan suhu beserta kondisinya! Analisalah penggunannya? Contoh : Kita menginginkan pada suhu 28 derajat celcius, yang nantinya muncul adalah kondisi normal. Jadi, tuliskan sintask dan jelaskan programnya!

Jawab:

#include <LiquidCrystal.h>  //Deklarasi library LCD

#define LM35 A0  //Deklarasi pin A0 untuk LM35


LiquidCrystal lcd(2,3,4,5,6,7); //Deklarasi pin 2-7 untuk LCD 

int nilaiSuhu;    //Deklarasi variabel nilaiSuhu


void setup()                     //Semua kode dalam fungsi ini dieksekusi sekali

pinMode(A0, INPUT);   //Deklarasi pin A0 sebagai OUTPUT

lcd.begin(16,2);               //Dimensi LCD yang digunakan

}

void loop()                       //Semua kode dalam fungsi ini dieksekusi berulang

{

nilaiSuhu=((5*analogRead(LM35)*100.00)/1024);   //Mencari nilai Suhu


lcd.clear();     //Menghapus layar LCD

lcd.setCursor(0,0);    //Menentukan posisi kursor pada awal penulisan kolom 0, baris 0

lcd.print("LM35 Sensor Suhu");  //Menampilkan text pada LCD 

lcd.setCursor(0,1);    //Menentukan posisi kursor pada awal penulisan di kolom 0, baris 1 

lcd.print(nilaiSuhu);    //Menampilkan nilaiSuhu pada LCD

if(nilaiSuhu=28){

  lcd.setCursor(0,1);  //Menentukan posisi kursor pada awal penulisan 

  lcd.print("Kondisi normal");

}

delay(100);    //Waktu delay 100 ms setelah dieksekusi

}

Pertama deklarasi library LCD dan deklarasi pin A0 untuk LM35. Kemudian deklarasi Pin 2-7 untuk LCD. Lalu deklarasi voriabel nilaiSuhu. Kemudion Void setup () dimana semua kode dalam fungsi ini dieksekusi sekali. kode dalam fungsi void Setup() yaitu pinMode(A0, INPUT) sebagai deklarasi pin A0 sebagai input. Kemudian lcd.begin(16.2) adalah dimensi LCD yg digunakan 16x2.

Kemudian ada Fungsi void loop() dimana semua kode dalam fungsi ini dijalankan berulang. Untuk kode di didalamnya yaitu nilaiSuhu = ((5xanalogRead(LM 35 )x100)/1024) adalah rumus muncari suho terukur, kemudian LED dibersihkan dan menentukan posisi pada awal penulisan. Kemudian akan di tampilken teks yaitu "LM35 sensor suhu dan menentukan posisi kursor pada awal penulisan di kolom 0, baris 1. Lalu tampilkan variabel nilaiSuhu Setelah itu ada percabongan if dimana diatur kondisinya dengan if (niloSuhu=28) agar ketika syarat nilai suhu sama dengan 28 maka akan tampil teks "kondisi normol” yang tampil pada kolom 0 baris 1 kemudian di-delay 1oo ms. Proses ini merupakan proses pengonversian data analog ke digital di mana sensor LM35 merupakan inputan analog bagi arduino dan kemudian diolah oleh ADC sehingga menghasilkan sinyal digital sehingga sensor dapat digunakan.


2. Jika pada percobaan ini kita ingin menggunakan potensiometer, ke pin manakah output potensiometer itu dihubungkan pada LCD? Kenapa harus kita hubungkan ke pin tersebut? Apa fungsi pin tersebut?

Jawab:

Output potensiometer bisa dihubungkan ke LCD yaitu di pin V0. Potensiometer bisa dihubungkan ke pin V0 karena pin tersebut merupakan display contrast. Fungsi pin tersebut adalah untuk mengatur tingkat kecerahan atau kontras LCD.


7. Link Download [Kembali]
  • Download rangkaian simulasi Klik
  • Download video simulasi Klik
  • Download listing program Klik
  • Download HTML  Klik
  • Download library Arduino Uno  Klik
  • Download datasheet Arduino Uno  Klik
  • Download datasheet LM35 Klik
  • Download datasheet LCD  Klik



Tidak ada komentar:

Posting Komentar

BAHAN PRESENTASI UNTUK MATAKULIAH ELEKTRONIKA Oleh Annisa Az-Zahra 2010952058 Dosen Pengampu: Darwison, M.T. JURUSAN TEKNIK ELEKTRO FAKULTAS...