#include <Servo.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2); // setting alamat lcd 0x27 16 karakter dan 2 baris
const int pirPin = 2; // Pin sensor PIR terhubung ke pin 2 Arduino
const int servoPin = 9; // Pin motor servo terhubung ke pin 9 Arduino
Servo servo; // Membuat objek untuk motor servo
void setup() {
pinMode(pirPin, INPUT); // Mengatur pin sensor PIR sebagai input
servo.attach(servoPin); // Menghubungkan motor servo ke pin yang ditentukan
lcd.begin(16, 2); // Inisialisasi LCD dengan ukuran 16x2
lcd.backlight();
}
void loop() {
int pirState = digitalRead(pirPin); // Membaca nilai dari sensor PIR
// Jika gerakan terdeteksi
if (pirState == HIGH) {
// Menampilkan pesan pada LCD
lcd.clear();
lcd.setCursor(4, 1);
lcd.print("nilai = 1");
lcd.setCursor(0, 0);
lcd.print("Gerak Terdeteksi");
// Menggerakkan servo motor ke posisi 90 derajat
servo.write(90);
delay(1000);
} else {
// Jika tidak ada gerakan terdeteksi
// Menampilkan pesan pada LCD
lcd.clear();
lcd.setCursor(4, 1);
lcd.print("nilai = 0");
lcd.setCursor(0, 0);
lcd.print("Tdk Ada Gerakan");
// Menggerakkan servo motor ke posisi 0 derajat
servo.write(0);
delay(1000);
}
}