Anda di halaman 1dari 126

BAB 1

Penganalan
Mikrokontroler
Dalam Kehidupan yang modern ini berbagai kegiatan yang dilakukan manusia tidak
lepas dari benda-benda yang memiliki sistem canggih dan dapat membantu atau
bahkan menggantikan peran manusia dalam pekerjaan sehari-hari. Manusia terus
menciptakan alat yang dapat membantu kegiatan dan kebutuhan dalam kehidupan.
Sebagai contoh adalah AC (Air Conditioner), Kulkas, Drone, dll.

Gambar 1.0 Alat-Alat yang membantu kehidupan manusia

Tentunya kita tidak asing dengan teknologi sekarang yang bernama Drone. Drone
merupakan salah satu contoh teknologi canggih yang diciptakan manusia untuk
membantu kebutuhan seperti merekam video, mengambil gambar, atau sekedar
mengamati permukaan bumi dari sisi yang tidak dapat dilakukan secara manual,
yaitu dari atas.
Mungkin bagi para pembaca, sempat terbesit pertanyaan “Gimana sih cara buat
drone?, cara kerjanya drone gimana, kok bisa seimbang ya pas diterbangin?,
berapa sih sebenernya harga buat bikin drone? Kapan aku punya pacar ya?”. Oke,
pertanyaan tersebut mungkin bisa pembaca temui jawabannya sendiri setelah
membaca modul ini. Dalam mengontrol sesuatu yang rumit seperti mengatur
pergerakan motor dari drone kita dapat menggunakan suatu teknologi bernama
Mikrokontroller. Apa itu mikrokontroller? Mari kita bahas perlahan lahan.

I.Apa itu Mikrokontroller?


Sebelum kita membahas hal yang lebih jauh lagi, kita perlu mengetahui sebenarnya
apa yang dimaksud dengan mikrokontroller? Pernahkah pembaca mendengar istilah
mikrokontroller? Oke mari kita bahas. Jadi, sebenernya mikrokontroller itu.... apa
ya? Saya juga bingung menjelaskannya, oke mari searching google dan kita akan
menemukan jawaban kurang lebih seperti ini :
“Mikrokontroler adalah sebuah chip yang berfungsi sebagai pengontrol rangkaian
elektronik dan umunya dapat menyimpan program didalamnya. Mikrokontroler
umumnya terdiri dari CPU (Central Processing Unit), memori, I/O tertentu dan unit
pendukung seperti Analog-to-Digital Converter (ADC) yang sudah terintegrasi di
dalamnya. Kelebihan utama dari mikrokontroler ialah tersedianya RAM dan
peralatan I/O pendukung sehingga ukuran board mikrokontroler menjadi sangat
ringkas. Mikrokontroler MCS51 ialah mikrokomputer CMOS 8 bit dengan 4 KB
Flash PEROM (Programmable and Erasable Only Memory) yang dapat dihapus dan
ditulisi sebanyak 1000 kali. Mikrokontroler ini diproduksi dengan menggunakan
teknologi high density non-volatile memory. Flash PEROM on-chip tersebut
memungkinkan memori program untuk diprogram ulang dalam sistem (in-system
programming) atau dengan menggunakan programmer non-volatile memory
konvensional. Kombinasi CPU 8 bit serba guna dan Flash PEROM, menjadikan
mikrokontroler MCS51 menjadi mikrokontroler handal yang fleksibel.”
Read more at: https://elektronika-dasar.web.id/pengertian-dan-kelebihan-mikrokontroler/
Copyright © Elektronika Dasar
Jika diringkas maka Mikrokontroler adalah sebuah chip yang terdiri atas CPU,
memory (ROM [Read Only Memory, RAM [Random Acces Memoruy]), I/O
(Input/Output dan Counter Clock dalam sebuah IC.

Gambar 1.1 Mikrokontroller MCS51 dan pinout kaki-kakinya

Bagaimana? Sudah cukup membingungkan? Jangan khawatir kita akan bahas satu
per satu dan perlahan-lahan dari beberapa hal yang mimbingungkan dalam
penjelasan diatas.
Seperti yang telah disebutkan bahwa mikrokontroller adalah sebuah chip (bagi yang
belum tau chip itu apa, bentuknya seperti Gambar 1.1) yang berfungsi sebagai
pengontrol rangkaian elektronik. Pertanyaannya adalah bagaimana bisa
mikrokontroller dapat mengontrol rangkaian elektronik?
II. Jika Mikrokontroller diibaratkan sebuat perusahaan
Kita akan memulai dari hal umum terlebih dahulu, seperti pada Gambar 1.1 Chip
mikrokontroller terdiri dari badan utama yang berwarna hitam dan memiliki kaki
yang cukup banyak. Jika diibaratkan bahwa mikrokontroller adalah sebuah
perusahaan besar, maka badan utama yang berwarna hitam adalah bangunan yang
menjadi pusat proses dari perusahaan seperti input barang, penyimpanan barang
(gudang), Bagian pembuatan barang dari mentah hingga jadi, pengemasan barang,
sortir barang, dan sejenisnya. Kemudian Kaki-kaki atau pin yang banyak dapat
diibaratkan menjadi pintu keluar dan masuk dari tiap proses, misalkan pintu 1
adalah pintu input barang yang diminta oleh produsen, pintu 2 adalah pintu output
dari hasil produksi barang, pintu 3 adalah pintu output jika akan mengambil barang
dari gudang.

Gambar
1.3 Ilustrasi

Perusahaan sebagai Mikrokontroller

II. Mikrokontroller perlu diprogram


Perusahaan tersebut dapat diibaratkan sebagai mikrokontroller. Dalam memulai
suatu produksi, tentunya perusahaan membutuhkan adanya rencana terlebih dahulu.
Dalam hal ini kita perlu membuat sebuah program yang akan dimasukkan kedalam
mikrokontroller, bagaimana proses akan berjalan, kita perlu memberitahu fitur apa
saja dan pin apa saja yang akan digunakan agar proses tidak berjalan secara efisien,
dan pin mana yang akan menjadi output dari proses. Bagian yang mengatur hal ini
disebut dengan Central Processing Unit (CPU).
Setelah Program dibuat dan dimasukkan kedalam mikrokontroller, kemudian
output yang diharapkan akan dapat diakses melalui pin yang telah kita deklarasikan
dalam program.Setiap Pin mikrokontrololer dapat menjadi pintu I/O Input atau
Output. Dan setiap pin memiliki fitur tersendiri. Setiap mikrokontroller memiliki
software yang membantu untuk memasukkan program ke dalamnya. Misalkan
mikrokontroller dari keluarga Arduino dapat diprogram dengan menggunakan
siftware IDE bernama Arduino Integrated Development Environtment (disingkat:
Arduino IDE). Mikrokontroller dari keluarga STM32 dapat diprogram dengan
menggunakan Keil uVision. Eclipse dan masih banyak lainnya.

Gambar 1.4 Beberapa IDE yang digunakan untuk memprogram mikrokontroller

III. Mikrokontroller membaca sensor dan mengatur outputnya.


Mikrokontroller juga dapat membaca input dari sensor. Sensor adalah suatu alat
yang dapat mengubah besaran fisika seperti tekanan, suhu, kecepatan dll menjadi
sinyal listrik yang dapat dibaca oleh mikrokontroller untuk kemudian diprogram
apa yang akan dilakukan jika sensor membaca hal tertentu. Misalkan saja
menggunakan sensor suhu yang dihubungkan dengan pin 1, ketika sensor membaca
suhu telah mencapai 50o maka mikrokontroller akan memerintahkan pin 2 untuk
mengeluarkan pulse listrik sebesar sekian untuk menggerakan motor servo.
Mikrokontroller mengatur proses input dan output sesuai dengan program yang
dibuat sehingga penggunaan mikrokontroller sangatlah fleksibel dan bervariatif.

IV. Jenis Mikrokontroller


Mikrokontroller memiliki banyak jenis dan variasi. Pada dasarnya mikrokontroller
diproduksi oleh perusahaan yang berbeda dan di waktu yang berbeda sehingga
terdapat beberapa keluarga mikrokontroller yang memiliki karakteristik yang
berbeda-beda setiap keluarganya. Ada beberapa jenis keluarga mikrokontroler yang
dikenal luas dan banyak digunakan untuk keperluan pendidikan, penelitian dan juga
industri.
Untuk kemudahan dalam edukasi, mikrokontroller yang ada di pasaran sekarang
telah diintegrasi dalam sebuah board yang didalamnya telah terdapat berbagai fitur
tambahan seperti pinheader untuk mempermudah penggunaan, led indicator,
tombol reset, dan banyak fitur lain. Contohnya adalah :
AVR
Mikrokonktroler Alv and Vegard’s Risc processor atau sering disingkat
AVR merupakan mikrokonktroler RISC 8 bit. Karena RISC inilah sebagian
besar kode instruksinya dikemas dalam satu siklus clock. AVR adalah jenis
mikrokontroler yang paling sering dipakai dalam bidang elektronika dan
instrumentasi.
Secara umum, AVR dapat dikelompokkan dalam 4 kelas. Pada dasarnya
yang membedakan masing-masing kelas adalah memori, peripheral dan
fungsinya. Keempat kelas tersebut adalah keluarga ATTiny, keluarga
AT90Sxx, keluarga ATMega dan AT86RFxx.

Gambar 1.5 ATMega328 yang menjadi chip mikrokontroller pada Arduino Uno
MCS-51
Mikrokonktroler ini termasuk dalam keluarga mikrokonktroler CISC.
Sebagian besar instruksinya dieksekusi dalam 12 siklus clock.
Mikrokontroler ini berdasarkan arsitektur Harvard dan meskipun awalnya
dirancang untuk aplikasi mikrokontroler chip tunggal, sebuah mode
perluasan telah mengizinkan sebuah ROM luar 64KB dan RAM luar 64KB
diberikan alamat dengan cara jalur pemilihan chip yang terpisah untuk akses
program dan memori data. Salah satu kemampuan dari mikrokontroler 8051
adalah pemasukan sebuah mesin pemroses boolean yang mengijikan operasi
logika boolean tingkatan-bit dapat dilakukan secara langsung dan secara
efisien dalam register internal dan RAM. Karena itulah MCS51 digunakan
dalam rancangan awal PLC (programmable Logic Control).

PIC

Pada awalnya, PIC merupakan kependekan dari Programmable Interface


Controller. Tetapi pada perkembangannya berubah menjadi Programmable
Intelligent Computer. PIC termasuk keluarga mikrokonktroler berarsitektur
Harvard yang dibuat oleh Microchip Technology. Awalnya dikembangkan
oleh Divisi Mikroelektronik General Instruments dengan nama PIC1640.
Sekarang Microhip telah mengumumkan pembuatan PIC-nya yang keenam.

ARM
ARM adalah prosesor dengan arsitektur set instruksi 32bit RISC (Reduced
Instruction Set Computer) yang dikembangkan oleh ARM Holdings. ARM
merupakan singkatan dari Advanced RISC Machine (sebelumnya lebih
dikenal dengan kepanjangan Acorn RISC Machine). Pada awalnya ARM
prosesor dikembangkan untuk PC (Personal Computer) oleh Acorn
Computers, sebelum dominasi Intel x86 prosesor Microsoft di IBM PC
kompatibel menyebabkan Acorn Computers bangkrut.

Gambar 1.6 Chip ARM Cortex-M4 yang digunakan dalam STM32F405 (Bluepill)

V. Pengenalan Board Arduino


Seperti yang telah dijelaskan sebelumnya, bahwa mikrokontroller adalah sebuah
chip. Kemudian untuk keperluan kemudahan dalam penggunaan, terdapat beberapa
platform yang mengintegrasikan mikrokontroller tersebut dalam sebuah board.
Beberapa platform tersebut sebagai contoh adalah Nuvoton, STM32, Pixhawk,
Arduino, dll. Kali ini kita akan fokus pada Board Arduino

Gambar 1.7 Beberapa Platform Board Mikrokontroller

Arduino adalah pengendali mikro single-board yang bersifat open-source,


diturunkan dari Wiring platform yang dirancang untuk memudahkan penggunaan
elektronik dalam berbagai bidang. Hardwarenya memiliki prosesor Atmel AVR dan
softwarenya memiliki bahasa pemrograman sendiri.

Arduino juga merupakan platform hardware terbuka yang ditujukan kepada siapa
saja yang ingin membuat peralatan elektronik interaktif berdasarkan hardware dan
software yang fleksibel dan mudah digunakan. Mikrokontroler diprogram
menggunakan bahasa pemrograman arduino yang memiliki kemiripan syntax
dengan bahasa pemrograman C. Karena sifatnya yang terbuka maka siapa saja
dapat mengunduh skema hardware arduino dan menggunakannya.

Arduino menggunakan keluarga mikrokontroler ATMega yang dirilis oleh Atmel


sebagai basis, namun ada individu/perusahaan yang membuat clone arduino dengan
menggunakan mikrokontroler lain dan tetap kompatibel dengan arduino pada level
hardware. Untuk fleksibilitas, program dimasukkan melalui bootloader meskipun
ada opsi untuk membypass bootloader dan menggunakan downloader untuk
memprogram mikrokontroler secara langsung melalui port ISP.

VI. Mengapa Arduino?


Untuk keperluan edukasi penggunaan arduino memang sangat mempermudah. Tapi
jika untuk keperluan riset dan memperdalam mikrokontroller Arduino memang
tidak disarankan karena terlalu mudah(pfftt..sombong memang. Tapi benar adanya)
Setelah saya browsing di beberapa situs mengapa kita akan lebih mudah
mempelajari arduino. Saya menemukan 8 alasan dibawah ini:
Pertama, Karena Arduino Mempunyai Bootloader. Bootloader semacam sistem
tersendiri untuk Arduino, yang membuat Arduino tidak memerlukan lagi tambahan
chip programmer. Bootloader ini berfungsi untuk menangani proses memasukan
program dari komputer ke Arduino.

Kedua, Karena Arduino Terjangkau. Saya cek dari harga, kemudian saya
bandingkan dengan fasilitas yang ada di dalam Arduino. Dan saya pikir lagi, “Harga
segini ternyata bisa beli ginian ya, haha”. Pokonya murah deh…

Gambar 1.8 Arduino Kecil dan Harganya Terjangkau

Ketiga, Karena Arduino Mudah Dipelajari. Bahasa pemograman Arduino adalah


bahasa C yang sudah menjadi sederhana. Sehingga memudahkan pemula. Kamu
pun yang bukan orang teknik atau berasal dari programmer, pasti bisa
menggunakan Arduino.

Keempat, Karena Arduino Menggunakan USB. Untuk memasukkan program


kedalam arduino, kebanyakan arduino tidak memerlukan paralel port atau
sebagainya, cukup menggunakan kabel USB yang memudahkan kamu untuk proses
Download (memasukkan) program ke dalam Arduino. Karena USB ada di semua
perangkat komputer.

Kelima, Karena Arduino Memiliki Banyak Library Gratis. Library ini berfungsi
untuk menyingkat pemograman, sehingga kamu nggak perlu pusing lagi. Dan
tersedia berbagai macam, ada yang untuk LCD, Servo, Sensor, dan sebagainya.
Yang pasti Librarynya gratis… Cihuyyyy

Keenam, Karena Arduino Memiliki Fasilitas Lengkap. Sudah tersedia memori,


pin input output yang lengkap. Ada PWMnya juga, ADC, timer, dan sebagainya.
Pokonya lengkap deh…
Gambar 1.9 Arduino Memiliki Fasilitas Lengkap

Ketujuh, Karena Arduino Open Source. Tidak hanya secara software saja yang
bisa kamu utak-atik, tapi juga secara hardware. Kamu bahkan bisa membuat
Arduino buatan kamu sendiri, dan malah pihak Arduino sendiri juga memberikan
skemanya (arduino.cc). Dan karena Open Source juga, Arduino menjadi
berkembang sangat cepat diseluruh dunia.

Kedelapan, Karena Komunitas Arduino Banyak. Kamu bisa gabung dengan grup
yang ada difacebook, kamu bisa gabung dengan di media sosial lainnya juga.
Komunitas-komunitas ini membuat kamu tidak pusing saat mau bertanya, atau
mencari referensi untuk belajar. Karena di Google pun, banyak contoh-contoh
projek Arduino yang telah dibuat. Di youtube banyak video tutorialnya. Dan di
Kelas Robot, kamu bisa belajar Arduino dan Robot juga …

Read more at: https://kelasrobot.com/8-alasan-mengapa-harus-pilih-arduino/

VII. Jenis-jenis Arduino


Arduino lahir dan berkembang dengan pesat, kemudian muncul dengan berbagai
jenis. Diantaranya adalah:

A.Arduino Uno
Jenis yang ini adalah yang paling banyak digunakan. Terutama untuk pemula
sangat disarankan untuk menggunakan Arduino Uno. Dan banyak sekali referensi
yang membahas Arduino Uno. Versi yang terakhir adalah Arduino Uno R3
(Revisi 3), menggunakan ATMEGA328 sebagai Microcontrollernya, memiliki 14
pin I/O digital dan 6 pin input analog. Untuk pemograman cukup menggunakan
koneksi USB type A to To type B. Sama seperti yang digunakan pada USB printer.
B. Arduino Due
Berbeda dengan saudaranya, Arduino Due tidak menggunakan ATMEGA,
melainkan dengan chip yang lebih tinggi ARM Cortex CPU. Memiliki 54 I/O pin
digital dan 12 pin input analog. Untuk pemogramannya menggunakan Micro
USB, terdapat pada beberapa handphone.

C. Arduino Mega
Mirip dengan Arduino Uno, sama-sama menggunakan USB type A to B untuk
pemogramannya. Tetapi Arduino Mega, menggunakan Chip yang lebih tinggi
ATMEGA2560. Dan tentu saja untuk Pin I/O Digital dan pin input Analognya
lebih banyak dari Uno.

D. Arduino Nano
Sepertinya namanya, Nano yang berukulan kecil dan sangat sederhana ini,
menyimpan banyak fasilitas. Sudah dilengkapi dengan FTDI untuk pemograman
lewat Micro USB. 14 Pin I/O Digital, dan 8 Pin input Analog (lebih banyak dari
Uno). Dan ada yang menggunakan ATMEGA168, atau ATMEGA328.

E. Arduino Mini
Fasilitasnya sama dengan yang dimiliki Nano. Hanya tidak dilengkapi dengan
Micro USB untuk pemograman. Dan ukurannya hanya 30 mm x 18 mm saja.

F. Arduino Esplora
Rekomendasi bagi kamu yang mau membuat gadget sepeti Smartphone, karena
sudah dilengkapi dengan Joystick, button, dan sebagainya. Kamu hanya perlu
tambahkan LCD, untuk lebih mempercantik Esplora.

DAFTAR PUSTAKA
http://www.yansuwitna.net/2017/01/pengenalan-arduino.html
https://elektronika-dasar.web.id/pengertian-dan-kelebihan-mikrokontroler/
https://kelasrobot.com/8-alasan-mengapa-harus-pilih-arduino/
BAB 2
Elektronika
Komponen Elektronika biasanya sebuah alat berupa benda yang menjadi
bagian pendukung suatu rangkaian elektronik yang dapat bekerja sesuai dengan
kegunaannya. Mulai dari yang menempel langsung pada papan rangkaian baik
berupa PCB, CCB, Protoboard maupun Veroboard dengan cara disolder atau tidak
menempel langsung pada papan rangkaian (dengan alat penghubung lain,
misalnya kabel).
Komponen elektronika ini terdiri dari satu atau lebih bahan elektronika,
yang terdiri dari satu atau beberapa unsur materi dan jika disatukan, dipanaskan,
ditempelkan dan sebagainya akan menghasilkan suatu efek yang dapat
menghasilkan suhu atau panas, menangkap atau menggetarkan materi, merubah
arus, tegangan, daya listrik dan lainnya.

Definisi dan Macam Komponen Dalam Rangkaian Listrik


Rangkaian listrik adalah suatu kesatuan susunan yang terdiri dari beberapa
komponen yang mempunyai maksud dan tujuan tertentu. Dimana macam dari
komponen rangkaian listrik dibagi kedalam 2 jenis yaitu :
1. Komponen Aktif ( Sumber Arus, Sumber Tegangan )
2. Komponen Pasif ( Resistor, Kapasitor, Induktor )
Komponen aktif adalah jenis komponen elektronika yang memerlukan arus
listrik (catu daya) agar dapat bekerja dalam rangkaian elektronika. Besarnya arus
listrik bisa berbeda-beda untuk tiap komponen ini. Komponen aktif merupakan
penggerak dari semua rangkaian, adapun contoh dari komponen aktif ini adalah :
1. Transistor
2. FET (Field Effect Transistor)
3. UJT (Uni Junction Transistor)
4. IC (Integrated Circuit) dll
Komponen pasif adalah jenis komponen elektronika yang bekerja tanpa
memerlukan arus listrik (catu daya). Komponen pasif dapat memperkecil arus yang
masuk, adapun contoh dari komponen ini adalah :
1. Resistor
2. Potensiometer
3. Trafo Input (In)
4. Trafo Output (Out)
5. Kondensor / Kapasitor
6. Trafo Senvor Spoel
7. Timer, dll
Komponen-komponen ini sangat besar pengaruhnya pada komponen elektronika.
Dalam penggunaannya kedua jenis komponen ini hampir selalu digunakan
bersama-sama, kecuali dalam rangkaian-rangkaian pasif yang hanya menggunakan
komponen-komponen pasif saja misalnya rangkaian baxandall pasif, tapis pasif dsb.
Untuk IC (Integrated Circuit) adalah gabungan dari komponen aktif dan pasif yang
disusun menjadi sebuah rangkaian elektronika dan diperkecil ukuran fisiknya.
Multimeter

Cara menggunakan

1. Mengukur tegangan DC
o Atur Selektor pada posisi DCV.
o Pilih skala batas ukur berdasarkan perkiraan besar tegangan yang akan di cek, jika
tegangan yang di cek sekitar 12Volt maka atur posisi skala di batas ukur 50V.
o Untuk mengukur tegangan yang tidak diketahui besarnya maka atur batas ukur pada
posisi tertinggi supaya multimeter tidak rusak.
o Hubungkan atau tempelkan probe multimeter ke titik tegangan yang akan dicek, probe
warna merah pada posisi (+) dan probe warna hitam pada titik (-) tidak boleh terbalik.
o Baca hasil ukur pada multimeter.
2. Mengukur tegangan AC
o Atur Selektor pada posisi ACV.
o Pilih skala batas ukur berdasarkan perkiraan besar tegangan yang akan di cek, jika
tegangan yang di cek sekitar 12Volt maka atur posisi skala di batas ukur 50V.
o Untuk mengukur tegangan yang tidak diketahui besarnya maka atur batas ukur
pada posisi tertinggi supaya multimeter tidak rusak.
o Hubungkan atau tempelkan probe multimeter ke titik tegangan yang akan dicek.
Pemasangan probe multimeter boleh terbalik.
o Baca hasil ukur pada multimeter.

3. Mengukur kuat arus DC


o Atur Selektor pada posisi DCA.
o Pilih skala batas ukur berdasarkan perkiraan besar arus yang akan di cek, misal :
arus yang di cek sekitar 100mA maka atur posisi skala di batas ukur 250mA atau
500mA.
o Perhatikan dengan benar batas maksimal kuat arus yang mampu diukur oleh
multimeter karena jika melebihi batas maka fuse (sekring) pada multimeter akan
putus dan multimeter sementara tidak bisa dipakai dan fuse (sekring) harus diganti
dulu.
o Pemasangan probe multimeter tidak sama dengan saat pengukuran tegangan DC
dan AC, karena mengukur arus berarti kita memutus salah satu hubungan catu
daya ke beban yang akan dicek arusnya, lalu menjadikan multimeter sebagai
penghubung.
o Hubungkan probe multimeter merah pada output tegangan (+) catu daya dan probe
(-) pada input tegangan (+) dari beban/rangkaian yang akan dicek pemakaian
arusnya.
o Baca hasil ukur pada multimeter.

4. Mengukur nilai hambatan sebuah resistor tetap


o Atur Selektor pada posisi Ohmmeter.
o Pilih skala batas ukur berdasarkan nilai resistor yang akan diukur.
o Batas ukur ohmmeter biasanya diawali dengan X (kali), artinya hasil penunjukkan
jarum nantinya dikalikan dengan angka pengali sesuai batas ukur
o Hubungkan kedua probe multimeter pada kedua ujung resistor boleh terbalik.
o Baca hasil ukur pada multimeter, pastikan nilai penunjukan multimeter sama
dengan nilai yang ditunjukkan oleh gelang warna resistor.
Standar Gambar Simbol Komponen Elektronika
1. BATERAI
Simbol

Gambar

Baterai dengan bermacam ukuran dan Voltase


Fungsi
Baterai adalah alat listrik-kimiawi yang menyimpan energi dan
mengeluarkan tenaganya dalam bentuk listrik. Sebuah baterai biasanya terdiri dari
tiga komponen penting, yaitu:
1. Batang karbon sebagai anoda (kutub positif baterai)
2. Seng (Zn) sebagai katoda (kutub negatif baterai)
3. Pasta sebagai elektrolit (penghantar)
Baterai yang biasa dijual (disposable/sekali pakai) mempunyai tegangan
listrik 1,5 volt. Baterai ada yang berbentuk tabung atau kotak. Ada juga yang
dinamakan rechargeable battery, yaitu baterai yang dapat diisi ulang, seperti yang
biasa terdapat pada telepon genggam. Baterai sekali pakai disebut juga dengan
baterai primer, sedangkan baterai isi ulang disebut dengan baterai sekunder. Fungsi
baterai adalah:
1) Saat mesin mati sebagai sumber energi untuk menghidupkan asessoris,
penerangan, dsb.
2) Saat starter untuk mengidupkan sistem starter
3) Saat mesin hidup sebagai stabiliser suplai listrik pada kendaraan, dimana
pada saat hidup energi listrik bersumber dari alternator.
Cara Pengujian Baterai

