Anda di halaman 1dari 24

LAPORAN PRAKTEK MIKROKONTROLER DAN ANTARMUKA 1

P3
ANTARMUKA
POTENSIOMETER

NAMA KELOMPOK

: 1. ANIDA SASHA SORAYA


2. NABILA MUTIARA ANJANI
3. SAHRIL SANDRIAN
4. VIRA AMANAH

KELAS / KELOMPOK

: TT-4B / B5

TANGGAL PELAKSANAAN PRAKTEK

: 2 MARET 2016

TANGGAL PENYERAHAN LAPORAN

: 7 MARET 2016

PROGRAM STUDI TEKNIK


TELEKOMUNIKASI JURUSAN TEKNIK
ELEKTRO POLITEKNIK NEGERI JAKARTA
DEPOK
2016

P3 Potensiometer

Kelompok 5 | 1

P3.1. DIMMER V1

1.

Rangkaian Skematik dan Protoboard

Gambar 1. Rangkaian Skematik P3.1 Dimmer v1

Gambar 2. Rangkaian Protoboard P3.1 Dimmer v1

P3 Potensiometer

Kelompok 5 | 2

2.

Cara Kerja Aplikasi


Pada praktikum P.3.1 ini, merangkai sebuah rangkaian antarmuka

dengan mode

DimmerV1. Pada rangkaian ini menggunakan input potensiometer untuk mengendalikan


intensitas cahaya LED dari keadaan mati hingga kecerahan maksimal. Saat potensiometer
berada pada kondisi minimum (knop potensiometer paling kiri) maka LED akan dalam
keadaan mati (off). Semakin memutar knop potensiometer ke paling kanan semakin
bertambah juga kecerahan pada LED.

3.

Analisa Sketch

Gambar 3. Sketch P3..1. Dimmer V1

DimmerV1 merupakan program untuk mengendalikan tingkat kecerahan LED dari


keadaan mati hingga tingkat kecerahan paling tinggi (seperti Fade in). int potPin = 0;
merupakan identifikasi bahwa potensiometer terhubung dengan pin 0. int ledPin = 10;
merupakan identifikasi bahwa LED terhubung dengan pin 10. int val = 0; merupakan

P3 Potensiometer

Kelompok 5 | 3

identifikasi bahwa nilai awal potensio adalah 0. Pada void setup() digunakan untuk
inisialisasi yang hanya dijalankan sekali di awal program.
PinMode(ledPin, OUTPUT); merupakan identifikasi bahwa LED berperan sebagai
output. analogReference(DEFAULT); merupakan tegangan input pada potensiometer.
Pada void loop() digunakan untuk proses pengulangan program pada sebuah masukan
atau keluaran. Keterangan value atau val = analogRead(potPin); merupakan identifikasi
untuk membaca nilai potensiometer terhubung dengan pin 0. Keterangan val = val/4
artinya nilai 1023 dibagi dengan 4, sehingga nilai maksimal kecerhan led adalah 255.
Perintah analogWrite(ledPin, val); merupakan perintah untuk menyalakan led sesuai
dengan

P3 Potensiometer

value

pada

potensio

yang

sudah

kita

atur

Kelompok 5 | 4

P3.2 DIMMER V2

1. Rangkaian Skematik dan Protoboard

Gambar 1. Rangkaian Skematik P3.2 Dimmer V2

Gambar 2. Rangkaian Protoboard P3.2 Dimmer V2


P3 Potensiometer

Kelompok 5 | 5

2.Cara Kerja Aplikasi


Pada praktikum P.3.2 ini, merangkai sebuah rangkaian antarmuka

dengan mode

DimmerV2. Pada rangkaian ini menggunakan input potensiometer untuk mengendalikan


intensitas cahaya LED dari keadaan menyala(dengan kecerahan maksimal) hingga
kecerahan minimal/mati. Saat potensiometer berada pada kondisi minimum (knop
potensiometer paling kiri) maka LED akan dalam keadaan menyala. Semakin memutar
knop potensiometer ke paling kanan semakin berkurang juga kecerahan pada LED, hingga
pada keadaan off.

3.Analisa Sketch

Gambar 3. Sketch P3.2 Dimmer V2

DimmerV2 merupakan program untuk mengendalikan tingkat kecerahan LED dari


tingkat kecerahan paling tinggi hingga keadaan mati (seperti Fade out). int potPin = 1;
merupakan identifikasi bahwa potensiometer terhubung dengan pin 1. int ledPin = 9;
merupakan identifikasi bahwa LED terhubung dengan pin 9. int val = 0; merupakan
identifikasi bahwa nilai awal potensio adalah 0. Pada void setup() digunakan untuk
inisialisasi yang hanya dijalankan sekali di awal program. PinMode(ledPin, OUTPUT);

