Senin, 18 Maret 2024

LA 2



MODUL 2
PERCOBAAN 3 KONDISI 5

1. Prosedur
[Kembali]

+ Rangkai semua komponen sesuai kondisi yang dipilih
+ buat program di aplikasi arduino IDE
+ setelah selesai masukkan program ke arduino di proteus
+ jalankan program pada simulasi dan cobakan sesuai dengan modul dan kondisi
+ Selesai

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


b. arduino uno


c. seven segment.


d. dipswitch.


e. jumper.




                                
1. 2N1711
2. 7SEG-MPX2-CA-BLUE
3. Arduino Uno
4. 10WATT0RI
5. BATTERY
6. BUZZER
7. DIODE
8. DIPSW 
9. LED-RED
10. LMO16L
11. RELAY
12. RESISTOR


            b. Digram Blok



3. Rangkaian Simulasi dan Prinsip kerja [Kembali]





PRINSIP KERJA
    
        Dalam rangkaian M2P3 yang melibatkan TIMER, 7-segment display, dan DIP switch, prinsip kerja pada kondisi 5 diaktifkan saat 2 switch dari DIP switch menjadi aktif. Pada kondisi ini, rangkaian diatur untuk memulai sebuah operasi hitung maju menggunakan TIMER sebagai basis waktu. Awalnya, 7-segment display tidak menunjukkan nilai 2,0,2,4; operasi hitung maju dimulai dari nilai awal yang ditentukan dan berlangsung hingga mencapai nilai tertentu, dalam kasus ini adalah 3. Setelah nilai hitung maju mencapai 3, rangkaian kemudian menginstruksikan 7-segment display untuk menampilkan kombinasi angka 2,0,2,4. Operasi hitung maju ini dapat berbasis detik atau interval waktu lainnya yang ditentukan, dan perubahan nilai pada 7-segment display dikontrol secara elektronik melalui logika pemrograman pada mikrokontroler yang terhubung dengan TIMER dan DIP switch.

4. FlowChart [Kembali]

a. Listing Program 

#include  <LiquidCrystal_I2C.h>

#define tombol 2   // pin 2 (pin interrupt) bernama tombol
#define motorPin 11  // pin 11 untuk motor

#define motorDelay 5000 // Waktu rotasi motor dalam milidetik
#define stopDelay 3000  // Waktu motor berhenti dalam milidetik
#define restartDelay 7000 // Waktu sebelum penghitungan dimulai ulang dalam milidetik

volatile int count = 50; // Mulai dari 50

LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
  lcd.init();
  lcd.backlight();
  pinMode(tombol, INPUT);
  pinMode(motorPin, OUTPUT);
  attachInterrupt(digitalPinToInterrupt(2), tombol_ditekan, FALLING);
}

void loop() { // Main Program
  // Rotasi motor ke kanan selama 5 detik
  digitalWrite(motorPin, HIGH);
  delay(motorDelay);

  // Stop motor selama 3 detik
  digitalWrite(motorPin, LOW);
  delay(stopDelay);

  // Rotasi motor ke kiri selama 5 detik
  digitalWrite(motorPin, HIGH);
  delay(motorDelay);

  // Stop motor selama 3 detik
  digitalWrite(motorPin, LOW);
  delay(stopDelay);

  // LCD menampilkan counting dari 50 sampai 0
  lcd.setCursor(0, 0);
  lcd.print("Count: ");
  lcd.setCursor(0, 1);
  lcd.print(count);
 
  // Pengurangan integer count dengan angka 1
  count -= 1;

  // Jika count mencapai 0, reset kembali ke 50 dan tunggu 3 detik
  if (count < 0) {
    count = 50;
    delay(stopDelay);
  }
}

// Fungsi interrupt tombol ditekan
void tombol_ditekan() {
  count = 50; // Mengatur ulang hitungan
  delay(restartDelay);
}


b. Flowchart







5. Kondisi [Kembali]
Kondisi  →Percobaan 2 Kondisi 7
    M2P2 (Interrupt Arduino - LCD,LED, dan Motor DC)
Motor ke kanan 5 detik lalu mati 3 detik berputar ke kiri 5 detik dan mati 7 detik ,LCD menampilkan counting dari 50 sampai 0, interrupt counting diulang dari 50 dan motor DC berhenti 3 detik
        

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 LCD 2X16 klik disini
Download listing program klik disini

LA 1



MODUL 2
PERCOBAAN 2 KONDISI 7

1. Prosedur
[Kembali]

+ Rangkai semua komponen sesuai kondisi yang dipilih
+ buat program di aplikasi arduino IDE
+ setelah selesai masukkan program ke arduino di proteus
+ jalankan program pada simulasi dan cobakan sesuai dengan modul dan kondisi
+ Selesai

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


