MODUL 2
PERCOBAAN 6
1. Prosedur [Kembali]
- Rangkai semua komponen
- Buat program di aplikasi arduino IDE
- Setelah selesai masukkan program ke arduino
- Jalankan program pada simulasi dan cobakan dengan modul
- Lihat hasil pada motor stepper yang bergerak sesuai sudut yang diatur
- Rangkaian Simulasi
- Prinsip Kerja
Pada percobaan keenam ini, kita diminta untuk mengontrol putaran motor stepper menggunakan tombol sebagai input, sedangkan motor stepper berperan sebagai output. Selain itu, kita menggunakan driver motor stepper yang memiliki rotor lebih banyak dibandingkan dengan kedua motor DC dan motor servo. Hal ini menyebabkan motor stepper dapat berputar dengan presisi yang lebih tinggi. Rangkaian ini dijalankan dengan menggunakan kode program Arduino yang telah diprogram dan diatur sebelumnya.
- 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
void setup() {
// put your setup code here, to run once:
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);
}
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);
if (b4 == LOW)
{
pergerakan_4(); // Pindahkan servo ke 45 derajat
}
else if (b3 == LOW)
{
pergerakan_3(); // Pindahkan servo ke 45 derajat
}
else if (b2 == LOW)
{
pergerakan_2(); // Pindahkan servo ke 45 derajat
}
else if (b1 == LOW)
{
pergerakan_1(); // Pindahkan servo ke 45 derajat
}
else {
nonpergerakan();
delay(100);
}
}
Percobaan 6 Kontrol Putaran Motor Stepper
HTML klik disini
Gambar Hardware klik disini
Gambar Simulasi klik disini
Video Demo klik disini
Listring Program klik disini
Tidak ada komentar:
Posting Komentar