P3 Potensiometer

Kelompok 5 | 6

merupakan

identifikasi

bahwa

LED

berperan

sebagai

output.

analogReference(DEFAULT); merupakan tegangan input pada potensio.


Pada void loop() digunakan untuk proses pengulangan program pada sebuah masukan
atau keluaran. Keterangan value atau val = analogRead(potPin); merupakan identifikasi
untuk membaca nilai potensiometer terhubung dengan pin 1. Keterangan val =
constrain(val, 750, 900) artinya nilai value hanya dibatasi dari 750 hingga 900. Perintah int
ledLevel = map(val, 750, 900, 255, 0); merupakan pemetaan nilai LED dari kecerahan 255
ke 0. Perintah analogWrite(ledPin, ledLevel); merupakan perintah untuk menyalakan led
sesuai

dengan

P3 Potensiometer

nilai

ledLevel

yang

sudah

kita

atur.

Kelompok 5 | 7

P3.3 BLINKING RATE


1. Rangkaian Skematik dan Protoboard

Gambar 1. Rangkaian Skematik P3.3. Blinking Rate

Gambar 2. Rangkaian Protoboard P3.3. Blinking Rate

P3 Potensiometer

Kelompok 5 | 8

2. Cara Kerja Aplikasi


Pada praktikum P.3.3 ini, merangkai sebuah rangkaian antarmuka

dengan mode

Blinking Rate. Pada rangkaian ini menggunakan input potensiometer untuk mengendalikan
kecepatan kedipan LED (Blinking Rate). Saat potensiometer berada pada kondisi minimum
(knop potensiometer paling kiri) maka akan menghasilkan LED yang berkedip. Semakin
memutar knop potensiometer ke paling kanan semakin cepat juga yang dihasilkan LED.
3. Analisa Sketch

Gambar 3. Sketch P3.3. Blinking Rate

Blinking Rate merupakan program untuk mengendalikan kecepatan kedipan LED


dengan menggunakan potensiometer. Const int potPin = 2; merupakan identifikasi bahwa
potensiometer terhubung dengan pin 2. Const int ledPin = 13; merupakan identifikasi
bahwa LED terhubung dengan pin 13. Pada void setup() digunakan untuk inisialisasi yang
hanya dijalankan sekali di awal program. PinMode(ledPin, OUTPUT); merupakan
identifikasi bahwa LED berperan sebagai output.

P3 Potensiometer

Kelompok 5 | 9

Pada void loop() digunakan untuk proses pengulangan program pada sebuah masukan
atau keluaran. Keterangan value atau val = analogRead(potPin); merupakan identifikasi
untuk membaca nilai potensiometer terhubung dengan pin 2.
Perintah digitalWrite(ledPin,HIGH); yaitu perintah untuk menjalankan pin digital dan
mengaktifkan LED (HIGH), sehingga pada saat knop potensiometer diputar ke kanan
maka LED akan menyala (bilnking rate) sesuai dengan kecepatan delay yang ditentukan.
Karena pada awal pengetikan sketch ada perintah int val = 0; yang artinya mendlekarasi
tapi tidak di eksekusi, maka perintah delay(val); akan memanggil kembali perintah int val
= 0; sehingga apabila knop potensiometer diputar ke paling kanan sehingga kedipan pada
LED akan semakin cepat. Begitu juga sebaliknya.
Perintah digitalWrite(ledPin,LOW); yaitu perintah untuk menjalankan pin digital dan
mengaktifkan LED (LOW); sehingga pada saat knop potensiometer diputar ke kiri maka
kedipan pada LED akan berkurang.

P3 Potensiometer

Kelompok 5 | 10

P2.4. THRESHOLD

1. Rangkaian Skematik dan Protobard

Gambar 1. Rangkaian Skematik P3.4.Threshold

Gambar 2. Rangkaian Protoboard P3.4.Thresholdld

P3 Potensiometer

Kelompok 5 | 11

2. Cara Kerja Aplikasi


Pada praktikum P.3.4 ini, merangkai sebuah rangkaian antarmuka Potensiometer
dengan mode Threshold. Pada praktikum ini menggunakan input potensiometer untuk
menyalakan LED hanya jika potensiometer melewati suatu batas (threshold). Saat
kondisi knop potensiometer di paling kiri, maka LED belum menyala, LED akan
menyala saat knop potensiometer sudah berada di ambang pertengahan yaitu saat
potensiometer melewati batas nilai diatas 512.
3. Analisa Sketch

