Perancangan Sistem Pengontrol dan Monitor Intensitas Cahaya Ruangan Berbasis Perintah Suara pada Sistem Android

BAB 2

LANDASAN TEORI

2.1 Sistem

Sistem adalah sekumpulan unsur atau elemen yang saling berkaitan dan saling
mempengaruhi dalam melakukan kegiatan bersama untuk mencapai suatu tujuan.
Seluruh organisasi pasti mempunyai sistem untuk mencapai tujuannya. Elemenelemen yang membentuk sebuah sistem :

1. Tujuan
Setiap sistem memiliki tujuan (goal), tujuan inilah yang menjadi
pemotivasi yang mengarahkan sistem. Tanpa tujuan, sistem menjadi tak
terarah dan tak terkendali.

2. Masukan
Masukan (input) sistem adalah segala sesuatu yang masuk ke dalam
sistem dan selanjutnya menjadi bahan yang diproses. Masukan dapat
berupa hal-hal yang berwujud ataupun tidak.

Universitas Sumatera Utara


9

3. Proses
Proses merupakan bagian yang melakukan perubahan atau transformasi
dari masukan menjadi keluaran yang berguna dan lebih bernilai,
misalnya berupa informasi dan produk, tetapi juga bisa berupa hal-hal
yang tidak berguna.

4. Keluaran
Keluaran (output) merupakan hasil dari pemrosesan. Pada sistem
informasi, keluaran bisa berupa suatu informasi, saran, cetakan laporan,
dan sebagainya.

5. Batas
Yang disebut batas (boundary) sistem adalah pemisah antara sistem dan
daerah di luar sistem (lingkungan). Batas sistem menentukan
konfigurasi, ruang lingkup, atau kemampuan sistem.

6. Mekanisme Pengendalian dan Umpan Balik

Mekanisme pengendalian (control mechanism) diwujudkan dengan
menggunakan umpan balik (feedback), yang mencuplik keluaran.
Umpan balik ini digunakan untuk mengendalikan baik masukan
maupun proses. Tujuannya adalah untuk mengatur agar sistem berjalan
sesuai dengan tujuan.

Universitas Sumatera Utara

10

7. Lingkungan
Lingkungan adalah segala sesuatu yang berada diluar sistem.
Lingkungan bisa berpengaruh terhadap operasi sistem dalam arti bisa
merugikan atau menguntungkan sistem itu sendiri.

2.2 Android

Android adalah sistem operasi berbasis Linux yang dirancang untuk perangkat
seluler layar sentuh seperti telepon pintar dan komputer tablet. Android, Inc.
didirikan di Palo Alto, California, pada bulan Oktober 2003 oleh Andy Rubin

(pendiri Danger), Rich Miner (pendiri Wildfire Communications, Inc.), Nick Sears
(mantan VP T-Mobile), dan Chris White (kepala desain dan pengembangan
antarmuka WebTV) untuk mengembangkan "perangkat seluler pintar yang lebih
sadar akan lokasi dan preferensi penggunanya". Tujuan awal pengembangan
Android adalah untuk mengembangkan sebuah sistem operasi canggih yang
diperuntukkan bagi kamera digital, namun kemudian disadari bahwa pasar untuk
perangkat tersebut tidak cukup besar, dan pengembangan Android lalu dialihkan
bagi pasar telepon pintar untuk menyaingi Symbiandan Windows Mobile(
iPhoneApple belum dirilis pada saat itu). Meskipun para pengembang Android
adalah pakar-pakar teknologi yang berpengalaman, Android Inc. dioperasikan
secara diam-diam, hanya diungkapkan bahwa para pengembang sedang
menciptakan sebuah perangkat lunak yang diperuntukkan bagi telepon seluler.

Universitas Sumatera Utara

11

2.2.1

Versi Android


Arsip dapat digolongkan atas berbagai jenis atau macarn, tergantung dari sisi
peninjauannya, antara lain :

1. Android 1.0 (API level 1)
Android 1.0, Versi komersil dirilis pada 23 september 2008, dengan
menggunakan device HTC DREAM.

2. Android 1.1
Pada maret 2009 google merilis Android versi 1.1 pada versi ini
Android sudah di lengkapi dengan pembaharuan estis pada
aplikasi,jam,alarm,voice search,pengirim pesan dan gmail,serta
pembaharuan email.