b. arduino uno


3. keypad



4. jumper



5. motor servo

                                                                        
1. Dipsw
2. LCD 2X16
3. Arduino Uno
4. motor
5. LMO16L
6. Buzzer
7. LED-RED
8. POT-HG
9. Resistor
10. PCF8574

            b. Digram Blok



3. Rangkaian Simulasi dan Prinsip kerja [Kembali]




                                        
PRINSIP KERJA
    
        Rangkaian percobaan M2P2 menggunakan interrupt Arduino untuk mengintegrasikan operasi sebuah motor DC, LCD, dan LED dengan cara yang spesifik. Motor DC diatur untuk berputar ke kanan selama 5 detik sebelum berhenti selama 3 detik, kemudian berputar ke kiri selama 5 detik, dan berhenti lagi selama 7 detik. Paralel dengan operasi motor, LCD menampilkan countdown dari 50 sampai 0. Ketika interrupt terjadi, sistem melakukan dua tindakan utama: mengulangi proses counting pada LCD dari 50 dan menghentikan operasi motor DC selama 3 detik. Interrupt ini dapat dipicu oleh event eksternal, seperti tombol yang ditekan, memungkinkan kontrol interaktif atas proses counting dan operasi motor. Ini menciptakan sebuah loop dimana motor dan display LCD berinteraksi sesuai dengan kondisi interrupt yang ditentukan, menunjukkan penggunaan interrupt dalam mengelola tugas-tugas simultan dan interaktif dalam sistem embedded.


4. FlowChart [Kembali]

a. Listing Program 

#include  <LiquidCrystal_I2C.h>

#define tombol 2   // pin 2 (pin interrupt) bernama tombol
#define motorPin 11  // pin 11 untuk motor

#define motorDelay 5000 // Waktu rotasi motor dalam milidetik
#define stopDelay 3000  // Waktu motor berhenti dalam milidetik
#define restartDelay 7000 // Waktu sebelum penghitungan dimulai ulang dalam milidetik

volatile int count = 50; // Mulai dari 50

LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
  lcd.init();
  lcd.backlight();
  pinMode(tombol, INPUT);
  pinMode(motorPin, OUTPUT);
  attachInterrupt(digitalPinToInterrupt(2), tombol_ditekan, FALLING);
}

void loop() { // Main Program
  // Rotasi motor ke kanan selama 5 detik
  digitalWrite(motorPin, HIGH);
  delay(motorDelay);

  // Stop motor selama 3 detik
  digitalWrite(motorPin, LOW);
  delay(stopDelay);

  // Rotasi motor ke kiri selama 5 detik
  digitalWrite(motorPin, HIGH);
  delay(motorDelay);

  // Stop motor selama 3 detik
  digitalWrite(motorPin, LOW);
  delay(stopDelay);

  // LCD menampilkan counting dari 50 sampai 0
  lcd.setCursor(0, 0);
  lcd.print("Count: ");
  lcd.setCursor(0, 1);
  lcd.print(count);
 
  // Pengurangan integer count dengan angka 1
  count -= 1;

  // Jika count mencapai 0, reset kembali ke 50 dan tunggu 3 detik
  if (count < 0) {
    count = 50;
    delay(stopDelay);
  }
}

// Fungsi interrupt tombol ditekan
void tombol_ditekan() {
  count = 50; // Mengatur ulang hitungan
  delay(restartDelay);
}



b. Flowchart








5. Kondisi [Kembali]

Kondisi  →Percobaan 2 Kondisi 7
        M2P2 (Interrupt Arduino - LCD,LED, dan Motor DC)
Motor ke kanan 5 detik lalu mati 3 detik berputar ke kiri 5 detik dan mati 7 detik ,LCD menampilkan counting dari 50 sampai 0, interrupt counting diulang dari 50 dan motor DC berhenti 3 detik
                

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 LCD 2X16 klik disini

TP 1 P2K7



MODUL 2
PERCOBAAN 2 KONDISI 7

1. Prosedur
[Kembali]

+ Rangkai semua komponen sesuai kondisi yang dipilih
+ buat program di aplikasi arduino IDE
+ setelah selesai masukkan program ke arduino di proteus
+ jalankan program pada simulasi dan cobakan sesuai dengan modul dan kondisi
+ Selesai

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


        1. Arduino Uno

        2. DIP SWITCH 





        3. LCD



        4. Resistor

        5. Power Supply


         6. Ground
       



7. Motor

8. IC I2C

 


