PEMANFAATAN BLUETOOTH SEBAGAI MEDIA KOMUNIKASI ANDROID DENGAN MIKROKONTROLER ATMEGA 328 PADA SISTEM TELEMETRI SUHU
DAN PENGENDALIAN TEGANGAN TINGGI
TUGAS AKHIR
NOFA BONITA SIALLAGAN 142408011
PROGRAM STUDI D3 FISIKA DEPATERMEN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
MEDAN 2017
PEMANFAATAN BLUETOOTH SEBAGAI MEDIA KOMUNIKASI ANDROID DENGAN MIKROKONTROLER ATMEGA 328 PADA SISTEM TELEMETRI SUHU
DAN PENGENDALIAN TEGANGAN TINGGI
TUGAS AKHIR
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar ahli madya
NOFA BONITA SIALLAGAN 142408011
PROGRAM STUDI D3 FISIKA DEPATERMEN FISIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
MEDAN 2017
PERSETUJUAN
Judul : PEMANFAATAN BLUETOOTH SEBAGAI MEDIA
KOMUNIKASI ANDROID DENGAN
MIKROKONTROLER ATMEGA328 PADA SISTEM PENGENDALIAN TEGANGAN TINGGI
Kategori : TUGAS AKHIR
Nama : NOFA BONITA SIALLAGAN
Nomor induk mahasiswa : 142408011
Program Study : D3 FISIKA
Departemen : FISIKA
Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN ALAM
(FMIPA) UNIVERSITAS SUMATERA UTARA
DISETUJUI OLEH
Mengetahui, Medan 1 Mei 2017
Ketua Program Studi D-III Fisika Dosen Pembimbing
(Drs. Takdir Tamba, M.Eng.Sc) ( Prof.Marhaposan Situmorang ) NIP: 196006031986011002 NIP: 195510301980031003
PERNYATAAN
PEMANFAATAN BLUETOOTH SEBAGAI MEDIA KOMUNIKASI ANDROID DENGAN MIKROKONTROLER ATMEGA328 PADA SISTEM PENGENDALIAN TEGANGAN TINGGI
TUGAS AKHIR
Saya mengakui bahwa tugas akhir ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing masing disebutkan di sumber.
Medan, 1 Mei 2017
NOFA BONITA SIALLAGAN 142408011
PENGHARGAAN
Puji syukur penulis panjatkan ke hadirat TuhanYang Maha Esa, berkat rahmat dan karuniaNya, penulis dapat menyelesaikan laporan tugas akhir ini.
Tugas akhir ini berjudul PEMANFAATAN BLUETOOTH SEBAGAI MEDIA KOMUNIKASI ANDROID DENGAN MIKROKONTROLER ATMEGA328 PADA SISTEM PENGENDALIAN TEGANGAN TINGGI. Meskipun dalam proses penulisan banyak menemui hambatan dan rintangan namun dengan usaha maksimal yang dilakukan penulis serta bantuan dari berbagai pihak, akhirnya tugas akhir ini dapat selesai. Atas bantuan dan motivasi yang diberikan, maka penulis mengucapkan banyak terima kasih kepada Bapak Prof. Marhaposan Situmorang selaku dosen pembimbing penulis dan Ketua Jurusan Program studi D3 Fisika, Bapak Drs. Takdir Tamba, M.Eng.Sc, Dr. Kerista Sebayang, MS, selaku Dekan FMIPA USU. Seluruh dosen yang telah memberikan ilmu pengetahuan selama perkuliahan, yang membuka cakrawala berfikir serta pengawai tata usaha yang ikut mensukseskan proses belajar mengajar. Rekan-rekan di D3 Fisika 2014, Khususnya Anna Maria Sianturi, wenny Damanik terima kasih atas motivasi, kritik dan sarannya terhadap tugas akhir ini. Penulis juga mengucapkan terima kasih kepada Simon Manurung, Fitri Jayanti, Tony Wu dan Maya Sari yang telah memotivasi penulis dan menyelesaikan Tugas akhir ini, serta kepada bapak Andika Siregar dan Beny Munthe yang telah ikut memotivasi dan membantu dalam meyelesaikan pembuatan alat ini. Akhirnya terima kasih kepada Ayahanda dan Ibunda yang telah memberikan didikan terbaik bagi penulis. Tugas akhir ini penulis dedikasikan untuk mereka sebagai ungkapan penghargaan atas keiklasan, kesabaran, dan kasih sayang yang tak terhingga. Hanya Tuhan Yang Maha Esa yang dapat membalas semua jasa dan kebaikan yang penulis terima dari berbagai pihak yang telah membantu dalam peyelesaian tugas akhir ini.
Penulis menyadari bahwa dalam penyusunan tugas ini masih terdapat kekurangan dan masih jauh dari kesempurnaan. Oleh karena itu, penulis sangat terbuka terhadap saran maupun kritikan dalam sebuah diskusi yang membangun dari pembaca.
Akhir kata penulis mengharapkan semoga tugas akhir ini dapat bermanfaat bagi pembaca.
Medan, Mei 2017
ABSTRAK
Penelitian ini bertujuan untuk merancang dan merealisasikan sebuah alat yang dapat memudahkan pemakainya dalam mengendalikan sistem pengendalian tegangan tinggi seperti pada lampu dalam sebuah ruangan. Alat ini menggunakan mikrokontroler ATMEGA328.
Mikrokontroler yang akan mengatur cara kerja alat tersebut. Mikrokontroler akan mengatur nyalanya lampu berdasarkan kode yang akan diterimanya dari Bluetooth. Akan tetapi lampu tidak bisa langsung dihubungkan ke mikrokontroler karena lampu menyala di 220 volt AC, sedangkan tegangan Output dari Mikrontroler 5 volt DC. Karena itu untuk menjembatani antara lampu dengan mikrokontroler agar lampu dapat dikendalikan digunakalah relay. Alat ini di remote menggunakan android. Android juga berfungsi untuk menampilkan data lampu apa saja yang menyala. Pada alat ini akan dilakukan pengecekan Bluetooth dengan meremote alat dari kejauhan yang bevariasi dan dengan menggunakan hambatan ataupun ruang bebas.
ABSTRACT
This research aims to design and realize a tool that can facilitate the user in controling the system of high voltage control as in the lights in room. This tool using ATMega328 microcontroller. Microcontroller that will regulate the way the tools work. The microcontroller will be flaming the lamp based on the code that will be received from bluetooth. But the lamp can not be directly connected to the microcontroller because the lamp on at 220 volt AC, while the output voltage of microcontroller 5 volt DC. Therefore to bridge between lamp with microcontroller so that lamp can be controlled use relay. This tool on remote using android. Android also function to display which the lamp up. This tool will be done by checking bluetooth remotely tolls from distance and by using barriers or free space.
DAFTAR ISI
Persetujuan i
Pernyataan ii
Penghargaan ...
... iii
Abstrak ... iv
Abstract ... v
Daftar isi vi
Daftar Tabel vii
Daftar Gambar ix
BAB 1 PENDAHULUAN 1
1.1 Latar Belakang 1
1.2 Tujuan Penelitian 2
1.3 perumusan Masalah 2
1.4 Batasan Masalah 2
1.5 Manfaat Penelitian 2
1.6 Sistematika Penulisan 3
BAB 2 LANDASAN TEORI 4
2.1 Arduino Uno 4
2.1.1 Arsitektur Arduino Uno 4
2.1.2 Fitur Arduino Uno 5
2.1.3 Pin Input Output Arduino Uno 6
2.1.3.1 Pin Digital 6
2.1.3.2 Pin Pulse Width Modulation (PWM) 6
2.1.3.3 Pin Analog Input 7
2.1.3.4 Pin Tegangan Referensi 7
2.1.4 Bahasa Pemograman Arduino Uno 8
2.1.4.1 Deklarasi Variabel 8
2.1.4.3 Operasi Logika dan Bilangan Biner 10
2.2 Mikrokontroler ATMega 328 10
2.2.1 Arsitektur ATMega 328 10
2.2.2 Fitur ATMega 328 12
2.2.3 Konfigurasi Pin Atmega 328 13
2.3 Bluetooth HC-06 14
BAB III RANCANGAN SISTEM 16
3.1 Diagram Blok 16
3.2 Rancangan Perangkat Keras 17
3.2.1 Rangkaian Catu Daya 17
3.2.2 Rangkaian Mikrokontroler ATMega 328 18
3.2.3 Rangkaian Lcd Karakter 18
3.2.4 Rangkaian Relay 19
3.3 Rancangan Perangkat Lunak 20
3.3.1 Rancangan Lunak Pada Mikrokontroler 20
3.3.2 Rancangan Lunak Pada Android 26
BAB IV PENGUJIAN DAN PEMBAHASAN SISTEM 30
4.1 Pengujian Rangkaian Catu Daya 30
4.2 Pengujian Rangkaian Mikrokontroler ATMega 328 30
4.3 Pengujian Rangkaian LCD 32
4.4 Pengujian Rangkaian Relay 33
4.5 Pengujian Module Bluetooth HC-06 33
4.6 Pengujian Aplikasi di Android 34
4. Pengujian Kerja Sistem Secara Keseluruhan 35
BAB V KESIMPULAN DAN SARAN 37
5.1 Kesimpulan 37
5.2 Saran 37
Daftar Pustaka
LAMPIRAN A : Datasheet ATMega328 LAMPIRAN C : Datasheet Bluetooth HC-06
Daftar Tabel
Tabel 2.1 Deskripsi Arduino 5
Tabel 2.2 Tipe Data yang didukung Bahasa Arduino 9
Tabel 2.3 Operator Aritmatik 10
Tabel 4.1 Pengujian Catu daya 30
Tabel 4.2 Pengujian Kerja Sistem Secara Keseluruhan 36
Daftar Gambar
Gambar 2.1 Peta Data Memory 11
Gambar 2.2 Peta Data Memory 12
Gambar 2.3 Konfigurasi ATMega 328 13
Gambar 2.4 Module Bluetooth HC-06 15
Gambar 3.1 Diagram Blok Alat 16
Gambar 3.2 Rangkaian Catu Daya 17
Gambar 3.3 Rangkaian Mikrokontroler Atmega 328 18
Gambar 3.4 Rangkain LCD karakter 16 x 2 18
Gambar 3.5 Rangkaian Relay 19
Gambar 3.6 Flowchart program pada Mikrokontroler 21
Gambar 3.7 Flowchart program pada Android 27
Gambar 4.1 Pengujian Rangkaian Catu Daya 30
Gambar 4.2 Pengujian Rangkaian Mikrokontroler Atmega 328 30
Gambar 4.3 Pengujian Rangkain LCD karakter 16 x 2 32
Gambar 4.4 Pengujian Rangkaian Relay 33
Gambar 4.5 Scaning Bluetooth 33
Gambar 4.6 Module Bluetooth Tersambung 34
Gambar 4.7 Pengujian Aplikasi di Adroid 34
BAB I PENDAHULUAN 1.1 Latar Belakang
Teknologi mikrokontroler sebagai salah satu produk teknologi semikonduktor berkontribusi besar untuk menunjang aktivitas manusia. Perkembangan mikrokontroler terkini mampu melakukan proses pengenalan percakapan serta pengenalan gambaran sesuai dengan konteks kebutuhan pengguna. Realisasi teknologi tersebut tidak terlepas dari semakin beragamnya tool software (perangkat lunak) pengembangan mikrokontroler dengan bahasa yang mudah dipahami oleh pengembang. Kemajuan teknologi mikrokontroler tidak terlepas dari faktor pemograman dalam pemahaman konsep visual maupun non-visual kondisi lingkungan atau objek tertentu yang berimplikasi ke pengguna.
Mikrokontroler banyak digunakan karena penggunaanya yang relatif mudah dan desainnya yang ringkas serta lebih ekonomis. Hal ini disebabkan karena di didalam sebuah mikrokontroler sudah terdapat CPU, ROM, RAM, dan IO yang sudah terpadu di dalam satu keping.
Aplikasi Mikrokontroler pada tulisan ini adalah aplikasi Mikrokontroler pada pemanfaatan bluetooth sebagai media komunikasi android pada sistem pengendalian tegangan tinggi. Alat ini sering digunakan sebagai kontrol lampu rumah tangga dan dalam ruangan lainnya. Mengingat pada jaman ini banyaknya pengguna android, maka dikembangkanlah alat ini untuk memudahkan manusia dan kita tidak perlu lagi repot untuk menyalakan atau mematikan lampu. Cukup hanya menggunakan android kita bisa meremote semua saklar lampu dalan suatu ruangan.
Alat ini dirancang menggunakan mikrokontroler ATMega328 dan menggunakan pemograman arduino. Alat ini menggunakan lampu. Akan tetapi lampu tidak bisa langsung dihubungkan ke mikrokontroler karena lampu menyala di 220 volt AC, sedangkan tegangan Output dari Mikrontroler 5 volt DC. Karena itu untuk menjembatani antara lampu dengan mikrokontroler agar lampu dapat dikendalikan digunakalah relay. Alat ini di remote menggunakan android. Dengan demikian kita akan lebih mudah menyalakan dan mematikan lampu dalam sebuah ruangan.
1.2 Tujuan Penelitian
Adapun tujuan dari dibuatnya alat ini adalah :
1. Membuat suatu alat yang dapat digunakan untuk memudahkan manusia dalam menyalakan atau mematikan lampu.
2. Melakukan pengujian dan analisa rangkaian yang dirancang.
1.3 Perumusan Masalah
Adapun permasalahan dalam penelitian ini adalah bagaimana merancang sebuah alat yang digunakan untuk mengendalikan saklar lampu dalam sebuah ruangan dengan media komunikasi Android.
1.4 Batasan Masalah
Mengingat pembahasan dalam perancangan alat yang dibuat ini dapat meluas, maka tulisan ini mempunyai batasan masalah sebagai berikut :
1. Alat ini hanya bersifat mengendalikan nyala atau matinya lampu dan diremote dari Android.
2. Alat ini menggunakan mikrokontroler ATMega328 yang didalamnya sudah terintegrasi ADC.
3. Alat ini menggunakan modul Bluetooth HC-06 sebagai komunikasi antara mikrokontroler dan android.
4. Alat ini hanya dapat digunakan untuk pengendalian nyala matinya nya sebuah lampu.
5. Bahasa pemograman yang digunakan pada alat ini adalah Arduino.
1.5 Manfaat Penelitian
Alat ini dapat digunakan untuk mengendalikan nyala matinya lampu dengan media komunikasi android.
1.6 Sistematika Penulisan
Untuk mempermudah pembahasan dan pemahaman, maka penulis membuat proyek ini sebagai berikut :
BAB 1 PENDAHUILUAN
Meliputi latar belakang masalah, rumusan masalah, tujuan penulisan, batasan masalah, manfaat penulisan dan sistemtika penulisan.
BAB 2 LANDASAN TEORI
Dalam bab ini akan dijelaskan tentang teori pendukung yang digunakan untuk pembahasan rencana kerja dari rangkaian, yang meliputi arsitektur dan konstruksi dari mikrokontroler yang digunakan.
BAB 3 PERANCANGAN ALAT DAN PROGRAM
Meliputi tetang perancangan rangkain dan program yang digunakan BAB 4 PENGUJIAN DAN ANALISA
Meliputi pengujian alat dan analisanya BAB 5 KESIMPULAN DAN SARAN
Mengenai kesimpulan yang didapat setelah membuat proyek ini dan saran yang diberikan demi pengembangan proyek ini dimasa yang mendatang.
BAB 2
LANDASAN TEORI
2.1 Arduino
Arduino adalah prototipe elektronika untuk chip mikrokontroler yang bersifat open source. Arduino berasal dari bahasa Italy yang berarti SATU. Arduino merupakan board yang menggunakan chip mikrokontroler Atmega 328 sebagai pusat kendalinya.
Arduino mempunyai 14 pin digital input/output,juga dilengkapi dengan menggunakan kristal 16MHz, konektor USB, jack untuk power supply, header untuk ICSP, dan tombol reset. Arduino dapat diberi sumber tegangan dengan menggunakan USB dari komputer maupun menggunakan power supply tambahan melalui jack power. Jika daya listrik yang dibutuhkan lebih dari 500mA, sebaiknya menggunakan power supply eksternal bukan terminal USB. Pada Arduino dilengkapi dengan fasilitas pemilihan sumber listrik secara otomatis.
2.1.1 Arsitektur Arduino
Arsitektur modul hardware Arduino diciptakan oleh Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, David A. Mellis, dan Nicholas Zambetti di Ivrea, Italia pada tahun 2005[Arduino,2011 dan Banzi, 2008]. Bahasa Arduino merupakan fork (turunan) bahasa Wiring Platform dan bahasa Processing. Wiring Platform diciptakan oleh Hernando Barragan ditahun 2003 dan Processing dibuat oleh Casey Reas dan Benjamin Fry pada tahun 2001 [processing.0rg 2012]. Arduino memakai standar lisensi open source, mencakup hardwere (skema rangkaian, desain PCB atau printed Circuit Board),firmware bootloader, dokumen, serta perangkat lunak IDE (Integrated Develompment Environment) sebagai aplikasi programer board Arduino. Argar mikrokontroler bisa berkomunikasi dengan Arduino, pada mikrokontroler harus sudah terprogram boot loader pada blok memori Flash. Semua produk Arduino secara default sudah terinstal boot loader dan dapat diprogram berulang kali [Arduino,2011]. Modul Arduino yang sudah dirilis sejak tahun 2009 diantaranya Diecimila, Uno, Duemilanove, Nano, Mega, LilyPad. Setiap seri modul menggunakan seri mikrokontroler yang berbeda
2.1.2 Fitur Arduino
Arduino mempunyai fitur sebagai berikut :
• Pinout : menambahkan SDA dan SCL pin yang dekat ke pin aref dan dua pin baru lainnya ditempatkan dekat ke pin RESET, dengan I/O REF yang memungkinkan sebagai buffer untuk beradaptasi dengan tegangan yang disediakan dari board sistem.
Pengembangannya, sistem akan lebih kompatibel dan prosesor yang menggunakan AVR yang beroperasi 5 V dan dengan dengan Arduino karena beroperasi dengan 3,3V. Yang kedua adalah pin yang tidak terhubung yang disediakan untuk tujuan pengembangannya.
• Sirkuit Reset
• Atmega 16U2 ganti RU yang digunakan sebagai konverter USB-to-serial.
Mikrokontroler ATMega 328
Operating Voltage 5V
Input Voltage (recommended) 7-12V
Input Voltage (limit) 6-20V
Digital I/O Pins 14(of which 6 provide PWM output)
Analog input Pins 6
DC Current per I/O Pin 40mA
DC Current for 3,3V Pin 50mA
Flash Memory 32KB
SRAM 2KB
EEPROM 1KB
Clock-Speed 16 MHz
Tabel 2.1. Deskripsi Arduino
2.1.3 Pin Input Output Arduino
Pin-pin Input Output (I/O) pada berbagai tipe board Arduino dapat dikelompokan menurut fungsinya, yaitu : pin Serial (RX dan TX) yang sudah dijelaskan sebelumnya, pin Digital, pin PWM (Pulse Width Modulation) untuk keluaran sinyal analog, pin Analog untuk masukan tegangan analog, dan pin AREF (Analog referance, yaitu sebagai sumber masukan tegangan referensi eksternal) untuk penerapan fungsi ADC.
Pin RESET tidak selalu ada disemua modul, fungsinya hanya untuk mereset board (sama dengan tombol RESET) agar sketch bisa terunggah. Pada Arduino Uno memiliki konfigurasi 14 pin I/O (Input/Output) digital yang sebagian 6 pin juga berfungsi sebagai PWM, 6 pin input analog 1 pin RX-TX, dan 1 pin AREF (Analogue Reference atau tegangan referensi) dan Modul Bluetooth Bluegiga WT11 telah terintegrasi dengan Arduino BT-V06. Setiap pin I/O digital dapat berfungsi sebagai masukan (input) atau keluaran (output) logika digital dengan konfigurasinya diatur melalui kode program.
Pin-pin tersebut bisa diakses dengan cukup mendefenisikan nomor pin target, tidak seperti bahasa assembler, karena bahasa Arduino berbasis bahasa Processing.
2.1.3.1 Pin Digital
Proses pegiriman atau penerimaan data memanfaatkan pin digital terlebih dahulu harus definisikan sebagai fungsi pinMode{} didalam fungsi setup {} disertai nomor. Port dan tipe portINPUT atau OUTPUT. Disaat sebagai masukan (INPUT), gunakan fungsi digitalRead untuk dapat memperoleh nilai pengembalian HIGH atau LOW (identik dengan integer 1 atau 0). Proses pengiriman data atau sebagai keluaran dapat memakai fungsi digitalWrite disertai nomor pin, disertai state (kondisi) pin HIGH atau LOW.
2.1.3.2 Pin Pulse Width Modulation (PWM)
Pada Arduino Uno terdapat 6 saluran pin I/O arduino yang berfungsi sebagai PWM, yaitu pada pin digital 3,5,6,9,10 dan 11. Pin digital bisa diaktivasi sebagai PWM tidak harus memakai fungsi pinmode{}. Sinyal PWM bisa dibangkitkan memakai fungsi analogwrite disertai parameter nomor pin dan duty cycle yang bernilai 0-225. Besar tegangan efektif dari sinyal PWM dapat dihitung melalui persaamaan :
R1 =𝛥𝑉
𝐼 =𝑉𝑖𝑛𝑝𝑢𝑡 − 𝑉𝑜𝑢𝑡𝑝𝑢𝑡 𝐼
Saat duty Cycle=1, akan diperoleh 1/255 x 5V = 0.0223 V , dimana tegangan maksimal efektif keluaran pin digital arduino adalah 5V.
Gelombang arus PWM identik dengan gigi gergaji (sawtooth).Untuk sinyal keluaran dengan duty cycle rendah, sebaiknya dihubungkan kerangkaian berimpedansi rendah.
Saat duty cycle tinggi, dapat dihubungkan kerangkaian berimpedansi tinggi [Kuphalt, 2009]. Keluaran sinyal PWM digunakan untuk pengaturan kecepatan motor DC, peredup (dimmer) lampu LED atau filamen, atau sebagai pembangkit sinyal audio bernada tunggal (monofonik).
2.1.3.3 Pin Analog Input
Pin Analog Input dapat dipakai untuk mengukur tegangan memanfaatkan blok ADC didalam mikrokontroler ATMega. Board Arduino umumnya memiliki 6 saluran ADC, sedangkan pada board Mega terdapat 16 masukan analog. Fungsi analogRead() membaca tegangan analog satu saluran dan memerlukan waktu 100µS, dan pengukuran beberapa saluran tidak bisa dilakukan serentak melainkan harus bergantian. Pemakaian fungsi analaogRead disertai parameter nomor saluran yang akan diukur. Saat saluran yang di-request tidak tersedia ( misalnya A17), mikrokontroler akan selalu memberikan nilai pengembalian = 0. Pin analog (A0-A5) bisa juga sebagai output digital dengan pemanggil pinmode (AX,output). Meskipun demikian, langkah ini diharuskan, karena defaultnya mode input selalu diaktifkan. Luaran Interger dari fungsi analogRead (analogPin) berkisar 0-1023 karena ADC beresolusi 10 bit. Tegangan analog bisa diukur ketepatannya dengan memakai sketch dan berikan masukan tegangan DC 1V-5V atau lebih baik lagi baterai 1,5V serta potensiometer ber-resistans bebas 1KΩ-150KΩ.
2.1.3.4 Pin Tegangan Referensi
Pengukuran tegangan menggunakan ADC selalu memerlukan tegangan referensi. Kita dapat mengubah tegangan menggunakan opsi referensi internal atau eksternal melalui fungsi analogreference (). Tegangan referensi eksternal Arduino bisa diberikan melalui
pin tegangan referensi (AREF), berikut parameter yang didukung fungsi analogreference () :
• Default : sebagai parameter default yang selalu aktif, dipakai tegangan referensi internal 5 V
• Internal: parameter ini mengaktivasi mode tegangan referensi internal 1,1V
• Eksternal : untuk aktivasi tengan referensi eksternal, tegangan dihubungkan ke pin AREF dengan jangkauan 0V hingga 5V.
Pada mode tegangan referensi eksternal, fungsi analogreference (eksternal) harus selalu didefenisikan dibaris sebelum pengukuran tegangan analog utnuk mengkondisikan pin AREF tdak terkoneksi ke GND.
2.1.4 Bahasa pemograman Arduino
Standar Sintaksis dalam penulisan bahasa Arduino diantaranya :
• Simbol titik-koma (semicolom) “,” sebagai pemisah abris program. Jika program ditulis pada satu baris yang sama, Arduino akan menggangap sebagai baris yang berbeda. Misalnya : rerata=total/10:serial.println(“reratac [0]=”+rerata);
• Tanda kurung (bracket) yang diawali dengan “(“ dan diakhiri “)” sebagai bagian kondisi dari pernyataan contoh : if(hitung<10).
• Tanda kurung {curly braces}diawali “{“ diakhiri “}” sebagai pernyataan bagian dari tubuh fungsi yang diawali fungi kendali seperti if,elseif,else,for, swicth..case,while, break, continue, atau return.
2.1.4.1 Deklarasi Variabel
Posisi deklarasi terbagi 2 jenis yaitu : variabel lokal dan variabel global. Variabel global dideklarasikan diawal kode program yaitu hitung, total, dan Array (atau larik) data Array sebagai berikut:
Int dataarray[10];
Int hitung=0;
Int total=0;
Variabel lokal yaitu variabel rerata, dan sensorReading, variabel jenis ini hanya akan diciptakan pada memori saat eksekusi fungsi loop() sesaat sebelum membaca tegangan analog oleh ADC.
2.1.4.2 Tipe data
Tipe data Isi data Ukuran Jangkauan data
Boolen True, false 1 Bit -
Char Bilangan bulat
bertanda(0,...9) 1 byte -128 s/d 127
Unsigned Char Bilangan bulat (0,...9) 1 Byte 0 s/d 255
Byte* Bilangan bulat (0,...9) 1 Byte 0 s/d 255
Int +/ - bilangan bulat (0,...9) 2 Byte -32768 s/d 32767
Unsigned int Bilangan bulat tak bertanda
(0,...9) 2 Byte 0 s/d 65.535
Word Bilangan bulat tak bertanda
(0,...9) 2 Byte 0 s/d 65.535
Long +/- Bilangan bulat (0,...9) 4 Byte -2.147.483.648 s/d 2.147.483.647
Unsigned long Bilangan bulat tak bertanda
(0,...9) 4 Byte 0 s/d 4.294.967.295
Float Bilangan pecahan 4 Byte 3.4028235E+38 s/d -
3.4028235E+38
Double** Bilangan pecahan 4 Byte 3.4028235E+38 s/d -
3.4028255E+38
Sting 0,1,..9,A,..,Z n-byte Tergantung dari jumlah
karakter
Array Sekumpulan variabel terdiri
atas n-elemen bertype sama n-byte Tergantung tipe data dan jumlah data Array
Tabel 2.2 Tipe data yang didukung bahasa Arduino
Bahasa arduino juga mendukung fungsi operasi logika untuk berbagai tipe variabel , serta operasi Bitwise dan Aritmatika untuk bilangan biner bersatuan byte, char, atau integer.
Operator Fungsi Operator
+, -, /, *, = Tambah, kurang, bagi, kali, penugasan (assigment)
+=, -=,/=,*= Nilai akhir hasil dari pertambahan, pengurang, pembagian, atau perkalian dengan angka sisi kanan
++,-- Nilai ditambah 1, nilai dikurangi 1
% Modulus, operasi pembagian
Tabel 2.3Ooperator Aritmatik
2.2 App Inventor
App Inventor memungkinkan pengguna baru untuk memprogram komputer untuk menciptakan aplikasi perangkat lunak bagi sistem operasi Android. App Invento Antar Muka grafis,serupa dengan antarmuka pengguna pada Scratch dan StarLogo TNG, yang memungkinkan pengguna untuk men-drag-and-drop objek visual untuk menciptakan aplikasi yang bisa dijalankan pada perangkat Android. Dalam menciptakan App Inventor, Google telah melakukan riset yang berhubungan dengan komputasi edukasional dan menyelesaikan lingkungan pengembangan online Google.
Pada lingkungan kerja App Inventor ini terdapat beberapa komponen yang terdiri dari : 1. Komponen Desainer, Komponen desainer berjalan pada browser yang digunakan untuk memilih komponen yang dibutuhkan dan mengatur property nya. Pada komponen desainer sendiri terdapat 5 bagian, yaitu palette, viewer, component, media dan properties, seperti terlihat pada gambar di atas.
• Palette : list komponen yang bisa digunakan
• Viewer : untuk menempatkan komponen dan mengaturnya sesuai tampil yang diinginkan
• Component : tempat list komponen yang dipakai pada project kita
• Media : mengambil media audi atau gambar untuk project kita
• Properties : mengatur properties komponen yang digunakan, seperti width, height, name, dll
2 . Block Editor, Block Editor berjalan di luar browser dan digunakan untuk membuat dan mengatur behaviour dari komponen-komponen yang kita pilih dari komponen desainer
3. Emulator, Emulator digunakan untuk menjalankan dan mengetest project yang telah kita buat. Jadi yang blom punya android pun tetep bisa belajar karna app inventor menyediakan emulatornya juga.
2.3. Mikrokontroler ATMega328
Mikrokontroler adalah sebuah sistem mikroprosesor di mana di dalamnya sudah terdapat CPU, ROM, RAM, I/O, clock dan peralatan internal lainnya yang sudah terhubung dan terorganisasi dengan baik oleh pabrik pembuatnya dan dikemas dalam satu chip yang siap pakai. Sehingga, dengan demikian kita tinggal memprogram isi ROM sesuai dengan aturan oleh pabrik pembuatnya. Salah satu contoh mikrokontroler yang banyak beedar di pasaran adalah mikrokontroler ATMega328.
2.2.1 Arsitektur ATMega328
Seluruh mikrokontroler yang diimplementasikan pada produk Arduino mengguakan ATMEGA keluarga AVR. Salah satunya aeri ATMEGA 328 dengan sejumlah fitur diantaranya On-Chip System Debug , 5 ragam tidur, 6 saluran ADC yang mendukung reduksi derau, ragam hemat daya , dan ragam siaga. Mikrokontroler ATMega 328 paling umumnya digunakan pada board Arduino seperti UNO, Duemilanove, Nano, dll.
Sedangkan ATMega 1280 dipakai pada tipe Arduino Mega, baik ATMega 328 maupun 1280, keduanya menggunakan kristal 16 Mhz sebagai pembangkit clock. Keduanya juga memiliki blok memori Flash untuk penympanan instruksi program, SRAM untuk penyimpanan variabel data sementara, dan EEPROM sebagai media penyimpanan data yang tetap tersimpan meskipun mikrokontroler dalam kondisi tidak dicatu. Fitur mikrokontroler AVR seri lainya, seperti ATMega 168 atau 1560 tidak jauh berbeda dengan 328 atau 1280, kecuali pada ukuran kapasitas blok memori EEPROM, Flash dan
SRAM. ATMega 328 memiliki 3 jenis memori yaitu memori program, memori datang, dan memori EEPROM.
• Memori Program.
Memori program ATMega 328 memiliki kapasitas memori program sebesar 8 Kbyte yang terpetakan dari alamat 0x0000 – 0x3FFF dimana masing-masing alamat memiliki lebar data 32 bit. Memori program ini terbagi menjadi 2 bagian yaitu bagian program boot dan bagian program aplikasi.
Gambar 2.1 Peta data memory
• Memory Data
Memory data ATMega 328 terbagi menjadi 3 bagian. Yaitu register serba guna, register I/O dan SRAM. ATMega 328 memiliki 32 register serbaguna, 64 register I/O yang dapat diakses sebagai bagian dari memory RAM (menggunakan instruksi LD atau ST) atau dapat juga dikases sebagai I/O (menggunakan instruksi IN atau OUT), dan 2048 byte memor data SRAM.
Gambar 2.2 Peta data memory
• Memory EEPROM
Memory EEPROM ATMega 328 memiliki memory EEPROM sebesar 1 K Byte yang terpisah dari memori program maupun memori data. Memori EEPROM ini hanya dapat diakses dengan menggunakan regisster-register I/O yaitu register EEPROM Address, register EEPROM datang, dan register EEPROM kontrol. Untuk mengakses memori EEPROM ini diperlakukan seperti mengakses data eksternal, sehingga waktu eksekusinya relatif lebih lama bila dibandingkan dengan mengakses data dari SRAM.
2.2.2 Fitur ATMega 328
• 130 macam instruksi yang hampir semuanya dieksekusi dalam satu siklus clock.
• 32x8 register serbaguna
• Kecepatan mencapai 16 MIPS dengan clock 16 Mhz
• 32 Kb flash memory dan pada arduino memiliki bootloader yang menggunakan 2 KB dari flash memori sebagi bootleader.
• Memilik EEPROM sebesar 1 KB sebagai tempat penyimpanan data semipermanen
• karena EEPROM tetap dapat menyimpan data meskipun atudaya dimatikan.
• Memiliki SRAM sebesar 2 KB
• Memiliki pin I/O digital sebagai 14 pin, 6 diantaranya PWM Output.
• Master/ Slave SPI serial Interface
2.2.3 Konfigurasi Pin ATMega 328
Gambar 2.3 Konfigurasi Pin ATMega 328
• Port B
Port B merupakan jalur data 8 bit yang dapat difungsikan sebagai input / output selain itu port b juga dapat memiliki fungsi alternatif seperti dibawah ini :
a. ICP1 ( Pb 0 , berfungsi sebagai timer counter 1 input capture pin.
b. OC1A (PB1) , OC1B(PB2), dan OC2 (PB3) dapat difungsikan sebagai keluaran PWM
c. MOSI (PB3), MISO (PB4), SCK(PB5), SS (PB2) merupakan jalur komunikasi SPI.
d. Selain itu pin ini juga berfungsi sebagai jalur pemograman serial (ISP)
e. TOSC1 (PB6) dan TOSC2 (PB7) dapat difungsikan sebagai sumber clock eksternal untuk timer.
f. XTAL 1 (PB6) dan XTAL 2 (PB7) merupakan sumber clock utama mikrokontroler.
• PORT C
Port C merupakan jalur data 7 bit yang dapat difungsikan sebagai input output digital.
Fungsi alternatif port C adalah sebagai berikut :
a. ADC6 Chanel (PC0, PC1, PC2,PC3, PC4 , PC5 ) dengan reselusi sebesar 10 bit.
ADC dapat kita gunakan untuk mengubah input yang berupa tegangan analog menjadi data digital.
b. I2C (SDA, dan SDL) merupakan salah satu fitur yang terdapat pada port c. I2C digunakan untuk komunikasi dengan sensor atau Device lain yang memiliki komunikasi data I2C seperti sensor Kompas.
• PORT D
Port D merupakan jalur data 4 bit yang msing-masing pin nya juga dapat difungsikan sebaga input/ Output. Sama seperti port B dan port C port D memiliki fungsi alternatif dibawah ini.
a. USART ( TXD dan RXD) merupakan jalur data komunikasi serial dengan level signal TTL. PIN TXD berfungsi umtuk mengirimkan data serial, sedangkan RXD kebaliakan nya yaitu sebagai pin yang berfungsi untuk menerima data serial.
b. INTERRUPT (INT0 dan INT1) merupakan pin dengan fungsi khusus sebagai interupsi hardwere. Interupsi biasanya digunakan sebagai selaan dari program, misalnya pada saat program berjalan kemudian terjadi interupsi hardwere/ softwere maka program utama akan berhenti dan akan menjalankan program interupsi.
c. XCK dapat difungsikan sebagai sumber clock eksternal untuk USART.
d. TO dan T1 berfungsi sebagai masukan counter eksternal untuk timer 1 dan timer 0 e. A1N0 dan A1N1 keduanya merupakan masukan input analog comparator.
2.3 Bluetooth HC-06
Bluetooth modul HC-06 merupakan modul komunikasi nirkabel pada frekuensi 2,4 Ghz dengan default koneksi hanya sebagai SLAVE. Sangat mudah digunakan dengan mikrokontroler untuk membuat aplikasi wireless. Interface yang digunakan serial RXD, TXD, VCC,dan GND. Tegangan input antara 3.6-6 volt, jangan menghubungan dengan sumber daya lebih dari 7V. Arus saat unpaired sekitar 30 mA. 4 pin inteface 3.3 volt dapat langsung dihubungkan ke berbagai macam mikrokontroler. Jarak efektif jangkauan sebesar 10 m, meski dapat mencapai lebih 10 meter, namun kualitas koneksi semakin berkurang.
Spesifikasi Bluetooth :
• Bluetooth protocal : Bluetotth Specification v20+EDR
• Frequency: 2,4GHz ISM band
• Modulation: GFS (Gaussian Frequency Shift Keying)
• Emission Power ?4dBm, Class 2
• Sensitivity: ?-84dBm at 0,1% BER
• Speed Asynchrounus: 2,1Mbps(Maz)/160 kbps,Synchrous:1Mbps/1Mbps
• Security: Authentication and encryption
• Profis: Bluetooth serial port
• Power Supply: +3,3VDC 50mA
• Working temperature: -20 - +75 Centifrade
• Dimension : 3,57cm x 1,52 cm.
Gambar 2.4 Modul bluetooth HC-06
BAB 3
RANCANGAN SISTEM 3.1. Diagram Blok
Adapun diagram blok dari rancangan alat yang dibuat adalah sebagai berikut:
Gambar 3.1. Diagram Blok Alat MIKROKONTROLER
LCD
BLUETOOTH
ANDROID
RELAY 1
RELAY 2
RELAY 3
LAMPU 1
LAMPU 2
LAMPU 3
Alat ini tediri dari: Mikrokontroler, Handphone, Bluetooth, Lampu dan Lcd.
Mikrokontroler adalah otak dari alat ini, mikrokontroler yang mengatur cara kerja alat tersebut. Mikrokontroler akan berkomunikasi dengan android melalui modul bluetooth.
Mikrokontroler akan mengatur nyalanya lampu berdasarkan kode yang akan diterimanya dari bluetooth. Akan tetapi lampu tidak bisa langsung dihubungkan ke mikrokontroler karena lampu menyala di 220 volt AC, sedangkan tegangan output dari mikrokontroler 5 Volt DC. Karena itu untuk menjembatani antara lampu dengan arduino agar lampu dapat dikendalikan digunakanlah relay. Lcd digunakan untuk menampilkan data yang dikirim dari mikrokontroler. LCD yang digunakan adalah LCD karakter 2x16.
3.2 Rancangan Perangkat Keras 3.2.1 Rangkain Catu Daya
Gambar 3.2 Rangkaian Catu Daya
Sumber tegangan pada rangkaian ini adalah dari tegangan PLN, sehingga digunakan sebuah transformator untuk menurunkan tegangan dari 220V menjadi 9V. Setelah tegangan diturunkan, tegangan tersebut kemudian disearahkan oleh sebuah dioda.
Kapasitor berfungsi sebagai filter sehingga tegangan DC yang dihasilkan dioda mempunyai ripple tegangan yang kecil. Tegangan tersbut kemudian di regulasi oleh regulator LM7805 sehingga tegangan output dari rangkaian ini akan stabil pada 5V.
Tegangan inilah yang digunakan untuk mensupply rangkaian pada alat yang dirancang.
3.2.2 Rangkaian Mikrokontroler ATMega328
Gambar 3.3 Rangkaian Mikrokontroler Atmega328
Rangkaian ini merupakan rangkaian minimum ATMega328 dengan kristal 16MHz.
Dengan rangkaian ini mikrokontroler akan bekerja pada frekuensi kerja 16MHz.
Rangkaian minimum ini adalah rangkaian dengan konfigurasi minimum yang digunakan agar mikrokontroler dapat beroperasi. Pin Reset pada mikrokontroler terhubung ke 5V melalui sebuah resistor 10K. Pin AVCC, VCC dan ARef pada mikrokontroler langsung terhubung pada 5V.
3.2.3 Rangkaian LCD Karakter 16x2
Berikut ini merupakan rangkaian yang digunakan untuk mengoperasikan LCD karakter 16x2.
Gambar 3.4 Rangkaian LCD karakter 16 x 2
Pada rangkaian ini digunakan trimpot yang dihubungkan pada pin 3 dari LCD. Hal ini bertujuan agar kontras pada karakter yang ditampilkan pada LCD dapat diatur tingkat kecerahannya. Pin 5 pada LCD dihubungkan langsung pada GND shingga logika pada pin ini selalu low. Hal ini akan menyebabkan LCD akan selalu pada mode Write, dimana LCD sifatnya akan selalu untuk menampilkan data dari mikrokontroler saja.
3.2.4 Rangkaian Relay
Gambar 3.5 Rangkaian Relay
Rangkaian ini digunakan untu menyalakan kipas dan pemanas. Rangkaian ini menggunakan transistor yang difungsikan sebagai sakelar elektronik. Ketika basis transistor diberi tegangan 5V (logika 1) maka transistor ini akan aktif. Jika transistor aktif, ini berarti kumparan pada relay akan dialiri oleh arus listrik sehingga menjadi magnet dan menarik kontak relay sehingga relay terhubung dan akan menyalakan kipas ataupun pemanas. Dioda digunakan sebagai pengaman rangkaian dari arus balik yang timbul ketika kumparan pada relay mengalami transisi antara kontak dan tidak.
3.3 Rancangan Perangkat Lunak
3.3.1 Rancangan Lunak Pada Mikrokontroler
Pada awal dinyalakan, program pada mikrokontroler akan menginisialisasi bluetooth, LCD, dan Relay yang akan digunakan.
Kemudian, mikrokontroler akan memeriksa data yang disajikan di bluetooth apakah data merupakan ‘c’. Jika data yang tersedia di bluetooth adalah ‘c’ maka mikrokontroler akan menjalankan perintah untuk menyalakan lampu 1. Lalu mikrokontroler akan mengirim kode ke bluetooth yang akan menyatakan bahwa lampu 1 menyala.
Jika data ‘c’ tidak ada, maka mikrokontroler akan memeriksa kembali data yang tersedia di bluetooth. Jika data yang tersedia di bluetooth adalah ‘d’ maka mikrokontroler akan menjalankan perintah untuk menyalakan lampu 2. Lalu mikrokontroler akan mengirim kode ke bluetooth yang akan menyatakan bahwa lampu 2 menyala.
Jika data ‘d’ tidak ada, maka mikrokontroler akan memeriksa kembali data yang tersedia di bluetooth. Jika data yang tersedia di bluetooth adalah ‘e’ maka mikrokontroler akan menjalankan perintah untuk menyalakan lampu 2. Lalu mikrokontroler akan mengirim kode ke bluetooth yang akan menyatakan bahwa lampu 2 menyala.
Gambar 3.6 Flowchart Program pada Mikrokontroler
Mu
lai
Inisialisasi : - Bluetooth - Lcd - Relay
Cek data di bluetooth
Data =c ?
Data=d ?
Data =e
? Tidak
Tidak
Ya
Ya
Ya
Nyalakan lampu 1
Nyalakan lampu 2
Nyalakan lampu 3 Kirim konfirmasi lampu 3 menyala Kirim konfirmasi lampu 2 menyala Kirim konfirmasi lampu 1 menyala
Tidak
#include"DHT.h"
#include <SoftwareSerial.h>
#include <LiquidCrystal.h>
#define DHTPIN 2
#define DHTTYPE DHT22
#define L1 5
#define L2 6
#define L3 7
SoftwareSerial BT(4,3);
LiquidCrystal lcd (19, 18, 17, 16, 15, 14);
DHT dht (DHTPIN, DHTTYPE);
char kode;
void setup () { dht.begin();
pinMode(L1, OUTPUT);
pinMode(L2, OUTPUT);
pinMode(L3, OUTPUT);
BT.begin(9600);
lcd.begin(16, 2);
lcd.setCursor(0,0);
lcd.print(" PROYEK TA ");
lcd.setCursor(0,1);
lcd.print(" WENNY & NOFA ");
delay(5000);
lcd.setCursor(0,0);
lcd.print("T : 'C ");
lcd.setCursor(0,1);
lcd.print("RH: % ");
}
void loop(){
float t = dht.readTemperature();
float h = dht.readHumidity();
lcd.setCursor(4,0);
lcd.print(t);
lcd.setCursor(4,1);
lcd.print(h);
if (BT.available()) {
kode=(BT.read());
if(kode=='a') {
BT.print("Suhu= ");
BT.print(t);
BT.println(" *C ");
}
if(kode=='b') {
BT.print("Kelembaban= ");
BT.print(h);
BT.println(" %\t");
}
if(kode=='c') {
digitalWrite(L1, !digitalRead(L1));
if(digitalRead(L1) == HIGH){
BT.println("Lampu 1 On");
} else
{BT.println("Lampu 1 Off");}
}
if (kode=='d') {
digitalWrite(L2, !digitalRead(L2));
if(digitalRead(L2) == HIGH) {
BT.println("Lampu 2 On");
} else
{BT.println("Lampu 2 Off");}
}
if(kode=='e') {
digitalWrite(L3, !digitalRead(L3));
if(digitalRead(L3) == HIGH) { BT.println("Lampu 3 On");
} else
{BT.println("lampu 3 Off");}
} }
delay(50);
}
3.3.2 Rancangan Lunak Pada Android
Pada awal dinyalakan, program pada android akan menginisialisasi bluetooth yang akan digunakan. Jika tombol lampu 1 diklik pada android akan mengirim kode ‘c’ melalui Bluetooth ke mikrokontroler. Selanjutnya android akan menunggu data konfirmasi dari arduino. Data konfirmasi tersebut menunjukkan apakah lampu 1 sudah menyala atau belum.
Jika data tersebut belum diterima oleh android, maka android akan mengirim kode ‘c’
kembali. Ketika data tadi sudah diterima maka pada android akan ditampilkan “Lampu 1 Sudah Menyala”.
Jika tombol lampu 1 tidak diklik maka android akan memeriksa tombol lampu 2. Jika tombol lampu 2 diklik pada android maka android akan mengirim kode ‘d’ melalui Bluetooth ke arduino. Selanjutnya android akan menunggu data konfirmasi dari arduino. Data konfirmasi tersebut menunjukkan apakah lampu 2 sudah menyala atau belum. Jika data tersebut belum diterima oleh android, maka android akan mengirim kode ‘d’ kembali. Ketika data tadi sudah diterima maka pada android akan ditampilkan “Lampu 2 Sudah Menyala
Jika tombol lampu 2 tidak diklik maka android akan memeriksa tombol lampu 3. Jika tombol lampu 3 diklik pada android maka android akan mengirim kode ‘e’ melalui Bluetooth ke arduino. Selanjutnya android akan menunggu data konfirmasi dari arduino. Data konfirmasi tersebut menunjukkan apakah lampu 3 sudah menyala atau belum. Jika data tersebut belum diterima oleh android, maka android akan mengirim kode ‘e’ kembali. Ketika data tadi sudah diterima maka pada android akan ditampilkan “Lampu 3 Sudah Menyala”. Lalu program akan kembali diulang untuk melakukan pengukuran suhu dan kelembaban.
Ya
Tidak
Ya
Tidak
Ya
Tidak
Gambar 3.7 Flowchart Program pada Android Mulai
Inisialisasi Bluetooth
Tombol lampu 1 diketik
Tombol lampu 2 diketik
Tombol lampu 3 diketik
Kirim kode ‘c’
Melalui Bluetooth
Kirim kode ‘d’
Melalui Bluetooth
Kirim kode ‘e’
Melalui Bluetooth
Konfirmasi lampu 1 menyala diterima?
Konfirmasi lampu 2 menyala diterima?
Konfirmasi lampu 3 menyala diterima?
Tampilkan Lampu 1 menyala
Tampilkan Lampu 2
menyala
Tampilkan Lampu 3
menyala Tidak
Tidak Tidak
Gambar 3.8 Rancangan pada pilihan Bluetooth
Gambar 3.10 Rancangan pada botton Lampu 1
Gambar 3.11 Rancangan pada botton Lampu 2
Gambar 3.12 Rancangan pada botton Lampu 3
Gambar 3.14 Rancangan pada Blutoothclient1
Gambar 3.14 Rancangan pada clock2
BAB 4
PENGUJIAN DAN PEMBAHASAN SISTEM 4.1 Pengujian Rangkaian Catu Daya
Gambar 4.1 Pengujian Rangkaian Catu daya
Pada rangkaian ini, sumber tegangan yang digunakan adalah tegangan AC dari PLN.
Untuk menguji rangkaian ini, dilakukan pengukuran pada titik-titik yang ditunjukkan pada rangkaian. Berikut merupakan hasil pengukuran tegangan yang dilakukan
Test Point Tegangan TP1 215 V AC TP2 10 V AC TP3 9,5V DC TP4 4,7 V DC
Tabel 4.1 Pengujian Catu Daya
4.2 Pengujian Rangkaian Mikrokontroler Atmega328
Gambar 4.2 Pengujian Rangkaian Mikrokontroler ATMega328
Untuk memastikan rangkaian mikrokontroler dalam keadaan baik, maka dilakukan pengujian rangkaian. Pengujian dilakukan dengan cara merangkai rangkaian seperti terlihat pada gambar dan kemudian menginputkan program pada mikrokontroler tersebut. Berikut merupakan program sederhana yang diinputkan untuk menguji rangkaian ini:
Dalam bahasa arduino:
void setup() {
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}
Ketika program tersebut berjalan, maka LED yang terhubung pada mikrokontroler akan tampak berkedip dengan jeda waktu tertentu. Jika sudah dalam keadaan demikian, maka dapat dikatakan rangkaian tersebut sudah beroperasi dengan baik.
4.3 Pengujian Rangkaian LCD
Gambar 4.3 Pengujian Rangkaian LCD
Rangkaian LCD diuji dengan cara menghubungkannya dengan mikrokontroler seperti pada gambar diatas. Kemudian pada mikrokontroler diinputkan program sebagai berikut:
Bahasa Arduino:
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() { lcd.begin(16, 2);
lcd.print("Test");
}
void loop() {}
Rangkaian LCD dikatakan dalam kondisi baik apabila setelah program tersebut diinputkan pada mikrokontroler dan dioperasikan, maka pada LCD akan tampil tulisan Test.
4.4 Pengujian Rangkaian Relay
Gambar 4.4 Pengujian Rangkaian Relay
Rangkaian ini diuji dengan memastikan tegangan pada TP1 berada pada 11,5V – 12V DC agar relay dapat bekerja dengan baik. Ketika tegangan pada TP1 sudah dipastikan pada rentang tegangan tersebut, kemudian rangkaian ini diuji dengan memberi logika 1 pada basis transistor sehingga relay akan bereaksi dan menyebabkan kontak-kontak pada relay akan terhubung. Setelah itu, dipastikan dengan menggunakan multimeter apakah kontak-kontak pada relay sudah terhubung. Jika sudah terhubung maka rangkaian ini dapat dikatakan dalam kondisi baik.
4.5 Pengujian Module bluetooth HC-06
Untuk mengetahui modul bluetooth dapat berfungsi, bisa terdeteksi oleh perangkat lain, bisa pairing atau terkoneksi dengan perangkat lain
4.5 Scaning Bluetooth
Pada gambar 4.5 dapat dilihat bahwa perangkat telah tersambung dengan Bluetooth HC- 06. Berdasarkan pengujian di atas dapat diketahui bahwa modul bluetooth HC-06 dapat dilihat oleh perangkat, dan bisa terkoneksi dengan perangkat, sehingga modul bluetooth HC-06 dapat dikatakan bisa berfungsi dengan baik.
4.6 Modul Blutooth tersambung
4.6 Pengujian Aplikasi di Android
Aplikasi di smarthone android di perlukan untuk mengontrol dan memonitoring alat yang telah dirancang. Untuk berkomunikasi dengan alat yang sudah dirancang , aplikasi ini akan di program menggunakan App Inventor . untuk mengetahui Aplikasi di Android dapat berfungsi, aplikasi akan mengirim kode ke Bluetooth untuk dapat dibaca mikrokontroler
4.7 Pengujian Kerja Sistem Secara Keseluruhan
Pengujian ini dilakukan dengan cara menghubungkan semua rangkain dan kemudian mengeksekusi program yang telah di buat pada PC. Pengambilan data dilakukan dalam 12 tahapan, yaitu :
1. Pengambilan data pada saat antara rangkaian mikrokontroler dengan android sejauh 1-2 m pada ruangan terbuka.
2. Pengambilan data pada saat antara rangkaian mikrokontroler dengan android sejauh 3-4 m pada ruangan terbuka.
3. Pengambilan data pada saat antara rangkaian mikrokontroler dengan android sejauh 5-6 m pada ruangan terbuka.
4. Pengambilan data pada saat antara rangkaian mikrokontroler dengan android sejauh 7-8 m pada ruangan terbuka.
5. Pengambilan data pada saat antara rangkaian mikrokontroler dengan android sejauh 9-10 m pada ruangan terbuka.
6. Pengambilan data pada saat antara rangkaian mikrokontroler dengan android sejauh
>10 m pada ruangan terbuka.
7. Pengambilan data pada saat antara rangkaian mikrokontroler dengan android sejauh 1-2 m pada ruangan tertutup.
8. Pengambilan data pada saat antara rangkaian mikrokontroler dengan android sejauh 3-4 m pada ruangan tertutup.
9. Pengambilan data pada saat antara rangkaian mikrokontroler dengan android sejauh 5-6 m pada ruangan tertutup.
10. Pengambilan data pada saat antara rangkaian mikrokontroler dengan android sejauh 7-8 m pada ruangan tertutup.
11. Pengambilan data pada saat antara rangkaian mikrokontroler dengan android sejauh 9-10 m pada ruangan tertutup.
12. Pengambilan data pada saat antara rangkaian mikrokontroler dengan android sejauh
>10 m pada ruangan tertutup.
NO
Jarak Uji antara android dan
alat (m)
Ruangan
Pengujian
Lampu 1 Lampu 2 Lampu 3
ON OFF ON OFF ON OFF
1 (1-2)
Terbuka Berhasil Berhasil Berhasil Berhasil Berhasil Berhasil 2 (3-4)
Terbuka Berhasil Berhasil Berhasil Berhasil Berhasil Berhasil 3 (5-6)
Terbuka Berhasil Berhasil Berhasil Berhasil Berhasil Berhasil 4 (7-8)
Terbuka Berhasil Berhasil Berhasil Berhasil Berhasil Berhasil 5 (9-10)
Terbuka Berhasil Berhasil Berhasil Berhasil Berhasil Berhasil 6 >10
Terbuka Tidak berhasil
7 (1-2) Tertutup
Berhasil Berhasil Berhasil Berhasil Berhasil Berhasil 8 (3-4) Tertutup
Berhasil Berhasil Berhasil Berhasil Berhasil Berhasil 9 (5-6) Tertutup
Berhasil Berhasil Berhasil Berhasil Berhasil Berhasil 10 (7-8) Tertutup
Berhasil Berhasil Berhasil Berhasil Berhasil Berhasil 11 (9-10) Tertutup
Berhasil Berhasil Berhasil Berhasil Berhasil Berhasil 12 >10 Tertutup
Tidak berhasil
Tabel 4.2 Pengujian kerja sistem secara keseluruhan
BAB 5
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Dari perancangan dan pembuatan alat pemanfaatan Bluetooth sebagai media komunikasi android dengan ATMega328 pada sistem pengendalian tegangan tinggi, maka kita dapat simpukan :
1. Alat yang digunakan untuk mengendalikan lampu (tegangan tinggi) dari via komunikai android akan bekerja secara optimal pada jarak < 10 m. Hal ini dikarenakan jarak efektif jangkauan bluetooth sebesar 10 m, meski dapat digunakan mencapai 10 meter, namun kualitas koneksi semakin berkurang.
2. Kinerja dari bluetooth pada sistem pengendalian tegangan tinggi yang menggunakan media komunikasi android sudah berfungsi dengan baik. Hal ini dapat dibuktikan dengan pengujian jarak yang divariasikan kejauhannya.
DAFTAR PUSTAKA
Istiyanto Eko Jazi, 2014. Pengantar Elektronika dan Instrumentasi. Yogyakarta:
Penerbit ANDI.
Usman. 2008. Teknik Antarmuka + Pemograman Mikrokontroler AT89S52.
Yogyakarta: Penerbit ANDI.
Setiawan Sulhan. 2006. Mudah dan Menyenangkan Belajar Mikrokontroler Yogyakarta: Penerbit ANDI.
Winoto Ardi.2008. Mikrokontroler AVR ATmega8/32/16/8535 dan pemograman dengan Basa C pada WinAVR.
Batam:Politeknik Batam.
Wardhana, Lingga. 2006. Belajar Sendiri Mikrokontroler AVR seri ATMega8535.
Bandung: Penerbit INFORMATIKA.
Handrizal Zarlis Muhammad. 2008. Algoritma dan Pemograman. Medan: USU Press
www.alldatasheet.com diakses bulan Mei 2017
http://iddhien.com/index.php?option=com_content&task=view&id=67&Itemid=106 diakses Mei 2017