Gambar 3. Sketch P3.4. Thresold

Threshold merupakan program untuk mengendalikan nyala LED hanya jika


nilai potensiometer melewati suatu batas (thereshold). Pada program ini terdapat int
potPin = 3; yaitu merupakan identifikasi bahwa potensiometer terhubung dengan pin
3. Pin 3 pada arduino adalah pin PWM dimana pin PWM ini bisa mengeluarkan
tegangan antara 0-5 Volt (nilai 0 sampai 255 atau setara dengan 256 level tegangan
DC). Nilai 0 berarti pulsa yang diberikan untuk setiap siklus selalu 0 volt, sedangkan
nilai 255 berarti pulsa yang diberikan selalu bernilai 5 volt. Untuk int ledPin = 4;
merupakan identifikasi bahwa LED terhubung dengan pin 4.

P3 Potensiometer

Kelompok 5 | 12

Pada void setup() digunakan untuk inisialisasi yang hanya dijalankan sekali di
awal program. PinMode(ledPin, OUTPUT); merupakan identifikasi bahwa LED
berperan sebagai output.
Void loop() digunakan untuk melakukan suatu deklarasi secara berulang.
Maksudnya yaitu terjadi proses pengulangan program pada sebuah masukan atau
keluaran. Int val =analogRead(potPin); maksudnya yaitu mengidentifikasi pin 3(pin
PWM) sebagai potensiometer yang berfungsi sebagai analogRead() untuk membaca
masukan dari nilai analog. Nilai dari analog read ini berkisar dari 0 hingga 1023
berdasarkan kemampuan dari mikrokontroller dalam mencacah dari 0 5 volt.

Untuk selanjutnya terdapat pada sketch perintah if-else. Pada dasarnya IF-ELSE
merupakan pengembangan dari fungsi IF. Sehingga ELSE berarti kondisi yang tidak sesuai
dengan kondisi dalam fungsi IF. Dengan kata lain, ELSE artinya jika tidak. If(val>512)

yaitu mengidentifikasikan bahwa jika nilai lebih dari 512 maka potensiometer akan
berfungsi sebagai Threshold. Artinya jika nilai 0-512 LED akan tetap mati, namun
jika melewati batas 512 maka LED akan menyala dan else digitalWrite(ledPin,
HIGH); maksudnya yaitu dengan keterangan value untuk pin LED merupakan nilai
digital. Pada digitalWrite(ledPin, LOW); yang berarti LED pada pin yang ditentukan
akan mati.

P3 Potensiometer

Kelompok 5 | 13

P3.5. BAR GRAPH DISPLAY


1. Rangkaian Skematik dan Protoboard

Gambar 1. Rangkaian Skematik P3.5. Bar Graph Display


\

Gambar 2. Rangkaian Protoboard P3.5. Bar Graph Display

P3 Potensiometer

Kelompok 5 | 14

2. Cara Kerja Aplikasi


Pada praktikum

P.3.5 ini, merangkai sebuah rangkaian antarmuka

Potensiometer dengan mode Bar Graph Display. Pada praktikum ini menggunakan
input potensiometer untuk menyalakan 8 buah LED, cara kerja program ini adalah
sketch yang telah dibuat akan menghasilkan keluaran LED yang akan menyala satupersatu ketika potensiometer diputar .

3. Analisa Sketch

Gambar 3. Sketch P3.5. Bar Graph Display

P3 Potensiometer

Kelompok 5 | 15

Bar Graph Display merupakan program untuk mengatur nyala sejumlah LED
dengan potensiometer untuk men-display nilai input analog ke output digital. Terdapat
syntax const int analogPin = A0 ysitu untuk mengidentifikasi pin anlaog 0 sebagain
pin analog input. Pada praktikum kali ini karena jumlah LED yang dipakai sejumlah 8
buah, maka syntax yang di pakai yaitu const int ledCount = 8. Selanjutnya terdapat
syntax int ledPins[] = { 2, 3, 4, 5, 6, 7, 8, 9 }; // fungsi dari syntax ini yaitu
menentukan pin kaki LED. Maksudnya bahwa LED terhubung oleh pin 2, 3, 4, 5, 6,
7, 8, 9.
Pada void setup() digunakan untuk inisialisasi yang hanya dijalankan sekali di
awal program. PinMode(ledPin, OUTPUT); merupakan identifikasi bahwa LED
berperan sebagai output. Pada syntax for (int thisLed = 0; thisLed < ledCount;
thisLed++) ; perintah ini yaitu untuk melakukan looping pada array dan men-set
semua pin sebagai output.
Void loop() digunakan untuk melakukan suatu deklarasi secara berulang.
Maksudnya yaitu terjadi proses pengulangan program pada sebuah masukan atau
keluaran. Pada syntax int potReading = analogRead(analogPin); merupakan eyntax
yang berfungsi untuk
int ledLevel = map(potReading, 0, 1023, 0, ledCount);
Loop pada array LED
for (int thisLed = 0; thisLed < ledCount; thisLed++)
{
if (thisLed < ledLevel)
{
digitalWrite(ledPins[thisLed], HIGH);
}
else
{
digitalWrite(ledPins[thisLed], LOW);
Jika indeks elemen array < ledLevel, maka nyalakan pin LED tersebut.
Namun jika kebalikannya, pin yang lebih besar dari ledLevel akan padam
}
}
}