1. Dengan menggunakan multimeter, putar selector switch pada posisi DC-


VOLT
2. Perkirakan harga tegangan yang akan diukur.
3. Ambil jangkauan pengukuran sesuai dengan harga tegangan yang
diperkirakan
4. Hubungkan ujung kabel merah pada kutub positif (+) baterai, dan tempelkan
ujung kabel hitam pada kutub negative (-) baterai.
5. Tampak jarum penunjuk skala akan menyimpang ke kanan. Bacalah harga
yang ditunjukkan pada skala yang benar.

2. SAKLAR
Simbol

Gambar

Saklar adalah sebuah perangkat yang digunakan untuk memutuskan


jaringan listrik, atau untuk menghubungkannya. Jadi saklar pada dasarnya adalah
alat penyambung atau pemutus aliran listrik. Selain untuk jaringan listrik arus kuat,
saklar berbentuk kecil juga dipakai untuk alat komponen elektronika arus lemah.
Secara sederhana, saklar terdiri dari dua bilah logam yang menempel pada
suatu rangkaian, dan bisa terhubung atau terpisah sesuai dengan keadaan sambung
(on) atau putus (off) dalam rangkaian itu. Material kontak sambungan umumnya
dipilih agar supaya tahan terhadap korosi. Kalau logam yang dipakai terbuat dari
bahan oksida biasa, maka saklar akan sering tidak bekerja. Untuk mengurangi efek
korosi ini, paling tidak logam kontaknya harus disepuh dengan logam anti korosi
dan anti karat. Pada dasarnya saklar tombol bisa diaplikasikan untuk sensor
mekanik, karena alat ini bisa dipakai pada mikrokontroller untuk pengaturan
rangkaian pengontrolan.

3. KAPASITOR

Kondensator atau sering disebut sebagai kapasitor adalah suatu alat yang
dapat menyimpan energi di dalam medan listrik, dengan cara mengumpulkan
ketidakseimbangan internal dari muatan listrik. Kondensator memiliki satuan yang
disebut Farad dari nama Michael Faraday.
 Kondensator diidentikkan mempunyai dua kaki dan dua kutub yaitu
positif dan negatif serta memiliki cairan elektrolit dan biasanya
berbentuk tabung.
Lambang kondensator (mempunyai kutub) pada skema elektronika.
 Sedangkan jenis yang satunya lagi kebanyakan nilai kapasitasnya lebih
rendah, tidak mempunyai kutub positif atau negatif pada kakinya,
kebanyakan berbentuk bulat pipih berwarna coklat, merah, hijau dan
lainnya seperti tablet atau kancing baju.

Lambang kapasitor (tidak mempunyai kutub) pada skema elektronika.


Jenis kondensator
Berdasarkan kegunaannya kondensator dibagi dalam:
A. Kondensator tetap (nilai kapasitasnya tetap tidak dapat diubah)
B. Kondensator elektrolit (Electrolite Condenser = Elco)
C. Kondensator variabel (nilai kapasitasnya dapat diubah-ubah)
KONDENSATOR TETAP

A. Kondensator/Kapasitor tetap ialah suatu kondensator yang nilainya konstan


dan tidak berubah-ubah. Kondensator/Kapasitor tetap ada tiga macam bentuk:

KONDENSATOR/KAPASITOR KERAMIK (Ceramic Capacitor)


Bentuknya ada yang bulat tipis, ada yang persegi empat berwarna merah,
hijau, coklat dan lain-lain. Dalam pemasangan di papan rangkaian (PCB), boleh
dibolak-balik karena tidak mempunyai kaki positif dan negatif. Mempunyai
kapasitas mulai dari beberapa piko Farad sampai dengan ratusan Nano Farad (nF).
Dengan tegangan kerja maksimal 25 volt sampai 100 volt, tetapi ada juga yang
sampai ribuan volt. Contoh misal pada badannya tertulis = 203, nilai kapasitasnya
= 20.000 pF = 20 nF = 0,02 µF. Jika pada badannya tertulis = 502, nilai kapasitasnya
= 5.000 pF = 5 nF = 0,005 µF

KONDENSATOR/KAPASITOR POLYESTER

Pada dasarnya sama saja dengan kondensator keramik begitu juga cara
menghitung nilainya. Bentuknya persegi empat seperti permen. Biasanya
mempunyai warna merah, hijau, coklat dan sebagainya. Polister film adalah bahan
yang digunakan untuk pembuatan kapasitor ini. Kapasitor ini memiliki toleransi
yang kecil sekitar ±5% sampai ±10% dan juga tidak memiliki kutub.

B. KONDENSATOR ELEKTROLIT
Simbol

Gambar
Kondensator elektrolit atau Electrolytic Condenser (sering disingkat
Elco) adalah kondensator yang biasanya berbentuk tabung, mempunyai dua kutub
kaki berpolaritas positif dan negatif, ditandai oleh kaki yang panjang positif
sedangkan yang pendek negatif atau yang dekat tanda minus ( - ) adalah kaki
negatif. Nilai kapasitasnya dari 0,47 µF (mikroFarad) sampai ribuan mikroFarad
dengan voltase kerja dari beberapa volt hingga ribuan volt.
C. KONDENSATOR VARIABEL
Simbol

