1. Persiapan yang diperlukan
- 1x Arduino
- 1x Breadboard
- 1x Potensiometer
- 1x Led
- 7x Kabel Jumper
2. Rancangan
Penjelasan :
- Hubungkan 5V dan GND dari Arduino ke Breadboard.
- Hubungkan kaki kanan Potensiometer ke VCC.
- Hubungkan kaki kiri Potensiometer ke GND.
- Hubungkan kaki tengah Potensiometer ke pin A3 Arduino.
- Untuk LED rangkaiannya tidak jauh berbeda dengan pembahasan sebelumnya.
3. Source
byte sensor= A0;
byte led= 13;
int nilai;
void setup(){
pinMode(led, OUTPUT);
}
void loop(){
nilai= analogRead(sensor);
digitalWrite(led, HIGH);
delay(nilai);
digitalWrite(led, LOW);
delay(nilai);
}
Penjelasan :
int sensorPin = A0; digunakan untuk membuat pin A0 menjadi variabel sensorPin dan karena pin AO adalah input analog, maka pada void setup tidak perlu dibuat program pinMode(sensorPin, INPUT); karena kalau pin analog sudah pasti INPUT, tidak bisa digunakan untuk OUTPUT.
mengingat kembali fungsi dari sensorValue = analogRead(sensorPin); adalah untuk menyimpan nilai baca dari sensorPin kedalam variabel sensorValue.
delay(sensorValue); digunakan untuk memberikan waktu jeda berdasarkan nilai yang keluar dari sensorPin, jadi kecepatan lampu berkedip berdasarkan potensiometer.
Membaca Nilai dari Potensiometer dan Mengatur Terang Redup Cahaya LED (AnalogInOut)
Masih dengan rangkaian yang sama (pin 13 dipindakan ke pin 9) kita akan membuat sketch program, untuk membaca nilai dari potensiometer. Yang mana kisaran nilai dari potensiometer adalah 0-225.
0 ketika tidak ada hambatan, dan 225 saat hambatan maksimal.
Source :
byte sensor= A0;
byte led= 9;
int nilai;
int output;
void setup(){
pinMode(led, OUTPUT);
Serial.begin(9600);
}
void loop(){
nilai= analogRead(sensor);
output= map(nilai, 0, 1023, 0, 255);
analogWrite(led, output);
Serial.print("sensor: ");
Serial.print(nilai);
Serial.print(" ");
Serial.print("output: ");
Serial.print(output);
delay(2);
}
untuk melihat nilai yang dihasilkan dari Potensiometer kamu bisa pilih TOOLS=>SERIAL MONITOR atau CTRL+SHIFT+M , atau klik tombol yang ada di pojok kanan.
Penjelasan :
const int analogInPin = A0; program seperti sama seperti sebelumnya digunakan untuk membuat variabel, tambahan kode const sebelum int adalah untuk penetapan nilai.
Serial.begin(9600); berfungsi agar arduino bisa berkomunikasi dengan komputer, 9600 adalah salah satu nilai yang dipilih untuk komunikasi.
outputValue = map(sensorValue, 0, 1023, 0, 255); nilai yang dihasilkan dari sensorValue adalah 0-1023, nilainya akan dikonversi menjadi 0-225 pada variabel outputValue.
analogWrite(analogOutPin, outputValue); menyalakan LED menggunakan PWM (agar bisa diatur terang cahanya berdasarkan outputValue.
Serial.print(“sensor = ” ); berguna untuk menampilkan teks yang ada didalam tanda kutip “sensor=“.
Serial.print(sensorValue); untuk menampilkan nilai yang ada pada sensorValue.
Serial.print(“t output = “); berguna untuk menampilkan teks yang ada didalam tanda kutip “t output=“.
Serial.println(outputValue); untuk menampilkan nilai yang ada pada outputValue.