P3 Potensiometer

Kelompok 5 | 16

P3.6. RGB MIXER


1. Rangkaian Skematik dan Protoboard

Gambar 1. Rangkaian Skematik P3.6. RGB Mixer

Gambar 2. Rangkaian Protoboard P3.6. RGB Mixer

P3 Potensiometer

Kelompok 5 | 17

2. Cara Kerja Aplikasi


Pada percobaan P3.6 mengenai aplikasi RGB Mixer yang menggunakan
potensiometer sebagai input dan LED RGB sebagai output. Aplikasi ini menggunakan pin
A0 sebagai input dan pin D9, D10 dan D11 sebagai output. Program ini menghasilkan
output berupa percampuran dari beberapa komposisi warna , yaitu warna merah, hijau dan
biru. Dan untuk mengatur komposisi warna tersebut diatur dengan menggunakan
potensiometer.

3. Analisa Sketch

P3 Potensiometer

Kelompok 5 | 18

Gambar 3. Sketch P3.6 RGB Mixer

Aplikasi RGB Mixer merupakan aplikasi pengendalian LED RGB dengan


menggunakan potensiometer yang mengatur komposisi warna yaitu warna merah, hijau dan
biru. Sehingga didalam sketch perlu beberapa variable yang diidentifikasi seperti :
int potPin = 0;//digunakan untuk menentukan kaki yang dipakai untuk potensiometer
int potVal = 0;//digunakan

untuk menentukan nilai awal dari potensiometer

int redPin = 11;//digunakan

untuk menentukan kaki yang akan dipakai LED output warna merah

int grnPin = 10;//digunakan

untuk menentukan kaki yang akan dipakai LED output warna hijau

int bluPin = 9;//digunakan

untuk menentukan kaki yang akan dipakai LEDr output warna biru

int redVal = 0;//digunakan

untuk mengatur nilai awal atau komposisi awal untuk warna merah

int grnVal = 0;//digunakan

untuk mengatur nilai awal atau komposisi awal untuk warna hijau

int bluVal = 0;

//digunakan untuk mengatur nilai awal atau komposisi awal untuk warna biru

Pada void setup() digunakan untuk inisialisasi yang hanya dijalankan sekali di awal
program. PinMode(redPin, OUTPUT), PinMode(grnPin, OUTPUT) dan PinMode(bluPin,
OUTPUT); merupakan identifikasi bahwa LED RGB berperan sebagai output. Void loop()
digunakan untuk melakukan suatu deklarasi secara berulang. Maksudnya yaitu terjadi proses
pengulangan program pada sebuah masukan atau keluaran.

P3 Potensiometer

Kelompok 5 | 19

