M2 Tugas Pendahuluan 2




1.  Prosedur
 [Kembali]

1. Rangkai rangkaian di proteus sesuai dengan kondisi percobaan.
2. Tulis program untuk arduino di software Arduino IDE.
3. Compile program tadi, lalu upload ke dalam arduino.
4. Setelah program selesai di upload, jalankan simulasi rangkaian pada proteus.


2. Hardware dan Diagram Blok [Kembali]

Hardware
a) Modul Arduino 


b) StepperMotor 




c) ULN2003A
d) Push Button


Dagram Blok

3. Rangkaian Simulasi dan Prinsip Kerja [Kembali]

Rangkaian Simulasi


Prinsip Kerja
terdapat 2 jenis input yang digunakan yaitu sensor infrared dan push button, sedangkat output berupa putaran motor stepper yang dikendalikan dengan bantuan ic ULN2003A. apabila sensor Infrare berlogika High, maka motor stepper akan berputar searah berlawanan arah jarum jam, Namun apabila sensor Infrared berlogika Low maka motor stepper akan berputar searah jarum jam.


4. Flowchart dan Listing Program [Kembali]

Flowchart

Listing Program

#define A 8
#define B 9
#define C 10
#define D 11
#define PB1 2
#define PB2 3
#define PB3 4
#define PB4 5
#define IR_SENSOR_PIN 6 // Pin yang terhubung ke sensor IR

void setup() {
  Serial.begin(9600);
  pinMode(A, OUTPUT);
  pinMode(B, OUTPUT);
  pinMode(C, OUTPUT);
  pinMode(D, OUTPUT);
  pinMode(PB1, INPUT_PULLUP);
  pinMode(PB2, INPUT_PULLUP);
  pinMode(PB3, INPUT_PULLUP);
  pinMode(PB4, INPUT_PULLUP);
  pinMode(IR_SENSOR_PIN, INPUT); // Inisialisasi pin sensor IR sebagai input
}

void pergerakan_1() {
  digitalWrite(A, 0);
  digitalWrite(D, 1);
  digitalWrite(B, 0); 
  digitalWrite(C, 1);
}

void pergerakan_2() {
  digitalWrite(A, 1);
  digitalWrite(D, 1);
  digitalWrite(B, 0);
  digitalWrite(C, 0);
}

void pergerakan_3() {
  digitalWrite(A, 1);
  digitalWrite(D, 0);
  digitalWrite(B, 1);
  digitalWrite(C, 0);
}

void pergerakan_4() {
  digitalWrite(A, 0);
  digitalWrite(D, 0);
  digitalWrite(B, 1);
  digitalWrite(C, 1);
}

void nonpergerakan() {
  digitalWrite(A, 0);
  digitalWrite(D, 0);
  digitalWrite(B, 0);
  digitalWrite(C, 0);
}

void loop() {
  int b4 = digitalRead(PB4);
  int b3 = digitalRead(PB3);
  int b2 = digitalRead(PB2);
  int b1 = digitalRead(PB1);
  int ir_sensor = digitalRead(IR_SENSOR_PIN); // Baca input dari sensor IR
  
  if (ir_sensor == HIGH) { // Jika sensor IR aktif
    if (b4 == LOW) {
      pergerakan_1(); // Motor bergerak berlawanan arah jarum jam
    } else if (b3 == LOW) {
      pergerakan_2();
    } else if (b2 == LOW) {
      pergerakan_3();
    } else if (b1 == LOW) {
      pergerakan_4();
    } else {
      nonpergerakan();
    }
  } else if(ir_sensor == LOW){ // Jika sensor IR tidak aktif
    if (b4 == LOW) {
      pergerakan_4(); // Motor bergerak sesuai arah jarum jam
    } else if (b3 == LOW) {
      pergerakan_3();
    } else if (b2 == LOW) {
      pergerakan_2();
    } else if (b1 == LOW) {
      pergerakan_1();
    } else {
      nonpergerakan();
    }
  }
}


5. Kondisi [Kembali]

Percobaan 6 kondisi 3
Sertakan dengan IR sensor, ketika berlogika HIGH putaran motor berlawanan arah jarum jam

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 IR klik disini
Download Datasheet Motor Stepper klik disini

M2 Tugas Pendahuluan 2 M2 Tugas Pendahuluan 2 Reviewed by Andre Kurniawan on Maret 25, 2024 Rating: 5

Tidak ada komentar:

Diberdayakan oleh Blogger.