Gambar

Fungsi dan Penjelasan


Kondensator variabel adalah jenis kondensator yang kapasitasnya bisa
diubah-ubah. Kondensator ini dapat berubah kapasitasnya karena secara fisik
mempunyai poros yang dapat diputar dengan menggunakan obeng.
Kondensator variabel terbuat dari logam, mempunyai kapasitas maksimum
sekitar 100 pF (pikoFarad) sampai 500 pF (100pF = 0.0001µF). Kondensator
variabel dengan spul antena dan spul osilator berfungsi sebagai pemilih gelombang
frekuensi tertentu yang akan ditangkap. Cara mengubah nilai kapasitor ini biasanya
diputar langsung atau menggunakan obeng.
Lambang gambar untuk Kondensator Trimer pada skema elektronika:
Kondensator trimer dipasang paralel dengan variabel kondensator berfungsi
untuk mengatur pemilihan gelombang frekuensi tersebut. Kondensator trimer
mempunyai kapasitas di bawah 100 pF (pikoFarad).

Cara Pengujian Kondensator

Caranya adalah dengan langkah-langkah berikut di bawah ini:


1. Dengan menggunakan sebuah multimeter, mula-mula saklar multimeter
diputar ke atas. Tanda panah ke atas tepatnya R x Ohm
2. Kalibrasi sampai jarum multimeter menunjukkan angka nol tepat saat dua
colok (+) dan colok (-) dihubungkan. Putar adjusment untuk menyesuaikan.
3. Hubungkan colok (-) dengan kaki berkutub negatif kondensator, sedangkan
colok (+) dengan kaki positif kondensator. Lihat jarum. Apabila bergerak
dan tidak kembali berarti komponen tersebut masih baik. Jika bergerak dan
kembali tetapi tidak seperti posisi semula berarti komponen rusak. Dan
apabila jarum tidak bergerak sama sekali dipastikan putus.

4. RESISTOR
Simbol

Gambar
Resistor adalah komponen elektronik dua saluran yang didesain untuk
menahan arus listrik dengan memproduksi penurunan tegangan diantara kedua
salurannya sesuai dengan arus yang mengalirinya, berdasarkan hukum Ohm:

Resistor digunakan sebagai bagian dari jejaring elektronik dan sirkuit


elektronik, dan merupakan salah satu komponen yang paling sering digunakan.
Resistor dapat dibuat dari bermacam-macam kompon dan film, bahkan kawat
resistansi (kawat yang dibuat dari paduan resistivitas tinggi seperti nikel-kromium).
Karakteristik utama dari resistor adalah resistansinya dan daya listrik yang
dapat diboroskan. Karakteristik lain termasuk koefisien suhu, desah listrik, dan
induktansi. Resistor dapat diintegrasikan kedalam sirkuit hibrida dan papan sirkuit
cetak, bahkan sirkuit terpadu. Ukuran dan letak kaki bergantung pada desain sirkuit,
resistor harus cukup besar secara fisik agar tidak menjadi terlalu panas saat
memboroskan daya.
A. RESISTOR FOTO
Simbol

Gambar

Resistor peka cahaya atau fotoresistor adalah komponen elektronik yang


resistansinya akan menurun jika ada penambahan intensitas cahaya yang
mengenainya. Fotoresistor dapat merujuk pula pada light-dependent resistor
(LDR), atau fotokonduktor.
Fotoresistor dibuat dari semikonduktor beresistansi tinggi yang tidak
dilindungi dari cahaya. Jika cahaya yang mengenainya memiliki frekuensi yang
cukup tinggi, foton yang diserap oleh semikonduktor akan menyebabkan elektron
memiliki energi yang cukup untuk meloncat ke pita konduksi. Elektron bebas yang
dihasilkan (dan pasangan lubangnya) akan mengalirkan listrik, sehingga
menurunkan resistansinya.
B. POTENSIOMETER
Simbol

Gambar

Potensiometer adalah resistor tiga terminal dengan sambungan geser yang


membentuk pembagi tegangan dapat disetel. [1] Jika hanya dua terminal yang
digunakan (salah satu terminal tetap dan terminal geser), potensiometer berperan
sebagai resistor variabel atau Rheostat. Potensiometer biasanya digunakan untuk
mengendalikan peranti elektronik seperti pengendali suara pada penguat.
Potensiometer yang dioperasikan oleh suatu mekanisme dapat digunakan sebagai
transduser, misalnya sebagai sensor joystick.
Potensiometer jarang digunakan untuk mengendalikan daya tinggi (lebih
dari 1 Watt) secara langsung. Potensiometer digunakan untuk menyetel taraf isyarat
analog (misalnya pengendali suara pada peranti audio), dan sebagai pengendali
masukan untuk sirkuit elektronik. Sebagai contoh, sebuah peredup lampu
menggunakan potensiometer untuk menendalikan pensakelaran sebuah TRIAC,
jadi secara tidak langsung mengendalikan kecerahan lampu.
Potensiometer yang digunakan sebagai pengendali volume kadang-kadang
dilengkapi dengan sakelar yang terintegrasi, sehingga potensiometer membuka
sakelar saat penyapu berada pada posisi terendah.
C. TRIMPOT
Simbol

Gambar

Sebuah trimmer miniatur komponen elektrik yang bisa diatur/disetel. Ini


berarti bisa di setel supaya tepat ketika beberapa piranti dipasangkan, dan tak akan
dilihat atau di atur/setel oleh pengguna. Trimmer dapat berupa variable
resistors (potensiometer) atau variable kapasitor.
Komponen ini biasanya digunakan pada rangkaian yang memiliki kecermatan
seperti Audio/Video komponen, dan mungkin diperlukan untuk diatur/disetel
ketika ada perbaikan. Tidak seperti pengatur lainnya, trimmer dipasangkan
langsung di papan rangkaian, dan diatur/disetel dengan obeng kecil dan hanya
beberapa kali penyesuaian. Pada tahun 1952, Marlan Bourns mematenkan
penemuannya di dunia pertamakalinya dengan nama trimming potentiometer,
merek "Trimpot".

D. TERMISTOR
Simbol
Gambar

Termistor NTC yang tersambung pada kabel terisolasi


Termistor (Inggris: thermistor) adalah alat atau komponen atau sensor
elektronika yang dipakai untuk mengukur suhu. Prinsip dasar dari termistor adalah
perubahan nilai tahanan (atau hambatan atau werstan atau resistance) jika suhu atau
temperatur yang mengenai termistor ini berubah. Termistor ini merupakan
gabungan antara kata termo (suhu) dan resistor (alat pengukur tahanan).
Cara Pengujian Resistor

Untuk mengujinya dengan multimeter kita boleh membolak-balik kaki


resistor ataupun sebaliknya membolak-balik colok (+) dan colok (-).
Langkah-langkah pemeriksaan resistor:
a. Memutar saklar sampai pada posisi R x Ohm.
b. Kalibrasi dengan menghubungkan colok (+) dan colok (-). Kemudian
memutar penyetel sampai jarum menunjuk pada angka nol (0). Atau putar
control adjusment untuk menyesuaikan.
c. Setelah itu kita hubungkan pencolok (+) pada salah satu kaki resistor, begitu
pula colok (-) pada kaki yang lain.
d. Perhatikan jarum penunjuk. Apakah ia bergerak penuh atau sebaliknya jika
bergerak dan tak kembali berarti komponen masih baik. Bila sebaliknya
jarum penunjuk skala tidak bergerak berarti resistor rusak.
e. Komponen resistor yang masih baik juga bisa dinilai dengan sama atau tidak
nilai komponen resistor yang tertera pada gelang-gelang warnanya dengan
pengukuran melalui multimeter.

5. DIODA
Dioda adalah komponen elektronik yang terbuat dari unsur semikonduktor. Bahan
ini adalah silikon atau germanium. Dioda silikon bekerja pada tegangan 0.6 VDC
dan dioda germanium bekerja pada tegangan 0,2 VDC.
Contoh dioda : IN 4148, IN4002, IN 4003, dll.

Simbol Dioda adalah D,


simbol gambarnya :

Sifat dioda :
• Jika diberi arah maju (tegangan positif => anoda
dan tegangan negatif => katoda) akan
menghantarkan arus dan sebaliknya,

• Jika diberi arah mundur (tegangan positif => katoda


dan tegangan negatif => anoda) tidak akan
menghantarkan arus.

Fungsi Dioda :
• Sebagai penyearah
• Sebagai pengaman rangkaian dari kemungkinan terbaliknya polaritas

Mengukur Dioda Dengan Multitester

Putar batas ukur pada Ohmmeter X10 / X100

a. probe merah => katoda, probe hitam => anoda =>


Jarum bergerak bukan nol.

kemudian posisi dibalik : probe merah => anoda,


probe hitam => katoda, Jarum tdk bergerak (
berarti dioda dalam kondisi BAIK).
b. probe merah => katoda, probe hitam => anoda =>
Jarum bergerak atau menunjuk nol.
kemudian posisi dibalik :
probe merah => anoda, probe hitam => katoda =>

Jarum bergerak atau menunjuk nol


( berarti dioda dalam kondisi RUSAK / SHORT ).

A. DIODA CAHAYA
Simbol

Gambar

Dioda cahaya atau lebih dikenal dengan sebutan LED (light-emitting


diode) adalah suatu semikonduktor yang memancarkan cahaya monokromatik yang
tidak koheren ketika diberi tegangan maju. Gejala ini termasuk bentuk
elektroluminesensi. Warna yang dihasilkan bergantung pada bahan semikonduktor
yang dipakai, dan bisa juga ultraviolet dekat atau inframerah dekat.
Fungsi Fisikal
Sebuah LED adalah sejenis dioda semikonduktor istimewa. Seperti sebuah
dioda normal, LED terdiri dari sebuah chip bahan semikonduktor yang diisi penuh,
atau di-dop, dengan ketidakmurnian untuk menciptakan sebuah struktur yang
disebut p-n junction. Pembawa-muatan - elektron dan lubang mengalir ke junction
dari elektroda dengan voltase berbeda. Ketika elektron bertemu dengan lubang, dia
jatuh ke tingkat energi yang lebih rendah, dan melepas energi dalam bentuk photon.
Emisi cahaya
Panjang gelombang dari cahaya yang dipancarkan, dan oleh karena itu
warnanya, tergantung dari selisih pita energi dari bahan yang membentuk p-n
junction. Sebuah dioda normal, biasanya terbuat dari silikon atau germanium,
memancarkan cahaya tampak inframerah dekat, tetapi bahan yang digunakan untuk
sebuah LED memiliki selisih pita energi antara cahaya inframerah dekat, tampak,
dan ultraungu dekat.
B. DIODA ZENER
Simbol

Gambar
Dioda Zener adalah dioda yang memiliki karakteristik menyalurkan arus
listrik mengalir ke arah yang berlawanan jika tegangan yang diberikan melampaui
batas "tegangan rusak" (breakdown voltage) atau "tegangan Zener". Ini berlainan
dari dioda biasa yang hanya menyalurkan arus listrik ke satu arah.
Dioda yang biasa tidak akan mengijinkan arus listrik untuk mengalir secara
berlawanan jika dicatu-balik (reverse-biased) di bawah tegangan rusaknya. Jika
melampaui batas tegangan rusaknya, dioda biasa akan menjadi rusak karena
kelebihan arus listrik yang menyebabkan panas. Namun proses ini adalah reversibel
jika dilakukan dalam batas kemampuan. Dalam kasus pencatuan-maju (sesuai
dengan arah gambar panah), dioda ini akan memberikan tegangan jatuh (drop
voltage) sekitar 0.6 Volt yang biasa untuk dioda silikon. Tegangan jatuh ini
tergantung dari jenis dioda yang dipakai.
Sebuah dioda Zener memiliki sifat yang hampir sama dengan dioda biasa,
kecuali bahwa alat ini sengaja dibuat dengan tengangan rusak yang jauh dikurangi,
disebut tegangan Zener. Sebuah dioda Zener memiliki p-n junction yang memiliki
doping berat, yang memungkinkan elektron untuk tembus (tunnel) dari pita valensi
material tipe-p ke dalam pita konduksi material tipe-n. Sebuah dioda zener yang
dicatu-balik akan menunjukan perilaku rusak yang terkontrol dan akan melewatkan
arus listrik untuk menjaga tegangan jatuh supaya tetap pada tegangan zener.
Sebagai contoh, sebuah diode zener 3.2 Volt akan menunjukan tegangan jatuh pada
3.2 Volt jika diberi catu-balik. Namun, karena arusnya tidak terbatasi, sehingga
dioda zener biasanya digunakan untuk membangkitkan tegangan referensi, atau
untuk menstabilisasi tegangan untuk aplikasi-aplikasi arus kecil.
Pemakaian
Dioda Zener biasanya digunakan secara luas dalam sirkuit elektronik.
Fungsi utamanya adalah untuk menstabilkan tegangan. Pada saat disambungkan
secara parallel dengan sebuah sumber tegangan yang berubah-ubah yang dipasang
sehingga mencatu-balik, sebuah dioda zener akan bertingkah seperti sebuah
kortsleting (hubungan singkat) saat tegangan mencapai tegangan rusak diode
tersebut. Hasilnya, tegangan akan dibatasi sampai ke sebuah angka yang telah
diketahui sebelumnya.

Sebuah dioda zener juga digunakan seperti ini sebagai regulator tegangan
shunt (shunt berarti sambungan parallel, dan regulator tegangan sebagai sebuah
kelas sirkuit yang memberikan sumber tegangan tetap.
Cara Pengujian
1. Dengan jangkah OHM x1k atau x100 penyidik merah ditempel pada katoda (ada
tanda gelang) dan hitam pada anoda, jarum harus ke kanan.
2. Penyidik dibalik ialah merah ke anoda dan hitam ke katoda, jarum harus tidak
bergerak. Bila tidak demikian berarti kemungkinan diode rusak.

6. LOUDSPEAKER
Simbol

Gambar

Pengeras suara Inggris loud speaker atau speaker saja) adalah transduser
yang mengubah sinyal elektrik ke frekuensi audio (suara) dengan cara
menggetarkan komponennya yang berbentuk selaput.
Membuat suara
Pada dasarnya, speaker merupakan mesin penterjemah akhir, kebalikan dari
mikrofon. Speaker membawa sinyal elektrik dan mengubahnya kembali menjadi
getaran untuk membuat gelombang suara. Speaker menghasilkan getaran yang
hampir sama dengan yang dihasilkan oleh mikrofon yang direkam dan dikodekan
pada tape, CD, LP, dan lain-lain. Speaker tradisional melakukan proses ini dengan
menggunakan satu drivers atau lebih.

7. TRANSISTOR
Transistor adalah alat semikonduktor yang dipakai sebagai penguat,
sebagai sirkuit pemutus dan penyambung (switching), stabilisasi tegangan,
modulasi sinyal atau sebagai fungsi lainnya. Transistor dapat berfungsi semacam
kran listrik, dimana berdasarkan arus inputnya (BJT) atau tegangan inputnya (FET),
memungkinkan pengaliran listrik yang sangat akurat dari sirkuit sumber listriknya.

Transistor through-hole (dibandingkan dengan pita ukur sentimeter)