9. Potensiometer



                                                                        
1. Dipsw
2. LCD 2X16
3. Arduino Uno
4. motor
5. LMO16L
6. Buzzer
7. LED-RED
8. POT-HG
9. Resistor
10. PCF8574



            b. Digram Blok





3. Rangkaian Simulasi dan Prinsip kerja [Kembali]




PRINSIP KERJA

        Rangkaian percobaan M2P2 menggunakan interrupt Arduino untuk mengintegrasikan operasi sebuah motor DC, LCD, dan LED dengan cara yang spesifik. Motor DC diatur untuk berputar ke kanan selama 5 detik sebelum berhenti selama 3 detik, kemudian berputar ke kiri selama 5 detik, dan berhenti lagi selama 7 detik. Paralel dengan operasi motor, LCD menampilkan countdown dari 50 sampai 0. Ketika interrupt terjadi, sistem melakukan dua tindakan utama: mengulangi proses counting pada LCD dari 50 dan menghentikan operasi motor DC selama 3 detik. Interrupt ini dapat dipicu oleh event eksternal, seperti tombol yang ditekan, memungkinkan kontrol interaktif atas proses counting dan operasi motor. Ini menciptakan sebuah loop dimana motor dan display LCD berinteraksi sesuai dengan kondisi interrupt yang ditentukan, menunjukkan penggunaan interrupt dalam mengelola tugas-tugas simultan dan interaktif dalam sistem embedded.

4. FlowChart [Kembali]

a. Listing Program 

#include  <LiquidCrystal_I2C.h>

#define tombol 2   // pin 2 (pin interrupt) bernama tombol
#define motorPin 11  // pin 11 untuk motor

#define motorDelay 5000 // Waktu rotasi motor dalam milidetik
#define stopDelay 3000  // Waktu motor berhenti dalam milidetik
#define restartDelay 7000 // Waktu sebelum penghitungan dimulai ulang dalam milidetik

volatile int count = 50; // Mulai dari 50

LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
  lcd.init();
  lcd.backlight();
  pinMode(tombol, INPUT);
  pinMode(motorPin, OUTPUT);
  attachInterrupt(digitalPinToInterrupt(2), tombol_ditekan, FALLING);
}

void loop() { // Main Program
  // Rotasi motor ke kanan selama 5 detik
  digitalWrite(motorPin, HIGH);
  delay(motorDelay);

  // Stop motor selama 3 detik
  digitalWrite(motorPin, LOW);
  delay(stopDelay);

  // Rotasi motor ke kiri selama 5 detik
  digitalWrite(motorPin, HIGH);
  delay(motorDelay);

  // Stop motor selama 3 detik
  digitalWrite(motorPin, LOW);
  delay(stopDelay);

  // LCD menampilkan counting dari 50 sampai 0
  lcd.setCursor(0, 0);
  lcd.print("Count: ");
  lcd.setCursor(0, 1);
  lcd.print(count);
 
  // Pengurangan integer count dengan angka 1
  count -= 1;

  // Jika count mencapai 0, reset kembali ke 50 dan tunggu 3 detik
  if (count < 0) {
    count = 50;
    delay(stopDelay);
  }
}

// Fungsi interrupt tombol ditekan
void tombol_ditekan() {
  count = 50; // Mengatur ulang hitungan
  delay(restartDelay);
}


b. Flowchart








5. Kondisi [Kembali]
Kondisi  →Percobaan 2 Kondisi 7
    M2P2 (Interrupt Arduino - LCD,LED, dan Motor DC)
Motor ke kanan 5 detik lalu mati 3 detik berputar ke kiri 5 detik dan mati 7 detik ,LCD menampilkan counting dari 50 sampai 0, interrupt counting diulang dari 50 dan motor DC berhenti 3 detik
        

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 LCD 2X16 klik disini
Download listing program klik disini

TP 2 P3K5



MODUL 2
PERCOBAAN 3 KONDISI 5

1. Prosedur
[Kembali]

+ Rangkai semua komponen sesuai kondisi yang dipilih
+ buat program di aplikasi arduino IDE
+ setelah selesai masukkan program ke arduino di proteus
+ jalankan program pada simulasi dan cobakan sesuai dengan modul dan kondisi
+ Selesai

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


1. Arduino Uno

 


2. Dipswitch

 

3. Seven Segment


                                                                        
1. 2N1711
2. 7SEG-MPX2-CA-BLUE
3. Arduino Uno
4. 10WATT0RI
5. BATTERY
6. BUZZER
7. DIODE
8. DIPSW 
9. LED-RED
10. LMO16L
11. RELAY
12. RESISTOR

            b. Digram Blok





3. Rangkaian Simulasi dan Prinsip kerja [Kembali]




