DAFTAR ISI
1. Prosedur
2. Hardware dan Diagram Blok
3. Rangkaian Simulasi dan Prinsip Kerja
4. Flowchart dan Listing Program
5. Kondisi
6. Video Demo
7. Download File
MODUL 2: PWM, ADC, dan Interrupt
Selasa, 19 Maret 2024
Laporan Akhir 1
1. Prosedur
a. Susunlah seperti rangkaian yang ada,
b. Buka Arduino IDE dan masukkan listing program,
c. Unggah program ke Arduino, dan
d. Variasikan kondisi pada sensor LDR untuk melihat perubahan karakter pada LCD
2. Hardware dan Diagram Blok
Percobaan 1
3. Rangkaian Simulasi dan Prinsip Kerja
Percobaan 1
Rangkaian tersebut merupakan sistem kontrol yang menggunakan Arduino sebagai kontrol utama. Sistem ini dirancang untuk merespons input dari sensor dan saklar guna mengatur pergerakan motor DC. Prinsip kerjanya terletak pada penggunaan iterasi dalam loop utama, di mana program akan membaca status saklar utama dan nilai sensor LDR. Jika saklar utama dalam keadaan aktif, program akan menentukan jumlah saklar tambahan yang aktif. Berdasarkan jumlah saklar aktif, program akan memilih aksi yang sesuai. Sebagai contoh, jika tidak ada saklar yang ditekan, program akan menampilkan nilai sensor LDR pada layar LCD. Jika satu saklar ditekan, motor DC akan diaktifkan. Jika dua saklar ditekan, program akan memantau nilai sensor LDR dan mengubah arah putaran motor sesuai dengan cahaya yang ditangkap pada sensor. Jika tiga saklar ditekan, program akan mengatur kecepatan motor DC menggunakan sinyal PWM berdasarkan nilai sensor LDR. Dalam program dapat menghentikan motor sejenak dan mengubah arah putarannya jika nilai sensor LDR berada di bawah 650 atau di atas 650. Jika nilai LDR berada di bawah 650 maka motor akan
berhenti sejenak dan berputar ke kanan. Sebaliknya jika nilai LDR berada di
atas 650 maka motor berhenti kembali sejenak dan berputar ke kiri.
4. Flowchart dan Listing Program
Percobaan 1
#include <LiquidCrystal.h>
LiquidCrystal lcd(13, 12, 11, 10, 9, 8);
int sw1 = 2;
int sws[]={3,4,7};
int numsw = 3;
int front = 6;
int back = 5;
void setup() {
// put your setup code here, to run once:
lcd.begin(16,2);
pinMode(sw1,INPUT);
for(int thesw = 0; thesw < numsw; thesw++){
pinMode(sws[thesw],INPUT);
}
pinMode(front,OUTPUT);
pinMode(back,OUTPUT);
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
int s1 = digitalRead(sw1);
int ldr = analogRead(A0);
if(s1 == HIGH){
int activesw = 0;
int thesw = 0;
for(thesw; thesw < numsw; thesw++){
if(digitalRead(sws[thesw]) == HIGH){
activesw++;
}
}
Serial.print("Number of Switch : ");
Serial.println(activesw);
Serial.print("Number of Activation : ");
Serial.println(thesw);
delay(200);
switch(activesw){
case 0 :
lcd.clear();
lcd.setCursor(0,0);
lcd.print(ldr);
lcd.setCursor(0,1);
lcd.print("The LDR Value");
digitalWrite(front,LOW);
digitalWrite(back,LOW);
delay(200);
break;
case 1 :
lcd.clear();
lcd.setCursor(2,0);
lcd.print("Running The");
lcd.setCursor(2,1);
lcd.print("Motor");
digitalWrite(front,HIGH);
digitalWrite(back,LOW);
delay(200);
break;
case 2 :
lcd.clear();
lcd.setCursor(0,0);
lcd.print("LDR Value : ");
lcd.setCursor(13,0);
lcd.print(ldr);
if(ldr < 650){
lcd.setCursor(0,1);
lcd.print(" ");
lcd.setCursor(0,1);
lcd.print("turn Motor right");
digitalWrite(front,HIGH);
digitalWrite(back,LOW);
}else{
lcd.setCursor(0,1);
lcd.print(" ");
lcd.setCursor(0,1);
lcd.print("turn Motor left");
digitalWrite(front,LOW);
digitalWrite(back,HIGH);
}
break;
case 3 :
int pwm = map(ldr,0,1023,0,255);
digitalWrite(back,LOW);
analogWrite(front,pwm);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("PWM = ");lcd.print(pwm);
lcd.setCursor(0,1);
lcd.print(" Control ???");
delay(200);
break;
}
delay(10);
}else{
Serial.println("look at the LCD");
digitalWrite(back,LOW);
digitalWrite(front,LOW);
lcd.clear();
lcd.setCursor(4,0);
lcd.print("ELECTRONIC");
lcd.setCursor(0,1);
lcd.print("&INSTRUMENTATION");
delay(100);
}
}
5. Kondisi
Pada percobaan kali ini, kami melakukan percobaan ke-1 dengan menggunakan sensor LDR dan LCD.
6. Video Demo
7. Download File
Unduh HTML di sini
Unduh Datasheet Arduino UNO di sini
Unduh Datasheet LCD 2x16 di sini
Unduh Datasheet Motor Servo di sini
Unduh Datasheet Motor DC di sini
Unduh Datasheet L293D di sini
Unduh Datasheet Dipswitch di sini
Unduh Datasheet Keypad di sini




.jpg)








0 Komentar