Pada umumnya, transistor memiliki 3 terminal. Tegangan atau arus yang
dipasang di satu terminalnya mengatur arus yang lebih besar yang melalui 2
terminal lainnya. Transistor adalah komponen yang sangat penting dalam dunia
elektronik modern. Dalam rangkaian analog, transistor digunakan dalam amplifier
(penguat). Rangkaian analog melingkupi pengeras suara, sumber listrik stabil, dan
penguat sinyal radio. Dalam rangkaian-rangkaian digital, transistor digunakan
sebagai saklar berkecepatan tinggi. Beberapa transistor juga dapat dirangkai
sedemikian rupa sehingga berfungsi sebagai logic gate, memori, dan komponen-
komponen lainnya.
Cara Kerja Transistor
Dari banyak tipe-tipe transistor modern, pada awalnya ada dua tipe dasar
transistor, bipolar junction transistor (BJT atau transistor bipolar) dan field-effect
transistor (FET), yang masing-masing bekerja secara berbeda.
Transistor bipolar dinamakan demikian karena kanal konduksi utamanya
menggunakan dua polaritas pembawa muatan: elektron dan lubang, untuk
membawa arus listrik. Dalam BJT, arus listrik utama harus melewati satu
daerah/lapisan pembatas dinamakan depletion zone, dan ketebalan lapisan ini dapat
diatur dengan kecepatan tinggi dengan tujuan untuk mengatur aliran arus utama
tersebut.
FET (juga dinamakan transistor unipolar) hanya menggunakan satu jenis
pembawa muatan (elektron atau hole, tergantung dari tipe FET). Dalam FET, arus
listrik utama mengalir dalam satu kanal konduksi sempit dengan depletion zone di
kedua sisinya (dibandingkan dengan transistor bipolar dimana daerah Basis
memotong arah arus listrik utama). Dan ketebalan dari daerah perbatasan ini dapat
dirubah dengan perubahan tegangan yang diberikan, untuk mengubah ketebalan
kanal konduksi tersebut. Lihat artikel untuk masing-masing tipe untuk penjelasan
yang lebih lanjut.
Jenis-jenis transistor

PNP P-channel

NPN N-channel

BJT JFET

Simbol Transistor dari Berbagai Tipe


BJT
BJT (Bipolar Junction Transistor) adalah salah satu dari dua jenis transistor.
Cara kerja BJT dapat dibayangkan sebagai dua dioda yang terminal positif atau
negatifnya berdempet, sehingga ada tiga terminal. Ketiga terminal tersebut adalah
emiter (E), kolektor (C), dan basis (B).
Perubahan arus listrik dalam jumlah kecil pada terminal basis dapat
menghasilkan perubahan arus listrik dalam jumlah besar pada terminal kolektor.
Prinsip inilah yang mendasari penggunaan transistor sebagai penguat elektronik.
Rasio antara arus pada koletor dengan arus pada basis biasanya dilambangkan
dengan β atau hFE. β biasanya berkisar sekitar 100 untuk transistor-transisor BJT.
TRANSISTOR PERTEMUAN TUNGGAL
Simbol
Gambar

Transistor pertemuan tunggal (UJT) adalah sebuah peranti


semikonduktor elektronik yang hanya mempunyai satu pertemuan.
Konstruksi
UJT mempunyai tiga saluran, sebuah emitor (E) dan dua basis (B1 dan B2).
Basis dibentuk oleh batang silikon tipe-n yang terkotori ringan. Dua sambungan
ohmik B1 dan B2 ditambahkan pada kedua ujung batang silikon. Resistansi diantara
B1 dan B2 ketika emitor dalam keadaan rangkaian terbuka dinamakan resistensi
antarbasis (interbase resistance).
Tipe
Ada dua tipe dari transistor pertemuan tunggal, yaitu:
 Transistor pertemuan tunggal dasar, atau UJT, adalah sebuah peranti
sederhana yang pada dasarnya adalah sebuah batangan semikonduktor tipe-
n yang ditambahkan difusi bahan tipe-p di suatu tempat sepanjang batangan,
menentukan parameter η dari peranti. Peranti 2N2646 adalah versi yang
paling sering digunakan.
 Transistor pertemuan tunggal dapat diprogram, atau PUT, sebenarnya
adalah saudara dekat tiristor. Seperti tiristor, ini terbentuk dari empat
lapisan P-N dan mempunyai sebuah anoda dan sebuah katoda yang
tersambung ke lapisan pertama dan lapisan terakhir, dan sebuah gerbang
yang disambungkan ke salah satu lapisan tengah. Penggunaan PUT tidak
dapat secara langsung dipertukarkan dengan penggunaan UJT, tetapi
menunjukkan fungsi yang mirip. Pada konfigurasi sirkuit konvensional,
digunakan dua resistor pemrogram untuk mengeset parameter η dari PUT,
pada konfigurasi ini, UJT berlaku seperti UJT konvensional. Peranti
2N6027 adalah contoh dari peranti ini.
Cara Kerja
UJT dipanjar dengan tegangan positif diantara kedua basis. Ini
menyebabkan penurunan tegangan disepanjang peranti. Ketika tegangan emitor
dinaikkan kira-kira 0,7V diatas tegangan difusi P (emitor), arus mulai mengalir dari
emitor ke daerah basis. Karena daerah basis dikotori sangat ringan, arus tambahan
(sebenarnya muatan pada daerah basis) menyebabkan modulasi konduktifitas yang
mengurangi resistansi basis diantara pertemuan emitor dan saluran B2.
Pengurangan resistansi berarti pertemuan emitor lebih dipanjar maju, dan bahkan
ketika lebih banyak arus diinjeksikam. Secara keseluruhan, efeknya adalah
resistansi negatif pada saluran emitor. Inilah alasan mengapa UJT sangat berguna,
terutama untuk sirkuit osilator sederhana.
Penggunaan
Selain penggunaan pada osilator relaksasi, salah satu penggunaan UJT dan
PUT yang paling penting adalah untuk menyulut tiristor (seperti SCR, TRIAC, dll).
Faktanya, tegangan DC dapat digunakan untuk mengendalikan sirkuit UJT dan
PUT karena waktu hidup peranti meningkat sesuai dengan peningkatan tegangan
kendali DC. Penggunaan ini penting untuk pengendalia AC arus tinggi.
Cara Pengujian

1. Cara kerja UJT (Uni Junktion Transistor) adalah seperti switch, UJT kalau
masih bisa on off berarti masih baik.
2. Jangkah pada 10 VDC dan potensio pada minimum, tegangan harus kecil.
3. Setelah potensio diputar pelan-pelan jarum naik sampai posisi tertentu dan
kalau diputar terus jarum tetap disitu.
4. Bila jarum diputar pelan-pelan ke arah minimum lagi, pada suatu posisi
tertentu tiba-tiba jarum bergerak ke kiri dan bila putaran potensio diteruskan
sampai minimum jarum tetap disitu. Bila peristiwa tersebut terjadi, maka
UJT masih baik.

TRANSISTOR PERTEMUAN DWIKUTUB

Transistor pertemuan dwikutub (BJT) adalah salah satu jenis dari


transistor. Ini adalah peranti tiga-saluran yang terbuat dari bahan semikonduktor
terkotori. Dinamai dwikutub karena operasinya menyertakan baik elektron maupun
lubang elektron, berlawanan dengan transistor ekakutub seperti FET yang hanya
menggunakan salah satu pembawa. Walaupun sebagian kecil dari arus transistor
adalah pembawa mayoritas, hampir semua arus transistor adalah dikarenakan
pembawa minoritas, sehingga BJT diklasifikasikan sebagai peranti pembawa-
minoritas.

NPN

Simbol NPN BJT


NPN adalah satu dari dua tipe BJT, dimana huruf N dan P menunjukkan
pembawa muatan mayoritas pada daerah yang berbeda dalam transistor. Hampir
semua BJT yang digunakan saat ini adalah NPN karena pergerakan elektron dalam
semikonduktor jauh lebih tinggi daripada pergerakan lubang, memungkinkan
operasi arus besar dan kecepatan tinggi. Transistor NPN terdiri dari selapis
semikonduktor tipe-p diantara dua lapisan tipe-n. Arus kecil yang memasuki basis
pada tunggal emitor dikuatkan di keluaran kolektor. Dengan kata lain, transistor
NPN hidup ketika tegangan basis lebih tinggi daripada emitor. Tanda panah dalam
simbol diletakkan pada kaki emitor dan menunjuk keluar (arah aliran arus
konvensional ketika peranti dipanjar maju).

PNP

Simbol PNP BJT.


Transistor PNP terdiri dari selapis semikonduktor tipe-n diantara dua lapis
semikonduktor tipe-p. Arus kecil yang meninggalkan basis pada moda tunggal
emitor dikuatkan pada keluaran kolektor. Dengan kata lain, transistor PNP hidup
ketika basis lebih rendah daripada emitor. Tanda panah pada simbol diletakkan
pada emitor dan menunjuk kedalam.

Transistor adalah termasuk komponen utama dalam elektronika. Transistor terbuat


dari 2 dioda germanium yang disatukan. Tegangan kerja transistor sama dengan
dioda yaitu 0,6 volt.

Transistor memiliki 3 kaki yaitu :


EMITOR (E)
BASIS (B)
COLECTOR (C)

Jenis transistor ada 2 yaitu :


1. Transistor PNP;
2. Transistor NPN
Contoh transistor : C 828, FCS 9014, FCS 9013, TIP 32, TIP 31, C5149,
C5129, C5804, BU2520DF, BU2507DX, dll

Simbol dan bentuk transistor :

a) Menentukan Kaki Basis


Putar batas ukur pada Ohmmeter X10 atau X100.
Misalkan kaki transistor kita namakan A, B, dan C.
- Bila probe merah => kaki A dan probe lainnya => 2 kaki lainnya secara
bergantian jarum bergerak semua dan jika dibalik posisi hubungnya tidak
bergerak semua maka itulah kaki BASIS, dan tipe transistornya PNP.
- Bila probe hitam => kaki A dan probe lainnya => 2 kaki lainnya secara
bergantian jarum bergerak semua dan jika dibalik posisi hubungnya tidak
bergerak semua maka itulah kaki BASIS, dan tipe transistornya NPN.
( Isikan hasil pengamatan ke dalam table-7.1 )

b) Menentukan Kaki Colector NPN


Putar batas ukur pada Ohmmeter X1K atau X10K.
Bila probe hitam => kaki B dan probe merah => kaki C. Kemudian kaki A (basis)
dan kaki B dipegang dengan tangan tapi antar kaki jangan sampai terhubung. Bila
jarum bergerak sedikit berarti kaki B itulah kaki COLECTOR. Jika kaki basis dan
colector sudah diketahui berarti kaki satunya adalah emitor.

8. AMPLIFIER

OPERASIONAL AMPLIFIER

Prinsip Dasar
Suatu amplifier dapat dikatagorikan operasional jika
memenuhi tiga karakteristik utama, yakni:
1. Very high gain (200.000 kali)
2. Very high input impedance
3. Very low output impedance

OpAmp umumnya terdiri atas tiga stage atau amplifier yang


dirangkai secara cascade. Ketiga stage itu masing-masing:
1. Differensitial amplifier
2. Voltage amplifier
3. Output amplifier

Differential amplifier memiliki respon frekuensi yang sangat lebar dan input impedance
yang sangat tinggi. Voltage amplifier memberikan penguatan yang sangat tinggi dan
output amplifier memberikan output impedance yang sangat rendah sehingga dapat
mengeluarkan arus listrik yang besar terhadap beban.

Konfigurasi

Tidak seperti amplifier konvesional, OpAmp mempunyai dua terminal masukkan, yakni:
inverting input dan noninverting input yang masing-masing
ditandai dengan "+" dan "-".

1. Inverting Konfiguration
Jika signal dimasukkan di antara terminal inverting input
dan bumi sementara terminal noninverting input dibumikan
maka signal keluaran akan berlawanan fasa dengan signal
masukkan.

2. Noninverting Konfiguration
Sebaliknya jika signal dimasukkan di antara terminal
noninverting input dan bumi sementara terminal inverting
input dibumikan maka signal keluaran sefasa dengan signal
masukkan.

INVERTING AMPLIFIER
Langkah percobaan:
1. Buat rangkaian sebagaimana gambar-1
2. R1=2K2, Rf=1M
3. Beri masukan sinyal input berupa sinus soida
sebesar 0,5 Volt RMS
4. Atur penahan Rf mulai dari 1M sampe
dengan 0 ohm (sesuai tabel pengukuran)
5. Amati bentuk sinyak input dan outputnya
6. Amati tegangan AC outputnya
7. Buat kurva R-V sebagaimana table
pengamatan.
Practice Make Perfect
SAKLAR DENGAN LDR
DC 6V
Percobaan-a:

50k
220
1. buat rangkaian seperti pada gambar
LED
2. Hubungkan ke sumber baterey
4K7
3. Tutup LDR dan atur potensio agar LED menyala
C
4. Buka tutup LDR atur potensio agar LED mati (bila B
C1061
sulit padam seter pake lampu hp)
E

LDR

GND

DC 6V

Percobaan-b:

50k
220

1. Buat rangkaian seperti pada gambar LED


2. Hubungkan ke sumber baterey LDR
3. Tutup LDR dan atur potensio agar LED padam C
4. Buka tutup LDR atur potensio agar LED menyala B
C1061
(bila sulit menyala seter pake lampu hp)
E
5. Amati dengan mengisi tabel-8b
4K7

GND
BAB 3
Pengetahuan Dasar
Arduino
A. PWM (Pulse Width Modulation)
Secara umum, PWM adalah cara memanipulasi lebar sinyal atau
tegangan yang dinyatakan dalam suatu perioda, yang dapat digunakan untuk
mengontrol daya keluaran dari mikrokontroler. Sinyal PWM merupakan
sinyal digital yang amplitude / lebarnya tetap tetapi mempunyai lebar pulsa
HIGH dan LOW yang berbeda – beda dalam satu perioda. Seperti pada
Gambar berikut.

Dalam PWM dikenal istilah Duty Cycle, yaitu lebar pulsa/sinyal


HIGH dalam satu perioda, dimana satu perioda adalah hasil penjumlahan
antara sinyal High (sH) dan sinyal Low (sL). sTotal = sH + Sl
Untuk mengetahui nilai duty cycle dapat digunakan rumus sebagai
berikut:

Keterangan :
D = Duty Cycle
sL= sinyal Low
sH = sinyal High
sTotal= sinyal total dalam satu perioda
Vout = tegangan keluaran
V in = Tegangan masukan

Dengan menggunakan rumus ini, kita dapat menghitung nilai PWM


yang dikeluarkan jika diketahui grafiknya seperti Gambar 1 diatas. Dari
Gambar tersebut, lebar sinyal High per periodenya adalah 20%, sedangkan
lebar sinyal Low nya lebih besar, yaitu 80%. Sehingga Vout (tegangan yang
dikeluarkan) dari PWM tersebut adalah
Vout = (5 X 20) / 100 = 100 / 100 = 1V
Dari rumus diatas, dapat diketahui bahwa nilai PWM yang
dikeluarkan adalah 1 V. Pada board Arduino yang menggunakan
mikrokontroler Atmega328P, pin PWM terdapat pada pin digital 3, 5, 6, 9,
10 dan 11. Biasanya pin tersebut ditandai dengan ~ pada Arduino Uno.
Untuk menggunakan PWM pada Arduino, digunakan perintah
analogWrite().
PWM (Pulse Width Modulation) dapat digunakan untuk mengatur
kecepatan putaran Motor, atau dapat digunakan juga untuk mengatur
kecerahan lampu, PWM sangat berguna dalam pengaplikasian robotika,
atau umumnya pada sistem – sistem otomatis, misalnya untuk mengatur
ketinggian terbang sebuah Drone, atau mengatur kecepatan robot ketika
akan belok, dan lain sebagainya.
Dalam Board Arduino, terdapat pin khusus yang sudah disediakan,
seperti dalam Arduino Uno, pin PWM tersedia pada pin D3, D5, D6, D9,
D10 dan D11. dan untuk mengaktifkannya, kita dapat menggunakan
perintah