Int potVal = analogRead(potPin); maksudnya yaitu mengidentifikasi pin 0 (pin


PWM) sebagai potensiometer dan fungsi analogRead() untuk membaca masukan dari nilai
analog. Nilai dari analog read ini berkisar dari 0 hingga 1023 berdasarkan kemampuan dari
mikrokontroller dalam mencacah dari 0 5 volt.
Dalam program ini digunakan fungsi IF yang menyatakan dua kondisi dan dalam
sketch fungsi If(val < 431) digunakan untuk mengidentifikasikan bahwa jika nilai lebih
kurang dari 431 maka akan dieksekusi dengan syntax potVal = (potVal * 3) / 4; maksudnya
nilai potensiometer aksen didapat dari nilai potensiometer sebelumnya dikali dengan 3 dan
dibagi dengan 4. Dan syntax redVal = 255 - potVal; grnVal = potVal; bluVal = 1; digunakan
untuk mengatur kompisi dari warna merah, hijau dan biru. Komposisi warna merah diperoleh
dari 255-nilai potensiometer yang diputar, sedangkan komposisi dari warna hijau sama
dengan nilai potensiometer yang diputar dan komposisi warna biru sama dengan 1.
Dan syntax berikutnya else if (potVal < 682) yang menyatakan kondisi kedua yaitu
jika potensiometer diputar dan nilainya lebih dari 421 dan kurang dari 682 maka nilai output
akan berubah kondisi yang sesuai dengan perintah yang dimasukan potVal = ( (potVal-341) *
3) / 4;// merupakan syntax untuk mengidentifikasi nilai potensiometer saat kondisi kedua.
Selanjutnya untuk redVal = 1; merupakan mengedintifikasikan output LED warna merah.
Selanjutnya untuk grnVal = 255 potVal; // merupakan mengedintifikasikan output LED
warna hijau. Selanjutnya untuk syntax bluVal = potVal; merupakan mengedintifikasikan
output LED warna biru.
Berikutnya untuk kondisi dimana nilai potensiometer tidak memenuhi kondisi
pertama atau kedua, yaitu lebih dari 682 maka output akan mengidentifikasi ulang komposisi
warna, dapat diatur dengan menggunakan syntax potVal = ( (potVal-683) * 3) / 4.
Selanjutnya untuk redVal = potVal; merupakan syntax untuk mengidentifikasi nilai warna
merah yang merupakan output LED ketika potensiometer diputar. Selanjutnya adalah grnVal
= 1; // Green off, merupakan perintah untuk identifikasi warna hijau.

P3 Potensiometer

Kelompok 5 | 20

P3.7. DIY
COMBINATE THRESHOLD AND BLINKING LED
1. Rangkaian Skematik dan Protoboard

Gambar 1. Rangkaian Skematik P3.7.Combinate Threshold and Blinking LED

Gambar 2. Rangkaian Protoboard P3.7.


P3 Potensiometer

Kelompok 5 | 21

2. Cara Kerja Aplikasi


Cara kerja program ini adalah ketika potensiometer diputar hingga level tegangan
yang diberikan oleh potensiometer dibawah 513, maka LED akan mati. Ketika
potensiometer diputar hingga level tegangan melampaui nilai 512, maka LED akan
menyala berkedip-kedip hingga level tegangan tertinggi.
3. Analisa Sketch

Gambar 3. Sketch P2.7 Level Indikator LED with Push Button Switch

const int potPin = 0 ;


int ledPin = 2;
// Menentukan pin input potensiometer pada pin 0 dan pin output LED pada pin 2.
void setup ()

// menginisialisasi dan menetapkan nilai awal

{
pinMode(ledPin,OUTPUT);
}
// Menetapkan pin LED sebagai pin output
void loop ()
{

P3 Potensiometer

Kelompok 5 | 22

int val = analogRead(potPin);

// memasukkan nilai variabel untuk memasukkan

nilai potensiometer
if(val > 512)
{
digitalWrite(ledPin,HIGH);
delay(val);
}
Jika nilai tegangan yang diberikan potensiometer lebih dari 512, maka pin LED
akan menyala, terdapat delay sebelum ke program selanjutnya
{
digitalWrite(ledPin, LOW);
delay(val);
}
}
Setelah itu maka menuju ke baris program berikutnya, yaitu diberikan nilai tegangan
LOW pada pin LED sehingga LED mati untuk beberapa waktu dan menyala kembali, begitu
seterusnya hingga LED akan mati dan menyala secara bergantian sampai level tegangan
tertingggi

P3 Potensiometer

Kelompok 5 | 23

KESIMPULAN

Dari percobaan yang telah dilakukan, maka dapat diambil kesimpulan seperti berikut:

1. Potensiometer merupakan input analog yang nilainya dapat diatur dan


range nilai tersebut dari 0 -1023.
2. Untuk menentukan nilai potensiometer dapat menggunakan perintah int
potVal=(nilai);
3. Pin yang digunakan sebagai pin potensiometer yaaitu pin analog yaitu
pin A0-A5.
4. Rangkaian potensiometer merupakan rangkaian pembagi tegangan yang
outputnya sebanding dengan nilai perubahan slidernya.
5. Potensiometer mempunyai nilai ambang batas dimana LED akan
menyala yang disebut sebagai Threshold
6. Perintah analogRead() digunakan untuk pembacaan nilai potensiometer
pada pin analog input arduino
7. Perintah analogWrite() digunakan untuk memberikan data PWM atau data analog.
8. Nilai output untuk mengatur intensitas cahaya LED memiliki range 0-255
9. Nilai referensi yang digunakan pada potensiometer yaitu 5 Volt.

P3 Potensiometer

Kelompok 5 | 24

Anda mungkin juga menyukai