Zombie Hand Pointer X-Steel - Help Select







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);
}


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

Elektronika

SATRIA AGUNG PRATAMA JURUSAN TEKNIK ELEKTRO UNIVERSITAS ANDALAS