analogWrite (pin yang digunakan, nilai PWM);

untuk memberikan nilai PWM sendiri, kita bisa memberikan nilai


antara 0 sampai 255. semakin besar nilai PWM, maka semakin cepat putaran
motornya.
Efek keluaran gelombang analog pada Arduino dapat dicapai
menggunakan teknik PWM pada gelombang digital. Teknik PWM ini
dilakukan dengan mengontrol gelombang digital menjadi ON/OFF secara
bergantian dalam satu periode gelombang. Perbandingan waktu antara saat
gelombang ON dengan waktu gelombang dalam satu periode inilah yang
disebut dengan duty cycle. Agar lebih jelas, mari kita lihat ilustrasi berikut.
Dari gambar di atas, terlihat ilustrasi bagaimana duty cycle diubah-
ubah pada tiap gelombang. Syntax analogWrite(0) akan menghasilkan duty
cycle 0%, sementara analogWrite(255) akan menghasilkan duty cycle
100%. Rentang PWM 0 hingga 255 akan menghasilkan duty cycle dari 0%
hingga 100%. Adapun rentang 0 hingga 255 ini adalah PWM pada Arduino
Uno yang hanya memiliki resolusi 8-bit saja (8 bit = 2 dipangkatkan 8 =
256), sehingga apabila kamu menggunakan Arduino versi lain, kamu perlu
mengetahui resolusi PWM-nya agar tahu batas maksimum dan minimum.

Agar lebih memahami mengenai kegunaan PMW, berikut dibeikan contoh


penerapan arduino yang menggunakan PWM :
Pada percobaan ini, kita membutuhkan sebuah LED dan sebuah
resistor 330 ohm. Hubungkan kaki negatif LED ke GND dan kaki positif
LED dihubungkan dengan resistor, kemudian ujung resistor satunya
dihubungkan ke pin PWM arduino yang bertanda (~). Mudahnya, lihat
ilustrasi skematik berikut ini:
Ketika Ragkaian telah selesai langsung saja coba program berikut ini.

1 int ledPin = 9; // LED di pin 9


2
3 void setup() {
4 }
5
6 void loop() {
analogWrite(ledPin, 255); // LED nyala sempurna
7
delay(3000);
8 analogWrite(ledPin, 128); //LED setengah redup
9 delay(3000);
10 analogWrite(ledPin, 0); //LED mati
11 delay(3000);

12
}
13

Ketika kita menjalankan program di atas, kita bisa tahu perbedaan


intensitas cahaya LED yang dihasilkan oleh PWM dengan duty cycle yang
berbeda-beda.

Lalu coba lagi kode program yang ini:

1 int ledPin = 9; // LED di pin 9


2
3 void setup() {
4 }
5 void loop() {
for (int fadeValue = 0 ; fadeValue <= 255; fadeValue += 5)
6 {
7 analogWrite(ledPin, fadeValue);
8 delay(30);
9 }
for (int fadeValue = 255 ; fadeValue >= 0; fadeValue -= 5)
10
{
11 analogWrite(ledPin, fadeValue);
12 delay(30);
13 }
14}
15
16

B. Komunikasi Serial
Kemampuan untuk bisa melakukan komunikasi data antara 2 atau
lebih peralatan elektronik adalah hal yang sangat penting yang harus
dimiliki oleh sebuah microcontroller. Dan yang lebih penting lagi,
kemampuan komunikasi tersebut tidak boleh sampai mengurangi fungsi
dari microcontroller itu sendiri. Ada 2 jenis komunikasi data yang bisa
dilakukan oleh microcontroller, yaitu komunikasi parallel dan
komunikasi serial. Komunikasi parallel memiliki kelebihan dari sisi
kecepatan transfer data, namun efisiensi penggunaan pin dari
microcontroller juga menjadi berkurang.
Komunikasi serial yang dimiliki oleh Arduino bisa kita manfaatkan
untuk berkomunikasi dengan Personal Computer, Bluetooth Modul, atau
bahkan dengan Arduino yang lain. Yang perlu menjadi catatan utama
adalah, jika port dari Arduino Microcontroller sudah difungsikan sebagai
sarana komunikasi serial, maka port tersebut tidak dapat difungsikan
sebagai port input/output digital.

Ada 5 Fungsi utama dalam proses komunikasi serial oleh Arduino :


1. Fungsi Transmit Data –> lebih dikenal dengan fungsi Tx
2. Fungsi Receiving Data –> lebih dikenal dengan fungsi Rx
3. Fungsi Grounding System Komunikasi Serial –> Atau GND
4. Kecepatan Transfer Data –> lebih dikenal dengan Baudrate
5. Format Data –> biasa digunakan 8 bit data, No Parity, dan 1 bit untuk
stop bit
Sebelum menjalankan perintah pengiriman data, maka pengguna
diharuskan untuk melakukan setting dari baudrate. karena baudrate yang
berbeda antara 2 peralatan komunikasi, akan menyebabkan system
menerima data yang salah. Secara default hampir keseluruhan
microcontroller menggunakan format komunikasi serial dengan data 8 bit
data, No Parity, dan 1 bit untuk stop bit.
Software Arduino, menyediakan perintah khusus untuk prosess
setting baudrate yaitu :
Serial.begin(9600);

maka software Arduino akan menterjemahkan perintah tersebut menjadi


1. Baudrate komunikasi serial adalah 9600 bps
2. 8 bit data, No Parity, 1 bit stop

Perintah Mengirim Data


Ada 3 jenis perintah untuk proses pengiriman data dalam Arduino yaitu :
1. print();
2. println();
3. write();
Perintah print() dan println() hampir sama fungsi, hanya saja perintah
prinln() dilengkapi dengan carriage return dan baris baru pada akhir
pengiriman atau yang lebih dikenal dengan linefeed dan new line command.
Sedangkan perintah write() sudah hampir tidak pernah digunakan. Anda
dapat menambahkan parameter didalam kurung dari masing-masing
perintah tersebut, seperti data yang akan dikirim ataupun isi dari variable
data yang akan dikirim melalui port serial.

Perintah Menerima Data


Untuk menerima data/mengambil data yang ada di Buffer serial dari
Arduino, bisa menggunakan 2 perintah berikut :
1. read();
2. readbytes();
Perintah read() biasa digunakan jika data yang akan diambil bertype
data string, sedangkan perintah readbyte digunakan jika data bertype
bilangan dengan type data byte. Anda bisa menambahkan variable data
dalam perintah ini untuk mengidentifikasi serial port yang akan baca
datanya.

Perintah Recheck Data


Selain perintah mengirim dan menerima data, Arduino juga
menyediakan perintah untuk recheck apakah data yang diinginkan siap
diambil di Buffer serial ataukah tidak. Perintah tersebut antara lain adalah :
1. available();
2. find();

Fungsi fungsi yg tersedia untuk komunikasi serial Arduino lebih


spesifik :
 if (Serial) : Untuk mengecek apakah Port sudah siap
 Serial.available() : Untuk mengecek apakah data sudah ada di buffer
penerima
 Serial.begin() : untuk mengeset kecepatan transmisi data
 serial.end() : Untuk menon-aktifkan pin rx dan tx sbg fungsi serial
dan kembali sbg pin I/O
 Serial.find() : mencari string dlm buffer data
 Serial.findUntil(): mencari buffer data sampai data dgn
panjang/terminator nya yg diberikan ditemukan
 Serial.flush(): menunggu data terkirim semua
 Serial.parseFloat(): mengambil data float pertama dari data di buffer
serial.
 serial.parseInt(): mengambil data integer pertama dari data di buffer
serial.
 Serial.peek(): mengambil data berikutnya di bufer penerima
 Serial.print() : mengirim data ASCII
 Serial.println() : mengirim data ASCII + CR,LF (kode enter)
 Serial.read(): membaca data yg diterima
 Serial.readBytes(): membaca data byte yg diterima
 Serial.readBytesUntil()
 Serial.setTimeout(): mengeset batas maksimum
waktu tunggu(timeout) transmisi data.
 Serial.write() : mengirim data byte (numerik)
 Serial.serialEvent(): fungsi ini akan dipanggil jika data
datang/diterima.berlaku spt interupsi serial.

Salah satu penerapan komunikasi serial pada arduino :


Contoh kasus :
Buatlah program arduino dengan menggunakan serial port sebagai
control pengendali.
jika pada serial port di ketik "a" maka led akan jalan running,
jika pada serial port di ketik "b" maka led akan flip flop,
jika pada serial port di ketik "c" maka led akan mati.
Gunakan 3 LED saja.

Jawab :
 Program
int led1 = 13;
int led2 = 12;
int led3 = 11;
int out;
void setup()
{
Serial.begin(9600);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
}

void loop()
{
if (Serial.available()>0)
{
int baca = Serial.read();
if (baca =='a')
{
out=1;
}
if (baca =='b')
{
out=2;
}
if (baca =='c')
{
out=3;
}

if(out==1)
jalan: //LED akan berjalan running
{
digitalWrite(led1, HIGH);
delay(500);
digitalWrite(led1, LOW);
delay(500);
digitalWrite(led2, HIGH);
delay(500);
digitalWrite(led2, LOW);
delay(500);
digitalWrite(led3, HIGH);
delay(500);
digitalWrite(led3, LOW);
delay(500);
Serial.println("LED running");
loop();
goto jalan;
}

if(out==2)
start: // LED akan berjalan
flip flop
{
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
Serial.println("LED flip flop");
loop();
goto start;
}

if(out==3)
stop: // LED akan mati
{
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
Serial.println("LED mati");
loop();
goto stop;
}
}
}

Setelah membuat progran diatas dibawah ini adalah langkah - langkah


mengaktifkan LED mengunakan serial port :
1. Rangkailah rangkaian menggunakan arduino. Gunakan output di nomor
13,12,11. LED aktif high.
2. Sambungkan kabel downloader ke PC. (sebelumnya pastikan kabel
downloader sudah terinstal terlebih dahulu di PC anda, jika belum terinstal
installah dulu. baca artikel saya sebelumnya tentang cara menginstal
downloader arduino).

3. Buka Aplikasi Arduino, kemudian buat program sesuai perintah di atas. atau
tinggal copas program yang sudah saya buat.
4. Pastikan port berada pada serial port COM5.
5. Upload program sampai tertera tulisan Done Uploading.

6. Buka serial monitor di pojok kanan atas


7. Ketikan "a" untuk menjalankan perintah running. "b" untuk menjalankan
perintah flip flop. "c" untuk mematikan semua program.

C. Delay
delay( )

Di mana function delay() ini digunakan untuk memberikan waktu


tundaan (dalam satuan millisecond) untuk mengerjakan satu baris program ke
baris selanjutnya.
Contoh penggunaan function delay() seperti berikut ini :

delay(500);

Maksud statement di atas yaitu memberikan waktu tundaan 500


millisecond, atau setara dengan 0.5 detik sebelum melanjutkan mengerjakan
perintah baris program selanjutnya, jiga diinginkan waktu tunda 1 detik maka
ditulis delay(1000) dan seterusnya.
D. Timer
Sebuah pewaktu, timer merupakan bagian dari microcontroller yang
berperan sebagai clock internal untuk mengukur waktu suatu event. Untuk
timer dapat diatur dengan menggunakan beberapa register khusus. Pada
firmware Arduino semua timer memiliki konfigurasi frekuensi 1 kHz
dengan enable interrupt. Berikut ini timer khusus untuk Arduino.
 TimerO, 8 bit, digunakan untuk function seperti delay(), millis(), dan
micros(), dengan mengubah konfigurasi TimerO akan
mempengaruhi function lainnya
 Timer 1, 16 bit, biasa digunakan untuk aplikasi terkait motor servo
 Timer2, 8 bit, function tone() menggunakan Timer2

Timer Register
Untuk dapat melakukan manipulasi timer pada Arduino terlebih
dahulu harus mengetahui fungsi dari masing-masing register yang terkait
timer. Salah satu register timer yang paling penting ialah TCCRx
(Timer/Conter Control Register), dengan x adalah nomor, berikut ini adalah
register apa saja yang digunakan untuk timer.
 TCCRx (Timer/Conter Control Register), dimana prescaler dapat
dikonfigurasi disini sekaligus mode operasi timer
 TCNTx (Timer/Counter Register), dimana nilai timer disimpan,
merupakan register pencacah mulai dari 0 hingga nilai maximum
 OCRx (Output Compare Register), untuk membandingkan OCR yag
diberikan dengan nilai TCNT
 ICRx (Input Capture Register), hanya tersedia untuk timer 16 bit,
menerima data timer
 TIMSKx (Timer/Counter Interrupt Mask Register), digunakan
untuk menjalankan atau mematikan timer interrupt
 TIFRx (Timer/Counter Interrupt Flag Register), menandakan timer
interrupt hasil operasi timer

Contoh aplikasi timer menggunakan arduino :

1. Memakai Timer tanpa menggunakan Library


#include <TimerOne.h>

void setup()
{
pinMode(13, OUTPUT);
Timer1.initialize(100000); // 100.000 ms ( 0.1 sec )
Timer1.attachInterrupt( LedBlink);
}

void loop()
{

/// --------------------------
/// ISR Timer Routine , nama fungsi bisa custom
/// --------------------------
void LedBlink()
{
digitalWrite( 13, digitalRead( 13 ) ^ 1 );
}
2. Memakai Timer tanpa menggunakan Library
void setup()
{
pinMode(13, OUTPUT);

// initialize timer1
noInterrupts(); // disable all interrupts
TCCR1A = 0;
TCCR1B = 0;

TCNT1 = 34286; // preload timer 65536-


16MHz/256/2Hz
TCCR1B |= (1 << CS12); // 256 prescaler
TIMSK1 |= (1 << TOIE1); // enable timer overflow
interrupt
interrupts(); // enable all interrupts
}

ISR(TIMER1_OVF_vect) //nama fungsi harus "ISR(nama


vector)
{
TCNT1 = 34286; // preload timer
digitalWrite(13, digitalRead(13) ^ 1);
}

