BAB II LANDASAN TEORI - repository.bsi.ac.id · Jenis-jenis power supply: 1. Sumber Arus Searah...
Transcript of BAB II LANDASAN TEORI - repository.bsi.ac.id · Jenis-jenis power supply: 1. Sumber Arus Searah...
6
BAB II
LANDASAN TEORI
2.1. Perangkat Keras
Perangkat keras adalah bagian komponen - komponen dari sebuah alat
yang berfungsi untuk memberikan masukan, mengolah dan menampilkan
keluaran. Dan digunakan oleh sistem untuk menjalankan perintah yang
diprogramkan. Dalam hal ini penulis akan menjelaskan tentang komponen
apa saja yang digunakan pada alat ini, pengertian dan fungsinya. Karena
masing-masing komponen memiliki peran penting, baik komponen
elektronika aktif maupun pasif, sensor serta perangkat output yang
digunakan dalam pembuatan alat ini, maka penulis membaginya kedalam
beberapa kelompok yaitu IC analog, sumber tegangan, komponen elektronika
dasar, sensor, led, buzzer dan mikrokontroler.(Faraboy & Purnama, 2015)
2.1.1.Teori IC Digital & IC Analog
(Maulana & Purnama, 2017)Integrated Circuit (IC) adalah suatu
kelompok elektronik yang dibuat dari bahan semikonduktor dan merupakan
pengembangan dari transistor”.
IC memiliki fungsi dan tugas khusus yang telah ditentukan oleh
pembuatnya, tugas khusus ini ditentukan dengan bagaimana cara merangkai
komponen yang ada karena pada dasarnya adalah sebuah rangkaian tertentu
dengan fungsi tertentu pula.
7
Ada dua jenis Integrated Circuit (IC):
1. Integrated Circuit (IC) Analog
IC analog adalah IC yang tersusun oleh beberapa rangkaian analog (linear)
dan beroperasi dengan menggunakan sinyal sinusoidal. Pada umumnya IC
analog berfungsi sebagai penguat daya (power amplifier), penguat sinyal,
penerima frekuensi radio, penguat sinyal mikro.
2. IC Digital
Berbeda dengan IC analog, IC digital beroperasi pada tegangan 0 volt (low)
dan 5 volt (high). IC digital sering digunakan sebagai aplikasi sakelar
cepat, dalam perkembangannya IC digital merupakan jenis IC yang paling
banyak digunakan dalam segala bidang elektronika, karena ukurannya kecil
dan memiliki fungsi yang sangat lengkap.
2.1.2.Sumber Tegangan
Power supply atau sumber tagangan atau catu daya adalah suatu alat
atau sistem yang dapat menghasilkan energi listrik.
Jenis-jenis power supply:
1. Sumber Arus Searah (Direct Current / DC)
Arus listrik searah adalah arus listrik yang bernilai konstan dan mengalir
dari potensial tinggi (+) ke potensial rendah (-). Besar arus listrik yang
sering ditemukan berkisar antara 1,5 volt hingga 24 volt. Arus listrik searah
biasa
8
digunakan pada baterai, dinamo arus searah atau aki. Sumber tegangan ini
tidak mengalami perubahan terhadap waktu.
2. Sumber Arus Bolak Balik (Alternating Current/AC)
Arus listrik bolak balik adalah arus listrik dengan besar dan arah yang
berubah-ubah secara bolak balik. Arus AC mengalir bolak balik dari
potensial tinggi (+) ke potensial rendah (-) dan dari potensial rendah (-) ke
potensial tinggi (+), Gelombang listrik pada arus AC berbentuk sinusoidal,
gelombang segiempat atau gelombang segitiga, contoh penggunaan arus
listrik bolak-balik adalah pada jaringan PLN dan generator AC, jika
menggunakan tegangan listrik PLN, besar arusnya berkisar Antara 110 volt
hingga 220 volt dengan frekuensi 50 Hertz.
Penggunaan arus AC pada alat penulis ini tidak digunakan langsung, tetapi
harus diubah dulu menjadi arus DC, alat yang digunakan untuk mengubah
tegangan AC menjadi tegangan DC di namakan adaptor, adaptor dapat
mengeluarkan tegangan searah dengan nilai yang berbeda-beda, mulai dari
1,5 volt hingga 12 volt, dan dapat diperbesar ataupun ditetapkan
tegangannya sesuai dengan kebutuhan.
2.1.3. Komponen Elektronika
2.1. Komponen Pasif
Komponen pasif adalah komponen yang dapat digunakan tanpa
tegangan minimal. Contoh komponen yang dapat digunakan tanpa tegangan
minimal. Contoh komponen pasif yaitu resistor dan kondensator (kapasitor).
9
1. Resistor
Resistor adalah komponen yang mempunyai sifat menghambat arus
listrik. Satuan nilai dari resistor adalah ohm (Ω). Resistor merupakan
komponen elektronika dua kutub yang didesign untuk menahan arus listrik
dengan memproduksi tegangan listrik diantara kedua kutubnya, nilai
tegangan terhadap resistansi berbanding dengan arus yang mengalir.
a. Resistor Tetap (Fixed Resistor)
Resistor tetap merupakan suatu resistor yang nilai resistansinya tidak
dapat diubah. Resistor tetap memiliki nilai resistansi yang tertulis pada
badan resistor dengan menggunakan kode warna dan kode angka. Resistor
jenis ini sering digunakan sebagai penghambat arus listrik secara permanen
dalam rangkaian elektronika.
Sumber: https://skemaku.com/simbol-resistor-yang-terdapat-pada-
rangkaian-elektronika/
Gambar II.1. Simbol Resistor Tetap
10
Sumber: https://skemaku.com/pengertian-resistor/
Gambar II.2. Resistor
b. Resistor Tidak Tetap
Resistor variable adalah resistor yang nilai resistansinya dapat diubah
secara langsung baik dengan tuas yang telah tersedia atau menggunakan
obeng”. Ada 2 jenis Resistor variabel yang ada di pasaran yaitu Trimpot
dan Potensiometer.
Sumber : https://teknikelektronika.com/pengertian-resistor-jenis-jenis-resistor/
Gambar II.3.Resistor
1. Trimpot (Trimer Potensio)
Resistor jenis ini merupakan resistor yang nilai resistansinya dapat diubah
dengan memutar porosnya menggunakan obeng. Nilai resistansi dari trimpot
tertulis pada badan trimpot menggunakan kode angka”. Nilai yang tertulis
pada badan trimpot merupakan nilai maksimum dari resistansi trimpot
tersebut.
11
Sumber : https://www.taydaelectronics.com/470-ohm-trimpot-variable-resistor
6mm.html
Gambar II.4.Trimpot
2. Potensiometer
Resistor jenis ini merupakan resistor yang jenis resistansinya dapat
diubah - ubah dengan cara memutar porosnya melalui tuas yang telah
tersedia. Nilai resistansi potensiometer tertulis pada bagian potensio
menggunakan kode angka”. Nilai resistansinya yang dapat diubah secara
logaritma dan nilai resistansi yang dapat diubah secara linear.
Sumber : https://skemaku.com/jenis-jenis-resistor/
Gambar II.5.Potensiometer
3. Kapasitor
Kapasitor adalah komponen dasar elektronika yang berfungsi untuk
menyimpan muatan listrik dengan symbol C (Capasitor). Struktur sebuah
kapasitor terbuat dari 2 buah plat metal yang dipisahkan oleh suatu bahan
dielektrik. Bahan dielektrik yang umum dikenal misalnya udara vakum,
keramik, gelas dan lain - lain. Jika
12
kedua ujung plat metal diberi tegangan listrik, maka muatan – muatan
positif akan mengumpul pada salah satu kaki (elektroda) metalnya pada saat
yang sama muatan – muatan negatif terkumpul pada ujung metal yang satu
lagi. Muatan positif tidak dapat mengalir menuju ujung kutub negatif dan
begitu juga sebaliknya karena terpisah oleh bahan dielektrik yang non-
konduktif. Muatan elektrik ini tersimpan selama tidak ada kondiksi pada
ujung - ujung kakinya.
a. Kapasitor Elektrolit (ELCO)
Kelompok kapasitor elektrolit terdiri dari kapasitor – kapasitor yang
bahan dielektriknya adalah lapisan metal - oksida. Umumnya kapasitor yang
termasuk kelompok ini adalah kapasitor polar dengan tanda (+) (plus) (-)
(minus) dibadannya.
b. Kapasitor Keramik
Bentuk kapasitor keramik bermacam - macam. Karena sifatnya yang
stabil, kapasitor keramik bagus digunakan pada frekuensi tinggi. Pemasang
kapasitor keramik pada rangkaian elektronika boleh dibolak - balik. Nilai
kapasistansi kapasitor keramik sangat kecil, tetapi bagus digunakan pada
jangkauan tegangan yang luas hingga 100 volt.
13
Sumber: https://www.sekolahpendidikan.com/2017/08/pengertian-kapasitor-
beserta-fungsi.html
Gambar II.6.Kapasitor
4. Kristal (X-tal)
Kristal umumnya digunakan sebagai rangkaian osilator yang menuntut
stabilitas frekuensi yang tinggi dalam jangka waktu yang panjang, akurasi
crystal umumnya pada berada dalam kisaran 30ppm, dengan akurasi yang
lebih tinggi akan semakin mahal harganya. Perlu diketahui bahwa setiap
mikrokontroler AVR memiliki fasilitas untuk memilih sumber clock atau
detak dengan banyak alternative pilihan. Keluarga AVR memberikan opsi
pilihan sumber clock untuk fleksibilitas penggunaan.
Sumber : http://www.leselektronika.com/2012/07/kristal-xtal-oksilator.html
Gambar II.7.Kristal
6. Pin Header
Header atau biasa dikenal dengan nama pin head berguna sebagai
soket tempat menghubungkan kabel-kabel konektor, ada dua jenis pin
14
header yaitu pin header male dan pin header female, walaupun berbeda
namun memiliki fungsi yang sama yaitu sebagai konektor.
a. Pin header female
Sumber:https://grobotronics.com/images/detailed/0/8_pin_female_header_64431_
zoom13383001004fc4d6c424a12.jpg
Gambar II.8.Pin Header Female
b. Pin header male
Sumber:https://cdn.solarbotics.com/products/photos/71b130dcb476a43e7d6044e9
5a1676711/mpin3-dscn4004.JPG
Gambar II.9.Pin Header Male
7. Socket Pin
Socket adalah tempat untuk memasang dan melepaskan IC. Fungsi
dari socket adalah untuk melindungi IC pada saat penyolderan dan
memudahkan penggantian apabila IC yang digunakan mengalami kerusakan.
15
Sumber:http://www.retroamplis.com/WebRoot/StoreES2/Shops/62070367/4C99/
BC0F/E6E5/0360/A13E/C0A8/29B9/6834/DIP28_ml.jpg
Gambar II.10.Socket Pin
8. Wireless NRF24L01
Wireless adalah melakukan suatu hubungan telekomunikasi
menggunakan gelombang elektromagnetik sebagai pengganti media kabel
(tanpa kabel). Jenis data apapun yang dikirim dari komputer atau laptop
akan diubah melalui adaptor wireless dari bentuk digital 0s dan 1s menjadi
sinyal radio berbentuk analog.
Sumber: Dokumen Pribadi
Gambar II.11.Wireless NRF24L01
16
8. Atmega328p
(Maulana & Purnama, 2017) Atmega328 merupakan mikrokontroler
keluarga AVR 8 bit. Beberapa mikrokontroler yang sama dengan ATMega8
ini antara lain ATMega8535, ATMega16, ATMega32, ATMega328, yang
membedakan antara mikrokontroler antara lain adalah ukuran memori,
banyaknya GPIO (pin inpu/output), peripherial (USART, timer, counter, dll).
Dari segi ukuran fisik ATMega328 memiliki ukuran fisik lebih kecil
dibandingkan dengan beberapa mikrokontroler diatas. Namun untuk segi
memori dan peripheral lainnya ATMega328 tidak kalah dengan yang
lainnya karena ukuran memori dan peripheralnya relatif sama dengan
ATMega8535, ATMega32, hanya saja jumlah GPIO lebih sedikit
dibandingkan mikrokontroler diatas.
Sumber:https://www.eevblog.com/forum/index.php?action=dlattach;topic=56046.
0;attach=173695;image
Gambar II.12.ATMega 328p
17
ATMega328 memiliki 3 buah PORT utama yaitu PORTB, PORTC, dan
PORTD dengan total pin input/output sebanyak 23 pin. PORT tersebut
dapat difungsikan sebagai input/output digital atau difungsikan sebagai
peripheral lainnya.
a. Port B
Port B merupakan jalur data 8 bit yang dapat difungsikan sebagai
input/output. Selain itu PORTB juga dapat memiliki fungsi alternatif
seperti di bawah ini.
1) ICP1 (PBO), berfungsi sebagai Timer Counter 1 input capture
pin.
2) OC1A (PB!), OC1B (PB2) dan OC2 (PB3) dapat difungsikan
sebagai keluaran PWM (Pulse Width Modulation).
3) MOSI (PB3), MISO (PB4), SCK (PB5), SS (PB2) merupakan
jalur komunikasi SPI.
4) Selain itu pin ini juga berfungsi sebagai jalur pemograman serial
(ISP).
5) TOSC1 (PB6) dan TOSC2 (PB7) dapat difungsikan sebagai
sumber clock external untuk timer.
6) XTAL1 (PB6) dan XTAL2 (PB7) merupakan sumber clock utama
mikrokontroler.
b. Port C
Port C merupakan jalur data 7 bit yang dapat difungsikan sebagai
input/output. Fungsi alternatif PORTC antara lain sebagai berikut.
1) ADC6 channel (PC0,PC1,PC2,PC3,PC4,PC5) dengan resolusi
sebesar 10 bit. ADC dapat kita gunakan untuk mengubah input
yang berupa tegangan analog menjadi data digital.
18
2) I2C (SDA dan SDL) merupakan salah satu fitur yang terdapat
pada PORTC. I2C digunakan untuk komunikasi dengan sensor
atau device lain yang memiliki komunikasi data tipe I2C seperti
sensor kompas, accelerometer nunchuck.
c. Port D
Port D merupakan jalur data 8 bit yang masing-masing pin-nya juga
dapat difungsikan sebagai input/output. Sama seperti Port B dan Port
C. Port D juga memiliki fungsi alternatif dibawah ini.
1) USART (TXD dan RXD) merupakan jalur data komunikasi serial
dengan level sinyal TTL. Pin TXD berfungsi untuk mengirimkan
data serial, sedangkan RXD kebalikannya yaitu sebagai pin yang
berfungsi untuk menerima data serial.
2) Interrupt (INT0 dan INT1) merupakan pin dengan fungsi khusus
sebagai interupsi hardware. Interupsi biasanya digunakan sebagai
selaan dari program, misalnya pada saat program berjalan
kemudian terjadi interupsi hardware/software maka program utama
akan berhenti dan akan menjalankan program interupsi.
3) XCK dapat difungsikan sebagai sumber clock external untuk
USART, namun kita juga dapat memanfaatkan clock dari CPU,
sehingga tidak perlu membutuhkan external clock.
4) T0 dan T1 berfungsi sebagai masukan counter external untuk
timer 1 dan timer 0.
5) AIN0 dan AIN1 keduanya merupakan masukan input untuk analog
comparator.
19
ATMega328 adalah mikrokontroler keluaran dari atmel yang
mempunyai arsitektur RISC (Reduce Intruction Set Computer) yang mana
setiap proses eksekusi data lebih cepat dari pada arsitektur CISC
(Completed Intruction Set Computer). Mikrokontroler ini memiliki beberapa
fitur antara lain:
a. Memiliki EEPROM (Electrically Erasable Programmable Read Only
Memory) sebesar 1KB sebagai tempat penyimpanan data semi
permanen karena EEPROM tetap dapat menyimpan data meskipun
catu daya dimatikan.
b. Memiliki SRAM (Static Random Access Memory) sebesar 2 KB.
c. Memiliki pin I/O digital sebanyak 14 pin 6 diantaranya PWM (pulse
Width Modulation) output.
d. 32 x 8-bit register serba guna.
e. Dengan clock 16 MHz kecepatan mencapai 16 MIPS.
f. 32 KB Flash memory dan pada arduino memiliki bootloader yang
menggunakan 2 KB dari flash memori sebagai bootloader.
g. 130 macam intruksi yang hampir semuanya dieksekusi dalam satu
siklus clock.
2.2. Komponen Aktif
Komponen aktif adalah komponen yang dapat digunakan jika ada
tegangan minimal. Contoh komponen aktif yaitu dioda, transistor, dan
operational amplifier (op-amp)”.
20
1. Dioda
Dioda merupakan salah satu jenis komponen aktif yang berfungsi
sebagai komponen penyearah. Dioda terbuat dari semikonduktor jenis silikon
dan germanium. Dioda disusun menggunakan semikonduktor jenis P sebagai
kutub positif (+) dan semikonduktor jenis N sebagai kutub negatif (-).
Karena dioda jenis komponen aktif, arus yang mengalir dari sambungan P
ke sambungan N akan dilewatkan jika tegangan listrik yang dilewatkan
pada dioda berbahan silicon minimal 0,7 Volt dan pada dioda berbahan
germanium minimal 0,3 Volt. Dioda juga berfungsi sebagai sakelar dalam
rentang tegangan rendah. Sebagai contoh pada dioda jenis silikon, jika
tegangan kurang dari 0,7 Volt tegangan tidak dilewatkan, dan jika tegangan
lebih besar dari 0,7 Volt tegangan dilewatkan. Dioda dibagi dalam beberapa
jenis yaitu dioda penyearah dan dioda zener.
a. Dioda Penyearah
Jika arus listrik yang lewat searah dengan arah dioda yaitu dari
potensial tinggi kepotensial rendah dan tegangan lebih besar dari
tegangan minimum tegangan dioda maka arus akan dilewatkan. namun
jika dioda dipasang berkebalikan dengan arah arus listrik maka dioda
berfungsi untuk menghambat arus listrik yang lewat. Kapasitas dioda
memiliki batas, sehingga jika tegangan disambungkan N jauh lebih
besar lebih dari puluhan atau ratusan volt dari pada tegangan
disambungkan P, kemungkinan dioda akan breakdown karena tidak
mampu menahan aliran arus listrik. dioda penyearah antara lain
21
digunakan untuk menyearahkan arus listrik bolak balik pada
transformator dan mencegah arus berbalik arah dalam rangkaian
elektronika.
b. Light Emitting Dioda (LED
LED (Light Emitting Diode) merupakan jenis dioda yang jika
diberikan tegangan forward bias akan menimbulkan cahaya dengan warna
– warna tertentu. Seperti merah, hijau dan kuning. Simbol LED hampir
sama dengan simbol dioda, hanya saja pada simbol LED ditambahkan dua
garis panah kearah luar. LED dalam rangkaian elektronika biasa digunakan
sebagai lampu indikator.
c. Dioda Zener
Adalah suatu dioda yang mempunyai sifat bahwa tegangan terbaliknya
stabil. Dioda ini dibuat untuk bekerja pada daerah breakdown kira-kira 2
sampai 200 volt. Dioda ini digunakan sebagai voltage stabilizer atau
voltage regulator. Sebenarnya tidak ada perbedaan struktur dasar dari
zener, melainkan mirip dengan dioda biasa, perbedaan hanya dapat diliht
dari type tang tertulis pada fisiknya. Sesuai dengan fisik mirip dengan
dioda germanium hanya menggunakan kode Z saja, dioda ini fungsinya
sebagai perstabil tegangan, dan mempunyai pembatas tegangan misalnya
6r, 12r, dll.
d. Dioda Photo
Dioda ini berkebalikan dengan dioda LED yang menghasilkan arus
bila terkena cahaya, untuk arus yang masuk tergantung dari besarnya
22
cahaya yang masuk. Dioda photo merupakan detektor cahaya yang baik
sekali.
Sumber : http://skemaku.com/6-simbol-dioda-yang-harus-diketahui/
Gambar II.13. Jenis Dioda
2.1.4.Sensor
(Setiya Purnawan, 2010) Sensor yang digunakan dalam rangkaian ini
adalah sensor ultrasonik. Sensor ultrasonik adalah sebuah sensor yang
berfungsi untuk mengubah besaran fisi( bunyi) menjadi besaran listrik dan
sebaliknya. Cara kerja sensor ini didasarkan pada prinsip dari pantulan
suatu gelombang suara sehingga dapat dipakai untuk menafsirkan eksistensi
(jarak) suatu benda dengan frekuensi tertentu. Disebut sebagai sensor
ultrasonik karena sensor ini menggunakan gelombang ultrasonik (bunyi
ultrasonik).
23
Sumber:https://depokinstuments.com/2016/02/23/hc-sr04-ultrasonic-sensor/
Gambar II.14.Sensor Ultrasonic HC-SR04
Cara menggukan alat ini yaitu ketika kita memberikan tegangan positif
pada pin Trigger selama 10uS, maka sensor akan mengirimkan 8 step
sinyal ultrasonik dengan frekuensi 40kHz. Selanjutnya sinyal akan diterima
pada pin Echo. Untuk mengatur jarak benda yang memantulkan sinyal
tersebut, maka selisih waktu ketika mengirim dan menerima sinyal
digunakan untuk menentukan jarak benda tersebut.
2.1.5. Buzzer
(Wibowo & Setyawan, 2017) Buzzer adalah sebuah komponen
elektronika yang berfungsi untuk mengubah getaran listrik menjadi getaran
suara. Pada dasarnya prinsip kerja buzzer hampir sama dengan loudspeaker,
jadi buzzer juga terdiri dari kumparan yang terpasang pada diafgram dan
kemudian kumparan tersebut dialiri arus sehingga menjadi elektromagnet,
kumparan tadi akan tertarik ke dalam atau keluar, tergantung dari arah arus
dan polaritas megnetnya, karena kumparan dipasang pada diafgram maka
setiap gerakan kumparan akan menggerakan diafgram secara bolak-balik
sehingga membuat udara bergetar yang akan menghasilkan suara. Buzzer
24
biasa digunakan sebagai indikator bahwa proses telah selesai atau terjadi
suatu kesalahan pada sebuah alat (alarm).
Sumber: Dokumen pribadi
Gambar II.15.Buzzer
2.1. Arduino
(Rifai, Triantori, & Nafisah, 2018) Mikrokontroler sebuah pengembangan
lebih lanjut mengenai mikroprosesor adalah mikrokontroler. bila dalam
penggunaannya, mikroprosesor membutuhkan RAM (Random Akses Memory)
dan ROM (Read Only Memory) untuk membuat suatu alat yang sederhana.
Akan tetapi dalam sebuah chip Mikrokontroler, piranti-piranti tersebut telah
terintegrasi cukup lengkap didalam nya, bahkan sekarang mikrokontroler ada
yang memiliki piranti-piranti tambahan lain yang terintegrasi di dalamnya,
seperti ADC (Analog Digital Converter), RTC (Real Time Clock), dan lain-
lain. Penggunaan mikrokontroler dapat mengurangi komponen yang akan
digunakan bila kita akan membuat suatu alat atau rangkaian elektronik.
Arduino adalah sebuah papan mikrokontroler yang sudah didesain dan
dibuat oleh salah satu perusahaan dari Italia yang memudahkan pengguna
dalam mengembangkan proyek-proyek automasi dan mikrokontroler lainnya
dengan mudah dan bersifat open source.
25
Sumber:https://www.tweaking4all.nl/wpcontent/uploads/sites/2/2016/03/Arduino-
Uno-R3-front-and-back.jpg
Gambar II.15.Arduino Uno R3
2.2. Perangkat Lunak
(Rifai et al., 2018) Perangkat lunak adalah intruksi langsung komputer
untuk melakukan pekerjaan dan dapat ditemukan disetiap aspek kehidupan
modern dari aplikasi yang kritis untuk hidup (life-critical), seperti perangkat
pemantauan medis dan pembangkit tenaga listrik sampai perangkat hiburan,
seperti video game (Simarmata, 2010). Dalam arti yang lebih singkat lagi
perangkat lunak dapat didefinisikan sebagai sebuah istilah dalam dunia
komputer yang merepresentasikan data yang diformat secara khusus,
disimpan secara digital dan untuk membuatnya diperlukan bahasa
pemrograman tertentu. Bahasa pemrograman ini kemudian diolah oleh
sebuah alat yang disebut compiler sehingga bahasa pemrograman yang
berupa perintah yang dibuat oleh programmer dapat dimengerti oleh bahasa
mesin (komputer).
26
2.2.1.Bahasa Pemograman
(Purnama & Putra, 2018) Pengertian C sharp adalah sebagai berikut :
“C# is a modern object-oriented, general-purpose programming language,
created and developed by Microsoft together with the .NET platform. There
is highly diverse software developed with C# and on the .NET platform:
office applications, web applications, websites, desktop applications, mobil
applications, games and many others.”
Sebenarnya bahasa C# adalah gabungan yang kuat antara bahasa C++
dan Java, tidak heran jika bahasa C# memiliki kemiripan diantara C++ dan
Java. Seperti yang dijelaskan oleh Miles (2016) tentang kemiripan bahasa
pemrograman C Sharp “C# bears a strong resemblance to the C++ and
Java programming languages, having borrowed (or improved) features
provided by these languages.” Jika diterjemahkan dan disimpulkan
berdasarkan pendapat Miles, bahasa C Sharp adalah bahasa gabungan yang
kuat antara C++ dan Java.
Bahasa C# tidak didistribusikan sebagai produk mandiri, C# bagian
dari Microsoft .NET Framework platform (diucapkan "Microsoft Dot Net
Framework") .NET Framework umumnya terdiri dari lingkungan untuk
pengembangan dan pelaksanaan program, ditulis dalam bahasa C # atau
yang lainnya Bahasa, kompatibel dengan .NET (seperti VB.NET, Managed
C ++, J # atau F #). Yang terdiri dari :
1. Bahasa pemrograman NET. (C #, VB.NET dan lainnya);
27
2. Lingkungan untuk eksekusi kode yang dikelola, yang mana
menjalankan program C # secara terkendali;
3. Satu set perpustakaan standar, seperti ADO.NET, yang memungkinkan
akses ke Database (seperti MS SQL Server atau MySQL) dan WCF
yang terhubung aplikasi melalui kerangka komunikasi str dan
menggunakan blok sederhana, untuk membangun program yang lebih
besar, yang dimana menyelesaikan masalah yang lebih kompleks dan
canggih”.
Struktur pada setiap program arduino (biasa disebut sketch) mempunyai
duah fungsi yang harus ada.
a. Void setup ( ) , adalah sebuah kode didalam kurung kurawal akan
dijalankan hanya satu kali ketika program arduino dijalankan untuk
pertama kalinya.
b. Void loop ( ) , fungsi ini akan dijalankan setelah setup (fungsi
void setup) selesai. Setelah dijalankan satu kali fungsi ini akan
dijalankan lagi, dan lagi secara terus menerus sampai catu
daya(power) dilepaskan.
1. Syntax
Berikut ini adalah elemen bahasa C yang dibutuhkan untuk format
penulisan.
a. // (komentar satu baris), kadang diperlukan untuk memberi catatan
pada diri sendiri apa arti dari kode-kode yang ditulis.
28
b. /* */ (komentar banyak baris), jika anda punya banyak catatan, maka
hal itu dapat dituliskan pada beberapa baris sebagai komentar.
c. (kurung kurawal), digunakan untuk mendefinisikan kapan blok
program mulai dan berakhir.
d. ; (titik koma), setiap baris kode harus diakhiri dengan tanda titik
koma.
2. Variabel
Sebuah program secara garis besar dapat didefinisikan sebagai instruksi
untuk memindahkan angka dengan cara cerda. Variabel inilah yang
digunakan untuk memindahkannya.
a. Int (integer), digunakan untuk menyimpan angka dalam 2 byte (16
bit).Tidak mempunyai angka desimal.
b. Long (long), digunakan ketika integer tidak mencukupi lagi. Memakai
4 byte (32 bit) dari memori (RAM).
c. Boolean (boolean), variabel sederhana yang digunakan untuk
menyimpan nilai TRUE (benar) atau FALSE (salah). Menggunakan 1
bit dari RAM.
d. Float (float), digunakan untuk angka desimal (floating point).
Memakai 4 byte (32 bit) dari RAM.
e. Char (character), meyimpan 1 karakter menggunakan kode ASCII
(misalnya ‘A’ = 65). Hanya memakai 1 btyte (8 bit) dari RAM.
3. Operator Matematika
Operator yang digunakan untuk memanipulasi angka.
29
a. = (sama dengan), mempunyai sesuatu menjadi sama dengan nilai yang
lain.
b. % (persen), menghasilkan sisa dari hasil pembagian suatu angka
dengan angka yang lain.
c. + (tambah), penjumlahan.
d. – (min), pengurangan.
e. * (bintang), perkalian.
f. / (garis miring), pembagian.
4. Operator Pembanding
a. == (sama dengan), sama dengan (misalnya: 12 == 10 adalah FALSE
(salah) atau 12 == 12 adalah TRUE (benar)).
b. != (tanda seru sama dengan), tidak sama dengan (misalnya: 12 != 10
adalah TRUE (benar) atau 12 != 12 adalah FALSE (salah)).
c. < (lebih kecil dari), (misalnya: 12 < 10 adalah FALSE (salah) atau 12
< 12 adalah FALSE (salah) atau 12 < 14 adalah TRUE (benar)).
d. > (lebih besar dari, (misalnya: 12 > 10 adalah TRUE (benar) atau 12
> 12 adalah FALSE (salah) atau 12 > 14 adalah FALSE (salah)).
5. Struktur Pengaturan
Program sanagat tergantung pada pengaturan apa yang akan
dijalankan berikutnya, berikut ini adalah elemen dasar pengaturan (banyak
lagi yang lain dan bisa dcari di internet).
a. if..else, dengan format seperti berikut ini:
30
if (kondisi)
else if (kondisi)
else
Dengan struktur seperti diatas program akan menjalankan kode yang
ada di dalam kurung kurawal jika kondisinya TRUE, dan jika tidak
(FALSE) maka akan diperiksa apakah kondisi pada else if dan jika
kondisinya FALSE maka kode pada else yang akan dijalankan.
b. for, dengan format seperti berikut ini:
for (int i = 0; i < #pengulangan; i++)
Digunakan bila anda ingin melakukan pengulangan kode di dalam
kurung kurawal beberapa kali, ganti #pengulangan dengan jumlah
pengulangan yang diinginkan. Melakukan penghitungan ke atas dengan i++
atau ke bawah dengan i-.
6. Digital
a. Pin Mode(pin, mode)
Digunakan untuk menetapkan mode dari suatu pin, pin adalah nomer
pin yang akan digunakan dari 0-19(pin analog 0-5 adalah 14-19), mode
yang bisa digunakan adalah INPUT atau OUTPUT.
b. DigitalWrite(pin, value)
Ketika sebuah pin ditetapkan sebagai OUTPUT, pin tersebut dapat
dijadikan HIGH (ditarik menjadi 5 volts) atau LOW(diturunkan menjadi
ground).
c. DigitalRead(pin)
31
Ketika sebuah pin ditetapkan sebagai INPUT maka anda dapat
menggunakan kode ini untuk mendapatkan nilai pin tersebut apakah
HIGH(ditarik menjadi 5 volts) atau LOW (diturunkan menjadi ground).
7. Analog
Arduino adalah mesin digital tetapi mempunyai kemampuan untuk
beroperasi di dalam alam analog (menggunakan trik). Berikut ini cara untuk
menghadapi hal yang bukan digital.
a. analogWriter(pin, value)
Beberapa pin pada Arduino mendukung PWM (pulse width
modulation) yaitu pin 3, 5, 6, 9, 10, 11. Ini dapat merubah pin hidup (on)
atau mati (off) dengan sangat cepat sehingga membuatnya dapat berfungsi
layaknya keluaran analog. Value (nilai) pada format kode tersebut adalah
angka antara 0 ( 0% duty cycle – 0V) dan 255 (100% duty cycle-5V).
b. analogRead(pin)
ketika pin analog ditetapkan sebagai INPUT anda dapat membaca
keluaran voltase-nya. Keluarannya berupa angka antara 0 (untuk 0 volt) dan
1024 (untuk 5 volt).
2.2.2.Software Editor
(Rifai et al., 2018) Adapun yang penulis gunakan untuk memasukan
program kedalam board Arduino adalah menggunakan aplikasi Arduino IDE.
1. Arduino (IDE)
IDE merupakan kependekan dari Integrated Development Environment,
atau secara bahasa mudahnya merupakan lingkungan terintegrasi yang
32
digunakan untuk melakukan pengembangan. Disebut sebagai lingkungan
karena melalui software inilah Arduino dilakukan pemrograman untuk
melakukan fungsi-fungsi yang dibenamkan melalui sintaks pemrograman.
Arduino menggunakan bahasa pemrograman sendiri yang menyerupai bahasa
C. Bahasa pemrograman Arduino (Sketch) sudah dilakukan perubahan untuk
memudahkan pemula dalam melakukan pemrograman dari bahasa aslinya.
Sebelum dijual ke pasaran, IC mikrokontroler Arduino telah ditanamkan
suatu program bernama Bootlader yang berfungsi sebagai penengah antara
compiler Arduino dengan mikrokontroler.
Arduino IDE dibuat dari bahasa pemrograman JAVA. Arduino IDE juga
dilengkapi dengan library C/C++ yang biasa disebut Wiring yang membuat
operasi input dan output menjadi lebih mudah. Arduino IDE ini
dikembangkan dari software Processing yang dirombak menjadi Arduino
IDE khusus untuk pemrograman dengan Arduino.
Sumber : http://www.sinauarduino.com/artikel/mengenal-arduino-software-ide/
2. Instalasi Arduino Desktop IDE
Aplikasi ini dapat diunduh secara gratis pada website resmi arduino,
versi terbaru saat ini adalah versi 1.8.5. dapat memilih paket antara
Installer (.exe) atau paket Zip (portable) tanpa perlu diinstalasi. disarankan
mengunduh berupa file installer secara otomatis akan menginstal langsung
semua paket yang dibutuhkan termasuk driver tanpa perlu diinstalasi secara
manual.
33
Setelah unduhan selesai, lanjutkan dengan instalasi dan izinkan proses
penginstalan driver apabila mendapatkan peringatan dari sistem operasi.
Sumber: Hasil Penelitian
Gambar II.16.Langkah Pertama Proses Instalasi
Gambar diatas merupakan komponen – komponen yang akan diinstalasi,
untuk hal ini dibiarkan saja centang semua lalu pilih Next
Sumber: Hasil Penelitian
Gambar II.17.Langkah Kedua Proses Instalasi
34
Pilih direktori instalasi yang diinginkan dengan megklik tombol browse,
namun disarankan agar tetap pada pengaturan default atau tidak dirubah,
setelah menentukan direktori kemudian pilih Install.
Sumber: Hasil Penelitian
Gambar II.18. Proses Instalasi Software
Gambar diatas adalah proses instalasi mengekstrak dan menginstal semua
file yang diperlukan untuk menjalankan Arduino Software (IDE). Setelah
diinstal dengan benar, langkah selanjutnya adalah memilih papan arduino
dan port yang digunakan, hubungkan terlebih dahulu papan arduino dengan
kabel USB ke komputer atau laptop maka lampu LED daya atau power
akan menyala dan driver secara otomatis terdeteksi di aplikasi ini, lalu klik
menu Tools > Board pada aplikasi pilih papan sesuai dengan arduino yang
dipakai.
35
Sumber: Hasil Penelitian
Gambar II.19.Pengaturan Papan Arduino
Setelah papan arduino dikonfigurasi selanjutnya menentukan serial device
pada menu Tools > Port. Maka akan terlihat serial device COM
(Communication) Ports yang digunakan.
Sumber: Hasil Penelitian
Gambar II.20. Mendeteksi Port Arduino
3. Menulis Sketsa (Writing Sketch)
Setelah diterjemahkan kebahasa Indonesia Pada situs resminya
https://www.arduino.cc/en/Guide/Environment dijelaskan bahwa program yang
ditulis dengan menggunakan Arduino (IDE) disebut sebagai sketch. Sketch
ditulis dalam suatu editor teks dan disimpan dalam file dengan ekstensi
36
*.ino. Teks editor pada Arduino IDE memiliki fitur – fitur seperti cutting,
paste, searching dan replacing sehingga memudahkan dalam menulis kode
program.
Pada Arduino IDE, terdapat semacam message box (kotak pesan) berwarna
hitam yang berfungsi menampilkan status, seperti pesan error (kesalahan),
compile (penyusunan), dan upload (unggah) program. Di bagian bawah
paling kanan Arduino IDE menunjukkan papan arduino yang terkonfigurasi
beserta COM Ports yang digunakan.
Sumber: Hasil Penelitian
Gambar II.21. Sketch Arduino IDE v1.8.5
a. Verify
mengecek kode jika terdapat kesalahan sintaks setelah itu mulai di
compile (disusun).
37
b. Upload
Menyusun kode yang telah dibuat dan mengunggahnya ke papan
arduino yang dikonfigurasi.
c. New
berfungsi untuk membuat Sketch baru.
d. Open
Membuka dan memilih salah satu sketsa kode yang sebelumnya sudah
dibuat setelah itu klik file yang ingin dibuka kembali.
e. Save
Berfungsi untuk menyimpan Sketch yang telah dibuat.
f. Serial Monitor
Menampilkan serial atau data yang dikirim dari papan Arduino melalui
USB atau konektor serial ke komputer. Pada jendela serial monitor terdapat
kotak teks dan tombol "Send" jika progam membutuhkan perintah –
perintah secara manual atau mengecek perintah kode yang dibuat sudah
berfungsi atau belum sesuai dengan modul alat yang dipakai setelah itu
tekan enter maka akan terlihat dibawah kotak teks. Pilih baudrate dari
menu drop-down sesuai dengan inisialisasi baudrate pada Serial.begin kode
program.
Struktur sketch dasar software arduino ini mempuyai tiga elemen blok
apabila memulai sketch baru antara lain :
38
1) Header
Header merupakan file library utama untuk memanggil fungsi –
fungsi pada pemrograman agar fungsi tersebut dapat dideklarasi
apabila diperlukan, Pustaka (library) arduino IDE ditulis dalam
bahasa C atau C++ (.c, .cpp) yang telah disediakan pada sketsa
dengan fungsi tambahan misalnya kemampuan untuk mengontrol
matriks LED. File header dibagi menjadi dua, file header yang
sudah tersedia dalam program dan file header yang dibuat oleh
programmer sendiri untuk kepentingan tertentu.
Penulisan header diawali dengan pernyataan #include “FileName.h”
di bagian awal sketsa dengan ekstensi (.h) yang terdapat pada folder
pustaka (library) arduino. Pernyataan – pernyataan ini membuat
fungsi baik berupa output dan input konstanta, maupun sintaks.
Untuk menggunakan pustaka yang ada dalam sketsa, cukup buka
menu sketch, pilih "Import Library", lalu pilih salah satu pustaka
yang dibutuhkan.
2) Setup
Setup adalah inisialisasi fungsi pada pemrograman arduino atau
disebut juga pengaturan (settings), blok setup sangat diperlukan
dalam setiap pembuatan sketsa arduino diantaranya inisialisasi
variabel, baudrate, menentukan pin yang dijadikan sebagai input atau
output maupun kondisi pin pertama kali dalam keadaan low atau
high, fungsi setup hanya berjalan sekali setelah papan arduino
mendapat tegangan atau direset.
39
3) Loop
Loop adalah program utama pada arduino IDE, Setelah membuat
fungsi setup, menginisialisasi dan menetapkan nilai awal, maka
fungsi loop akan mengeksekusi program dan melakukan perulangan
secara terus menerus dari awal kembali ke awal blok loop, program
akan berhenti apabila tombol reset pada papan arduino ditekan atau
tidak mendapatkan tegangan dari power supply.