2. Rangkaian Simulasi [Kembali]
Rangkaian terdiri dari 1 Arduino Uno, 1
LM35, 1 LCD, 2 rsistor dan 2 LED merah dan hijau. Pin LM35. Pin analog arduino
(A0) dihubungkan ke sensor LM35 sebagai inputan, pin 9 dihubungkan ke motor dc,
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 LED merah
hijau akan hidup ketika suhu berada pas 25-30 derajat celcius. Maka program
arduino dapat dibuat sebagai berikut.
#include <LiquidCrystal.h> //deklarasi library LCD
Untuk penjelasannya 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 float suhu untuk deklarasi variabel
dengan tipe data float. Lalu int led1 = 8; bahwa pin 8 untuk led1 dan int led2
= 9;bahwa pin 9 untuk led2. lcd.begin(16,
2); untuk dimensi LCD yang digunakan.
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 pinMode(led1,OUTPUT)
untuk deklarasi pin led1 sebagai output, pinMode(led2,OUTPUT) untuk deklarasi
pin led2 sebagai output, 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 suhu = ((analogRead(A0) * 500.00) / 1024) sebagai rumus mencari suhu, lcd.setCursor(0,
0) untuk menghapuslayar LCD, lcd.print("LM35 Sensor Suhu") untuk
menampilkan teks LM35 Sensor Suhu, lcd.setCursor(0, 1) untuk menunjukkan kolom
1 dan baris 2 sebagai posisi penulisan, dan lcd.print(suhu) untuk menunjukkan
perintah menampilkan nilai suhu.
Selanjutnya ada percabangan if dengan kondisi if((suhu>=25) and(suhu<=30)) jika terpenuhi maka digitalWrite(led1,HIGH) dan digitalWrite(led1,HIGH) untuk menyalakan kedua LED. Jika tidak terpenuhi digitalWrite(led1,LOW) dan digitalWrite(led2,LOW) tuntuk menandakan kedua LED mati. Kemudian di-delay selama 100ms.
Setelah program selesai selanjutnya mengcompile dan menyalin alamat file hex ke dalam proteus. Setelah itu simulasi proteus di running. Maka dapat kita lihat bahwa pada suhu 25-30 derajat maka led hijau dan merah akan menyala. Di luar suhu itu maka led tidak akan menyala.
Tidak ada komentar:
Posting Komentar