void loop()
{

Cara kerjanya seperti ini:


 Set durasi/periode timer overflow misal kita set 2 detik
 Tiap 2 detik terjadi overflow yg akan menimbulkan interupsi (interupsi
overflow)
 Interupsi akan menjalankan fungsi ISR
 Paramater fungsi ISR adalah nama vector atau vector name dari tiap jenis
penyebab interupsi. berikut vector name untuk tiap interupsi timer yg
lainya :
TIMER0_OVF_vect adalah vector name untuk interupsi overflow
timer 0
TIMER1_OVF_vect untuk timer 1
TIMER2_OVF_vect untuk timer 2
TIMER3_OVF_vect untuk timer 3 dst…..

E. Interrupt
Interrupt pada Arduino adalah suatu keadaan dimana saat pemicu
program interrupt dipicu baik secara eksternal ataupun internal, program
interrupt akan menghentikan sejenak program yang sedang dijalankan oleh
arduino dan melaksanakan program interrupt tersebut.
Interrupt dapat digunakan pada Arduino dengan menambahkan
program berikut pada program yang ingin kita berikan fungsi interrupt.

attachInterrupt(digitalPinToInterrupt(pin), fungsi, mode);

Keterangan :
attachInterrupt memiliki maksud bahwa kita akan memasang interrupt
pin = nomor pin interput yg digunakan
fungsi = fungsi yg akan dieksekusi
Mode = mode deteksi pin yg digunakan

Pin Digital Dengan Interupsi


Parameter pertama yang melampirkanInterrupt () adalah angka
interrupt. Biasanya Anda harus menggunakan digitalPinToInterrupt (pin)
untuk menerjemahkan pin digital aktual ke nomor interupsi tertentu.
Misalnya, jika Anda terhubung ke pin 3, gunakan digitalPinToInterrupt (3)
sebagai parameter pertama yang melampirkanInterrupt ().

Board Digital Pins Usable For Interrupts


Uno, Nano, Mini, other 328-
2, 3
based
Board Digital Pins Usable For Interrupts
Uno WiFi Rev.2 all digital pins
Mega, Mega2560, MegaADK 2, 3, 18, 19, 20, 21
Micro, Leonardo, other 32u4-
0, 1, 2, 3, 7
based
Zero all digital pins, except 4
MKR Family boards 0, 1, 4, 5, 6, 7, 8, 9, A1, A2
Due all digital pins
all digital pins (Only pins 2, 5, 7, 8, 10, 11, 12, 13
101
work with CHANGE)

Catatan dan Peringatan :


Di dalam fungsi terlampir, penundaan () tidak akan berfungsi dan
nilai yang dikembalikan oleh millis () tidak akan bertambah. Data serial
yang diterima saat dalam fungsi dapat hilang. Anda harus mendeklarasikan
sebagai volatile variabel apa pun yang Anda modifikasi dalam fungsi
terlampir. Lihat bagian ISR di bawah ini untuk informasi lebih lanjut.
Kemudian pada bagian “interrupt” dapat kita ganti dengan “0” jika
ingin menggunakan pin interrupt 0 pada arduino uno atau “1” jika ingin
menggunakan pin interrupt 1 pada arduino uno. Arduino uno memiliki 2 pin
interrupt yaitu INT0 pada pin 2 digital dan INT1 pada pin 3 digital. di bagian
function dapat kita isi dengan program yang ingin kita jalankan saat pin
interrupt itu dipicu.

Mode dimana arduino memiliki 4 keadaan yang dapat memicu


interrupt yaitu :
1. Mode LOW
Pada mode ini interrupt akan diaktifkan saat pin int memiliki
logika low dan akan aktif selama masih berlogika low.
2. Mode CHANGE
Interrupt akan diaktifkan saat terjadi perubahan logika baik
dari low ke high ataupun high ke low. Namun pengaktifan hanya
bersifat sementara dan beberapa saat kemudian program akan
berjalan kembali seperti sedia kala.
3. Mode RISING
Pengaktifan interrupt akan terjadi jika pin mengalami
perubahan logika dari low ke high. Sama seperti mode CHANGE,
pengaktifan interrupt hanya sesaat saja dan kemudian arduino akan
kembali menjalankan program yang berjalan sebelumnya.
4. Mode FALLING
Perubahan logika pada pin int dari high ke low akan
mengaktifkan fungsi interrupt. hanya sesaat saja dan kemudian
arduino akan kembali menjalankan program yang berjalan
sebelumnya.

Salah satu contoh penerapan interrupt mengunakan arduino :


“Program AttachIntterupt untuk kondisi HIGH dan LOW sebuah led”

int pin=13; //variabel pin 13, untuk LED


volatile int state=LOW; //kondisi awal led sebelum diberikan
sebuah interrupt
void setup(){
Serial.begin(9600);
pinMode(pin, OUTPUT);
attachInterrupt(0, blink, CHANGE); // untuk "0" yaitu
menjalankan fungsi interrupt pada pin 2 digital,
blink adalah class eksekusi interrupt
dan "CHANGE" metode interrupt.
}
void loop(){
digitalWrite(pin, state);
}
void blink(){
state = !state;
}
F. I/O Analog dan Digital Arduino
Sebuah mikrokontroler pada dasarnya memiliki unit CPU, unit
memori, dan unit I/O (input/output). Port I/O merupakan fitur
mikrokontroler yang fundamental karena memungkinkan sebuah
mikrokontroler dapat terhubung dengan perangkat sensor maupun aktuator.
Pada papan arduino terdapat 2 jenis I/O yaitu : digital dan analog.
1. Sinyal Analog

Pin Analog Input pada Arduino Uno. Pin A0-A5 tersebut terhubung
dengan ADC (Analog to Digital Converter).

 Input Sinyal Analog


Sinyal analog menjelaskan variabel fisik yang bervariasi
terus menerus yang berhubungan dengan variabel lain. Contoh
dari sinyal analog yaitu intensitas cahaya LED yang dimana arus
yang didalamnya juga meningkat, arus melalui resistor seperti
yang kita memvariasikan tegangan, atau suhu di kamar yang
berjalan sering dengan berjalannya waktu. Sinyal analog dapat
mengambil nilai-nilai yang tak terbatas dan pada mikrokontroler
tidak dapat mewakili jumlah yang tak terbatas nilainya itu.
Sehingga yang harus dilakukan ketika ada sinyal analog
yaitu dengan cara sampling dengan cara mengubah sinyal
analog tersebut menjadi sinyal digital melalui pin khusus yaitu
pin Analog ke Digital Konversi (ADC). Ini pada dasarnya
berarti bahwa memilih nilai-nilai tertentu di suatu daerah dan
kemudian kita menggunakan serangkaian bit untuk mewakili
nilai-nilai tersebut saja.
Pin analog (ADC) tersebut berfungsi sebagai pengubah
sinyal analog menjadi output digital sehingga mudah diolah dan
dapat diukur. Pin analog (ADC) dapat mengukur nilai tegangan
yang masuk dengan kondisi normal range dari 0 – 5 Vdc yang
akan dibandingkan dengan tegangan refrensinya (Vref).
Hal ini berguna saat akan mengukur output tegangan dari
suatu sensor yang terhubung serta dapat dimanfaatkan untuk
keperluan pengondisian program.

Membaca sinyal analog dapat dilakukan dengan sintaks:


analogRead(pin);
keterangan :
pin = nomor pin analog pada Arduino yang akan dibaca.
 Output Sinyal Analog (PWM)
Pada output analog Arduino tidak dapat dihasilkan
secara langsung, tetapi harus melewati proses pengubahan
output dari digital menjadi analog yang memerlukan fungsi
komponen Digital to Analog Converter.
Tetapi pada Arduino fungsi tersebut tidak ada modul itu,
sehingga memerlukan modul eksternal (modul DAC) sebagai
konverter sinyalnya. Tetapi disisi lain, output analog pada
Arduino kebanyakan memiliki fitur PWM (Pulse Width
Modulation).
Contoh kasus apabila arduino yang dihubungkan dengan
LED ingin mengendalikan intensitas cahaya dari LED tersebut
(nyala terang – redup mati). Analog output yang terdapat di
Arduino akan mengeluarkan sinyal analog dengan nilai pwm /
intensitas yang telah diprogram/setting.
PWM seolah – olah dapat memanipulasi / mengubah
sinyal digital menjadi sinyal analog. Dengan cara
Arduino mengubah keluaran sinyal digital dari logika HIGH ke
LOW atau sebaliknya dengan waktu yang telah ditentukan.
Lama waktu untuk logika HIGH dikatakan dengan
istilah panjang pulsa atau pulse width. Variasi perubahan
nilai output analog dihasilkan dari perubahan panjang pulsa
yang telah diset dengan kondisi waktu tertentu serta dikerjakan
secara berulang-ulang.

Menghasilkan sinyal ‘analog’ dapat dilakukan dengan sintaks:


analogWrite(pin, nilai);

Keterangan :
pin = nomor pin digital PWM (bertanda ~) pada Arduino yang
akan dihasilkan sinyal PWM.

Seperti yang sudah dijelaskan di atas. Sinyal yang


dihasilkan menggunakan analogWrite ini bukan benar-benar
sinyal analog, melainkan hanya sinyal digital yang dibangkitkan
menggunakan teknik Pulse Width Modulation (PWM) dengan
cara mengubah duty cycle gelombang digital agar didapatkan
hasil yang mirip dengan sinyal analog.
2. Sinyal Digital

Pin Digital I/O pada Arduino Uno. Pin 3,5,6,9,10, dan 11 dapat
menghasilkan sinyal PWM.

 Input Sinyal Digital


Input Digital adalah sinyal yang akan diterima baik itu
berupa nilai 1 atau 0, logika high atau low, maupun kondisi on
atau off. Beda halnya dengan sinyal analog kontinyu, yaitu
untuk nilai diantara 0 dan 1, nilai tersebut akan
dipertimbangkan. Sehingga dapat disimpulkan bahwa pin
digital adalah pin yang dapat mengirim atau menerima sinyal –
sinyal digital.
Contoh dari input digital yaitu penggunaan sensor PIR
dimana output dari sensor tersebut berupa nilai 1 jika terdeteksi
adanya benda bergerak dan nilai 0 jika tidak terdeteksi adanya
benda.

Membaca sinyal digital dapat dilakukan dengan sintaks:


digitalRead(pin);
keterangan :
pin = nomor pin digital pada Arduino yang akan dibaca.

Berikut contoh sederhana membaca state dari sebuah push


button, lalu menampilkan kondisi state push button tersebut pada teminal.
Selain Arduino, kamu akan membutuhkan sebuah push button dan resistor
(misal 330 ohm) serta bread board. Rangkailah push button dan resistor
tersebut sesuai dengan skema berikut:
Hasilnya :
Kemudian upload-kan program berikut ini :

1
2 // pin digital nomor 2 telah terpasang sebuah pushbutton. Beri nama
3 pushbutton ini ‘tombol’
4 int tombol = 2;
5
void setup() {
6 // mulai komunikasi serial dengan baud rate 9600 bits per second
7 Serial.begin(9600);
8 // jangan lupa deklarasikan tombol sebagai input
9 pinMode(tombol, INPUT);
10 }
11
void loop() {
12 // baca state tombol
13 int keadaanTombol = digitalRead(tombol);
14 // print state tombol melalui serial
15
16 if (keadaanTombol == 1) {
17 } Serial.println("Tombol ditekan");
else {
18 Serial.println("Tombol tidak ditekan");
19 }
20
21 delay(100); // delay 100 milisekon
22}
23

 Output Sinyal Digital


Pada output digital sebenarnya hampir sama dengan
input digital dikarenakan pada dasarnya sama, hal yang
dikirimkan yaitu nilai 1 atau nilai 0. Yang membedakan hanya
pada penggunaan fungsi pada saat pemogramannya, kapan saat
diset sebagai input maupun output.

Menghasilkan sinyal digital dapat dilakukan dengan sintaks:


digitalWrite(pin, nilai);
keterangan :
pin = nomor pin pada Arduino yang akan dihasilkan sinyal
digital.
Output digital terdiri atas dua buah logika, yaitu
kondisi logika HIGH dan kondisi logika LOW. Kali ini, kamu
akan mendemonstasikan output digital sederhana dengan bantuan
sebuah LED.
Setiap desain board Arduino yang beredar
umumnya memiliki built in LED pada pin 13. Pin 13 tersebut
merupakan pin yang dapat menghasilkan sinyal digital. Arduino
Uno bekerja pada tegangan 5V, sehingga output pin digital pun
dapat mengeluarkan tegangan 5V. Tegangan pada saat 5V ini
disebut logika HIGH, sedangkan tegangan pada saat 0V disebut
logika LOW.
Kalau kamu punya LED sendiri, kamu bisa juga
memakainya dengan menancapkan kaki LED yang panjang (+)
ke pin 13 dan kaki LED yang lebih pendek (-) ke pin GND yang
berada tepat di samping pin 13 (pada Arduino Uno).
Lalu, bagaimana agar pin 13 tersebut memberikan tegangan 5V
sehingga dapat menyalakan LED?
Mudah saja. Yang kamu butuhkan hanya sebuah
board Arduino, kabel data USB, dan sebuah PC yang telah
terpasang driver serta software Arduino.

Silahkan upload program berikut di Arduino kamu.

1
void setup() {
2
// definisikan pin 13 sebagai output
3 pinMode(13, OUTPUT);
4 }

5 void loop() {

6 digitalWrite(13, HIGH); // nyalakan LED dengan membuat tegangan HIGH

7 delay(1000); // delay 1000 ms (1 detik)

digitalWrite(13, LOW); // matikan LED dengan membuat tegangan LOW


8
delay(1000); // delay 1000 ms (1 detik)
9
}
10

Seperti yang terlihat pada program di atas, LED akan


nyala (kondisi HIGH) selama 1 detik kemudian mati (kondisi
LOW) selama 1 detik, kembali nyala 1 detik dan begitu
seterusnya. Menghasilkan sinyal digital dengan logika HIGH atau
LOW dapat dilakukan hanya dengan menuliskan sintaks
digitalWrite(pin, nilai). Tapi ingat, pin yang akan digunakan
harus dideklarasikan mode nya terlebih dahulu di fungsi setup.
DAFTAR PUSTAKA

https://www.sinauarduino.com/artikel/tutorial-pwm-pada-arduino/
http://kl301.ilearning.me/2015/05/19/pelajari-tentang-pwm-2/
https://masodha.com/belajar-arduino/
https://www.cronyos.com/interrupt-arduino/
https://www.arduino.cc/reference/en/language/functions/external-
interrupts/attachinterrupt/
https://www.nyebarilmu.com/komunikasi-serial-arduino-uno-via-komputer/
https://www.sinauarduino.com/artikel/dasar-input-dan-output-pada-arduino/
https://www.nyebarilmu.com/penjelasan-tentang-input-output-arduino/
BAB 4
Basic Project Arduino
Setelah mengetahui apa itu mikrokontroler dan bagaimana cara kerjanya, selanjutnya
adalah bagaimana pengaplikasian dari mikrokontroller tersebut. Namun sebelum
memasuki ke dalam pengaplikasian yang rumit seperti drone atau alat elektronik lainnya,
lebih baik kita melakukan aplikasi mikrokontroller ke dalam project yang sederhana
dahulu atau biasa disebut basic project.

a. BLINK LED
Project sederhana untuk blink LED dapat dibuat dengan alat dan bahan yang
sederhana dan mudah untuk didapatkan. Project ini akan membuat kita semakin
mengerti tentang cara penggunaan mikrokontroller seperti Arduino yang akan
digunakan untuk project kali ini. Hasil dari project ini yaitu akan membuat led kedap-
kedip.

Project blink LED ini membutuhkan alat-alat yaitu:

LED

Resistor

Kabel Jumper

BreadBoard
Arduino

Yang selanjutnya dilakukan setelah mendapatkan alat-alat yang tertera, untuk


merangkai rangkaian project ini yaitu pertama adalah menaruh bagian bagian dari
bahan di atas sesuai dengan gambar yang ada di bawah ini.

Selanjutnya adalah menyambungkan Arduino ke komputer yang sudah


terdapat Arduino IDE sehingga dapat diprogram untuk dapat memberikan
perintak kepada pin Arduino yang terhubung pada masing-masing kaki resistor
yang terhubung juga ke LED sehingga dapat membuat LED yang telah
dirangkai itu berkedip.

Untuk kode dari program yang akan di upload ke Arduino, akan diberikan
contoh dari kode yang sudah ada yaitu sebagai berikut.
Pin LED yang
terhubung ke
Arduino

Konfigurasi Pin
pada Arduino

Berisi tentang perintah


yang harus dilakukan
oleh Arduino

Kode program di atas terdiri dari beberapa bagian yang mengatur kinerja
dari mikrokontroller yang digunakan yaitu Arduino, dan masing-masing bagian
dari kode program ini memiliki fungsi dan kerjanya masing-masing. Untuk
mengetahui bagaimana cara kerja dari kode program tersebut, maka akan di
jelaskan perbagian dari program tersebut.

Kode program di atas memiliki 2 bagian utama, yaitu bagian Setupyang


berisi tentang beberapa variabel yang akan digunakan nanti, dan juga dapat
berisi tentang konfigurasu pin yang akan digunakan menggunakan fungsi
“pinMode” yang berfungsi untuk mendaftarkan atau menkonfigurasi pin yang
digunakan dari pin mana yang dipakai dan fungsi dari pin tersebut, apakah
sebagai input atau output. Dan bagian selanjutnya adalah loop yang bertugas
menjalankan fungsi yang akan dikerjakan oleh Arduino. Pada bagian loop ini,
terdapat fungsi yaitu “digitalWrite” dimana Arduino akan mengerjakan atau
memberi tegangan secara digital (1 atau 0) pada pin yang ditentukan di dalam
fungsi digitalWrite tersebut. Saat digitalWrite memberi instruksi ke Arduino
bahwa suatu pin bernilai HIGH, maka Arduino akan memberi tegangan ke pin
tersebut sebesar 1 nilai digital atau sebesar 5V. Atau saat diberi instruksi untuk
LOW maka Arduino akan memberikan nilai digital 0 atau sebesar 0V. Selain
digitalWrite, terdapat juga fungsi delay yaitu suatu fungsi yang memberikan
instruksi ke Arduino untuk berhenti sejenak dalam satuan waktu milisekon.

Setelah mengupload kode tersebut ke Arduino, maka Arduino akan


memberi tegangan ke pin yang sudah terdaftar sesuai dengan instruksi dari
kode program dan selanjutnya LED pada rangkaian yang sudah disusun
tersebut akan berkedip secara bergiliran dengan rentang waktu yang sudah di
atur di kode program.

b. AKTUATOR (SERVO, MOTOR)


Aktuator merupakan suatu alat yang dapat mengubah energi listrik menjadi
energi gerak. Aktuator terdiri dari banyak jenis contohnya adalah motor servo dan
motor DC. Kedua alat ini dapat digerakan oleh mikrokontroller dengan kode program
dan rangkaian pembantu lainnya. Untuk dapat memberikan perintah pada kedua alat
ini maka perlu adanya pengetahuan untuk mengakses kedua alat itu melalui Arduino.

 Motor Servo
Motor servo adalah motor yang dapat bergerak dengan parameter sudut yang
dapat digunakan dalam alat pengerak pada robot. Motor servo ini juga memiliki
kemampuan untuk membaca sudut dengan presisi. Untuk mengakses motor
servo ini dibutuhkan suatu library yaitu servo.h yang berisi data-data untuk
menggerakan servo. Pada motor servo ini, terdapat 3 kabel. Masing-masing kabel
tersebut mempunyai fungsinya masing-masing. Berikut merupakan fungsi fungsi
dari kabel pada motor servo bedasarkan warnanya.

Cokelat Dihubungkan ke Pin GND


Arduino

Kuning DIhubungkan ke pin PWM


Arduino
Merah Dihubungkan ke Pin Power 5V

Motor servo ini banyak di aplikasikan ke bagian penggerak robot karena mudah
untuk mengaksesnya dan juga konfigurasi bedasrkan sudut yang tidak terlalu
rumit. Contoh dari aplikasi simple dari motor servo dapat dilakukan yaitu seperti
menggerakan servo dengan potensiometer. Alat yang dibutuhkan untuk
merangkai project ini adalah.

Arduino

Kabel jumper
Potensiometer

Motor Servo

Pada

beberapa komponen diatas terdapat satu komponen yang bernama


potensiometer. Potensiometer adalah suatu resistor yang mempunyai nilai
resistansi yang bervariasi. Untuk mengubah resistansi dari potensiometer,
terdapat ada knob atau putaran yang jika diputar akan mengubah nilai resistansi
dari potensiometer. Potensiometer sendiri mempunyai nilai resistansi
maksimalnya juga. Aplikasi dari potensiometer biasanya bisa kita lihat pada
pengatur volume speaker.

Setelah mendapatkan semua komponen yang dibutuhkan. Tinggal merangkai


sesuai dengan contoh rangkaian di bawah ini.
Pada rangkaian di atas, kabel data dari motor servo terhubung pada pin PWM
nomor 9 dan output dari potensiometer yang nanti akan dijadikan parameter
untuk menggerakan servo terhubung pada pin Analog nomor 0. Untuk contoh dari
kode program yang harus di upload ke Arduino dapat dilihat di bawah ini.

Library servo

Variabel dari servo


yang digunakan
Konfigurasi pin analog
potensiometer dan
variabel sudut
Konfigurasi pin
PWM ke kabel data
motor servo

Instruksi kerja
untuk Arduino
Pada kode program di atas, terdapat pemasukan untuk library servo dengan
menggunakan “#include”. Lalu selanjutnya terdapat pembuatan variabel untuk
servo yang digunakan dan juga konfogurasi pin analog yang akan terhubung ke
output dari potensiometer serta pembuatan variabel lain yang akan digunakan
untuk parameter sudut motor servo. Konfigurasi lainnya adalah konfigurasi pin
PWM yang nantinya terhubung ke kabel data untuk servo menggunakan “attach”.
Pada bagian fungsi utama dari kode program disana, terdapat fungsi map yaitu
fungsi yang akan mengubah skala pembacaan potensiometer yaitu dari 0 sampai
1023 menjadi skala sudut maks dari servo yang digunakan, pada servo ini dari 0
sampai 180. lalu untuk menggerakan servo menggunakan perintah “write” yang
parameternya merupakan variabel potensiometer yang diubah sebelumnya.

Setelah memasukan kode program ke Arduino, maka arduino akan menggerakan


motor servo sesuai dengan pergeseran nilai resistansi dari potensiometer. Hal
yang perlu di perhatikan adalah bahwa pin data dari kabel servo harus di
hubungkan ke pin PWM Arduino agar dapat bergerak ke sudut tertentu.

 Motor DC
Motor DC merupakan aktuator yang akan mengubah listrik DC menjadi fenomena
fisis. Motor DC sudah sering kita lihat, kita sering melihatnya pada mainan mobil,
kipas kecil, dan masih banyak lagi. Motor DC juga dapat digunakan dalam robot
contohnya sebagai bagian penggerak untuk roda atau semacamnya. Biasanya,
untuk dapat mengendalikan maju atau mundurnya motor dc kita harus
menggunakan suatu rangkaian kontroller untuk motor DC yang disebut Motor

Driver.

Arduino dapat digunakan sebagai pusat kontrol untuk motor DC yang nanti akan
melewati Motor Diver untuk memproses perintah yang masuk yaitu apakah
motor itu harus bergerak maju atau mundur. Lalu motor driver yang sudah
memproses data yang masuk itu akan menggerakan motor DC sesuai dengan
arahan dari Arduino. Contoh dari rangkaian motor DC dapat dilihat di bawah ini.
Pada rangkaian diatas, arduino akan mengirimkan data digital (0 atau 1) ke motor
driver untuk dapat menggerakan motor DC. Berikut merupakan data tentang
input yang diberikan ke motor driver dan arah dari motor DC dengan
perumpamaan pin 5 sebagai A dan pin 2 sebagai B.

A B GERAK
0 0 Diam
0 1 Maju
1 0 Mundur
1 1 Diam (Terkunci)

Selain arah gerak, motor driver juga dapat mengatur kecepatan dengan cara
menghubungkannya ke pin PWM seperti rangkaian di atas yang terhubung ke pin
9. Untuk mengatur semua itu maka perlu adanya kode program yang sesuai untuk
memberi instruksi ke Arduino. Berikut merupakan contoh dari kode program.
Konfigurasi Pin Arduino
yang terhubung ke
motor driver

Fungsi yang
menjalankan motor DC
(arah dan kecepatan)

Kode program di atas akan memberikan instruksi ke Arduino untuk memutar


motor DC dengan waktu tertentu dan arah putaran yang sudah disesuaikan. Kode
ini hanya memakai beberapa fungsi sederhana dalam kode instruksinya, seperti
digitalWrite yang akan memberikan tegangan bernilai digital dan analog Write
yang akan memberikan tegangan bernilai kontinu.

Motor DC memiliki keunggulan dan kekurangan tersendiri. Keunggulannya yaitu


mudah untuk digunakan dan juga mudah untuk di aplikasikan. Kekurangan dari
motor DC itu sendiri yaitu kurang dalam hal torsi dan tidak bisa digunakan untuk
aplikasi yang membutuhkan sudut karena motor dc tidak dapat membaca sudut
dan untuk mengatur ke sudut tertentu sulit untuk dilakukan.
Input Analog

A. Latar Belakang

Pin analog pada Arduino (dan mikrokontroller lain pada umumnya) dapat
digunakan untuk input dan output digital. Hanya saja pin analog memiliki fitur untuk
dapat mengubah sinyal analog yang masuk menjadi nilai digital yang mudah diukur.
Pin digital hanya dapat mengenali sinyal 0 volt sebagai nilai LOW dan 5 volt sebagai
nilai HIGH. Sedangkan Pin analog dapat mengenali sinyal pada rentang nilai voltase
tersebut. Hal ini sangat berguna ketika kita hendak mengukur sesuatu dari sensor dan
menggunakan nilai masukan tersebut untuk keperluan lain.

Pin analog ini terhubung dengan converterpada mikrokontroller yang dikenal


dengan istilah analog-to-digital converter (disingkat ADC atau A/D). Converter ini
mengubah nilai analog berbentuk sinyal voltase ke dalam bentuk digital/angka supaya
nilai analog ini dapat digunakan dengan lebih mudah dan aplikatif. Pada Arduino
(mikrokontroller ATMega) converter ini memiliki resolusi 10 bit, artinya nilai hasil
konversi berkisar dari 0 hingga 1023. Pada Arduino UNO, pin analog ditandai dengan
label A0 sampai A5. Pada board lainnya, pin-pin yang diberi tanda A, Analog,
ADC adalah pin analog.

Fungsi yang kita gunakan untuk membaca nilai analog pada Arduino adalah
analogRead([nomorPin]). Kita juga akan menggunakan potensiometer sebagai input
analognya. Alat dan Bahan

B. Alat dan Bahan


 Arduino Uno board
 Komputer + Software IDE Arduino
 Kabel jumper
 Potensiometer
 Breadboard

C. Cara Kerja

1. Pengkabelan
Potensiometer adalah kenop yang menghasilkan resistansi/hambatan
variabel. Potensiometer memiliki 3 kaki (ada yang memiliki lebih dari 3 kaki, tapi
biasanya kelipatan 3 dan pada dasarnya ada 3 jenis kaki), yakni dua kaki terluar
yang masing-masing dihubungkan dengan 5V dan GND, dan kaki tengah yang
menghasilkan keluaran nilai analog. Pada rangkaian di atas, kaki tengah
potensiometer dihubungkan ke pin A5. Pin A5 akan menerima sinyal voltase
dengan besaran sesuai dengan putaran kenop potensiometer. Semakin dekat
putaran ke arah 5V, maka nilai resistansi akan semakin kecil sehingga nilai
voltase yang keluar akan semakin besar mendekati 5V. Begitu pula
sebaliknya. Sinyal tersebut akan dikonversi ke nilai angka dan ditampilkan pada
jendela Serial Monitor.

2. Program
Upload kode program. Pastikan Kamu sudah mengeset board dengan Arduino
Uno dan memilih port yang sesuai dengan koneksi USBmu. Setelah proses
upload berhasil, buka jendela Serial Monitor dengan memilih menu Tools >
Serial Monitor atau mengklik tombol Serial Monitor yang ada di sebelah
kanan atas jendela Arduino IDE. Kamu dapat mengamati nilai analog yang
masuk dan melihat perubahannya sambil memutar-mutar kenop potensiometer.
Hasilnya akan menjadi seperti ini
Program LCD

A. Latar Belakang
Pada percobaan ini, kita akan menggunakan LCD 16x2. LCD (Liquid Crystal Display)
16x2 adalah jenis media tampilan atau Display dari bahan cairan kristal sebagai penampil
utama.LCD 16x2 dapat menampilkan sebanyak 32 karakter yang terdiri dari 2 baris dengan
tiap baris menampilkan 16 karakter.Pada Arduino untuk mengendalikan LCD Karakter
16x2 untuk librarynya secara default sudah ada librarynya yaitu LiquidCrystal.h. LCD ada
bermacam-macam ukuran 8x1, 16x1, 16x2, 16x4, 20x4. Untuk mengendalikan atau
mengontrol macam-macam LCD Karakter di atas dapat menggunakan cara yang hamper
sama dengan percobaan ini, perbedaannya hanya pada inisialisasi jumlah kolom dan baris.
LCD 16×2 dapat dengan mudah didapatkan ditoko elektronik terdekat.

1. Spesifikasi dari LCD 16×2

Adapun fitur – fitur yang tersedia antara lain

 Terdiri dari 16 kolom dan 2 baris


 Dilengkapi dengan back light
 Mempunyai 192 karakter tersimpan
 Dapat dialamati dengan mode 4-bit dan 8-bit
 Terdapat karakter generator terprogram

2. Pin – pin LCD 16×2 dan keterangannya

Keterangan :

2. GND : catu daya 0Vdc


3. VCC : catu daya positif
4. Constrate : untuk kontras tulisan pada LCD
5. RS atau Register Select :
o High : untuk mengirim data
o Low : untuk mengirim instruksi
6. R/W atau Read/Write
o High : mengirim data
o Low : mengirim instruksi
o Disambungkan dengan LOW untuk pengiriman data ke layar
7. E (enable) : untuk mengontrol ke LCD ketika bernilai LOW, LCD tidak dapat
diakses
8. D0 – D7 = Data Bus 0 – 7
9. Backlight + : disambungkan ke VCC untuk menyalakan lampu latar
10. Backlight – : disambungkan ke GND untuk menyalakan lampu latar

B. Alat dan Bahan

 Arduino Uno
 Komputer + Software IDE Arduino
 LCD 16×2
 Potensiometer 10k ohm
 Kabel Jumper
 Resistor

C. Cara Kerja
1. Pengkabelan

2. Program
Detail Fungsi Pemrograman Arduino Untuk Kontrol LCD yang sering di
gunakan.

1. Library Arduino untuk LCD Karakter

#include < LiquidCrystal.h >


2.Inisialisasi Library untuk Menentukan Pin Arduino yang akan di
pakai

LiquidCrystal lcd(RS,E,D4,D5,D6,D7)
contohnya :
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

3. Menentukan Jumlah Kolom dan Baris

lcd.begin(Kolom,Baris);
contohnya untuk 16x2 :
lcd.begin(16, 2);

4. Clear display

Lcd.clear();

5. Pindah Posisi Cursor LCD

setCursor(Kolom,Baris)
Contoh :

lcd.setCursor(0,0);
Set posisi awal kursor di awali dengan kolom 0 dan baris 1
lcd.setCursor(0,1);

6. Display text pada LCD

lcd.print("labelektronika");
Akses Sensor

A. Latar Belakang

Pada kali ini, kita akan mengakses sensor suhu


LM35. Sensor suhu LM35 merupakan chip IC produksi
dari National Semiconductor yang berfungsi untuk
mengukur suhu pada suatu objek atau ruangan dengan
keluaran dalam bentuk besaran elektrik (tegangan
analog). Sensor ini termasuk sensor suhu analog
dikarenakan outputnya yang berupa tegangan analog.
Bentuk fisik sensor suhu LM 35 menyerupai transistor
yang mempunyai 3 kaki yang tediri dari pin kaki input
tegangan positif, output, dan input GND.

Keterangan :

 data : data Analog Out dengan output tegangan analog sebesar 10 mV/1°C
Artinya jika terbaca tegangan Vout = 50 mV, maka suhu kenaikannya
yang tebaca yaitu 5°Celcius
 VCC : Tegangan kerja masukan yaitu berkisar antara 3.3 – 5 vdc
 GND : Ground

Karakteristik dari LM35 yaitu

 Memiliki akurasi atau ketepatan kalibrasi yaitu 0.5ºC (suhu normal 25 ºC)
 Dapat dikalibrasi langsung dalam celcius, dikarenakan memiliki
sensitivitas yang linier antara suhu yang akan dideteksi dan tegangan
keluaran yaitu 10 mV/ºC
 Pengukuran suhu yang dapat dilakukan yaitu antara -55 ºC – 150 ºC.
 Tegangan kerja secara datasheet yaitu 4 – 30 volt, tetapi disarankan
menggunakan 5vdc
 Bekerja pada arus rendah : kurang dari 60 µA.
 Selft low heating yang artinya memiliki pemanasan sendiri yaitu kurang
dari 0,1 ºC pada udara diam.
 Pada beban 1mA memiliki impedansi keluaran yang rendah yaitu 0,1 W.
 Ketidaklinieran akan pembacaan suhu yaitu hanya sekitar ± ¼ ºC

B. Alat dan Bahan

 Arduino Uno
 Komputer + Software IDE Arduino
 Sensor suhu LM35
 Breadboard
 Kabel Jumper

C. Cara Kerja
A. Pengkabelan

B. Program
Untuk mengetahui akan berfungsinya rangkaian sensor suhu LM35, dapat
dilakukan perlakuan menaikan suhu dengan memanasinya dengan mendekatkan
korek api dan menurunkan suhu dengan mendekatkan sensor dengan es batu.

Dan untuk mendapatkan kepresisian dalam rumus di program dapat dilakukan


beberapa kali trial dan dibandingkan dengan termometer yang sudah terkalibrasi
sehingga dapat ditemukan formula rumus yang pas, untuk mengantisipasi
pembacaan suhu yang salah.
BAB 6
Advance
Example Project For Arduino : Auto Handling Reverse-Parking

Auto Handling Reverse-Parking atau project parkir mundur otomatis merupakan


sebuah project berbasis arduino dengan menggunakan sensor ultrasonic sebagai komponen
utama untuk memberhentikan motor secara otomatis pada jarak yang ditetapkan. Terdapat
beberapa komponen lainnya juga yang digunakan selain motor dan sensor ultrasonic,
berikut komponen-komponen yang dibutuhkan :

1. Arduino Uno / Nano (1 buah)


2. Breadboard (1 buah) 5. Sensor Ultrasonic HC-SR04 (1 buah)

3. Motor DC Kuning 5V (2 buah) 6. Kabel Jumper (16 buah)


4. Buzzer / Speaker (1 buah) 7. Resistor 100 Ohm (1 buah)

Berikut rangkaian schematic yang digunakan :

Pin-pin arduino yang digunakan :

- 5V Arduino

- GND

- Digital PWM 5 & 6 (Motor DC Kuning 5V)


- Digital 9 (Buzzer/Speaker)

- Digital 11 (Pin Trigger HC-SR04)

- Digital 12 (Pin Echo HC-SR04)

Berikut source code project arduino tersebut :


Penjelasan Program & Cara Kerja Alat :
Berdasarkan source code tersebut dapat dilihat semua pin yang digunakan pada
schematic project ini dilakukan inisialisasi terlebih dahulu dengan menggunakan #define
nama _var dan pin_yang_digunakan. Pada fungsi setup() semua pin yang digunakan
harus di pinMode atau dilakukan inisialisasikan terlebih dahulu pin tersebut akan
digunakan sebagai input/output, input digunakan jika pin tersebut sebagai masukan data
seperti pada pin 11 echo sebagai inputan data dari sensor ultrasonic, sedangkan output
digunakan jika ingin mengaktif atau tidak mengaktifkan komponen. Cara mengaktifkan
pinnya dengan menuliskan digitalWrite(nama_pin, HIGH/LOW) untuk pin digital dan
analogWrite(nama_pin, nilai) untuk pin analog.

Pertama motor akan berputar mengikuti besar nilai/duty cycle, duty cycle sendiri
merupakan gelombang digital dengan batasan 8 bit = 0 – 255 yang menunjukkan besar
persentasi gelombang digital yang dihasilkan, tanda minus (-) menunjukkan arah putaran
yang berlawanan. Fungsi analogWrite ini hanya dapat digunakan pada pin-pin digital yang
terdapat tanda ‘~’ disebelah pin di arduino.

Kemudian sensor ultrasonic HC-SR04 akan menghitung jarak benda yang terdapat
dihadapan sensor ini dengan memasukkan rumus distance = (duration/2)/29.1 yang berarti
jarak (cm) = rata-rata waktu dibagi konstanta sensor ultrasonic HC-SR04. Jika terdapat
benda pada jarak >= 300 cm kecepatan motor akan berkurang dengan memainkan nilai duty
cycle dan fungsi speaker/buzzer akan hidup selama 500 ms dengan nilai frekuensi 1000
khz, begitu seterusnya kecepatan motor akan berkurang hingga jarak < 100 cm motor akan
berhenti dan buzzer akan berbunyi panjang selama 3000 ms sebagai penanda bahwa jarak
benda sudah sangat dekat dengan sensor. Dengan begitu dapat dikombinasikan beberapa
komponen elektronik tersebut menjadi sebuah project parking mundur otomatis berbasis
arduino/auto handling reverse-parking.
Daftar Pustaka

Fajar Wicaksono Mochamad, S.Kom., M.Kom Hidayat, S.Kom., M.T. “Mudah Belajar
Mikrokontroler Arduino”. November 2017. INFORMATIKA, Bandung.

Faudin Agus. “Tutorial Arduino mengakses Sensor Ultrasonic HC-SR04. 13 Desember


2017. https://www.nyebarilmu.com/tutorial-arduino-mengakses-sensor-ultrasonic-hc-
sr04/.

Sinau. “Tutorial PWM pada Arduino”. 24 Mei 2016.

https://www.sinauarduino.com/artikel/tutorial-pwm-pada-arduino/.

Vasilakis. “How To Use Buzzer Piezo Speaker”. 2017.

http://www.ardumotive.com/how-to-use-a-buzzer-en.html.
Example Project For Arduino : GreenHouse

GreenHouse atau project pemantauan keadaan pada suatu rumah kaca merupakan
sebuah project berbasis Arduino dan Wifi module dengan menggunakan sensor
suhu,tekanan dan kelembapan sebagai komponen utama untuk memantau tingkat keadaan
pada suatu rumah kaca. Berikut komponen-komponen yang dibutuhkan :

1. Wemos D1 MINI
2. Breadboard (1 buah)

3. Kabel Jumper (8 buah)

4. Sensor BME 280


Berikut rangkaian schematic yang digunakan :

Pin-pin wemos yang digunakan :

- 3.3V wemos

- GND

- pin D1 (SCL)

- pin D2 (SDA)
Berikut source code project arduino tersebut :
Penjelasan Program & Cara Kerja Alat :

Dari source code diatas, bisa dilihat bahwa kita menggunakan 4 header. Dimana 2
header nya hanya bisa di compile pada board esp8266 yaitu ESP8266WiFi.h dan
FirebaseArduino.h . Untuk Define firebase, kita harus membuat project firebase dan
menyalakan fungsi RealTime Database. Disana akan ada link yang ujung firebaseio.com,
link tersebut lah yang kita define. Untuk 2 define selanjutnya adalah SSID wifi dengan
password nya. Pada bagian Setup(), kita menginisiasi BME,Serial,Wifi dan Firebase. Pada
program utama nya kita hanya memanggil fungsi untuk membaca nilai sensor, kemudian
nilai nya dimasukkan ke kalman filter dan nilai keluaran dari kalman filter yang akan kita
kita upload ke firebase. Untuk pemanggilan fungsi untuk print data ke Serial monitor dan
fungsi untuk upload ke firebase kita menggunakan millis() agar data dikirim memiliki delay
1000ms tanpa menghentikan kerja sistem yang lain. Hal ini dilakukan agar tidak ada error
pada saat perhitungan kalman filter. Cara kerja alat nya adalah membaca suhu,tekanan dan
kelembapan udara di sekitar sensor dan data nya akan di upload ke Realtime Database
Firebase yang nanti bisa kita koneksikan dengan berbagai macam device seperti android
apps, website dan lainnya
Example Project Arduino : Sistem SONAR dan RADAR.
Sistem pengindraan jarak jauh seperti SONAR dan RADAR biasa digunakan di
dunia militer untuk mengetahui posisi suatu benda di medan pertempuran. Pada
example project kali ini kita akan belajar membuat prototype(purwarupa) suatu
system yang menyerupai dengan kedua system di atas. Alat dan Bahan yang
dibutuhkan :
1. Arduino
2. Breadboard

3. Sensor Ultrasonik HC-SR04

4. Kabel Jumper

5. Motor Servo
Rangkaian skematik yang dibentuk :

Pin yang digunakan :


- 5V
- GND
- Pin Digital 8 untuk pin echo ultrasonic
- Pin Digital 9 untuk pin trig ultrasonic
- Pin Digital 10 untuk pin data servo
Kurang lebih dapat dibuat seperti ini

Untuk Listing Programnya :

#include <Servo.h> //Servo Library

const int trigPin = 9; //Initializing trigger pin


const int echoPin = 8; //Initializing echo pin

long duration;

int distance;

Servo myServo; // Creating a servo object for controlling the servo moto
r

void setup() {

pinMode(trigPin, OUTPUT); // Sets the trigPin as an Output

pinMode(echoPin, INPUT); // Sets the echoPin as an Input

Serial.begin(9600); //Sets Baud rate for Serial communication

myServo.attach(10); // Defines on which pin is the servo motor attache


d

void loop() {

for(int a=0;a<=180;a++) // rotates the servo motor from 0 to 180 degre


es

myServo.write(a); //Sending stes to servo which servo should move

delay(20);

distance = Distance(); // Calls a function for calculating the distanc


e measured by the Ultrasonic sensor for each degree

Serial.print(a); // Sends the current degree into the Serial Port

Serial.print(",");

Serial.println(distance); // Sends the distance value into the Serial


Port

for(int b=180;b>0;b--) // Rversing rotation from 180 to 0 degrees

myServo.write(b);

delay(20);

distance = Distance();
Serial.print(b);

Serial.print(",");

Serial.println(distance);

int Distance() // Function for calculating the distance measured by the


Ultrasonic sensor

digitalWrite(trigPin, LOW); // Sets the trigPin on LOW state for 2 mi


cro seconds

delayMicroseconds(2);

digitalWrite(trigPin, HIGH); // Sets the trigPin on HIGH state for 10


micro seconds

delayMicroseconds(10);

digitalWrite(9, LOW);

duration = pulseIn(echoPin, HIGH); // Reads the echoPin, returns the s


ound wave travel time in microseconds

distance= duration*0.034/200; //Converting distance into meters

return distance;

Penjelasan Cara Kerja alat :


Sistem ini bekerja dengan memanfaatkan servo bergerak dari posisi 0˚ menuju
180˚ ketika servo sedang bergerak HC-SR04 akan menghitung jarak terdekat
suatu benda ke system tersebut. Hasil penghitungan jarak benda dan posisi servo
akan ditampilkan pada serial monitor. Sistem ini juga bekerja untuk posisi servo
dari 180˚ menuju 0˚.
DAFTAR PUSTAKA

tzaroon , “Sonar Radar System Using Arduino, Servo & Ultrasonic (HC-SR04)”
https://www.instructables.com/id/Sonar-Radar-System-Using-Arduino-Servo-
Ultrasonic-/

KALMAN FILTER
Filter digital adalah semua filter elektronik yang bekerja dengan
menerapkan operasimatematika digital atau algoritma pada suatu pemrosesan
sinyal. Salah satu batasan utama pada filter digital adalah dalam hal keterbatasan
kecepatan pemrosesan/waktu komputasiyang sangat tergantung dengan
kemampuan mikrokontroler atau komputer yang digunakan
Kalman Filter(KF) adalah suatu metode estimasi variabel keadaan dari
sistem dinamik stokastik linear diskrit yang meminimumkan kovariansi error
estimasi. Metode KF pertama kali diperkenalkan oleh Rudolph E. Kalman pada
tahun 1960 lewat papernya yang terkenal tentang suatu penyelesaian rekursif pada
masalah filtering data diskrit yang linear (Welch & Bishop, 2006). KF merupakan
suatu pendekatan teknis untuk menaksir fungsi parameter dalam peramalan deret
berkala (time series). Keunggulan metode KF adalah kemampuannya dalam
mengestimasi suatu keadaan berdasarkan data yang minim. Data minim yang
dimaksud adalah data pengukuran (alat ukur) karena KF merupakan suatu metode
yang menggabungkan model dan pengukuran. Data pengukuran terbaru menjadi
bagian penting dari algoritma KF karena data mutakhir akan berguna untuk
mengoreksi hasil prediksi, sehingga hasil estimasinya selalu mendekati kondisi
yang sebenarnya (Masduqi,2008).
Gambar diatas adalah bagan cara kerja dari Kalman Filter. 2 kotak merah
diatas adalah suatu nilai awal untuk error estimasi dan nilai awal estimasi yang
bisa kita isi berapa pun karena nanti kedua nilai tersebut akan berubah sejalan
dengan iterasi kalman filter, selain dua nilai tersebut masih ada 1 konstanta Error
pembacaan yang biasanya terdapat pada datasheet. Lingkaran merah adalah nilai
inputan dari pembacaan sensor.

Ini adalah variabel-variabel yang akan kita gunakan pada proses iterasi dan step
cara kerja Kalman Filter.
*pada step 1 EEST nya adalah EESTt-1
Ini adalah 3 perhitungan yang dilakukan terus menerus oleh kalman filter.
Dimana setelah step ke 3 selesai dilakukan, maka akan mengulang perhitungan ke
step 1 kembali. Yang harus diperhatikan saat kembali ke step 1 adalah
𝐸𝐸𝑆𝑇𝑡 𝑎𝑘𝑎𝑛 𝑚𝑒𝑛𝑗𝑎𝑑𝑖 𝐸𝐸𝑆𝑇𝑡−1

𝐸𝑆𝑇𝑡 𝑎𝑘𝑎𝑛 𝑚𝑒𝑛𝑗𝑎𝑑𝑖 𝐸𝑆𝑇𝑡−1


Hasil dari kalman filter adalah Nilai dari ESTt.. berikut contoh graph
perbandingan dari nilai RAW dan nilai yang telah di Filter.
Bagi yang masih belum paham tentang Kalman Filter dapat menonton penjelasan dari
suatu channel youtube : http://ilang.in/ku6fR
Cukup menonton 6 video pertama untuk memahami Kalman Filter 1 dimensi selebihnya
dapat dipelajari sendiri atau dijadikan bahan diskusi

Anda mungkin juga menyukai