1. Hardware [Kembali]
Gambar potensiometer
Gambar Motor DC
byte pot = A0; //Deklarasi pin A0 untuk potensiometer
byte motor = 9; //Deklarasi pin 9 untuk motor
int nilai; //Deklarasi variabel nilai
int output; //Deklarasi variabel output
void setup() { //Semua kode dalam fungsi ini dieksekusi sekali
pinMode(motor, OUTPUT); //Deklarasi motor sebagai OUTPUT
Serial.begin(9600); //Set baud rate 9600
}
void loop() { //Semua kode dalam fungsi ini dieksekusi berulang
nilai = analogRead(pot); //Membaca nilai potensiometer
output = map(nilai, 0, 1023, 0, 255);
analogWrite(motor, output);
Serial.print("potensiometer: ");
Serial.print(nilai);
Serial.print(" ");
Serial.print("output: ");
Serial.print(output);
delay(2);
}
byte motor = 9; //Deklarasi pin 9 untuk motor
int nilai; //Deklarasi variabel nilai
int output; //Deklarasi variabel output
void setup() { //Semua kode dalam fungsi ini dieksekusi sekali
pinMode(motor, OUTPUT); //Deklarasi motor sebagai OUTPUT
Serial.begin(9600); //Set baud rate 9600
}
void loop() { //Semua kode dalam fungsi ini dieksekusi berulang
nilai = analogRead(pot); //Membaca nilai potensiometer
output = map(nilai, 0, 1023, 0, 255);
analogWrite(motor, output);
Serial.print("potensiometer: ");
Serial.print(nilai);
Serial.print(" ");
Serial.print("output: ");
Serial.print(output);
delay(2);
}
1.
Buatlah 2
program untuk membalikan fungsi potensiometer agar saat potesiometer diputar
kekiri motor akan berhenti
Program A
#define
in12
#define
in11
byte
pot = A0; //Deklarasi pin A0 untuk potensiometer
byte
motor = 9; //Deklarasi pin 9 untuk motor
int
nilai; //Deklarasi variabel nilai
int
output; //Deklarasi variabel output
void
setup() { //Semua kode dalam fungsi ini dieksekusi sekali
pinMode(motor,
OUTPUT); //Deklarasi motor sebagai OUTPUT
pinMode(in12,OUTPUT);
pinMode(in11,OUTPUT);
Serial.begin(9600);
//Set baud rate 9600
}
void
loop() { //Semua kode dalam fungsi ini dieksekusi berulang
nilai = analogRead(pot); //Membaca nilai
potensiometer
output = map(nilai, 0, 1023, 0, 255);
analogWrite(motor, output);
digitalWrite(in12,LOW);
digitalwrite(in11,HIGH);
Serial.print("potensiometer:
");
Serial.print(nilai);
Serial.print(" ");
Serial.print("output: ");
Serial.print(output);
delay(2);
}
Program B
#define
in13
#define
in10
byte
pot = A0; //Deklarasi pin A0 untuk potensiometer
byte
motor = 9; //Deklarasi pin 9 untuk motor
int
nilai; //Deklarasi variabel nilai
int
output; //Deklarasi variabel output
void
setup() { //Semua kode dalam fungsi ini dieksekusi sekali
pinMode(motor,
OUTPUT); //Deklarasi motor sebagai OUTPUT
pinMode(in13,OUTPUT);
pinMode(in10,OUTPUT);
Serial.begin(9600);
//Set baud rate 9600
}
void
loop() { //Semua kode dalam fungsi ini dieksekusi berulang
nilai
= analogRead(pot); //Membaca nilai potensiometer
output
= map(nilai, 0, 1023, 0, 255);
analogWrite(motor,
output);
digitalWrite(in12,LOW);
digitalwrite(in11,HIGH);
Serial.print("potensiometer:
");
Serial.print(nilai);
Serial.print("
");
Serial.print("output:
");
Serial.print(output);
delay(2);
}
Analisa Program
Agar
potensiometer dapat bekerja berlawanan arah maka kita perlu mengubah
potensiometer yang terhubung ke vcc dan ground harus dihubungkan ke pin pada
arduino
Pada
rangkaian,potensiometer yang teerhubung ke vcc kita pindahkan ke pin 12 dan
potensiomete yang terhubung ke ground kita pindahkan ke pin 11,Lalu kita
set pada program sebagai output,dan disini agar bekerja berlawanan maka pin 12
kita beri logika LOW dan pin 11 kita beri logika HIGH
Tidak ada komentar:
Posting Komentar