Langkah-langkah percobaan :
1. Siapkan alat dan bahan yaitu dengan komponen utama Arduino Uno, Infrared Sensor, IC I2C, Keypad dan Motor DC
2. Rangkai sesuai gambar percobaan
3. Rancang kerja rangkaian sesuai flowchart
4. Tekan tombol “Play” untuk menjalankan simulasi
2. Hardware dan Diagram Blok [Kembali]
- LDR sensor
- Arduino Uno
- LCD
- Motor Servo
- Driver Motor L293D
3. Rangkaian Simulasi dan Prinsip Kerja [Kembali]
Prinsip Kerja:
Cara kerja rangkaian ini adalah sensor LDR dan saklar sebagai input, dan LCD serta motor sebagai output. Jika kedua saklar aktif dan sensor LDR kurang dari 200 maka akan muncul karakter (0,0) pada kolom LCD dan motor akan berputar ke kanan. Untuk 3, jika saklar aktif dan LDR lebih besar dari 600, karakter pada kolom (0,1) akan dikeluarkan dan motor akan berputar ke kiri.
4. Flowchart dan Listing Program [Kembali]
flowchart:
listing program:
#include <LiquidCrystal.h>
// Define pin numbers
const int switch1Pin = A0;
const int switch2Pin = A1;
const int switch3Pin = A2;
const int ldrPin = A3;
const int triggerPin1 = 3;
const int triggerPin2 = 5;
// Define LCD pin numbers
const int rs = 12, en = 11, d4 = 10, d5 = 9, d6 = 8, d7 = 7;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
void setup() {
// Set pin modes
pinMode(switch1Pin, INPUT);
pinMode(switch2Pin, INPUT);
pinMode(switch3Pin, INPUT);
pinMode(ldrPin, INPUT);
pinMode(triggerPin1, OUTPUT);
pinMode(triggerPin2, OUTPUT);
// Initialize LCD
lcd.begin(16, 2);
}
void loop() {
// Read switch and LDR values
int switch1State = digitalRead(switch1Pin);
int switch2State = digitalRead(switch2Pin);
int switch3State = digitalRead(switch3Pin);
int ldrValue = analogRead(ldrPin);
// Check conditions and trigger actions
if (ldrValue < 200 && switch1State && switch2State && !switch3State) {
digitalWrite(triggerPin1, HIGH); // Activate triggerPin1
lcd.setCursor(0, 0); // Set cursor to first column of first row
lcd.print("Switch 1 & 2 ON");
} else {
digitalWrite(triggerPin1, LOW); // Deactivate triggerPin1
}
if (ldrValue > 600 && switch1State && switch2State && switch3State) {
digitalWrite(triggerPin2, HIGH); // Activate triggerPin2
lcd.setCursor(0, 1); // Set cursor to first column of second row
lcd.print("Switch 1,2,3 ON");
} else {
lcd.clear();
digitalWrite(triggerPin2, LOW); // Deactivate triggerPin2
}
}
5. Kondisi [Kembali]
Kondisi 7:
Ketika ADC < 200 dan 2 switch aktif, motor berputar ke kanan dan muncul karakter pada kolom 1 LCD, Ketika ADC > 600 dan semua switch aktif, motor berputar ke kiri dan muncul karakter pada kolom 2 LCD
7. Download File [Kembali]
video klik di sini
html klik di sini
rangkaian klik di sini
code arduino uno klik di sini
Tidak ada komentar:
Posting Komentar