Kamis, 07 Maret 2024

LA 2



MODUL 1
PERCOBAAN 4 KONDISI 4

1. Prosedur
[Kembali]

+ Rangkai semua komponen sesuai yang dipilih
+ rangkai lah komponen seperti pada modul
+ setelah selesai masukkan program ke arduino
+ jalankan program pada simulasi dan cobakan sesuai dengan modul dan kondisi
+ Selesai

2. Hardware dan diagram blok [Kembali]
      a. hardware
                                                                        
1. lcd




2. Arduino Uno



4. Keypad 



            b. Digram Blok





3. Rangkaian Simulasi dan Prinsip kerja [Kembali]



                                        
PRINSIP KERJA
    Saat program dijalankan dan di masukan ke arduino, pesan "Masukkan password:" ditampilkan di LCD. Selanjutnya, program terus berjalan dalam loop utama, menunggu input dari pengguna. Jika ada input dari keypad dan password belum dimasukkan, karakter tersebut ditampilkan di LCD, memungkinkan pengguna memasukkan karakter password satu per satu. Ketika sensor sentuh terdeteksi dan password belum dimasukkan, pesan di LCD dihapus dan diganti dengan "Password:", menandakan dimulainya proses memasukkan password. Selanjutnya, program memasuki loop untuk membaca input dari keypad dan menampilkannya di LCD. Proses ini berlanjut hingga tombol "#" ditekan, menandakan bahwa pengguna telah selesai memasukkan password. Setelah itu, program kembali ke awal, siap untuk memulai proses memasukkan password lagi jika diperlukan. Saat disimulasikan di Proteus, prinsip kerja akan sama dengan di dunia nyata, di mana pengguna akan melihat pesan dan interaksi yang sama pada layar LCD dan keypad.

4. FlowChart [Kembali]

a. Listing Program 

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <Keypad.h>

#define I2C_ADDRESS 0x27 // Address dari LCD PCF8574
#define LCD_COLUMNS 16 // Jumlah kolom pada LCD
#define LCD_ROWS 2 // Jumlah baris pada LCD

LiquidCrystal_I2C lcd(I2C_ADDRESS, LCD_COLUMNS, LCD_ROWS); // Inisialisasi objek LCD

const byte ROWS = 4; // Jumlah baris pada keypad
const byte COLS = 3; // Jumlah kolom pada keypad

char keys[ROWS][COLS] = {
  {'1','2','3'},
  {'4','5','6'},
  {'7','8','9'},
  {'*','0','#'}
};
byte rowPins[ROWS] = {9, 8, 7, 6}; // Pin baris keypad
byte colPins[COLS] = {5, 4, 3}; // Pin kolom keypad

Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);

const int IR_SENSOR_PIN = A0; // Pin sensor infrared
const int OUTPUT_PIN = 2; // Pin output

void setup() {
  Wire.begin(); // Inisialisasi komunikasi I2C
  pinMode(IR_SENSOR_PIN, INPUT);
  pinMode(OUTPUT_PIN, OUTPUT);
  lcd.init(); // Inisialisasi LCD
  lcd.backlight(); // Nyalakan backlight LCD
  lcd.setCursor(0, 0);
  lcd.print("Password:");
}

void loop() {
  char customKey = keypad.getKey();
  if (customKey) {
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print("Password:");
    lcd.setCursor(0, 1);
    lcd.print(customKey);
    
    // Periksa jika password benar (misalnya, "1") dan sensor infrared aktif
    if (customKey == '1' && digitalRead(IR_SENSOR_PIN) == HIGH) {
      digitalWrite(OUTPUT_PIN, HIGH); // Aktifkan output pada pin 2
    } else {
      digitalWrite(OUTPUT_PIN, LOW); // Matikan output pada pin 2
    }
  }
}



b. Flowchart





5. Kondisi [Kembali]

Kondisi  →Percobaan 4 Kondisi 4 : (keypad dan lcd): Sertakan sensor IR, mode diatur dengan keypad, tampilan mode pada LCD dan ketika sensor IR berlogika HIGH maka buzzer akan hidup

6. Video Simulasi [Kembali]



7. Download File [Kembali]

Download HMTL Klik disini
Download Simulasi Rangkaian Klik disini
Download Video Simulasi Klik disini
Download Datasheet ARDUINO UNO klik disini
Download Datasheet TOUCH SENSOR  klik disini
Download Datasheet LCD 2X16 klik disini

Tidak ada komentar:

Posting Komentar