Pada rangkaian ini, terdapat dua tombol yang bekerja untuk mengendalikan motor DC. Ketika rangkaian ini dijalankan, motor DC dalam keadaan mati. Motor DC akan berputar jika salah satu tombol ditekan, dan jika ingin memeberhentikan motorDC tekan tombol yang sama.
Script Program:
/* Program Mengendalikan MOTOR DC
Clockwise dan Counter Clockwise
Percobaan ke empat
Driver menggunakan relay*/
// Membuat variable untuk interlock
int state=0;
int state1=0;
int val=0;
int val1=0;
int old_val=0;
int old_val1=0;
void setup()
{
// Inisialisai Input dan Output
pinMode(12, OUTPUT); // Pin motor berputar clockWise
pinMode(13, OUTPUT); // Pin Motor berputar counter clockwise
pinMode(11,INPUT); // Pin untuk tombol CW
pinMode(10,INPUT); // Pin untuk tombol CCW
Serial.begin (9600);
}
void loop()
{
val=digitalRead(10);
val1=digitalRead(11);
if ((val==HIGH)&&(old_val==LOW)) {
state1=0;
state=1-state;
delay(25);
Serial.print("state=");
Serial.println(state);
}
old_val=val;
if ((val1==HIGH)&&(old_val1==LOW)){
state=0;
state1=1-state1;
delay(25);
Serial.print("state1=");
Serial.println(state1);
}
old_val1=val1;
// Motor berputar CCW
if(state==1){
digitalWrite(13,HIGH);}
else
{digitalWrite(13,LOW);
}
// Motor berputar CW
if(state1==1){
digitalWrite(12,HIGH);
}
else
{digitalWrite(12,LOW);
}
}
Clockwise dan Counter Clockwise
Percobaan ke empat
Driver menggunakan relay*/
// Membuat variable untuk interlock
int state=0;
int state1=0;
int val=0;
int val1=0;
int old_val=0;
int old_val1=0;
void setup()
{
// Inisialisai Input dan Output
pinMode(12, OUTPUT); // Pin motor berputar clockWise
pinMode(13, OUTPUT); // Pin Motor berputar counter clockwise
pinMode(11,INPUT); // Pin untuk tombol CW
pinMode(10,INPUT); // Pin untuk tombol CCW
Serial.begin (9600);
}
void loop()
{
val=digitalRead(10);
val1=digitalRead(11);
if ((val==HIGH)&&(old_val==LOW)) {
state1=0;
state=1-state;
delay(25);
Serial.print("state=");
Serial.println(state);
}
old_val=val;
if ((val1==HIGH)&&(old_val1==LOW)){
state=0;
state1=1-state1;
delay(25);
Serial.print("state1=");
Serial.println(state1);
}
old_val1=val1;
// Motor berputar CCW
if(state==1){
digitalWrite(13,HIGH);}
else
{digitalWrite(13,LOW);
}
// Motor berputar CW
if(state1==1){
digitalWrite(12,HIGH);
}
else
{digitalWrite(12,LOW);
}
}
0 komentar:
Posting Komentar