Senin, 25 Maret 2024

TP2_M2


PERCOBAAN 6 
Kontrol Putaran Motor Stepper

1. Prosedur [Kembali]

1. Rangkai semua komponen sesuai kondisi yang dipilih
2. Buat program di aplikasi arduino IDE
3. Setelah selesai masukkan program ke arduino di proteus
4. Jalankan program pada simulasi dan cobakan sesuai dengan modul dan kondisi
5. Selesai


2. Hardware dan diagram blok [Kembali]

A. Hardware

1. Button




2. Arduino Uno

3. ULN2003A

4. Motor Stepper




B. Digram Blok









3. Rangkaian Simulasi dan Prinsip kerja [Kembali]

Gambar Rangkaian Sebelum Disimulasikan





Gambar Rangkaian Setelah Disimulasikan







 Prinsip Kerja 

    


4. FlowChart [Kembali]

A. 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 TOUCH_SENSOR_PIN 6 // Pin yang terhubung ke sensor Touch

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(TOUCH_SENSOR_PIN, INPUT); // Inisialisasi pin sensor Touch 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 touch_sensor = digitalRead(TOUCH_SENSOR_PIN); // Baca input dari sensor Touch
  
  if (touch_sensor == HIGH) { // Jika sensor Touch aktif
    pergerakan_4();
    delay(100);
    pergerakan_3();
    delay(100);
    pergerakan_2();
    delay(100);
    pergerakan_1();
    delay(100);

  } else { // Jika sensor Touch tidak aktif
      nonpergerakan();
    }
}


B. Flowchart



5. Kondisi [Kembali]

Kondisi  →Percobaan 6 Kondisi 7

        Sertakan touch sensor, ketika berlogika HIGH putaran motor berlawanan 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 TOUCH SENSOR  klik disini
Download Datasheet LCD 2X16 klik disini

Tidak ada komentar:

Posting Komentar