3. Android 1.5 (cupcake)
Pada 27 April 2009, Android 1.5 dirilis, menggunakan kernel Linux
2.6.27. Versi ini adalah rilis pertama yang secara resmi
menggunakan nama kode berdasarkan nama-nama makanan pencuci
mulut ("Cupcake"), nama yang kemudian digunakan untuk semua
versi rilis selanjutnya. Pembaruan pada versi ini termasuk beberapa

fitur baru dan perubahan UI.

4. Android 1.6 (donut)
Menampilkan proses pencarian yang lebih baik dibanding
sebelumnya, penggunaan baterai indikator dan kontrol applet VPN.
Fitur lainnya adalah galeri yang memungkinkan pengguna untuk

Universitas Sumatera Utara

12

memilih foto yang akan dihapus; kamera, camcorder dan galeri yang
dintegrasikan; CDMA / EVDO, 802.1x, VPN, Gestures, dan Textto-speech engine; kemampuan dial kontak; teknologi text to change
speech (tidak tersedia pada semua ponsel pengadaan resolusi
VWGA.

5. Android 2.0/2.1 (Éclair)
Perubahan yang dilakukan adalah pengoptimalan hardware,
peningkatan Google Maps 3.1.2, perubahan UI dengan browser baru
dan dukungan HTML5, daftar kontak yang baru, dukungan flash

untuk kamera 3,2 MP, digital Zoom, dan Bluetooth 2.1.

6. Android 2.2 (Froyo)
Perubahan-perubahan umumnya terhadap versi-versi sebelumnya
antara lain dukungan Adobe Flash 10.1, kecepatan kinerja dan
aplikasi 2 sampai 5 kali lebih cepat, intergrasi V8 JavaScript engine
yang dipakai Google Chrome yang mempercepat kemampuan
rendering pada browser, pemasangan aplikasi dalam SD Card,
kemampuan WiFi Hotspot portabel, dan kemampuan auto update
dalam aplikasi Android Market.

7. Android 2.3 (gingerbread)
Perubahan-perubahan umum yang didapat dari Android versi ini
antara

lain

peningkatan

kemampuan


permainan

(gaming),

peningkatan fungsi copy paste, layar antar muka (User Interface)

Universitas Sumatera Utara

13

didesain ulang, dukungan format video VP8 dan WebM, efek audio
baru (reverb, equalization, headphone virtualization, dan bass
boost), dukungan kemampuan Near Field Communication (NFC),
dan dukungan jumlah kamera yang lebih dari satu.

8. Android 3.0/3.1 (honeycomb)
Android Honeycomb dirancang khusus untuk tablet. Android versi
ini mendukung ukuran layar yang lebih besar. User Interface pada
Honeycomb juga berbeda karena sudah didesain untuk tablet.

Honeycomb juga mendukung multi prosesor dan juga akselerasi
perangkat keras (hardware) untuk grafis. Tablet pertama yang dibuat
dengan menjalankan Honeycomb adalah Motorola Xoom. Perangkat
tablet dengan platform Android 3.0 akan segera hadir di Indonesia.
Perangkat tersebut bernama Eee Pad Transformer produksi dari
Asus.

9. Android 4.0 (ice cream sandwich)
Membawa fitur Honeycomb untuk smartphone dan menambahkan
fitur baru termasuk membuka kunci dengan pengenalan wajah,
jaringan data pemantauan penggunaan dan kontrol, terpadu kontak
jaringan sosial, perangkat tambahan fotografi, mencari email secara
offline, dan berbagi informasi dengan menggunakan NFC.

Universitas Sumatera Utara

14

10. Android 4.1 (Jelly Bean)
Dirilis tahun 2012. Android Jelly Bean ini diperuntukkan untuk

komputer tablet dan memungkinkan untuk digunakan pada sistem
operasi PC atau Komputer. Sehingga rumornya kemunculan
Android Jelly Bean ini untuk menyaingi rilis terbaru Windows 8
yang juga akan segera dirilis. Karena kita ketahui bersama
perbincangan versi Android sebelumnya yaitu Android Ice Cream
Sandwhich pun masih hangat di telinga.

11. Android 4.2 (Jelly Bean API level 17)
Dirilis pada 13 november 2012, versi ini melengkapi kekurangan
maupun bugs yang sering terjadi pada JB 4.1, seperti perbaikan bug
pada aplikasi ‘people’, penambahan tampilan nirkabel (miracast),
perbaikan aksesbilitas, VPN yang selalut terhubung dan lain-lain.

12. Android 4.4 (KitKat)
Dirlis pada 31 Oktober 2013, versi ini memiliki antarmuka terbaru
dengan status bar dan navigasi transparan pada layar depan,
webviews berbasis Chromium, mendukung media komunikasi Infra
merah yang memungkinkan devices bisa menjadi remote untuk
smart tv.


13. Android 5.0 (Lollipop)
Pada versi terbaru ini google selaku pengembang membuat sebuah
desain antarmuka terbaru yang dinamakan “Material Design”, serta

Universitas Sumatera Utara

15

mendukung 64bit ART compiler, dan menambahkan system
keamanan yang bernama ‘factory reset protection’ yang berfungsi
ketika smartphone hilang, ia tidak bisa direset ulang tanpa
memasukkan id dan password akun google.

14. Android 6.0 (Marshmallow)
Android marshmallow merupakan pemutakhiran untuk sistem
informasi telepon genggam Android. Marshmallow juga memiliki
skema manajemen daya baru bernama Doze yang mengurangi
tingkat aktivitas aplikasi latar belakang saat perangkat menentukan
bahwa itu tidak sedang aktif ditangani oleh pengguna, yang menurut
google menggandakan pemakaian batrai perangkat. Hal ini juga

memperkenalkan pilihan untuk mengatur ulang semua pengaturan
jaringan, tersedia untuk pertama kalinya pada Android, yang
membersihkan pengaturan terkait jaringan untuk wi-fi, bluetooth dan
koneksi seluler.

2.2.2

Libraries

Bertempat di level yang sama dengan Android Runtime adalah Libraries. Android
menyertakan satu set libraries dalam bahasa C/C++ yang digunakan oleh berbagai
komponen yang ada pada sistem Android. Kemampuan ini dapat diakses oleh
programmer melewati Android application framework. Sebagai contoh Android

Universitas Sumatera Utara

16

mendukung pemutaran format audio, video, dan gambar. Berikut ini beberapa core
library tersebut :

1. System C Library
Diturunkan dari implementasi standard C system library (libc) milik
BSD, dioptimasi untuk piranti embedded berbasis Linux.

2. Media Libraries
Berdasarkan

PacketVideo’s

OpenCORE;

library-library

ini

mendukung playback dan recording dari berbadai format audio and
video populer, meliputi MPEG4, H.264, MP3, AAC, AMR, JPG,
and PNG.

3. Surface Manager
Mengatur akses pada display dan lapisan composites 2D and 3D
graphic dari berbagai aplikasi.

4. LibWebCore
Web browser engine modern yang mendukung Android browser
maupun embeddable web view.

5. 3D Libraries
Implementasi berdasarkan OpenGL ES 1.0 APIs; library ini
menggunakan hardware 3D acceleration dan highly optimized 3D
software rasterizer.

Universitas Sumatera Utara

17

6. Free Type
Bitmap dan vector font rendering.

7. SGL
The underlying 2D graphics engine.

8. SQLit
Relational Database Engine yang powerful dan ringan tersedia
untuk semua aplikasi.

2.2.3

Tools Dalam Pemrograman Android

Pada setiap pembuatan aplikasi atau program, seorang programmer tentu saja
membutuhkan tools untuk mendukung proses pembuatan aplikasi yang ia buat.
Tools yang dimaksud disini bisa berupa aplikasi berbasis bahasa pemograman yang
memudahkan seorang programmer dalam mengetikkan coding ataupun mendesain
tampilan dari aplikasi yang akan ia buat. Dalam pemograman aplikasi untuk
dekstop komputer kita biasa mendengar yang namanya NetBeans, Delphi, Visual
Basic, dan lain-lain.

Untuk

memulai

pembuatan

sebuah

aplikasi

Android

pun,

kita

membutuhkan tools yang nantinya akan mempermudah proses pembuatan aplikasi
tersebut. Adapun tools yang penulis butuhkan untuk membuat aplikasi Android
yaitu Java dan AiStarter.

Universitas Sumatera Utara

18

2.2.3.1 Java SE

Java platform Standart Edition merupakan sebuah paket dalam bahasa
pemograman java, dimana berarti Java SE bisa digunakan untuk membuat aplikasi
berbasis Java. Dalam lingkup pemograman Android, Java SE merupakan sebuah
dasar dari pemograman Android. Mengapa? Karena bahasa pemograman asli untuk
Android adalah Java. Jadi untuk memulai pembuatan aplikasi Android kita harus
terlebih dahulu memilki Java SE yang terinstal di komputer/laptop yang akan kita
gunakan untuk membuat aplikasi Android.

2.2.3.2 AiStarter

AiStarter program dibutuhkan ketika ingin menggunakan Emulator atau USB cable
untuk melakukan uji coba aplikasi yang sedang dibuat. AiStarter berfungsi untuk
menghubungkan antara App Inventor yang berjalan di browser dengan perangkat
lain seperti HP Android atau Emulator.

2.3 Bluetooth

Bluetooth adalah suatu peralatan media komunikasi yang dapat digunakan untuk
menghubungkan sebuah perangkat komunikasi dengan perangkat komunikasi
lainnya dengan jarak jangkauan layanan yang terbatas (sekitar 10 meter). Relasi
bluetooth adalah one to one, maksudnya adalah 1 device hanya dapat mengakses 1
perangkat, tidak seperti wifi yang relasinya one to many dimana 1 device dapat

Universitas Sumatera Utara

19

mengakses banyak perangkat, bluetooth harus bergantian satu per satu. Pada
dasarnya teknologi bluetooth ini diciptakan bukan hanya untuk menggantikan atau
menghilangkan penggunaan media kabel dalam melakukan pertukaran data atau
informasi, tetapi juga mampu menawarkan fitur yang bagus atau baik untuk
teknologi mobile wireless atau tanpa kabel, dengan biaya yang relatif rendah,
konsumsi daya rendah, interoperability yang sangat menjanjikan, mudah dalam
pengoperasiannya dan juga mampu menyediakan berbagai macam layanan.

2.3.1

Fungsi Bluetooth

Fungsi bluetooth yaitu untuk mempermudah berbagi atau sharing file, audio,
menggantikan penggunaan kabel dan lain-lain. Bluetooth sendiri dapat berupa card
yang bentuk dan fungsinya hampir sama dengan card yang digunakan untuk
wireless local area network (WLAN) dimana menggunakan frekuensi radio standar
IEEE 802.11, hanya saja pada bluetooth mempunyai jangkauan jarak layanan yang
lebih pendek dan kemampuan transfer data yang lebih rendah.

2.3.2

Latar Belakang Bluetooth

Pada bulan Mei 1998, 5 perusahaan promotor yaitu Ericsson, IBM, Intel, Nokia dan
Toshiba membentuk sebuah Special Interest Group (SIG) dan memulai untuk
membuat spesifikasi yang mereka namai ‘bluetooth’. Pada bulan Juli 1999
dokumen spesifikasi bluetooth versi 1.0 mulai diluncurkan. Pada bulan Desember
1999 dimulai lagi pembuatan dokumen spesifikasi bluetooth versi 2.0 dengan

Universitas Sumatera Utara

20

tambahan 4 promotor baru yaitu 3Com, Lucent Technologies, Microsoft dan
Motorola. Saat ini, lebih dari 1800 perusahaan di berbagai bidang antara lain di
bidang semiconductor manufacture, PC manufacture, mobile network carrier,
perusahaan-perusahaan automobile dan air lines bergabung dalam sebuah
konsorsium

sebagai

adopter

teknologi

bluetooth.

Perusahaan-perusahaan

terkemuka tersebut antara lain seperti Compaq, Xircom, Phillips, Texas
instruments, Sony, BMW, Puma, NEC, Casio, Boeing, dan lain-lain. Walaupun
standar Bluetooth SIG saat ini ‘dimiliki’ oleh grup promotor tetapi ia diharapkan
akan menjadi sebuah standar IEEE (802.15).

2.3.3

Kelebihan dan Kekurangan Bluetooth

Setiap aplikasi pasti memiliki kelebihan dan kekurangannya masing masing, begitu
juga dengan bluetooth, adapun kelebihan dan kekurangan bluetooth yaitu :

a. Kelebihan Bluetooth
1. Bisa menembus rintangan, misalnya seperti dinding, kotak, dan
sebagainya. Walaupun jarak transmisinya hanya 10 M.
2. Tidak memerlukan media kabel ataupun kawat.
3. Dapat mensingkronisasi data dari Handphone ke Komputer atau
laptop.
4. Dapat dipakai sebagai perantara modem.
5. Praktis dan tidak ribet dalam penggunaannya.

Universitas Sumatera Utara

21

b. Kekurangan Bluetooth
1. Sistem ini menggunakan frekuensi yang sama dengan gelombang
wifi yaitu LAN standar.
2. Apabila dalam suatu ruangan terlalu banyak koneksi bluetooth yang
digunakan, akan menyulitkan pengguna untuk menemukan
penerima yang diharapkan.
3. Banyak mekanisme keamanan bluetooth yang harus diperhatikan
untuk mencegah kegagalan pengiriman atau penerimaan informasi.
4. Kecepatan dalam transfer data tidak tetap, tergantung dari
perangkat yang dipakai untuk mengirim dan yang menerima data
maupun informasi.

2.4 Modul Bluetooth

Bluetooth Module HC-05 merupakan module komunikasi nirkabel dengan pilihan
koneksi bisa sebagai slave, ataupun sebagai master. Sangat mudah digunakan
dengan mikrokontroler untuk membuat aplikasi wireless. Interface yang digunakan
adalah serial RXD, TXD, VCC dan GND. Built in LED sebagai indikator koneksi
bluetooth.

Universitas Sumatera Utara

22

Gambar 2.1 Modul Bluetooth

Modul bluetooth seri HC memiliki banyak jenis atau varian, yang secara
garis besar terbagi menjadi dua yaitu jenis ‘industrial series’ yaitu HC-03 dan HC04 serta ‘civil series’ yaitu HC-05 dan HC-06. Modul bluetooth serial, yang
selanjutnya disebut dengan modul BT saja digunakan untuk mengirimkan data
serial TTL via bluetooth.

Seri modul BT HC bisa dikenali dari nomor serinya, jika nomor serinya genap
maka modul BT tersebut sudah diset oleh pabrik, bekerja sebagai slave atau master
dan tidak dapat diubah mode kerjanya, contoh adalah HC-06-S. Modul BT ini akan
bekerja sebagai BT slave dan tidak bisa diubah menjadi master, demikian juga
sebaliknya misalnya HC-04M. Default mode kerja untuk modul BT HC dengan seri
genap adalah sebagai slave. Sedangkan modul BT HC dengan nomor seri ganjil,
misalkan HC-05, kondisi default biasanya diset sebagai slave mode, tetapi pengguna
bisa mengubahnya menjadi master mode dengan AT Command tertentu. Penggunaan

utama dari modul BT ini adalah menggantikan komunikasi serial via kabel, sebagai
contoh :

Universitas Sumatera Utara

23

1. Jika akan menghubungkan dua sistem mikrokontroler agar bisa
berkomunikasi via serial port maka dipasang sebuah modul BT master
pada satu sistem dan modul BT slave pada sistem lainnya. Komunikasi
dapat langsung dilakukan setelah kedua modul melakukan pairing.
Koneksi via bluetooth ini menyerupai komunikasi serial biasa, yaitu
adanya pin TXD dan RXD.
2. Jika sistem mikrokontroler dipasangi modul BT slave maka ia dapat
berkomunikasi dengan perangkat lain semisal PC yang dilengkapi adapter
BT ataupun dengan perangkat ponsel, smartphone dan lain-lain.
3. Saat ini banyak perangkat seperti printer, GPS modul dan lain-lain yang
bekerja menggunakan media bluetooth, tentunya sistem mikrokontroler
yang dilengkapi dengan BT master dapat bekerja mengakses perangkatperangkat tersebut.

Pemakaian modul BT pada sistem komunikasi baik antar dua sistem
mikrokontrol maupun antara suatu sistem ke device lain tidak perlu menggunakan
driver, tetapi komunikasi dapat terjadi dengan dua syarat yaitu :

1. Komunikasi terjadi antara modul BT Master dan BT Slave, komunikasi
tidak akan pernah terjadi jika kedua modul sama-sama Master atau samasama Slave, karena tidak akan pernah pairing diantara keduanya.
2. Password yang dimasukkan cocok.

Modul BT yang banyak beredar di sini adalah modul HC-06 atau sejenisnya
dan modul HC-05 dan sejenisnya. Perbedaan utama adalah modul HC-06 tidak bisa

Universitas Sumatera Utara

24

mengganti mode karena sudah diset oleh pabrik, selain itu tidak banyak AT
Command dan fungsi yang bisa dilakukan pada modul tersebut. Diantaranya hanya
bisa mengganti nama, baud rate dan password saja.

Sedangkan untuk modul HC-05 memiliki kemampuan lebih yaitu bisa
diubah mode kerjanya menjadi master atau slave serta diakses dengan lebih banyak
AT Command, modul ini sangat direkomendasikan, terutama dalam flexibilitasnya
dalam pemilihan mode kerjanya.

2.5 Mikrokontroller Arduino Nano

Arduino merupakan sebuah platform dari physical computing yang bersifat open
source. Pertama-tama perlu dipahami bahwa kata “platform” di sini adalah sebuah
pilihan kata yang tepat. Arduino tidak hanya sekedar sebuah alat pengembangan,
tetapi ia adalah kombinasi dari hardware, bahasa pemrograman dan Integrated
Development Environment (IDE) yang canggih. IDE adalah sebuah software yang
sangat berperan untuk menulis program, meng-compile menjadi kode biner dan
meng-upload ke dalam memory microcontroller.

Arduino Nano adalah salah satu papan pengembangan mikrokontroler yang
berukuran kecil, lengkap dan mendukung penggunaan breadboard. Arduino Nano
diciptakan dengan basis mikrokontroler ATmega328 (untuk Arduino Nano versi
3.x) atau ATmega 168 (untuk Arduino versi 2.x). Arduino Nano kurang lebih
memiliki fungsi yang sama dengan Arduino Duemilanove, tetapi dalam paket yang
berbeda. Arduino Nano tidak menyertakan colokan DC berjenis Barrel Jack, dan

Universitas Sumatera Utara

25

dihubungkan ke komputer menggunakan port USB Mini-B. Arduino Nano
dirancang dan diproduksi oleh perusahaan Gravitech.

Gambar 2.2 Bagian Depan Arduino Nano

Gambar 2.3 Bagian Belakang Arduino Nano

Universitas Sumatera Utara

26

2.5.1

Spesifikasi Arduino Nano

Berikut ini adalah Spesifikasi yang dimiliki oleh Arduino Nano:

1.

MikrokontrolerAtmel ATmega168 atau ATmega328

2.

5 V Tegangan Operasi

3.

7-12VInput Voltage (disarankan)

4.

6-20VInput Voltage (limit)

5.

Pin Digital I/O14 (6 pin digunakan sebagai output PWM)

6.

8 Pin Input Analog

7.

40 mA Arus DC per pin I/O

8.

Flash Memory16KB (ATmega168) atau 32KB (ATmega328) 2KB
digunakan oleh Bootloader

9.

1 KbyteSRAM (ATmega168) atau 2 Kbyte(ATmega328)

10.

512 ByteEEPROM (ATmega168) atau 1Kbyte (ATmega328)

11.

16 MHz Clock Speed

12.

Ukuran1.85cm x 4.3cm

2.5.2

Sumber Daya Arduino Nano

Arduino Nano dapat diaktifkan melalui koneksi USB Mini-B, atau melalui catu
daya eksternal dengan tegangan belum teregulasi antara 6-20 Volt yang
dihubungkan melalui pin 30 atau pin VIN, atau melalui catu daya eksternal dengan
tegangan teregulasi 5 volt melalui pin 27 atau pin 5V. Sumber daya akan secara

Universitas Sumatera Utara

27

otomatis dipilih dari sumber tegangan yang lebih tinggi. Chip FTDI FT232L pada
Arduino Nano akan aktif apabila memperoleh daya melalui USB, ketika Arduino
Nano diberikan daya dari luar (Non-USB) maka Chip FTDI tidak aktif dan pin 3.3V
pun tidak tersedia (tidak mengeluarkan tegangan), sedangkan LED TX dan RX pun
berkedip apabila pin digital 0 dan 1 berada pada posisi HIGH.

2.6 Arduino Software (IDE)

IDE merupakan singkatan dari Integrated Developtment Enviroenment, atau
merupakan

lingkungan

terintegrasi

yang

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 mikrokontroller.

2.6.1

Menulis Sketch

Program yang ditulis dengan menggunaan Arduino Software (IDE) disebut
sebagai sketch. Sketch ditulis dalam suatu editor teks dan disimpan dalam file
dengan ekstensi .ino. Teks editor pada Arduino Software memiliki fitur”

Universitas Sumatera Utara

28

seperti cutting/paste dan seraching/replacing sehingga memudahkan kita dalam
menulis kode program.

Pada Software Arduino IDE, terdapat semacam message box berwarna
hitam yang berfungsi menampilkan status, seperti pesan error, compile,
dan upload program. Di bagian bawah paling kanan Sotware Arduino IDE,
menunjukan board yang terkonfigurasi beserta COM Ports yang digunakan.

Gambar 2.4 Tampilan Arduino Software (IDE)

Universitas Sumatera Utara

29

Terdapat beberapa fitur yang membantu penulis untuk membuat mempermudah
programmer membuat sketch, yaitu:

1. Verify
Berfungsi untuk melakukan checking kode yang kamu buat apakah
sudah sesuai dengan kaidah pemrograman yang ada atau belum.

2. Upload
Berfungsi untuk melakukan kompilasi program atau kode yang
kamu buat menjadi bahsa yang dapat dipahami oleh mesih alias si Arduino.

3. New
Berfungsi untuk membuat Sketch baru.

4. Open
Berfungsi untuk membuka sketch yang pernah kamu buat dan
membuka kembali untuk dilakukan editing atau sekedar upload ulang ke
Arduino.

5. Save
Berfungsi untuk menyimpan Sketch yang telah kamu buat.

6. Serial Monitor
Berfungsi untuk membuka serial monitor. Serial monitor disini
merupakan jendela yang menampilkan data apa saja yang dikirimkan atau
dipertukarkan antara Arduino dengan sketch pada port serialnya. Serial

Universitas Sumatera Utara

30

Monitor ini sangat berguna sekali ketika kamu ingin membuat program atau
melakukan debugging tanpa menggunakan LCD pada Arduino. Serial
monitor ini dapat digunakan untuk menampilkan nilai proses, nilai
pembacaan, bahkan pesan error.

Pada taskbar terdapat beberapa menu menu yang didalam setiap menu itu
terdapat sub-sub menu yang sangat membantu programmer untuk membuat sketch,
yaitu:

1. Menu file, didalam menu file terdapat beberapa sub menu, yaitu:



New, berfungsi untuk membuat membuat sketch baru dengan bare
minimum yang terdiri void setup() dan void loop().



Open, berfungsi membuka sketch yang pernah dibuat di dalam drive.



Open Recent, merupakan menu yang berfungsi mempersingkat
waktu pembukaan file atau sketch yang baru-baru ini sudah dibuat.



Sketchbook, berfungsi menunjukan hirarki sketch yang kita buat
termasuk struktur foldernya.



Example, berisi contoh-contoh pemrograman yang disediakan
pengembang Arduino, sehingga kamu dapat mempelajari programprogram dari contoh yang diberikan.



Close, berfungsi menutup jendela Arduino IDE dan menghentikan
aplikasi.



Save, berfungsi menyimpan sketch yang dibuat atau perubahan yang
dilakukan pada sketch.

Universitas Sumatera Utara

31



Save as…, berfungsi menyimpan sketch yang sedang dikerjakan
atau sketch yang sudah disimpan dengan nama yang berbeda.



Page Setup, berfungsi mengatur tampilan page pada proses
pencetakan.



Print, berfungsi mengirimkan file sketch ke mesin cetak untuk
dicetak.



Preferences, disini kita dapat merubah tampilan interface IDE
Arduino.



Quit, berfungsi menutup semua jendela Arduino IDE. Sketch yang
masih terbuka pada saat tombol Quit ditekan, secara otomatis akan
terbuka pada saat Arduino IDE dijalankan.

2. Menu edit, didalam menu edit terdapat beberapa sub menu, yaitu:



Undo/Redo, berfungsi untuk mengembalikan perubahan yang sudah
dilakukan pada sketch beberapa langkah mundur dengan Undo atau
maju dengan Redo.



Cut, berfungsi untuk meremove teks yang terpilih pada editor dan
menempatkan teks tersebut pada clipboard.



Copy, berfungsi menduplikasi teks yang terpilih kedalam editor dan
menempatkan teks tersebut pada clipboard.



Copy for Forum, berfungsi melakukan copy kode dari editor dan
melakukan formating agar sesuai untuk ditampilkan dalam forum,
sehingga kode tersebut bisa digunakan sebagai bahan diskusi dalam
forum.

Universitas Sumatera Utara

32



Copy as HTML, berfungsi menduplikasi teks yang terpilih kedalam
editor dan menempatkan teks tersebut pada clipboard dalam bentuk
atau format HTML. Biasanya ini digunakan agar kode dapat
diembededdkan pada halaman web.



Paste, berfungsi menyalin data yang terdapat pada clipboard,
kedalam editor.



Select All, berfungsi untk melakukan pemilihan teks atau kode
dalam halaman editor.



Comment/Uncomment, berfungsi memberikan atau menghilangkan
tanda // pada kode atau teks, dimana tanda tersebut menjadikan suatu
baris kode sebagai komen dan tidak disertakan pada tahap
kompilasi.



Increase/Decrease Indent, berfunsgi untuk mengurangi atau
menambahkan indetntasi pada baris kode tertentu. Indentasi adalah
“tab”.



Find, berfungsi memanggil jendela window find and replace,
dimana kamu dapat menggunakannya untuk menemukan variabel
atau kata tertentu dalam program atau menemukan serta
menggantikan kata tersebut dengan kata lain.



Find Next, berfungsi menemukan kata setelahnya dari kata pertama
yang berhasil ditemukan.



Find Previous, berfungsi menemukan kata sebelumnya dari kata
pertama yang berhasil ditemukan.

Universitas Sumatera Utara

33

3. Menu sketch, didalam menu sketch terdapat beberapa sub menu, yaitu:



Verify/Compile, berfungsi untuk mengecek apakah sketch yang
kamu buat ada kekeliruan dari segi sintaks atau tidak. Jika tidak ada
kesalahan, maka sintaks yang kamu buat akan dikompile kedalam
bahasa mesin.



Upload, berfunsi mengirimkan program yang sudah dikompilasi ke
Arduino Board.



Uplad

Using

Programmer,

menu

ini

berfungsi

untuk

menuliskan bootloader kedalam IC Mikrokontroler Arduino. Pada
kasus

ini

seperti

kamu
USBAsp

membutuhkan
untuk

perangkat

menjembatani

tambahan
penulisan

program bootloader ke IC Mikrokontroler.


Export Compiled Binary, berfungsi untuk menyimpan file dengan
ekstensi .hex, dimana file ini dapat disimpan sebagai arsip untuk di
upload ke board lain menggunakan tools yang berbeda.



Show Sketch Folder, berfungsi membuka folder sketch yang saat ini
dikerjakan.



Include

Library,

berfunsi

menambahkan

library/pustaka

kedalam sketch yang dibuat dengan menyertakan sintaks #include di
awal kode. Selain itu kamu juga bisa menambahkan library
eksternal dari file .zip kedalam Arduino IDE.

Universitas Sumatera Utara

34



Add

File…,

berfungsi

untuk

menambahkan

file

kedalam sketch Arduino (file akan dikopikan dari drive asal). File
akan muncul sebagai tab baru dalam jendela sketch.

4. Menu tools, didalam menu tools terdapat beberapa sub menu, yaitu:



Auto Format, berfungsi melakukan pengatran format kode pada
jendela editor.



Archive Sketch, berfungsi menyimpan sketch kedalam file .zip



Fix Encoding & Reload, berfungsi memperbaiki kemungkinan
perbedaan antara pengkodean peta karakter editor dan peta karakter
sistem operasi yang lain.



Serial Monitor, berungsi membuka jendela serial monitor untuk
melihat pertukaran data.



Board, berfungsi memilih dan melakukan konfigurasi board yang
digunakan.



Port, memilih port sebagai kanal komunikasi antara software
dengan hardware.



Programmer, menu ini digunakan ketika kamu hendak melakukan
pemrograman chip mikrokontroller tanpa menggunakan koneksi
Onboard USB-Serial. Biasanya digunakan pada proses burning
bootloader.



Burn Bootloader, mengizinkan kamu untuk mengkopikan program
bootloader kedalam IC mikrokontroler.

Universitas Sumatera Utara

35

5. Menu help, didalam menu help kita bisa mendapatkan bantuan terhadap
masalah

mengenai

pemrograman.

Menu

help

berisikan

file-file

dokumentasi yang berkaitan dengan masalah yang sering muncul, serta
penyelesaiannya. Selain itu pada menu help juga diberikan link untuk
menuju Arduino Forum guna menanyakan serta mendiskusikan berbagai
masalah yang ditemukan.

Universitas Sumatera Utara