Naskah Arduino
Naskah Arduino
net/publication/335219524
CITATIONS READS
0 19,226
4 authors:
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Dodit Suprianto on 17 October 2021.
Penulis
Dodit Suprianto
Vipkas Al Hadid Firdaus
Rini Agustina
Dimas Wahyu Wibowo
MALANG 2019
DAFTAR ISI
PENGANTAR
PROFILE PENULIS
PENGANTAR
“Segala puji bagi Allah, kita memuji-Nya dan meminta pertolongan, pengampunan, dan petunjuk-
Nya. Kita berlindung kepada Allah dari kejahatan diri kita dan keburukan amal kita. Barang siapa
mendapat dari petunjuk Allah maka tidak akan ada yang menyesatkannya, dan barang siapa yang
sesat maka tidak ada pemberi petunjuknya baginya. Aku bersaksi bahwa tidak ada Tuhan selain Allah
dan bahwa Muhammad adalah hamba dan Rasul-Nya. Ya Allah, semoga doa dan keselamatan
tercurah pada Muhammad dan keluarganya, dan sahabat dan siapa saja yang mendapat petunjuk
hingga hari kiamat”
Arduino adalah salah satu jenis microcontroller yang terkenal saat ini, karena Arduino
memiliki banyak keunggulan, antara lain: harga Arduino yang terjangkau, Arduino mudah
dirakit meskipun hanya memiliki sedikit pengetahuan elektronika, Arduino menggunakan
bahasa pemrograman tingkat tinggi yang mudah dipahami, yaitu bahasa C, dan Arduino
didukung oleh banyak komunitas sehingga jika Anda megalami kesulitan bisa mencari
penyelesainnya melalui forum-forum Arduino secara online.
Buku ini diperuntukkan bagi semua kalangan masyarakat dengan modal pembaca
memahami sedikit bahasa pemrograman C, namun jika Anda belum mengenal
pemrograman C maka tidak perlu kecil hati, silahkan baca literatur bahasa C yang banyak
di internet.
Saat ini Arduino tidak hanya dikuasai oleh mahasiswa jurusan elektro saja, tetapi juga
mahasiswa jurusan lain, siswa SMK, bahkan orang awam yang ingin memanfaatkannya.
Banyak sekali kegunaan microcontroller Arduino, misalnya sebagai alat otomasi, pengendali
elektrik, pengendali mekanik, akuisisi data sensor, monitoring dan lain-lain. Arduino juga
bisa disinergikan dengan alat lain melalui berbagai antarmuka seperti serial, wirelless (wifi,
bluetooth, infra red) dan lain-lain.
Buku ini membahas tentang pemanfaatan sensor dan aktuator menggunakan microcontroller
Arduino yang disertai dengan beberapa contoh projek, bertujuan agar pembaca memahami
bagaiaman cara kerja Arduino serta komponen pendukungnya dengan mudah. Diharapkan
pembaca juga dapat mengembangkan lebih lanjut projek-projek yang terdapat di dalam
buku ini.
Akhir kata, semoga buku ini bisa membantu Anda untuk terus berkreasi secara produktif
dan menjadi ilmu yang bermanfaat bagi kita semua, Amin.
Di dalam buku ini akan digunakan board Arduino UNO untuk menyelesaikan projek-
projek yang ada karena sumberdaya Arduino UNO sudah cukup memadai dan memiliki
kelebihan bersifat extensible terhadap kabel dan modul tambahan lain jika diperlukan.
Ilustrasi Arduino UNO tampak pada Gambar 1.1.
Penjelasan singkat board Arduino UNO pada gambar 1.1 adalah sebagai berikut:
• Jack Power adalah sumber tegangan DC sebesar 5-12 volt yang berasal dari power
supply eksternal (adaptor).
• Jack USB berfungsi sebagai sumber tegangan sekaligus sebagai penghubung komunikasi
data antara Arduino dan komputer ketika dilakukan write file program dari IDE Arduino.
• Pin 0 sampai pin 13 bisa bertindak sebagai pin digital input atau pin digital output,
tergantung dari penugasan program terhadap pin bersangkutan.
• Khusus pin 0 (pin RX) dan pin 1 (pin TX) digunakan sebagai interface UART secara
hardware. Anda dapat menggunakan selain pin 0 dan pin 1 sebagai interface UART
dengan memanfaatkan software serial yang akan dijelaskan lebih lanjut di bagian lain.
• Pin GND adalah pin yang dihubungkan dengan ground power supply.
• Pin A0 sampai A5 adalah pin analog input yang memiliki rentang nilai 0 sampai 1023.
Salah satu contoh antarmuka signal analog adalah potensiometer dan sensor suhu.
• Pin A4 (SDA) dan pin A5 (SCL) adalah pin input analog, juga bisa berfungsi sebagai pin
interface I2C. Beberapa modul yang memanfaatkan I2C misalnya modul RTC, OLED dan
lain-lain.
• Pin VIN 5V adalah pin tegangan masukkan 5 volt dari eksternal bila Arduino tidak
disuplai dari USB maupun jack power.
• Pin 5V adalah pin penyedia tegangan 5 volt ke modul lain jika diperlukan.
• Pin 3.3V adalah pin penyedia tegangan 3.3 volt ke modul lain jika diperlukan. Beberapa
modul yang berkerja pada tegangaan 3.3V antara lain modul Real Time Clock (RTC) atau
wifi ESP8266.
Pelengkapan dasar yang harus dipersiapkan pada projek Arduino ini antara lain: kabel data
USB untuk menghubungkan Arduino dengan komputer, kabel pelangi/dupont (Male To
Male, Male To Female, Female To Female sesuai kebutuhan) bertujuan untuk
menghubungkan pin input/output Arduino dengan module lainnya atau dihubungkan
dengan projek board yang berfungsi sebagai sirkuit.
Gambar 1.2 Kabel Data USB Arduino Gambar 1.3 Kabel Dupont Female To Female
Gambar 1.4 Projek Board Gambar 1.5 Kabel Dupont Male To Male
Ground
Terhubung Tegangan Plus
vertikal
1.3.1 Kapasitor
Kapasitor (Capacitor) atau disebut juga dengan kondensator (Condensator) adalah komponen
elektronika pasif yang dapat menyimpan muatan listrik dalam waktu sementara dengan
satuan kapasitansinya adalah Farad. Namun Farad adalah satuan yang sangat besar, oleh
karena itu pada umumnya kapasitor yang digunakan dalam peralatan elektronika adalah
satuan Farad yang dikecilkan menjadi pikoFarad, NanoFarad dan MicroFarad.
Konversi satuan Farad adalah sebagai berikut :
• 1 Farad = 1.000.000µF (mikro Farad)
• 1µF = 1.000nF (nano Farad)
• 1µF = 1.000.000pF (piko Farad)
• 1nF = 1.000pF (piko Farad)
Kapasitor merupakan komponen elektronika yang terdiri dari 2 pelat konduktor yang pada
umumnya adalah terbuat dari logam dan sebuah isolator diantaranya sebagai pemisah.
Dalam rangkaian elektronika, kapasitor disingkat dengan huruf “C”
1.3.2 Resistor
Resistor adalah komponen elektronika yang berfungsi untuk menghambat atau membatasi
aliran listrik yang mengalir dalam suatu rangkain elektronika. Sebagaimana fungsi resistor
yang sesuai namanya bersifat resistif dan termasuk salah satu komponen elektronika dalam
kategori komponen pasif. Satuan atau nilai resistansi suatu resistor disebut Ohm yang
dilambangkan dengan simbol Omega (Ω). Sesuai hukum Ohm bahwa resistansi berbanding
terbalik dengan jumlah arus yang mengalir melaluinya. Selain nilai resistansinya (Ohm),
resistor juga memiliki nilai yang lain, seperti nilai toleransi dan kapasitas daya yang mampu
dilewatkannya. Semua nilai yang berkaitan dengan resistor tersebut penting untuk
diketahui dalam perancangan suatu rangkaian elektronika oleh karena itu pabrikan resistor
selalu mencantumkan dalam kemasan resistor tersebut.
Berikut adalah simbol resistor dalam bentuk gambar ynag sering digunakan dalam suatu
desain rangkaian elektronika.
Resistor dalam suatu teori dan penulisan formula yang berhubungan dengan resistor
disimbolkan dengan huruf “R”, resistor variabel disimbolkan dengan huruf “VR” dan
untuk resistor jenis potensiometer ada yang disimbolkan dengan huruf “VR” dan “POT”.
Berdasarkan nilai resistansinya resistor dibedakan menjadi 2 jenis yaitu resistor tetap (Fixed
Resistor) dan resistor tidak tetap (Variable Resistor).
• Resistor Tetap (Fixed Resistor)
Resistor tetap merupakan resistor yang nilai resistansinya tidap dapat diubah atau tetap.
Resistor jenis ini biasa digunakan dalam rangkaian elektronika sebagai pembatas arus
dalam suatu rangkaian elektronika. Resistor tetap dapat ditemui dalam beberpa jenis,
seperti : Metal Film Resistor, Metal Oxide Resistor, Carbon Film Resistor, Ceramic Encased
Wirewound, Economy Wirewound, Zero Ohm Jumper Wire, S I P Resistor Network.
• Resistor Tidak Tetap (Variable Resistor)
▪ Pontensiometer, tipe variable resistor yang dapat diatur nilai resistansinya secara
langsung karena telah dilengkapi dengan tuas kontrol. Potensiometer terdiri dari 2
jenis yaitu Potensiometer Linier dan Potensiometer Logaritmis
▪ Trimer Potensiometer, yaitu tipe variable resistor yang membutuhkan alat bantu
(obeng) dalam mengatur nilai resistansinya. Pada umumnya resistor jenis ini disebut
dengan istilah “Trimer Potensiometer atau VR”
▪ Thermistor, yaitu tipe resistor variable yangnilairesistansinya akan berubah mengikuti
suhu disekitar resistor. Thermistor terdiri dari 2 jenis yaitu NTC dan PTC.
▪ LDR (Light Depending Resistor), yaitu tipe resistor variabel yang nilai resistansinya
akan berubah mengikuti cahaya yang diterima oleh LDR tersebut.
Nilai resistor dapat diketahui dengan kode warna dan kode huruf pada resistor. Resistor
dengan nilai resistansi ditentukan dengan kode warna dapat ditemukan pada resistor tetap
dengan kapasitas daya rendah, sedangkan nilai resistor yang ditentukan dengan kode huruf
dapat ditemui pada resistor tetap daya besar dan resistor variable.
Cincin warna yang terdapat pada resistor terdiri dari 4 ring, 5 ring dan 6 ring warna. Cincin
warna resistor tersebut memiliki arti dan nilai, seperti tampak pada Gambar 1.10.
Kode Huruf Untuk Nilai Resistansi Kode Huruf Untuk Nilai Toleransi
• R, berarti x1 (Ohm) • F, untuk toleransi 1%
• K, berarti x1000 (KOhm) • G, untuk toleransi 2%
• M, berarti x 1000000 (MOhm) • J, untuk toleransi 5%
• K, untuk toleransi 10%
• M, untuk toleransi 20%
Rangkaian adaptor ini ada yang dipasang atau dirakit langsung pada peralatan
elektornikanya dan ada juga yang dirakit secara terpisah. Untuk adaptor yang dirakit
secara terpisah biasanya merupakan adaptor yang bersifat universal yang mempunyai
tegangan output yang bisa diatur sesuai kebutuhan, misalnya 3 Volt, 4,5 Volt, 6 Volt, 9
Volt,12 Volt dan seterusnya. Namun selain itu ada juga adaptor yang hanya menyediakan
besar tegangan tertentu dan dipetuntukan untuk rangkaian elektronika tertentu misalnya
adaptor laptop dan adaptor monitor.
Pada sebuah adaptor terdapat beberapa bagian atau blok yaitu trafo (transformator), rectifier
(penyearah) dan filter.
• Trafo
Trafo adalah sebuah komponen yang berfungsi untuk menurunkan atau menaikan
tegangan AC sesuai kebutuhan. Pada sebuah adaptor, trafo yang digunakan adalah
trafo jenis step down atau trafo penurun tegangan.
Trafo tediri dari 2 bagian yaitu bagian primer dan bagian sekunder, pada masing-
masing bagian terdapat lilitan kawat email yang jumlahnya berbeda. Untuk trafo step-
down, jumlah lilitan primer akan lebih banyak dari jumlah sekunder. Lilitan primer
merupakan input dari pada transformator sedangkan output-nya adalah pada lilitan
sekunder. Meskipun tegangan telah diturunkan, output dari transformator masih
berbentuk arus bolak-balik (arus AC) yang harus diproses selanjutnya.
• Rectifier (Penyearah)
Dalam rangkaian adaptor atau catu daya, tegangan yang sudah di turunkan oleh trafo,
arusnya masih berupa arus bolak-balik atau AC. Karena arus yang dibutuhkan oleh
rangkaian elektronika adalah arus DC, sehingga harus disearahkan terlebih dahulu.
Bagian yang berfungsi untuk menyearahkan arus AC menjadi DC pada adaptor disebut
dengan istilah rectifier (penyearah gelombang) seperti tampak Gambar 1.14.
Rangkaian rectifier biasanya terdiri dari komponen dioda. Pada rangkaian adaptor
rangkaian rectifier ini terdiri dari 2 jenis yaitu:
• Half Wave Rectifier : menggunakan 1 dioda penyearah
Filter adalah bagian yang berfungsi untuk menyaring atau meratakan sinyal arus yang
keluar dari bagian rectifier. Filter ini biasanya terdiri dari komponen kapasitor (kondensator)
yang berjenis elektrolit atau ELCO (Electrolyte Capacitor).
Sebenarnya dengan adanya bagian trafo, rectifier dan filter syarat dari sebuah adaptor
sudah terpenuhi, namun terkadang tegangan yang dihasilkan biasanya tidak stabil
sehingga diperlukan bagian lain yaitu yang berfungsi untuk menstabilkan tegangan dan
mendapatkan tegangan yang akurat. Bagian tersebut adalah bagian regulator atau pengatur
tegangan.
Untuk menghasilkan tegangan dan Arus DC yang tetap dan stabil, diperlukan bagian
Voltage Regulator yang berfungsi untuk mengatur tegangan sehingga tegangan Output
tidak dipengaruhi oleh suhu, arus beban dan juga tegangan input yang berasal Output
Filter. Voltage Regulator pada umumnya terdiri dari Dioda Zener, Transistor atau IC .
Gambar 1.19 Adaptor Dengan Regulator IC LM7812
Pada DC Power Supply yang canggih, biasanya Voltage Regulator juga dilengkapi dengan
Short Circuit Protection (perlindungan atas hubung singkat), Current Limiting (Pembatas
Arus) ataupun Over Voltage Protection (perlindungan atas kelebihan tegangan).
Secara Umum adaptor terbagi menjadi dua jenis yaitu adaptor konvensional dan adaptor
menggunakna sistem switching atau SMPS.
• Adaptor atau catu daya konvensional
Pada adaptor atau catu daya konvensional, tegangan AC lebih dahulu diturunkan
melalui sebuah transformator step-down kemudian disearahkan dengan dioda
(rectifier) dan diratakan dengan kapasitor elektrolit. Prinsip adaptor jenis ini masih
menerapkan mode pengubahan tegangan AC ke DC menggunakan transformator step-
down sebagai komponen utama penurunan tegangan. Pada adaptor ini, besarnya arus
yang dihasilkan bertumpu pada arus yang dihasilkan oleh trafo penurun tegangan. Jenis
adaptor ini adalah jenis adaptor yang sudah dijelaskan pada pembahasan di atas.
• Adaptor Switching (SPMS)
Adaptor sistem switching adalah penyempurnaan dari jenis adaptor konvensional yang
masih mempunyai banyak kelemahan. Adaptor dengan sistem ini tidak lagi
menggunakan trafo stepdown seperti adaptor konvensional. Sistem pada rangkaianya
pun sangat berbeda dengan adaptor jenis konvensional.
Solusi mudah adalah dengan membuat tegangan pembagi (voltage divider). Teknik tegangan
pembagi ini akan banyak diterapkan pada contoh-contoh projek dalam buku ini sehingga
perlu dijelaskan dibagian awal. Gambar 1.21 merupakan empat contoh rangkaian skema
tegangan pembagi.
Contoh kasus pemakaian tegangan pembagi adalah ketika pin Rx dari antarmuka UART
modul WiFi ESP8266 yang bekerja pada tegangan 3,3volt menerima input pin Tx Arduino
dengan tegangan 5volt. Dari kasus tersebut, tegangan pin TX 5volt Arduino menuju pin RX
ESP8266 akan disesuaikan menjadi 3,3volt atau mendekati. Berdasarkarkan Gambar 1.20
maka tegangan pembagi dapat dirumuskan sebagai berikut:
𝑅2
𝑉𝑂𝑢𝑡 = 𝑉𝐼𝑛 ∗ ( )
(𝑅1 + 𝑅2)
Jika megacu pada nilai resistor yang banyak tersedia di pasaran dan mengikuti rumus
pembagi tegangan diperoleh tabel nilai sebagai berikut:
Anda dapat mencoba mengganti nilai R1 dan R2 untuk mendekati nilai tegangan yang
diinginkan. Sedangkan untuk penerapannya akan dibahas pada bagian selanjutnya .
BAB 2
INSTALASI & KONFIGURASI
Anda tinggal melakukan drag dan drop gambar komponen di sebelah kanan ke media
rancangan di sebelah kiri. Jika komponen yang dibutuhkan tidak ditemukan, maka Anda
dapat men-download library komponen tambahan yang dapat diperoleh di internet
(biasanya file yang berekstensi .fzpz). Selanjutnya lakukan import terhadap file library .fzpz
untuk dimasukkan ke library komponen baru, seperti tampak pada Gambar 2.10.
Jika driver port USB-SERIAL CH340 tidak muncul artinya Arduino belum dikenali oleh
windows sehingga perlu diinstal terlebih dahulu driver serial CH340. Anda dapat
memperolehnya di http://www.wch.cn/download/CH341SER_EXE.html. Setelah itu
jalankan CH341SER sampai berhasil.
Jalankan aplikasi IDE Arduino untuk memilih board yang sesuai (misalnya Arduino UNO)
pada menu Tools → Board: Arduino/Genuino UNO. Kemudian pilih menu Tools → port:
“COM4” untuk menentukan PORT, dimana port biasanya otomatis terdeteksi.
Sesuaikan dengan Board
Arduino Uno yang digunakan
Sesuaikan dengan
Port COM yang aktif
Nomor port COM IDE Arduino bisa saja berubah jika kabel data USB yang ditancapkan
pada port USB komputer berbeda, misalnya COM1, COM2, COM3, COM4 dan seterusnya.
Oleh karena itu agar Anda tidak sering mengubah konfigurasi port IDE Arduino maka
sebaiknya kabel data USB ditancapkan pada slot USB komputer yang tetap.
Sekarang kita akan membuat program sederhana. Buka menu File → New pada IDE
Arduino, kemudian tuliskan kode program sebagai berikut:
void setup() {
// put your setup code here, to run once:
pinMode(ledPin, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(ledPin, HIGH);
delay(2000);
digitalWrite(ledPin, LOW);
delay(2000);
}
Program di atas memerintahkan LED L pada board Arduino menyala selama 2 detik
kemudian mati selama 2 detik secara bergantian, terus menerus. Tampilan program kurang
lebih sama dengan Gambar 2.14.
Setelah menuliskan kode program, lakukan verifikasi untuk mengecek apakah program
sudah benar, kemudian lakukan upload/write ke board Arduino atau Anda bisa langsung
upload file ke board Arduino jika yakin kode program sudah benar. Bila proses
upload/write program ke board Arduino sukses, selanjutnya perhatikan LED L pada board
Arduino. LED L akan hidup dan mati secara bergantian. Itu artinya Anda telah SUKSES!!!
membuat program Arduino.
BAB 3
PROJEK LED
LED (Light Emiting Diode) banyak digunakan sebagai indikator berlangsungnya proses,
awal proses atau berakhirnya proses pada sistem microcontroller, sehingga pengguna dapat
mengetahui proses yang sedang terjadi. LED memiliki polaritas plus dan minus, biasanya
posisi plus tegangan ditandai dengan kaki yang lebih panjang dari yang lainnya, seperti
tampak pada Gambar 3.1.
Kutub
Plus LED Kutub
Negatif LED
Gambar 3.1. LED 5MM Satu Warna Gambar 3.2 LED 5MM 3 Warna RGB
Kebutuhan Bahan
Bahan Jumlah Nilai Keterangan
LED 5MM 3 pcs Warna Merah, kuning dan
hijau
Resistor ¼ watt 3 pcs 220 Ohm
Diagram Sketch
Hubungkan setiap kaki positif LED ke kaki masing-masing resistor 220Ω (ohm).
Hubungkan kaki resistor ke pin D8, pin D9 dan pin D10 Arduino. Sedangkan semua kaki
negatif LED dihubungkan ke ground Arduino.
Kode Program
int ledPinMerah = 8; // Pinout 8 ke kaki LED positif LED Merah
int ledPinKuning = 9; // Pinout 9 ke kaki LED positif LED Kuning
int ledPinHijau = 10; // Pinout 10 ke kaki LED positif LED Hijau
void setup() {
pinMode(ledPinMerah, OUTPUT);
pinMode(ledPinKuning, OUTPUT);
pinMode(ledPinHijau, OUTPUT);
}
void loop() {
digitalWrite(ledPinMerah, HIGH); // LED Merah Hidup
digitalWrite(ledPinKuning, LOW); // LED Kuning Mati
digitalWrite(ledPinHijau, LOW); // LED Hijau Mati
delay(2000); // Tunda 2000ms atau 2 detik
Kebutuhan Bahan
Bahan Jumlah Nilai Keterangan
LED 5MM 3 pcs Warna merah, kuning dan hijau
Resistor ¼ watt 3 pcs 10K
Resistor ¼ watt 3 pcs 220 Ohm – 470 Ohm
Saklar push button 3 pcs
Diagram Sketch
Kaki positif setiap LED masing-masing dihubungkan ke resistor 220Ω. Kaki resistor
dihubungkan ke pin D8, pin D9 dan pin D10 Arduino. Semua kaki negatif LED
dihubungkan ke ground Arduino. Satu sisi dari semua saklar push button dihubungkan
dengan tegangan 5volt Arduino dan dan sisi lainnya dihubungkan ke pin D11, pin D12 dan
pin D13 Arduino. Sedangkan resistor 10K ohm dihubungkan ke ground yang berfungsi
sebagai pull down dari saklar push button.
Kode Program
int ledPinMerah = 8; // Pinout 8 ke kaki LED positif LED Merah
int ledPinKuning = 9; // Pinout 9 ke kaki LED positif LED Kuning
int ledPinHijau = 10; // Pinout 10 ke kaki LED positif LED Hijau
void setup() {
pinMode(ledPinMerah, OUTPUT);
pinMode(ledPinKuning, OUTPUT);
pinMode(ledPinHijau, OUTPUT);
digitalWrite(ledPinMerah, LOW);
digitalWrite(ledPinKuning, LOW);
digitalWrite(ledPinHijau, LOW);
pinMode(buttonPinMerah, INPUT);
pinMode(buttonPinKuning, INPUT);
pinMode(buttonPinHijau, INPUT);
}
void loop() {
// Jika saklar push button Merah ditekan
if (digitalRead(buttonPinMerah) == HIGH) {
digitalWrite(ledPinMerah, HIGH); // LED Merah hidup
} else {
digitalWrite(ledPinMerah, LOW); // LED Merah mati
}
Kebutuhan Bahan
Bahan Jumlah Nilai Keterangan
LED 5MM 1 pcs Warna bebas
Resistor ¼ watt 1 pcs 220 Ohm – 470 Ohm
Potentiometer Mono 1 pcs 10 K – 50 K
Diagram Sketch
Kaki LED positif dihubungkan ke resistor 220 ohm, kemudian kaki resistor dihubungkan
ke pin D8 Arduino, sedangkan kaki negatif LED dihubungkan dengan ground Arduino.
Kaki sebelah kiri potensiometer dihubungkan ke ground Arduino, kaki tengah
potensiometer dihubungkan ke pin analog A0 Arduino dan kaki sebelah kanan
potensiometer dihubungkan ke tegangan 5 volt Arduino.
Kode Program
const int LEDPin = 8; // Kaki LED positif dihubungkan ke pin 8
const int POTPin = A0; // Kaki tengah potensiometer dihubungkan ke
pin analog A0
int nilaiPotensiometer = 0;
int nilaiOutput = 0; // asumsi bahwa posisi potensio dimulai
paling kiri
void setup() {
// Inisialisasi komunikasi serial dengan kecepatan 9600 bps
Serial.begin(9600);
pinMode(LEDPin, OUTPUT); Baudrate disesuaikan dengan
pinMode(POTPin, INPUT); baudrate pada serial monitor
}
void loop() {
// Mendapatkan nilai pembacaan potensiometer
nilaiPotensiometer = analogRead(POTPin);
Program di atas menggunakan fungsi map yang berguna untuk mentransformasi nilai
dengan rentang tertentu yang di-skala menjadi rentang nilai baru sesuai kebutuhan.
Sebagai contoh, secara default semua input yang bersumber dari input analog berkisar
antara 0 sampai 1023, kemudian ditransformasi menjadi rentang nilai baru antara 0 sampai
255.
Projek juga menggunakan mode PWM (pulse width modulation), biasanya ditandai dengan
fungsi analogWrite() yang melibatkan nilai antara 0 sampai 255. Sedangkan mode digital
umumnya menggunakan fungsi digitalWrite() yang melibatkan dua nilai saja yaitu HIGH
dan LOW.
Pada program di atas juga dikenalkan fungsi komunikasi serial yang ditandai dengan
inisialisasi Serial.begin. Sedangkan fungsi Serial.print() bertujuan untuk menampilkan
variabel nilai angka atau string ke monitor yang berguna saat proses debug kode program..
Untuk membaca output ke serial monitor dengan cara buka menu Tools → Serial Monitor.
Kemudian sesuaikan kecepatan transfer data (baudrate) antara serial monitor dengan
kecepatan pada kode program. Sebagai contoh kecepatan transfer data adalah 9600 bps.
Setelah itu lakukan upload program ke Arduino. Putar potensiometer ke kanan atau ke
kiri, perhatikan perubahan nilai yang sedang terjadi pada layar serial monitor seperti
tampak pada Gambar 3.4.
Sesuaikan dengan
Baudrate pada kode
program
Gambar 3.5 Pin LED 3 Warna RGB Gambar 3.6 Komposisi Warna Dasar
RGB
Kebutuhan Bahan
Bahan Jumlah Nilai Keterangan
LED RGB 1 pcs
Resistor ¼ watt 3 pcs 220 Ohm – 470 Ohm
Diagram Sketch
Setiap kaki LED dihubungkan ke resistor antara 470Ω dan ujung kaki resistor lainnya
dihubungkan ke pin D8, pin D9 dan pin D10 Arduino. Sedangkan pin negatif LED
dihubungkan ke ground Arduino.
Kode Program
int pinMerah = 8; // Pin Led Merah dari resistor
int pinHijau = 9; // Pin Led Hijau dari resistor
int pinBiru = 10; // Pin Led Biru dari resistor
void setup() {
pinMode(pinMerah, OUTPUT);
pinMode(pinHijau, OUTPUT);
pinMode(pinBiru, OUTPUT);
}
Pada bagian ini dikenalkan pula bagaimana membuat fungsi buatan sendiri yang bernama
aturWarna(). Fungsi umumnya terdiri dari nama fungsi, variabel parameter dan badan
fungsi (berisi kode program). Fungsi bisa bernilai balik atau tidak. Fungsi bisa dipanggil
berulang-ulang jika diperlukan pada badan void loop, sehingga program menjadi lebih
efisien.
PROFILE PENULIS
Dodit Suprianto
Berprofesi sebagai pengajar, konsultan IT dan penulis buku
komputer. Menyukai bidang IoT, Computer Vision dan Human &
Computer Interaction. Website:
http://doditsuprianto.blogspot.com/, Email:
[email protected].
Rini Agustina
Dosen pada program studi Sistem Informasi di Universitas
Kanjuruhan Malang. Lulus S1 jurusan Sistem Informasi di STIKI
Malang, S2 Jurusan Pendidikan Kejuruan di Universitas Negeri
Malang dan saat ini sedang menempuh studi lanjut S3 di
almamater yang sama. Menyukai bidang Multimedia, DSS, Social
Humanities, Career Development dan Vocational Leadership. Website:
https://rinimyhanny.wordpress.com/