1. Rangkai semua komponen sesuai percobaan.
4. Flowchart dan listing program
[Kembali]
5. Kondisi
[Kembali]
6. Video demo [Kembali]
2. Buat program di aplikasi arduino IDE.
3. Setelah selesai masukkan program ke arduino.
4. Jalankan program pada rangkaian dan cobakan sesuai dengan modul.
5. Selesai.
2. Hardware dan diagram blok
[Kembali]
3. Rangkaian simulasi dan prinsip kerja
[Kembali]
Rangkaian Simulasi
Prinsip Kerja
Pertama defenisikan dahulu konstanta pin ke arduino, a sebagai pin 8, b sebagai pin 9, c sebagai pin 10 dan seterusnya. Kemudian mulai komunikasi serial pada kecepatan 9600 baud. Kemudian tetapkan mode pin sebagai output dan input pullup. Jika tidak ada button yg ditekan maka ia akan masuk pada kondisi nonpergerakan. Button pertama bergerak sebesar 0 derajat, button kedua 90 derajat, button ketiga 180 derajat, button keempat 270 derajat. Ada juga terdapat delay sebesar 100 Mili second pada setiap pergerakan.
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);
pinMode(PB2, INPUT);
pinMode(PB3, INPUT);
pinMode(PB4, 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);
if (b4 == HIGH)
{
pergerakan_4(); // Pindahkan stepper ke 45 derajat
}
else if (b3 == HIGH)
{
pergerakan_3(); // Pindahkan stepper ke 45 derajat
}
else if (b2 == HIGH)
{
pergerakan_2(); // Pindahkan stepper ke 45 derajat
}
else if (b1 == HIGH)
{
pergerakan_1(); // Pindahkan stepper ke 45 derajat
}
else {
nonpergerakan();
delay(100);
}
}
Modul 2 Percobaan 6 Kontrol Putaran Motor Stepper
7. Link Download
[Kembali]
Download HTML klik disini
Download Simulasi Rangkaian klik disini
Download Video Demo klik disini
Download Listing Program klik disini
Download Library Arduino Uno klik disini
Download Datasheet Arduino Uno klik disini
Download Datasheet Motor Stepper klik disini
Download Datasheet Push Button klik disini
Download Datasheet ULN2003A klik disini
0 komentar:
Posting Komentar