Module Arduino Ifan Fersi 2
Module Arduino Ifan Fersi 2
“Segala puji bagi Allah, kita memuji-Nya dan meminta pertolongan, pengampunan, dan
petunjukNya. 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, C++.
Saat ini Arduino tidak hanya dikuasai oleh mahasiswa jurusan elektro saja, tetapi juga
mahasiswa jurusan lain, siswa SMP, SMA dan 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.
Modul ini membahas tentang pemanfaatan sensor dan aktuator menggunakan microcontroller
Arduino yang disertai dengan beberapa contoh projek, bertujuan agar siswa memahami
bagaiaman cara kerja Arduino serta komponen pendukungnya dengan mudah. Diharapkan
pembaca juga dapat mengembangkan lebih lanjut projek-projek yang terdapat di dalam modul ini
Akhir kata, semoga modul ini bisa membantu teman-taman untuk terus berkreasi secara
produktif dan menjadi ilmu yang bermanfaat bagi kita semua, Amin.
Penulis
MODULE 1
PENGENALAN PERANGKAT ARDUINO
Pertemuan
Materi Deskripsi Materi
Ke-
Pinout Arduino Uno Analog IN
1 Board Arduino
Pinout Arduino Uno -Pin Digital
Blok Input (sensor)
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 ESP826
Pinout Arduino Uno - Catu Daya diaman Ada 3 cara untuk menyalakan Arduino Uno:
1. DC Power
DC Power Jack dapat digunakan untuk memberi daya pada papan Arduino, jack
biasanya terhubung ke adaptor dinding. Adaptor dapat ditenagai oleh 5-20 volt tetapi
pabrikan merekomendasikan untuk menyimpannya antara 7-12 volt. Di atas 12 volt,
regulator mungkin terlalu panas, dan di bawah 7 volt, mungkin tidak cukup.
2. Pin VIN
Pin VIN - Pin ini digunakan untuk memberi daya pada board Arduino Uno
menggunakan sumber daya eksternal. Tegangan harus berada dalam kisaran yang
disebutkan di atas.
3. KAbel USB (Tipe A)
Kabel USB - saat terhubung ke komputer, memberikan 5 volt pada 500mA.
Pinout Arduino Uno - Analog IN
Arduino Uno memiliki 6 pin analog, yang memanfaatkan ADC (Analog to Digital
converter). Pin ini berfungsi sebagai input analog tetapi juga dapat berfungsi sebagai
input digital atau output digital.
Gambar 1.2 Kabel Data USB Arduino Gambar 1.3 Kabel Dupont Female To
Female
Sensor adalah komponen elektronika yang berfungsi untuk mengubah besaran fisik
berupa mekanis, magnetis, panas, sinar, kimia dan lain-lain menjadi besaran listrik
berupa tegangan, resistansi dan arus listrik yang kemudian diolah lebih lanjut oleh micro
controller.
Selain sensor, input juga bisa bersumber dari piranti digital, misalnya keypad, joystick,
dan lain-lain.
Blok Microcontroller
Blok Communication
Bagi pembaca yang masih awam terhadap komponen elektronika ada baiknya mengenal
sedikit mengenai elektronik dasar untuk memahami bagaimana Arduino berkerja. Namun
kita tidak membahas elektronika secara mendalam, hanya elektronika yang
berhubugan langsung dengan Arduino saja yang akan dipelajari
1.3.1 Kapasitor
1.3.2 Resistor
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).
Kode Huruf Untuk Nilai Resistansi Kode Huruf Untuk Nilai Resistansi
• 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 %
Secara umum Adaptor adalah rangkaian elektronika yang berfungsi untuk mengubah
tegangan AC (arus bolak-balik) yang tinggi menjadi tegangan DC (arus searah) yang
lebih rendah. Seperti yang kita tahu bahwa arus listrik yang digunakan di rumah, kantor
dan lain-lain adalah arus listrik dari PLN (Perusahaan Listrik Negara) yang
didistribusikan dalam bentuk arus bolak-balik atau AC. Akan tetapi, peralatan
elektronika yang kita gunakan hampir sebagian besar membutuhkan arus DC dengan
tegangan yang lebih rendah untuk pengoperasiannya. Oleh karena itu diperlukan sebuah
alat atau rangkaian elektronika yang bisa merubah arus dari AC menjadi DC serta
menyediakan tegangan dengan besar tertentu sesuai yang dibutuhkan. Rangkaian yang
berfungi untuk merubah arus AC menjadi DC tersebut disebut dengan istilah DC Power
suply atau adaptor.
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 masingmasing
bagian terdapat lilitan kawat email yang jumlahnya berbeda. Untuk trafo stepdown,
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 Bagian lilitan primer
Bagian lilitan sekunder 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.12.
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
Gambar 1.13 Penyearah Half Wave Rectifier
1.3.4
1.4
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.17 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
stepdown 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.
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:
MODULE 2
INSTALASI & KONFIGURASI
Pertemuan
Materi Deskripsi Materi
Ke-
Arduino IDE (Integrated
1 Software Pendukun Development Environment)
Fritzing,
Download
Instalasi &
Menjalankan file Arduino
1 Konfigurasi 2 Instalasi Arduino IDE
Arduino IDE (Integrated Development Environment), adalah software yang berfungsi untuk
menuliskan kode program, debugger kode program, dan sebagai compiler program. Dimana
file hasil compile akan di-write ke chip Arduino, sehingga Arduino dapat berfungsi secara
mandiri.
Fritzing, adalah software alat bantu untuk mem-visualisasikan rancangan, pengabelan,
peletakkan komponen secara software. Kemudian dari hasil rancangan Fritzing tersebut
diimplementasikan pada kondisi sebenarnya.
2.2. Instalasi Arduino IDE
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.
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 arna hijau
Resistor ¼ watt 3 pcs 220 ohm
Wiring 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
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(ledPinKuning, LOW); // LED Kuning Mati
delay(2000); // Tunda 2000ms atau 2 detik
}
3.2 Kontrol LED Dengan Push Button
Tujuan projek ini adalah untuk menghidupkan dan mematikan setiap LED dari tiga LED yang
tersedia dengan menggunakan saklar push button. Kondisi hidup atau mati setiap LED
dikendalikan oleh saklar push button. Adapun pemahaman kaki saklar push button seperti
tampak pada Gambar 3.3
Kebutuhan Bahan
Wiring 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
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() {
} else {
digitalWrite(ledPinMerah, LOW); // LED Merah mati
}
} else {
digitalWrite(ledPinKuning, LOW); // LED Kuning mati
}
}
Kebutuhan Bahan
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
int nilaiPotensiometer = 0;
int nilaiOutput = 0; // asumsi bahwa posisi potensio dimulai paling kiri
}
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.
Gambar 3.4 Serial Monitor Dengan Baud Rate 9600
3.4 RGB LED
LED RGB adalah LED yang terdiri dari 3 warna dasar antara lain warna merah, hijau dan biru
dalam satu LED tunggal. Terkadang demi kesederhanaan perancangan, cukup digunakan satu
LED namun memiliki tiga warna berbeda. Dengan mengatur kompisisi warna dasar RGB akan
diperoleh kombinasi warna yang lebih kaya.
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
Wiring Skectch
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);
} Memanggil Fungsi
void loop() { Atur Warna
Variabel Parameter
Nama fungsi AturWarna
}
void aturWarna(int nilaiMerah, int nilaiHijau, int nilaiBiru) {
analogWrite(pinMerah, nilaiMerah);
analogWrite(pinHijau, nilaiHijau);
Badan Fungsi
analogWrite(pinBiru, nilaiBiru);
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.
BAB 4 PROJEK RELAY
LDR (Light Dependent Resistor) merupakan jenis resistor yang nilai resistansinya dapat berbah-
rubah sesuai dengan jumlah cahaya yang diterima. Maka dari itu jenis resistor ini juga disebut
dengan sensor cahaya. Pemanfaatan sensor ini bisa digunakan utnuk lamu penerangan ruma,
jalan, taman dan lain sebagainya. Dengan sensor ini kita tidak usah repot-repot
mamatikan/menghidupkan saklar, karena lamu akan otomatis menyakana Ketika malam tiba
ataua ciaca mendung juga bisa dana sebaliknya.
Dengan LDR ( akan menghantarkan arus listrik jika menerima sejumlah intensitas cahaya
(kondisi terang) dan menghambat arus listrik dalam kondisi gelap. Dalam beberapa kondisi LDR
digunakan untuk mengubah energi cahaya menjadi energi listrik. LDR (Light Dependent
Resistor) disebut juga sebagai Photoresistor, Photoconduction dan Photocell.
Resistansi LDR dapat berubah seiring dengan perubahan intensitas cahaya yang mengenainya.
Pada umumnya, nilai resistansi LDR akan mencapai 200 Kilo Ohm (kΩ) pada intensitas cahaya
rendah (kondisi gelap) dan menurun menjadi 500 Ohm (Ω) pada intensitas cahaya tinggi (kondisi
terang).
Kebutuhan Bahan
Keterangan :
4.2. ifan