PRINSIP KERJA
        
        Prinsip kerja M2P3 (Microprocessor Project Platform) dalam kondisi 5 melibatkan penggunaan TIMER, display 7-segment, dan DIP switch. Saat dua switch pada DIP switch diaktifkan, sistem akan memicu TIMER yang berfungsi untuk mengatur waktu operasi hitung maju. Display 7-segment akan menampilkan kombinasi awal "2,0,2,4" yang kemudian akan menghitung maju hingga mencapai angka "3" pada posisi yang telah ditentukan. Proses ini menggabungkan logika digital untuk membaca posisi switch yang aktif dan menggunakan TIMER untuk mengontrol kecepatan perubahan tampilan pada 7-segment. Pada dasarnya, setiap aktivasi switch menentukan kondisi awal display dan perilaku hitung maju yang diinginkan, dengan TIMER menyediakan basis waktu untuk perubahan angka yang ditampilkan.

4. FlowChart [Kembali]

a. Listing Program 

#define a 6
#define b 7
#define c 8
#define d 9
#define e 10
#define f 11
#define g 12
#define dp 13
#define D1 4
#define D2 5
#define Dsw1 A0
#define Dsw2 A1
#define Dsw3 A2
#define Dsw4 A3

bool sw1, sw2, sw3, sw4;
int segments[] = {a, b, c, d, e, f, g};
byte digitPatterns[10][7] = {
  {1, 1, 1, 1, 1, 1, 0}, // 0
  {0, 1, 1, 0, 0, 0, 0}, // 1
  {1, 1, 0, 1, 1, 0, 1}, // 2
  {1, 1, 1, 1, 0, 0, 1}, // 3
  {0, 1, 1, 0, 0, 1, 1}, // 4
  {1, 0, 1, 1, 0, 1, 1}, // 5
  {1, 0, 1, 1, 1, 1, 1}, // 6
  {1, 1, 1, 0, 0, 0, 0}, // 7
  {1, 1, 1, 1, 1, 1, 1}, // 8
  {1, 1, 1, 1, 0, 1, 1}  // 9
};

void setup() {
  for (int i = 0; i < 7; i++) {
    pinMode(segments[i], OUTPUT);
  }
  pinMode(dp, OUTPUT);
  pinMode(D1, OUTPUT);
  pinMode(D2, OUTPUT);
  pinMode(Dsw1, INPUT_PULLUP);
  pinMode(Dsw2, INPUT_PULLUP);
  pinMode(Dsw3, INPUT_PULLUP);
  pinMode(Dsw4, INPUT_PULLUP);
  Serial.begin(9600);
}

void number(int display) {
  if (display >= 0 && display <= 9) {
    for (int i = 0; i < 7; i++) {
      digitalWrite(segments[i], digitPatterns[display][i]);
    }
  }
}

void loop() {
  sw1 = digitalRead(Dsw1);
  sw2 = digitalRead(Dsw2);
  sw3 = digitalRead(Dsw3);
  sw4 = digitalRead(Dsw4);

  // Menampilkan angka 0, 1, 2, dan 3 di awal output
  for (int i = 0; i <= 3; i++) {
    digitalWrite(D1, HIGH);
    digitalWrite(D2, LOW);
    number(i); // Menampilkan angka yang sedang dihitung
    delay(500); // Delay selama 0.5 detik
  }

  // Menampilkan kombinasi angka 2, 0, 2, dan 4 setelah kedua switch diaktifkan
  if ((sw1 == LOW || sw2 == LOW || sw3 == LOW || sw4 == LOW)) {
    digitalWrite(D1, HIGH);
    digitalWrite(D2, LOW);
    number(2); // Menampilkan angka 2 pada digit pertama
    delay(500); // Delay selama 0.5 detik

    digitalWrite(D1, LOW);
    digitalWrite(D2, HIGH);
    number(0); // Menampilkan angka 0 pada digit kedua
    delay(500); // Delay selama 0.5 detik

    digitalWrite(D1, HIGH);
    digitalWrite(D2, LOW);
    number(2); // Menampilkan angka 2 pada digit pertama
    delay(500); // Delay selama 0.5 detik

    digitalWrite(D1, LOW);
    digitalWrite(D2, HIGH);
    number(4); // Menampilkan angka 4 pada digit kedua
    delay(500); // Delay selama 0.5 detik
  }
}


b. Flowchart







5. Kondisi [Kembali]

Kondisi  →Percobaan 3 Kondisi 5
        M2P3 (TIMER, 7-SEGMENT dengan DIP switch) Kondisi 5 Ketika 2 switch aktif 7-Segment menampilkan kombinasi 2,0,2,4 setelah hitung maju hingga 3        

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 listing  klik disini