RANCANG BANGUN PARASUT OTOMATIS DAN SISTEM PENGIRIMAN SMS PADA QUADCOPTER
SKRIPSI
RANCANG BANGUN PARASUT OTOMATIS DAN SISTEM PENGIRIMAN SMS PADA QUADCOPTER
Disusun sebagai salah satu syarat memperoleh gelar Sarjana Teknik Program S-1 Pada Jurusan Teknik Elektro, Fakultas Teknik,
Universitas Muhammadiyah Yogyakarta
Disusun oleh : USWATUN HASANAH
20120120009
JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH YOGYAKARTA 2016
(2)
i
SKRIPSI
RANCANG BANGUN PARASUT OTOMATIS DAN SISTEM PENGIRIMAN SMS PADA QUADCOPTER
Disusun sebagai salah satu syarat memperoleh gelar Sarjana Teknik Program S-1 Pada Jurusan Teknik Elektro, Fakultas Teknik,
Universitas Muhammadiyah Yogyakarta
Disusun oleh : USWATUN HASANAH
20120120009
JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH YOGYAKARTA 2016
(3)
ii
HALAMAN PERNYATAAN Yang bertanda tangan di bawah ini :
Nama : Uswatun Hasanah
NIM : 20120120009
Jurusan : Teknik Elektro Menyatakan bahwa :
Semua yang ditulis dalam naskah skripsi ini merupakan hasil karya tulis
saya sendiri dan bukan menjiplak hasil karya dari pihak manapun, kecuali dasar
teori yang secara tertulis diacu dalam naskah ini dan disebutkan dalam daftar
pustaka. Hasil skripsi yang Saya buat disusun sebagai salah satu syarat untuk
menyandang gelar Strata Satu (S1) di Perguruan Tinggi. Demikian surat
pernyataan ini Saya buat agar dapat digunakan sebagaimana mestinya.
Yogyakarta, 1 Agustus 2016 Menyatakan,
(4)
iii
MOTTO
“Allah akan meninggikan orang yang beriman diantaramu dan orang-orang yang diberi ilmu pengetahuan. (QS. Al-Mujadalah:11)
Sesungguhnya para malaikat itu merendahkan sayapnya kepada penuntut ilmu karena senangnya atas apa yang dilakukan para penuntut ilmu ”. (H.R Ibnu
Abdul Barr).
“...Bersyukurlah kepadaKu dan kepada kedua dua orang ibu bapakmu, hanya kepadaKu lah kembalimu(QS. Lukman:14)
“I think a girl can do anything! She just needs to believe in her self”(Elvira
(5)
iv
PERSEMBAHAN
Karya Tugas Akhir ini kupersembahkan untuk :
Ummi dan Abi,
(6)
v
KATA PENGANTAR
Assalamu’alaikum Wr.Wb.
Syukur alhamdulillah, segala puji bagi Allah SWT atas rahmat, taufik,
kesehatan, kecerdasan dan bermacam nikmat yang diberikan-Nya sehingga
penulis dapat menyelesaikan pembuatan skripsi yang berjudul “RANCANG BANGUN PARASUT OTOMATIS DAN SISTEM PENGIRIMAN SMS PADA QUADCOPTER”. Skripsi ini merupakan salah satu matakuliah wajib program studi Teknik Elektro jurusan Teknik Elektro Fakultas Teknik Universitas
Muhammadiyah Yogyakarta serta merupakan salah satu syarat kelulusan jenjang
pendidikan Strata Satu Teknik Elektro.
Dengan penuh rasa syukur dan kerendahan hati, pada kesempatan ini
penulis ingin menyampaikan ucapan terimakasih kepada :
1. Allah SWT karena atas izin-Nya skripsi ini dapat terselesaikan
2. Bapak Ir. Agus Jamal M.Eng selaku Ketua Jurusan Teknik Elektro Universitas
Muhammadiyah Yogyakarta.
3. Bapak Dr. Ramadoni Syahputra, S.T., M.T., selaku Dosen Pembimbing I
tugas akhir yang telah memberikan arahan dan bimbingan selama pembuatan,
dan penyusunan laporan ini.
4. Bapak Rama Oktawiyagi, S.T., M.Eng., selaku Dosen Pembimbing II tugas
akhir yang telah memberikan arahan, pembelajaran dan bimbingan dengan
penuh kesabaran kepada penulis selama melakukan proses perencanaan,
(7)
vi
5. Bapak Muhamad Yusvin Mustar, S.T., M.Eng., selaku dosen penguji yang
telah memberikan saran dan masukan kepada penulis dalam menyelesaikan
skripsi ini.
6. Kedua orang tua tercinta Bapak Ach. Roziqin, S.Ag dan Ibu Dra. Rusmilawati
atas semua pengorbanan, doa, semangat, dukungan materil dan nonmateril
yang kalian berikan. Serta ke tiga adikku, Khairatun Hisan, M. Jundi Rabbani
dan Hilyatul Atqiya atas doa, semangat dan bantuannya.
7. Untuk abang Daru Barro Saputro sebagai kakak dan partner terbaik yang
telah banyak memberikan bantuan, perhatian, dan kesabarannya selama ini.
Maaf uswah banyak merepotkan.
8. Gunawan Eka Prasetya dan Dwi Verdi Firmansyah atas ilmu dan
kesabarannya selama membantu pengerjaan skripsi ini.
9. Team Squad (Nadya Afrisahandani, Andryan Rangkuti, Rizqilillah Seputra,
Adis Wijaya, Daru Barro Saputro, Widiya Muninggar, Afiqoh Akmalia F. dan
Amalia ) atas bantuan dan doa kalian.
10.Untuk Endah Dian Ariany dan Dewi Kesuma Handayani atas kebersamaan di
kontrakan sederhana kita selama 4 tahun ini.
11.Fikriyan Fajar Al Farobi, Agem Jaya Dini, Yulia Ariska Sudarsono, Widya
Ranuna, Anugerah Fitrah Gusnanda, Azhar Zahar Makmur, M. Faisal
Ramadhan, Amien Harist Hardiansyah, Jarot Wicakmoko dan Mukti Syarif
Razen serta teman-teman Teknik Elektro UMY 2012.
12.Kepada para belahan jiwa Chairini Hayati dan Achmad Abdul Jalil Saleh atas
(8)
vii
13.Dan semua pihak yang tidak dapat penulis sebutkan satu persatu yang juga
turut memberikan dukungan dan doa hingga terlaksananya penyelesaian
laporan ini.
Penulis berharap semoga yang sudah direncakan dapat terlaksana dan
tidak terlepas dari Qodrat dan Irodhatnya Allah Subhanahu Wata’ala.
Tidak ada yang sempurna di dunia kecuali Dia Yang Maha Sempurna.
Penulis menyadari bahwa Tugas akhir ini masih jauh dari kata sempurna, oleh
karena itu dengan senang hati penulis menanti saran dan kritikannya yang sifatnya
membangun bagi penulis untuk lebih berkembang kedepannya.
Akhir kata, semoga Allah Subhanahu Wata’ala memberikan berkah-Nya kepada kita semua. Amiin
Yogyakarta, 1 Agustus 2016
(9)
viii DAFTAR ISI
Judul Skripsi ... i
Lembar Pengesahan I ... ii
Lembar Pengesahan II ... iii
Lembar Pernyataan... iv
Intisari ... v
Abstract ... vi
Motto ... vii
Persembahan ... viii
Kata Pengantar ... ix
Daftar Isi... xii
Daftar Gambar ... xiv
Daftar Tabel ... xvi
BAB I PENDAHULUAN ... 1
1.1 Latar Belakang ... 1
1.2 Rumusan Masalah ... 2
1.3 Batasan Masalah ... 2
1.4 Tujuan ... 2
1.5 Manfaat Yang Diperoleh... 3
1.6 Sistematika Penulisan Laporan ... 3
BAB II DASAR TEORI ... 5
2.1Quadcopter ... 5
2.2Gerak Jatuh... 6
2.3Mikrokontroler ... 7
2.3.1 Arduino Nano... 7
2.3.2 Arduino Uno ... 12
2.3.3 Arduino IDE... 17
2.4Jalur Komunikasi ... 19
2.4.1 PWM ... 19
2.4.2 I2C ... 21
2.4.3 UART ... 23
2.5GPS ... 24
2.5.1 GPS UBLOX NEO-6M ... 25
2.6SMS(Short Message Service) ... 25
2.6.1 SMS Gateway ... 26
2.7GSM MODUL SIM800L ... 27
2.7.1 AT-Command ... 27
2.8Sensor BMP180 ... 28
2.9Motor Servo ... 29
(10)
ix
BAB III METODOLOGI PERANCANGAN ... 33
3.1Prosedur Perancangan ... 33
3.1.1 Penjelasan Blog Diagram ... 34
3.2Skenario Alat ... 37
3.3Perancangan Perangkat Keras ... 40
3.3.1 Perancangan Catu Daya ... 43
3.3.2 Perancangan Sensor ... 44
3.3.3 Perancangan Modul GSM SIM800L ... 45
3.3.4 Perancangan GPS ... 46
3.3.5 Perancangan Tabung Parasut ... 46
3.3.6 Perancangan Servo ... 48
3.3.7 Perancangan Akhir ... 49
3.4Perancangan Perangkat Lunak ... 51
BAB IV PENGUJIAN DAN ANALISA SISTEM ... 53
4.1Data Percobaan... 53
4.1.1 Pengujian Catu Daya ... 53
4.1.2 Pengujian BMP180 ... 55
4.1.3 Pengujian GPS ... 59
4.1.4 Pengujian SIM800L ... 68
4.1.5 Pengujian Servo ... 69
4.2Analisa Secara Keseluruhan ... 71
BAB V KESIMPULAN DAN SARAN ... 75
5.1 Kesimpulan ... 74
5.2 Saran ... 74
DAFTAR PUSTAKA ... 77
(11)
x
DAFTAR GAMBAR
Gambar 2.1 Sudut Pitch, Roll, Yaw Quadcopter ... 5
Gambar 2.2 Arduino Nano ... 8
Gambar 2.3 Konfigurasi pin Arduino Nano V3.0 ... 9
Gambar 2.4 Arduino Uno ... 13
Gambar 2.5 Konfigurasi pin Arduino Uno ... 16
Gambar 2.6 Tampilan window Arduino IDE ... 18
Gambar 2.7 Sinyal PWM dan Persamaan Vout PWM ... 20
Gambar 2.8 Duty Cycle ... 21
Gambar 2.9 Kondisi sinyal start dan stop ... 22
Gambar 2.10 Bit data pada saat berlangsung komunikasi antar perangkat ... 23
Gambar 2.11 GPS U-Blox Neo6M ... 25
Gambar 2.12 Arsitektur Dasar Jaringan SMS ... 26
Gambar 2.13 GSM Modul SIM800L ... 27
Gambar 2.14 BMP180 Barometic Sensor ... 28
Gambar 2.15 Skematik BMP180 ... 29
Gambar 2.16 Pulsa Kendali Motor Servo ... 31
Gambar 2.17 Servo TowerPro MS-SG90S ... 32
Gambar 3.1 Diagram Blok Prosedur Perancangan ... 33
Gambar 3.2 Diagram Blok Keseluruhan Sistem ... 35
Gambar 3.3 Skenario Pertama Saat Alat Akan Dijatuhkan Dari Atas Gedung ... 38
Gambar 3.4 Skenario Kedua Saat Alat Telah Dijatuhkan Dari Atas Gedung ... 39
Gambar 3.5 Skenario Ketiga Saat Parasut Keluar Dari Tabung Dan SIM800L Mengirimkan Sms ... 39
Gambar 3.6 Skenario Keempat Saat Parasut Telah Terbuka Dan Penguji Menerima Sms Lokasi ... 40
Gambar 3.7 Tampilan layout PCB 1 ... 41
Gambar 3.8 Tampilan layout PCB 2 ... 41
Gambar 3.9 Proses pemindahan skematik rangkaian ke PCB ... 42
Gambar 3.10 Regulator DC to DC mini... 43
Gambar 3.11 Skema Perancangan regulator ... 44
Gambar 3.12 Skematik Perancangan BMP180 dengan Arduino Nano ... 44
Gambar 3.13 Sambungan pin arduino dengan SIM800L... 45
Gambar 3.14 Skema Rangkaian GPS ke Arduino Nano ... 46
Gambar 3.15 Bagian Luar Tabung Parasut ... 47
Gambar 3.16 Bagian Dalam Tabung Parasut ... 48
Gambar 3.17 Skema Rangkaian Mikrokontroler dengan Servo ... 49
Gambar 3.18 Hasil jadi rangkaian mikrokontroller ... 50
(12)
xi
Gambar 3.20 Flowchart perancangan perangkat lunak ... 51
Gambar 3.21 Menu Tools arduino IDE ... 52
Gambar 4.1 Pengukuran Tegangan Regulator Pertama ... 53
Gambar 4.2 Pengukuran Tegangan Regulator Kedua ... 54
Gambar 4.3 Pengukuran Tegangan Pin Tx SIM800L ... 54
Gambar 4.4 Pengujian BMP180 ... 55
Gambar 4.5 Diagram Pengujian Ketinggian Sensor BMP180 ... 59
Gambar 4.6 Diagram Uji Coba Data Latitude Gps U-Blox ... 67
Gambar 4.7 Diagram Uji Coba Data Longitude Gps U-Blox ... 68
Gambar 4.8 Pemrograman Arduino IDE untuk Mengirim SMS ... 68
Gambar 4.9 Hasil Pengiriman SMS dari SIM800L ... 69
Gambar 4.10 Posisi Servo Sebelum Uji Coba Jatuh ... 69
Gambar 4.11 Posisi Servo Setelah Uji Coba Jatuh ... 70
Gambar 4.12 Parasut Keluar Dari Tabung ... 71
Gambar 4.13 Parasut Keluar Dari Tabung ... 72
Gambar 4.14 SMS Data Lokasi Masuk Ke Handphone Pengujian ... 72
(13)
xii
DAFTAR TABEL
Tabel 2.1 Spesifikasi Arduino Nano V3.0 ... 10
Tabel 2.2 Tabel Spesifikasi Arduino Uno ... 13
Tabel 2.3 Beberapa AT-Command ... 28
Tabel 4.1 Tabel Nilai Tegangan... ... 54
Tabel 4.2 Pengujian Sensor BMP180... ... 55
(14)
(15)
(16)
(17)
v
INTISARI
Quadcopter merupakan robot terbang yang memiliki potensi jatuh cukup besar. Banyak faktor yang menyebabkan quadcopter jatuh seperti bertemu angin kencang, menabrak gedung atau pohon, kehabisan daya saat sedang terbang tinggi, mekanisme kontrol dan sistem listrik rusak, atau program kontrol penerbangan memiliki masalah. Penelitian ini menawarkan sebuah sistem pengaman pada quadcopter, dengan menggunakan parasut otomatis dan sistem pengiriman sms.
Sistem pengaman ini diawali oleh masukan data dari pembacaan ketinggian oleh sensor BMP180 dan data lokasi dari GPS. Kemudian data tersebut dikirim ke mikrokontroler untuk diolah. Ketika terjadi suatu kondisi yang disebut jatuh, mikrokontroler akan mengirimkan perintah ke modul GSM untuk mengirimkan sms mengenai lokasi dan servo yang dapat membuka tabung parasut. Dengan menerapkan sistem ini pada quadcopter diharapkan dapat mengurangi dampak buruk quadcopter ketika jatuh.
(18)
vi
ABSTRACT
Quadcopter is a flying robot that has quite high potential to fall. There are
many factors that can cause quadcopter fallen as it meet strong winds, crashing into
buildings or trees, running out of power when it flying high, the control mechanism
and the electrical system is damaged, or the flight control program has a problem .
This research offers a safety system on quadcopter, using an automatic parachute
and sms delivery system.
This security system starts to enter data from the altitude reading by BMP180
sensor and location data from the GPS. And then it is sent to the microcontroller to
be processed. When there is a condition called fall, the microcontroller will send a
commands to the GSM module to send sms on the location and servo to open the
parachute tube. By implementing this system on quadcopter is expected to decrease
the adverse effects that would occur when quadcopter fall.
(19)
1
BAB I
PENDAHULUAN
1.1 Latar Belakang
Di Indonesia perkembangan robot penjelajah udara tanpa awak atau UAV (Unmanned Aerial Vehicle) mengalami kemajuan yang pesat. Ini terbukti dengan banyaknya industri dalam negeri yang melakukan riset dan produksi terhadap robot terbang ini . Quadcopter merupakan sebuah robot terbang tanpa awak yang terbang mengggunakan empat baling-baling. Quadcopter memiliki potensi untuk lepas landas, terbang melayang, berputar arah dan mendarat di daerah kecil. Dengan design yang sederhana, quadcopter memiliki kemampuan mengangkat muatan dengan baik. Kemampuan tersebut dapat digunakan untuk melakukan banyak pekerjaan seperti membawa kamera untuk mengambil gambar dari udara.
Dibalik banyaknya kemampuan dan potensi yang dimiliki, quadcopter memiliki masalah serius. Quadcopter dapat jatuh dengan tiba-tiba dengan banyak penyebab seperti pilot belum mahir menerbangkan quadcopter, besarnya kecepatan angin, menabrak sisi bagian gedung atau pohon, kehabisan daya saat sedang terbang tinggi di udara, kegagalan motor, dan kondisi terburuk yang mungkin terjadi adalah fly away.
Sebagai produk yang dibilang tidak murah, jika quadcopter jatuh maka akan menimbulkan kerugian materiil yang cukup besar dan juga dapat menyebabkan kecelakaan terhadap orang lain. Sehingga diperlukan sebuah alat pengaman yang dapat meminimalisir kerusakan quadcopter saat terjatuh. Alat pengaman tersebut berupa sebuah parasut yang akan terbuka secara otomatis ketika sebuah sensor mendeteksi percepatan, momentum sudut benda, dan ketinggian quadcopter yang tidak seimbang.
(20)
2
Selain alat pengaman, diperlukan sebuah alat untuk mendeteksi lokasi terakhir quadcopter untuk menghindari kehilangan. Dan juga agar quadcopter mudah ditemukan dibutuhkan sistem pengiriman sms lokasi jika quadcopter jatuh di lokasi yang jauh dari tempat takeoff awal.
1.2 Rumusan Masalah
Rumusan masalah yang akan dibahas tugas akhir ini adalah sebagai berikut : 1) Bagaimana merancang sistem safety quadcopter menggunakan parasut
otomatis ?
2) Bagaimana merancang sistem pengiriman sms untuk penunjuk lokasi terakhir quadcopter ?
1.3 Batasan masalah
Batasan masalah pada tugas akhir ini adalah sebagai berikut :
1) Perancangan ini tidak cocok untuk wahana yang liar (bukan untuk wahana aerobotik)
2) Uji coba tidak langsung dilakukan pada quadcopter tetapi pada beban lain dengan berat sekitar 0,5 Kg
3) Menggunakan sensor BMP180 untuk mendeteksi jatuh
4) Menggunakan SIM800L sebagai modul gsm untuk mengirim sms data lokasi
5) Pengujian dilakukan pada ketinggian minimal 3 meter dari permukaan tanah
1.4 Tujuan
Tujuan dari tugas akhir ini adalah :
1. Membuat sistem safety quadcopter dengan menggunakan sebuah sensor yang dapat membuka parasut secara otomatis ketika quadcopter dalam kondisi jatuh.
(21)
3
2. Membuat sistem pengiriman sms otomatis lokasi terakhir quadcopter dengan menggunakan GSM Module.
1.5 Manfaat yang Diperoleh
Berikut adalah manfaat yang diperoleh dari penelitian ini:
a. Membantu riset penelitian robotika terutama dibidang UAV (Unmanned Aerial Vehicle)
b. Sebagai sistem safety yang dapat mengurangi kerugian secara material maupun nonmaterial ketika quadcopter jatuh.
1.6 Sistematika Penulisan Laporan
Laporan tugas akhir ini disusun menjadi lima Bab, sebagai berikut:
BAB I PENDAHULUAN
Memuat penjelasan mengenai latar belakang, perumusan masalah, batasan masalah, tujuan, manfaat yang diperoleh dan sistematika penulisan laporan tugas akhir ini.
BAB II STUDI PUSTAKA
Pada bagian ini akan dipaparkan mengenai landasan teori yang menunjang penelitian.
BAB III METODE PENELITIAN
Bagian ini akan menjelaskan mengenai metode penelitian dari awal pengerjaan tugas akhir hingga akhir dari pengerjaan tersebut.
(22)
4
BAB IV HASIL AKHIR DAN ANALISIS
Bab ini akan menjelaskan hasil akhir dari pengerjaan tugas akhir yang memuat rancang bangun parasut otomatis dan sistem pengiriman sms pada quadcopter.
BAB V KESIMPULAN DAN SARAN
Bab ini berisi tentang kesimpulan dan saran yang bermanfaat bagi riset sistem safety UAV lebih lanjut.
(23)
5 BAB II DASAR TEORI
2.1 Quadcopter
Quadcopter adalah pesawat terbang tak berawak yang memiliki potensi untuk lepas landas, terbang manuver, dan mendarat bahkan di daerah kecil. Seiring dengan perkembangan teknologi modern, saat ini quadcopter banyak digunakan untuk pengawasan area, pengambilan foto/video, pelaksanaan misi yang beresiko tinggi dan lain-lain. Quadcopter tidak seperti pesawat terbang menggunakan sayap, melainkan menggunakan empat motor di setiap sudutnya. Pada masing masing motor terpasang baling-baling (propeller) yang membuat aliran udara sehingga akan menghasilkan tekanan ke arah bawah yang menyebabkan gaya angkat pada quadcopter. Setiap motor dan baling-baling pada quadcopter memiliki peran dalam menghasilkan daya dorong dan torsi. Empat buat motor tersebut dipasang menyilang.
Motor depan dan belakang memiliki arah putaran searah jarum jam. Sebaliknya motor kanan dan kiri berputar dengan arah berlawanan jarum jam. Hasilnya akan mengarah pada gaya angkat untuk quadcopter, gaya angkat ini dapat membuat quadcopter terbang di udara. Pada quadcopter terdapat 3 variabel sudut yang menjadi elemen utama dalam pengendaliannya. Roll, pitch, dan yaw adalah ketiga sudut yang menjadi elemen utama pengendalian quadcopter. (Iqbal Rifqi, 2014)
Gambar 2.1 Sudut Pitch, Roll, Yaw Quadcopter (Sumber: http://norunway.com/wp/flight-related-terms/)
(24)
6 2.2 Gerak Jatuh
Jatuh bebas adalah suatu peristiwa jatuhnya sebuah benda tanpa kecepatan awal (Vo) dari ketinggian tertentu pada suatu waktu. Jatuh bebas merupakan gerak lurus berubah beraturan pada lintasan vertikal dimana semakin ke bawah gerak benda semakin cepat. Percepatan yang dialami oleh setiap benda jatuh bebas selalu sama dengan percepatan gravitasi bumi.
V = - g.t...3.1
ha = ho – ½ .g.t
2... 3.2
Keterangan :
V = Kecepatan (m/s)
g = percepatan gravitasi (m/s2)
t = waktu (second)
ha = ketinggian akhir (meter)
ho = keinggian awal (meter)
Dari persamaan 3.1 di atas, terlihat bahwa kecepatan jatuh bebas benda hanya dipengaruhi oleh dua faktor yaitu t = waktu dan g = percepatan gravitasi bumi. Jadi berat dari besaran-besaran lain tidak mempengaruhi waktu jatuh. Artinya meskipun berbeda beratnya, dua benda yang jatuh dari ketinggian yang sama di tempat yang sama akan jatuh dalam waktu yang bersamaan.Tetapi rumus ini tidak berlaku dalam kehidupan sehari-hari karena ada faktor lain yang mempengaruhi yaitu adanya gesekan udara.
Ketika quadcopter kehilangan daya, kecepatan motor akan lambat dan menyebabkan quadcopter jatuh. Ketika quadcopter jatuh, baling-baling akan tetap berputar karena udara bergerak naik dari bawah. Jika quadcopter jatuh dalam sikap
(25)
7 normal, semua baling-baling akan berputar terbalik dari arah normalnya. Putaran propeler akan bertindak sebagai sebuah rem udara dan memperlambat jatuhnya quadcopter. Putaran baling-baling juga akan bertindak sebagai giroskop yang akan menambahkan beberapa tingkat stabilisasi quadcopter saat jatuh. Sikap quadcopter jatuh umumnya bergerak naik turun dan berbelok-belok di udara bahkan terbalik dimana bagian atas quadcopter posisinya bisa menjadi terbalik di bagian bawah.
Beberapa gangguan yang dapat menyebabkan quadcopter kehilangan kendali dan jatuh adalah :
1) Mekanisme kontrol dan sistem listrik rusak sehingga tidak dapat mengontrol sikap quadcopter
2) Program UAV kontrol penerbangan memiliki cacat atau kerusakan sirkuit hardware yang disebabkan oleh pengendali penerbangan tidak bekerja
3) Quadcopter bertemu angin kencang yang tiba-tiba sehingga menyebabkan kecepatan quadcopter melambat
4) Daya atau bahan bakar habis
Kondisi jatuhnya quadcopter berbeda dengan kondisi quadcopter mendarat, dimana quadcopter akan menganggap dirinya mendarat jika output throttle kurang dari 25%, motor tidak berputar lebih dari 20 deg / sec dan pilot tidak memberikan perintah naik.
2.3 Mikrokontroler 2.3.1 Arduino Nano
Arduino Nano adalah salah satu varian dari produk mikrokontroller keluaran Arduino. Dengan ukuran board yang tidak besar, arduino ini menggunakan mikrokontroller Atmega 328 untuk Arduino Nano V3.0 dan Atmega168 untuk Arduino Nano V2.3. Arduino Nano tidak dilengkapi
(26)
8 dengan soket catu daya, tetapi terdapat pin untuk catu daya luar atau dapat menggunakan catu daya dari mini USB port.
Arduino Nano dapat dengan mudah diprogram dengan menggunakan software Arduino IDE dan juga arduino tipe ini sudah dilengkapi dengan program boatloader, sehingga programmer dapat langsung mengupload kode program langsung ke board Arduino Nano tanpa melalui board perantara atau hardware lain.
Gambar 2.2 Arduino Nano
(Sumber : http://www.reichelt.de/Einplatinen-Microcontroller/ARDUINO-NANO/3/index.html)
Arduino Nano V3.0 ini memiliki 14 pin digital dan 8 pin analog yang kesemuanya dapat dijadikan input atau output yang disesuaikan dengan kebutuhan dari project yang dijalankan. Pin ini akan mengeluarkan tegangan 5V untuk mode HIGH (logika 1) dan 0V untuk mode LOW (logika 0) jika dikonfigurasikan sebagai pin output. Jika di konfigurasikan sebagai pin input, maka ke 14 pin ini juga dapat menerima tegangan 5V untuk mode HIGH (logika1) dan 0V untuk mode LOW (logika 0).
Beberapa dari pin digital memiliki fungsi khusus seperti Serial Tx/Rx yang berfungsi untuk melakukan komunikasi data menggunakan Transmitter/Receiver, External Interrupts yang berfungsi untuk menjalankan perintah interupsi ketika program utama berjalan sesuai dengan alogaritma yang diberikan, PWM (Pulse Width Modulation) yang berfungsi untuk memberikan kendali berupa pengaturan lebar pulsa yang dikeluarkan dari pin
(27)
9 tersebut, pin SPI (Serial Peripheral Interface) suatu sistem komunikasi data yang memiliki prinsip kerja Master/Slave, artinya komunikasi yang dilakukan bersifat dua arah, sedangkan pin analog memiliki beberapa pin khusus yaitu pin I²C (Inter Integrated Circuit) yang didalamnya memiliki 2 pin yaitu SCL (Serial Clock Line) dan SDA (Serial Data Line) yang memiliki fungsi untuk melakukan komunikasi antara Master dengan beberapa Slave yang mengakses Slave sesuai dengan Address masing-masing. Konfigurasi pin Arduino Nano dapat dilihat pada Gambar 2.2 dan Tabel 2.1 (Arduino, 2014).
Gambar 2.3 Konfigurasi pin Arduino Nano V3.0
(Sumber : Nur Ahmad Effendi, Purwarupa Sistem Peringatan Dini Nirkabel Pada Jembatan Antar Pulau Oleh Angin Berbasis Arduino Nano, 2014)
(28)
10 Tabel 2.1 Spesifikasi Arduino Nano V3.0
(Sumber : Nur Ahmad Effendi, Purwarupa Sistem Peringatan Dini Nirkabel Pada Jembatan Antar Pulau Oleh Angin Berbasis Arduino Nano, 2014)
a) Daya
Arduino Nano dapat menggunakan catudaya langsung dari mini-USB port atau menggunakan catudaya luar yang dapat diberikan pada pin30 (+) dan pin29 (-) untuk tegangan kerja 7 – 12 V atau pin 28(+) dan pin 29(-) untuk tegangan 5V.
b) Memori
Atmega328 yang ada pada Arduino Nano V3.0 dilengkapi dengan flash memori sebesar 32 kbyte dan dikurangi sebesar 2 kbyte untuk bootloader. Selain dilengkapi dengan flash memori mikrokontroler ATmega328 juga dilengkapi dengan SRAM dan EEPROM. SRAM dan EEPROM dapat digunakan untuk menyimpan data selama program utama bekerja. Dimana besar SRAM adalah 2 kb sedangkan besar EEPROM 1 kb.
(29)
11 c) Input dan Output
Arduino Nano mempunyai 14 pin digital yang dapat digunakan sebagai pin input atau output. Pin ini akan mengeluarkan tegangan 5V untuk mode HIGH (logika 1) dan 0V untuk mode LOW (logika 0) jika dikonfigurasikan sebagai pin output. Jika di konfigurasikan sebagai pin input, maka ke 14 pin ini dapat menerima tegangan 5V untuk mode HIGH (logika1) dan 0V untuk mode LOW (logika 0). Besar arus listrik yang diijinkan untuk melewati pin digital I/O adalah 40 mA. Pin digital I/O ini juga sudah dilengkapi dengan resistor pull-up sebesar 20-50 kΩ. Ke 14 pin digital I/O ini selain berfungsi sebagai pin I/O juga mempunyai fungsi khusus yaitu :
Pin D0 dan pin D1 juga berfungsi sebagai pin TX dan RX untuk komunikasi data serial. Kedua pin ini terhubung langsung ke pin IC FTDI USB-TTL. Pin D2 dan pin D3 juga berfungsi sebagai pin untuk interupsi eksternal. Kedua pin ini dapat dikonfigurasikan untuk pemicu interupsi dari sumber eksternal. Interupsi dapat terjadi ketika timbul kenaikan atau penurunan tegangan pada pin D2 atau pin D3. Pin D4, pin D5, pin D6, pin D9, pin D10 dan pin D11 dapat digunakan sebagai pin PWM (pulse width modulation). Pin D10, pin D11, pin D12 dan pin D13, ke empat pin ini dapat digunakan untuk komunikasi mode SPI. Pin D13 terhubung ke sebuah LED.
Arduino Nano juga dilengkapi dengan 8 buah pin analog, yaitu pin A0, A1, A2, A3, A4, A5, A6 dan A7. Pin analog ini terhubung ke ADC (analog to digital converter) internal yang terdapat di dalam mikrokontroler. Pada kondisi awal, pin analog ini dapat mengukur variasi tegangan dari 0V sampai 5 V pada arus searah dengan besar arus maksimum 40 mA. Lebar range ini dapat diubah dengan memberikan sebuah tegangan referensi dari luar melalui pin Vref. Pin analog selain dapat digunakan untuk input data analog, juga dapat digunakan sebagai pin digital I/O, kecuali pin A6dan A7 yang hanya dapat digunakan untuk input data analog saja. Fungsi khusus untuk pin analog antara lain : Pin
(30)
12 A4 untuk pin SDA, pin A5 untuk pin SCL, pin ini dapat digunakan untuk komunikasi I2C. Pin Aref digunakan sebagai pin tegangan referensi dari luar untuk mengubah range ADC. Pin reset, pin ini digunakan untuk mereset board Arduino Nano, yaitu dengan menghubungkan pin ini ke ground selama beberapa milidetik. Board Arduino Nano selain dapat direset melalui pin reset, juga dapat direset dengan menggunakan tombol reset yang terpasang pada board Arduino Nano.
d) Komunikasi
Arduino Nano sudah dilengkapi dengan beberapa fasilitas untuk komunikasi yang dapat digunakan untuk berkomunikasi dengan komputer (PC atau Laptop), atau dengan board mikrokontroler lainnya. ATmega328 dilengkapi dengan komunikasi serial UART TTL (5V), yang terdapat pada pin D0 dan pin D1. Board juga dilengkapi dengan sebuah IC FTDI 232 Rl yang dapat dihubungkan langsung ke komputer untuk menghasilkan sebuah virtual com-port pada sistem operasi.
Software Arduino (sketch) yang digunakan sebagai IDE Arduino juga dilengkapi dengan serial monitor yang memungkinkan programer untuk menampilkan data serial sederhana yang dapat dikirim atau diterima dari board Arduino Nano. Led RX dan TX yang terpasang pada board Arduino Nano akan berkedip jika terjadi komunikasi data serial antara PC dengan Arduino Nano.
2.3.2 Arduino Uno
Arduino Uno adalah board mikrokontroler berbasis ATmega328. Uno memiliki 14 pin digital input / output (dimana 6 dapat digunakan sebagai output PWM), 6 input analog, resonator keramik 16 MHz, koneksi USB, jack listrik, header ICSP, dan tombol reset. Uno dibangun berdasarkan apa yang diperlukan untuk mendukung mikrokontroler, sumber daya bisa menggunakan
(31)
13 power USB (jika terhubung ke komputer dengan kabel USB) dan juga dengan adaptor atau baterai.
Gambar 2.4 Arduino Uno
(Sumber : http://store-usa.arduino.cc/products/a000066 )
Tabel 2.2 Tabel Spesifikasi Arduino Uno Mikrokontroler ATmega328
Operasi tegangan 5Volt
Input tegangan disarankan 7-11Volt Input tegangan batas 6-20Volt
Pin I/O digital 14 (6 bisa untuk PWM)
Pin Analog 6
Arus DC tiap pin I/O 50Ma Arus DC ketika 3.3V 50mA
Memori flash 32 KB (ATmega328) dan 0,5 KB digunakan oleh bootloader
SRAM 2 KB (ATmega328)
EEPROM 1 KB (ATmega328)
Kecepatan clock 16 MHz a) Sumber Daya / Power
Arduino Uno dapat diaktifkan melalui koneksi USB atau dengan catu daya eksternal. Sumber daya dipilih secara otomatis. Untuk sumber daya eksternal (non-USB) dapat berasal baik dari adaptor AC-DC atau baterai. Adaptor ini dapat dihubungkan dengan memasukkan 2.1mm jack DC ke colokan listrik board. Baterai dapat dimasukkan pada pin header Gnd dan Vin dari konektor daya.
(32)
14 Board dapat beroperasi pada pasukan eksternal dari 6 sampai 20 volt. Jika menggunakan tegangan kurang dari 6 volt mungkin tidak akan stabil. Jika menggunakan lebih dari 12V, regulator tegangan bisa panas dan merusak papan. Rentang yang dianjurkan adalah 7 sampai 12 volt.
Pin listrik yang tersedia adalah sebagai berikut:
Vin input tegangan ke board Arduino ketika menggunakan sumber daya eksternal.
5V. Pin ini merupakan output 5V yang telah diatur oleh regulator papan Arduino. Board dapat diaktifkan dengan daya, baik dari colokan listrik DC (7 - 12V), konektor USB (5V), atau pin VIN board (7-12V). Jika memasukan tegangan melalui pin 5V atau 3.3V secara langsung (tanpa melewati regulator) dapat merusak papan Arduino.
Tegangan pada pin 3V3. 3.3Volt dihasilkan oleh regulator on-board. Menyediakan arus maksimum 50 mA.
GND. Pin Ground.
OREF. Pin ini di papan Arduino memberikan tegangan referensi ketika mikrokontroler beroperasi. Sebuah shield yang dikonfigurasi dengan benar dapat membaca pin tegangan IOREF sehingga dapat memilih sumber daya yang tepat agar dapat bekerja dengan 5V atau 3.3V.
b) Memori
ATmega328 memiliki 32 KB (dengan 0,5 KB digunakan untuk bootloader). ATmega328 juga memiliki 2 KB dari SRAM dan 1 KB EEPROM (yang dapat dibaca dan ditulis dengan perpustakaan / library EEPROM).
c) Input dan Output
Masing-masing dari 14 pin digital Uno dapat digunakan sebagai input atau output, menggunakan fungsi pinMode(), digitalWrite(), dan digitalRead(). Mereka beroperasi pada tegangan 5 volt. Setiap pin dapat memberikan atau
(33)
15 menerima maksimum 40 mA dan memiliki resistor pull-up internal (terputus secara default) dari 20-50 kOhms. Selain itu, beberapa pin memiliki fungsi spesial:
Serial: pin 0 (RX) dan 1 (TX) Digunakan untuk menerima (RX) dan mengirimkan (TX) data serial TTL. Pin ini terhubung dengan pin ATmega8U2 USB-to-Serial TTL.
Eksternal Interupsi: Pin 2 dan 3 dapat dikonfigurasi untuk memicu interrupt pada nilai yang rendah (low value), rising atau falling edge, atau perubahan nilai. Lihat fungsi attachInterrupt() untuk rinciannya.
PWM: Pin 3, 5, 6, 9, 10, dan 11 Menyediakan 8-bit PWM dengan fungsi analogWrite()
SPI: pin 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) mendukung komunikasi SPI dengan menggunakan perpustakaan SPI
LED: pin 13. Built-in LED terhubung ke pin digital 13. LED akan menyala ketika diberi nilai HIGH
Gambar 2.5 Konfigurasi pin Arduino Uno
(34)
16 Arduino Uno memiliki 6 input analog, berlabel A0 sampai A5, yang masing-masing menyediakan resolusi 10 bit (yaitu 1024 nilai yang berbeda). Secara default mereka mengukur dari ground sampai 5 volt, perubahan tegangan maksimal menggunakan pin AREF dan fungsi analogReference(). Selain itu, beberapa pin tersebut memiliki spesialisasi fungsi, yaitu TWI: pin A4 atau SDA dan A5 atau SCL mendukung komunikasi TWI menggunakan perpustakaan Wire.
Ada beberapa pin lainnya yang tertulis di board:
AREF. Tegangan referensi untuk input analog. Dapat digunakan dengan fungsi analogReference().
Reset. Gunakan LOW untuk me-reset mikrokontroler. Biasanya digunakan untuk menambahkan tombol reset.
d) Komunikasi
Arduino Uno memiliki sejumlah fasilitas untuk berkomunikasi dengan komputer, Arduino lain, atau mikrokontroler lainnya. ATmega328 menyediakan UART TTL (5V) komunikasi serial, yang tersedia pada pin digital 0 (RX) dan 1 (TX). Pada ATmega16U2 saluran komunikasi serial melalui USB dan muncul sebagai com port virtual untuk perangkat lunak pada komputer. Firmware 16U2 menggunakan standar driver USB COM, dan tidak ada driver eksternal diperlukan. Namun, pada Windows, diperlukan file .inf. Perangkat lunak Arduino termasuk monitor serial yang memungkinkan data tekstual sederhana akan dikirim ke dan dari papan Arduino. RX dan TX LED di papan akan berkedip ketika data sedang dikirim melalui chip USB-to-serial dan koneksi USB komputer (tetapi tidak untuk komunikasi serial pada pin 0 dan 1).
(35)
17 The ATmega328 juga mendukung I2C (TWI) dan komunikasi SPI. Perangkat lunak Arduino termasuk perpustakaan Wire berfungsi menyederhanakan penggunaan bus I2C. Untuk komunikasi SPI, menggunakan perpustakaan SPI.
e) Perlindungan Arus USB
Arduino Uno memiliki polyfuse reset yang melindungi port USB komputer Anda dari arus pendek atau berlebih. Meskipun kebanyakan komputer memberikan perlindungan internal sendiri, sekering menyediakan lapisan perlindungan tambahan. Jika lebih dari 500 mA, sekering otomatis bekerja.
f) Karakteristik Fisik
Panjang maksimum dan lebar PCB Uno masing-masing adalah 2,7 dan 2,1 inci, dengan konektor USB dan colokan listrik yang melampaui dimensi tersebut. Empat lubang sekrup memungkinkan board harus terpasang ke permukaan. Perhatikan bahwa jarak antara pin digital 7 dan 8 adalah 0,16", tidak seperti pin lainnya.
2.3.3 Arduino IDE
IDE (Integrated Development Environment) Arduino adalah software yang dijalankan dengan menggunakan Java dan terdiri dari beberapa fitur seperti editor program, compiler, dan uploader. Editor program adalah sebuah window yang memungkinkan pengguna menulis dan mengedit program dalam bahasa Processing. Compiler berfungsi mengubah kode program (bahasa C Arduino) menjadi Bahasa mesin dalam bentuk file *.hex (hexadecimal). Uploader adalah sebuah modul yang memuat kode biner dari komputer ke dalam memori didalam Board Arduino (Djuandi,2011).
(36)
18 Gambar 2.6 Tampilan Window Arduino IDE
Program arduino menggunakan bahasa pemrograman C. Ada tiga bagian utama dalam bahasa pemrograman Arduino yaitu struktur program, variable dan fungsi. Struktur program meliputi kerangka program, sintaks program, kontrol aliran program dan operator. Kerangka program arduino terdiri dari dua blok yaitu:
1. Blok pertama adalah void setup() yang berisi kode program yang hanya sekali dijalankan saat arduino dihidupkan dan merupakan inisialisi program.
2. Blok kedua adalah void loop() yang berisi kode program yang akan dijalankan terus menerus dan merupakan program utama.
Sintaks program terdiri dari kurung kurawal ({}) sebagai tanda awal dan akhir program diblok itu, titik koma (;) sebagai tanda akhir baris kode dan tanda untuk komentar berupa // untuk satu baris komentar dan /**/ untuk beberapa baris komentar. Kontrol aliran program meliputi instruksi percabangan (if, if-else, switch-case, break, continue, return, goto) dan
(37)
19 instruksi perulangan (for-loop, while-loop, do-while-loop).. Bagian Fungsi antara lain terdiri dari input output digital, input output analog, fungsi waktu dan fungsi komunikasi. Ada tiga fungsi yang digunakan dalam input output digital yaitu pinMode(), digitalRead(), dan digitalWrite(). Input output analog meliputi dua instruksi yaitu analogRead() dan analogWrite(). Untuk fungsi waktu, ada 4 instruksi yaitu istruksi millis(), micros(), delay(), delay Microseconds(). Fungsi komunikasi digunakan untuk berkomunikasi dengan komputer atau perangkat lain melalui port serial. Pin Arduino yang digunakan untuk fungsi ini adalah Pin D0(RX) dan Pin D1(TX). Beberapa instruksi yang digunakan adalah begin(), available(), read(), print(), println() dan write().
2.4 Jalur Komunikasi 2.4.1 PWM
Pulse Width Modulation (PWM) secara umum adalah sebuah cara memanipulasi lebar sinyal yang dinyatakan dengan pulsa dalam suatu perioda, untuk mendapatkan tegangan rata-rata yang berbeda. Aplikasi PWM berbasis mikrokontroler biasanya berupa, pengendalian kecepatan motor DC, Pengendalian motor servo dan pengaturan nyala terang LED. Sinyal PWM pada umumnya memiliki amplitudo dan frekuensi dasar yang tetap, namun memiliki lebar pulsa yang bervariasi. Lebar pulsa PWM berbanding lurus dengan amplitudo sinyal asli yang belum termodulasi. Artinya, sinyal PWM memiliki frekuensi gelombang yang tetap namun duty cycle bervariasi (antara 0% hingga 100%).
Pulse Width Modulation (PWM) merupakan salah satu teknik untuk mendapatkan sinyal analog dari sebuah piranti digital. Sebenarnya sinyal PWM dapat dibangkitkan dengan banyak cara, dapat menggunakan metode analog dengan menggunakan rangkaian op-amp atau dengan menggunakan
(38)
20 metode digital. Perubahan duty cycle akan merubah tegangan keluaran atau tegangan rata-rata, ini dapat dilihat pada gambar dibawah.
Gambar 2.7 Sinyal PWM dan Persamaan Vout PWM
(Sumber : Rudito Prayogo, Pengaturan PWM(Pulse Width Modulation) dengan PLC, 2012)
Duty cycle adalah "siklus kerja". Artinya presentase dari satu periode dimana suatu sinyal aktif. Dapat disimpulkan secara sederhana , bahwa ketika sebuah pulsa kita tambahkan waktu saat sinyal listriknya ON (pada saat grafik menunjukkan bukit gelombang ) dimana periodenya tetap konstan & mengakibatkan pengurangan waktu pada sinyal OFF ( pada saat grafik menunjukkan lembah gelombang ) maka lamanya waktu ON pada pulsa tersebut sebanding dengan Duty cycle ( DC%). Duty cycle dari PWM dapat dinyatakan sebagai berikut :
Duty Cycle = ton/(ton+toff)x100%
Duty cycle 100% berarti sinyal tegangan pengatur motor dilewatkan seluruhnya. Jika tegangan catu 100V, maka motor akan mendapat tegangan 100V. Pada duty cycle 50%, tegangan pada motor hanya akan diberikan 50% dari total tegangan yang ada begitu seterusnya.
(39)
21 Gambar 2.8 Duty Cycle
(Sumber : Rudito Prayogo, Pengaturan PWM(Pulse Width Modulation) dengan PLC, 2012)
Dengan menghitung duty cycle yang diberikan, akan didapat tegangan output yang dihasilkan.
Average voltage merupakan tegangan output pada motor yang dikontrol oleh sinyal PWM. a adalah nilai duty cycle saat kondisi sinyal “on”. b adalah nilai duty cycle saat kondisi sinyal “off”. Vfull adalah tegangan maximum pada motor. Dengan menggunakan rumus diatas, maka akan didapatkan tegangan output sesuai dengan sinyal kontrol PWM yang dibangkitkan.
(40)
22 2.4.2 I2C (Inter Integrated Circuit)
I2C adalah standar komunikasi serial dua arah menggunakan dua saluran yang didesain khusus untuk pengontrolan IC. Sistem I2C terdiri dari saluran SCL (Serial Clock) dan SDA (Serial Data) yang membawa informasi data antara I2C dengan pengontrolnya. Piranti yang dihubungkan dengan sistem I2C bus dapat dioperasikan sebagai Master dan Slave. Master adalah piranti yang memulai transfer data pada I2C Bus dengan membentuk sinyal Start, mengakhiri transfer data dengan membentuk sinyal Stop, dan membangkitkan sinyal clock. Slave adalah piranti yang dialamati master. Sinyal start merupakan sinyal untuk memulai semua perintah, didefinisikan sebagai perubahan tegangan SDA dari “1” menjadi “0”pada saat SCL “1”. Sinyal Stop merupakan sinyal untuk mengakhiri semua perintah, didefinisikan sebagai perubahan tegangan SDA dari “0” menjadi “1” pada
saat SCL “1”.(Eko Sulistyo, 2014)
Gambar 2.9 Kondisi Sinyal Start dan Stop (Sumber : https://purnomosejati.wordpress.com)
Transmisi data antar perangkat terjadi setelah start sequence dan sebelum stop sequence . Data yang ditransmisikan sejumlah 8 bit dengan MSB (Most Significant Bit) yang dikirmkan terlebih dahulu kepada LSB (Least Significant Bit) kemudian selalu terdapat tambahan satu bit yang merupakan Acknowledgment (ACK) bit. ACK bit digunakan untuk
(41)
23 mengetahui kondisi transmisi data, jika ACK bit berupa kondisi low maka perangkat yang ada sudah menerima data dan siap untuk menerima data selanjutnya, sedangkan ketika ACK bit berupa kondisi high maka perangkat yang ada sudah tidak dapat melakukan transmisi data dan master harus mengirimkan stop sequence untuk menghentikan komunikasi antar perangkat dalam sebuah jalur I2C bus. Bit data dikirmkan pada saat jalur SCL line dalam kondisi high dan pergantian bit terjadi pada saat jalur SCL line dalam kondiai low (Frans Surya, 2007).
Gambar 2.10 Bit Data Pada Saat Berlangsung Komunikasi Antar Perangkat
(Sumber : Frans Surya, I2C Protokol, 2007) 2.4.3 UART (Universal Asynchronous Receiver Transmitter)
UART atau Universal Asynchronous Receiver Transmitter adalah protokol komunikasi yang umum digunakan dalam pengiriman data serial antara device satu dengan yang lainnya. Sebagai contoh komunikasi antara sesama mikrokontroler atau mikrokontroler ke PC. Dalam pengiriman data, clock antara pengirim dan penerima harus sama karena paket data dikirim tiap bit mengandalkan clock tersebut. Inilah salah satu keuntungan model asynchronous dalam pengiriman data karena dengan hanya satu kabel transmisi maka data dapat dikirimkan. Berbeda dengan model synchronous yang terdapat pada protokol SPI (Serial Peripheral Interface) dan I2C (Inter-Integrated Circuit) karena protokol membutuhkan minimal dua kabel dalam transmisi data, yaitu transmisi clock dan data. Namun kelemahan model asynchronous adalah dalam hal kecepatannya dan jarak transmisi.
(42)
24 Karena semakin cepat dan jauhnya jarak transmisi membuat paket-paket bit data menjadi terdistorsi sehingga data yang dikirim atau diterima bisa mengalami error. Paket bit data ini bergantung dari nilai baud rate dengan satuan bit per sekon.Untuk bisa mengetahui mengapa error tersebut bisa terjadi terlebih dahulu kita mengetahui format data dari UART.
Pada pengiriman data UART terdapat beberapa parameter yang dapat diatur yaitu start bit, parity bit, dan stop bit. Pengaturan ini harus sama antara pengirim dan penerima karena jika tidak maka data tidak akan diterima. Data yang dikirim adalah data berukuran 8 bit atau 1 byte. Jika ditambah dengan 3 parameter diatas maka total bit data yang dikirim adalah 11 bit. Dari format data inilah setiap data yang terbaca dapat diterjemahkan menjadi bit-bit yang merepresentasikan data tertentu. Sebenarnya tidak semua terdapat error dalam pengiriman data UART. Terjadinya error hanya terjadi ketika kita menggunakan clock mikrokontroler untuk nilai tertentu saja.Pada paket data UART, clock yang dikirimkan bergantung dari nilai baud rate. Karena protokol ini universal, maka baud rate yang ada adalah nilai-nilai tetap yang tidak bisa diubah ubah dari kisaran nilai 110 sampai 11059200 bps (bit per detik) atau lebih. Semakin cepat clock yang digunakan mikrokontroler/mikroprosesor maka baud rate akan semakin cepat juga (Oky Wahyu Pratama, Hari Kurnia Safitri, Sungkono, 2014).
2.5 GPS
GPS adalah sistem radio navigasi satelit yang dikembangkan oleh DOD (the U.S Dept. of Defense) untuk keperluan navigasi global segala cuaca dimuka bumi pada sembarang waktu. Sistem ini memungkinkan pemakai GPS menentukan posisi, kecepatan gerak dalam koordinat tiga dimensi dan waktu dengan teliti. Sistem radio navigasi satelit ini terdiri dari tiga bagian yaitu : Space Segment, Control Segment, dan User Segment. Penentuan posisi GPS digambarkan dengan menggunakan nilai koordinat X dan Y atau garis bujur dan garis lintang (longitude/latitude).
(43)
25 GPS minimal harus memiliki 3 sinyal satelit untuk menghitung posisi 2D dan dibutuhkan 4 atau lebih sinyal satelit untuk menghitung 3 posisi (longitude, latitude dan altitude). Dengan informasi posisi, GPS dapat menghitung data-data lain, seperti : receptacle, arah, lintasan, jarak tempuh, matahari terbit & terbenam. Apabila dibandingkan dengan sistem dan metode penentuan posisi lainnya, GPS mempunyai banyak kelebihan dan menawarkan lebih banyak keuntungan baik dalam segi operasional maupun dalam penentuan posisi.
2.5.1 GPS UBLOX NEO-6M
NEO-6M adalah salah satu modul GPS yang masuk dalam salah satu seri GPS UBLOX NEO-6 yang memiliki kinerja tinggi, receiver yang fleksibel, murah, dan menawarkan berbagai pilihan konektivitas hanya dalam miniatur 16 x 12,2 x 2,4 mm. Dengan arsitektur yang compact dan pilihan memori membuat NEO-6M ideal untuk dioperasikan dengan baterai perangkat mobile. Mesin 50-channel u-blox 6 menawarkan Time-To-First-Fix (TTFF) di bawah 1 detik. Mesin akuisisi yang memiliki 2 juta correlators ini memungkinkan untuk menemukan satelit secara langsung. Serta dengan desain dan teknologi yang inovatif menjadikan NEO-6M sebuah navigasi yang paling baik bahkan di lingkungan yang ekstrim.
Gambar 2.11 GPS U-Blox Neo6M
(Sumber : http://www.dx.com/p/ublox-neo-6m-gps-module-w-eeprom-blue-green-251973)
(44)
26 2.6 SMS (Short Message Service)
Short Message Service (SMS) adalah kemampuan untuk mengirim dan menerima pesan dalam bentuk teks dari dan kepada ponsel. SMS adalah sebuah layanan yang banyak diaplikasikan pada sistem pengiriman pesan dalam bentuk alphanumeric antara terminal pelanggan atau antara terminal pelanggan dengan sistem eksternal seperti email, paging,voice mail, dan lain-lain.
Cara kerja SMS :
Mekanisme cara kerja sistem SMS adalah melakukan pengiriman short message dari satu terminal pelanggan ke terminal yang lain. Hal ini dapat dilakukan berkat adanya sebuah entitas dalam sistem SMS yang bernama Short Message Service Centre (SMSC), disebut juga Message Centre (MC). SMSC merupakan sebuah perangkat yan melakukan tugas store and forward trafik short message. Didalamnya termasuk penentuan atau pencarian rute tujuan akhir dari short message. SMSC memiliki interkonektivitas dengan SME (Short Messaging Entity) yang dapat berupa jaringan e-mail, web, dan voice e-mail. SMSC inilah yang akan melakukan manajemen pesan SMS, baik untuk pengiriman, pengaturan antrian SMS, ataupun penerimaan SMS.
Gambar 2.12 Arsitektur Dasar Jaringan SMS
(Sumber : http://www.kajianpustaka.com/2012/12/teori-sms-short-message-service.html)
(45)
27 2.7 GSM MODUL SIM 800L
SIM800L merupakan suatu modul GSM yang dapat mengakses GPRS untuk pengiriman data ke internet dengan sistem M2M. AT-Command yang digunakan pada SIM800L mirip dengan AT-Command untuk modul-modul GSM lain. SIM800L merupakan keluaran versi terbaru dari SIM900. Modul SIM800L memiliki dimensi yang kecil sehingga lebih cocok untuk diaplikasikan pada perancangan alat yang didesain portable. Sim 800L memiliki Quad Band 850/900/1800/1900 MHz dengan dimensi kecil yaitu ukuran 15.8 x 17.8 x 2.4 mm dan berat: 1.35g. SIM 800L memiliki konsumsi daya yang rendah dengan rentang tegangan power supply 3.4 ~ 4.4 v.
Gambar 2.13 GSM Modul SIM800L
(Sumber : https://cristiansteib.github.io/Sim800l/) 2.7.1 AT-Command
AT-Command merupakan standar command yang digunakan oleh komputer untuk berkomunikasi dengan modem/phone modem. AT berasal
dari kata “Attention”. Dengan menggunakan AT-command, dapat diperoleh
informasi mengenai modem, melakukan setting pada modem, mengirim SMS dan menerima SMS (untuk GSM modem), dan sebagainya. Sebuah SMS akan dikirim dalam bentuk kumpulan bilangan heksa yang berbentuk PDU (Protocol Data Unit)..(Cahyo Rossy W, dkk). Beberapa AT-command yang berhubungan dengan SMS dapat dilihat pada tabel berikut.
(46)
28 Tabel 2.3 Beberapa AT-Command
(Sumber : Cahyo Rossy W., dkk, Perancangan dan Implementasi Sistem Informasi Layanan Short Messaging Service (SMS), 2006)
2.8 Sensor BMP180
BMP180 merupakan barometer sensor yang memiliki presisi tinggi dan rendah daya yaitu hanya menggunakan konsumsi arus sebesar 0,3uA untuk mengukur tekanan udara dan suhu. Tetapi bisa juga digunakan sebagai sebuah altimeter untuk mengukur perubahan ketinggian. Sensor ini memiliki rentang pengukuran tekanan
300-1100 hPa yang mencapai akurasi 1m dengan noise kecil yaitu 0,02 hPa (17cm) dalam mode resolusi canggih dan dapat diakses dengan menggunakan jalur komunikasi I2C. BMP 180 memiliki 4 pin yaitu SDA, SCL, GROUND dan VCC (menggunakan 3.3V atau 5V).
Gambar 2.14 BMP180 Barometic Sensor (Sumber : http://www.3dsoma.com/)
(47)
29 Fitur dari BMP 180 adalah :
Tegangan Kerja 1.8V to 3.6V Tegangan Kerja
Konsumsi Arus - 0.5uA pada 1Hz
Protokol I2C
Maksimal kecepatan I2C: 3.5Mhz
Noise kecil - mencapai 0.02hPa (17cm)
Full calibrated
Range tekanan: 300hPa to 1100hPa (+9000m to -500m)
Berat: 1.18g
Ukuran: 21mm x 18mm
Gambar 2.15 Skematik BMP180
(Sumber : Https://github.com/sparkfun/BMP180_Breakout)
2.9 Motor Servo
Motor servo adalah motor yang mampu bekerja dua arah (CW dan CCW) dimana arah dan sudut pergerakan rotornya dapat dikendalikan dengan memberikan variasi lebar pulsa (duty cycle) sinyal PWM pada bagian pin kontrolnya. Jenis Motor Servo Standar 180° hanya mampu bergerak dua arah (CW dan CCW) dengan defleksi
(48)
30 masing-masing sudut mencapai 90° sehingga total defleksi sudut dari kanan – tengah – kiri adalah 180°. Motor Servo continuous mampu bergerak dua arah (CW dan CCW) tanpa batasan defleksi sudut putar (dapat berputar secara kontinyu). Pulsa kontrol motor servo operasional dikendalikan oleh sebuah pulsa selebar ± 20 ms, dimana lebar pulsa antara 0.5 ms dan 2 ms menyatakan akhir dari range sudut maksimum. Apabila motor servo diberikan pulsa dengan besar 1.5 ms mencapai gerakan 90°, maka bila kita berikan pulsa kurang dari 1.5 ms maka posisi mendekati 0° dan bila kita berikan pulsa lebih dari 1.5 ms maka posisi mendekati 180°. Pulsa kendali motor servo akan bekerja secara baik jika pada bagian pin kontrolnya diberikan sinyal PWM dengan frekuensi 50 Hz. Dimana pada saat sinyal dengan frekuensi 50 Hz tersebut dicapai pada kondisi Ton duty cycle 1.5 ms, maka rotor dari motor akan berhenti tepat di tengah-tengah (sudut 0°/ netral). Pada saat Ton duty cycle dari sinyal yang diberikan kurang dari 1.5 ms, maka rotor akan berputar ke berlawanan arah jarum jam (Counter Clock wise, CCW) dengan membentuk sudut yang besarnya linier terhadap besarnya Ton duty cycle, dan akan bertahan diposisi tersebut. Dan sebaliknya, jika Ton duty cycle dari sinyal yang diberikan lebih dari 1.5 ms, maka rotor akan berputar searah jarum jam (Clock Wise, CW) dengan membentuk sudut yang linier pula terhadap besarnya Ton duty cycle, dan bertahan diposisi tersebut (Nur Ahmad Effendi, 2014).
(49)
31 Gambar 2.16 Pulsa Kendali Motor Servo
(Sumber : Nur Ahmad Effendi, Purwarupa Sistem Peringatan Dini Nirkabel Pada Jembatan Antar Pulau Oleh Angin Berbasis Arduino Nano, 2014)
2.9.1 Servo TowerPro SG90S
TowerPro SG90S merupakan servo memiliki bentuk yang kecil dan ringan dengan daya output tinggi . Servo dapat memutar sekitar 180 derajat ( 90O ke arah kanan dan 90O ke arah kiri ).
(50)
32 Spesifikasi dari TowerPro SG90S adalah sebagai berikut :
Dimensi: 22.8mm x 12.2mm x 28.5mm
Sudut: maksimal 180O
Torsi : 1.8kg/cm(4.8V )2.2kg/cm(6V)
Operating speed : 0.1sec/60degree(4.8v), 0.08sec/60degree(6v)
Operating voltage : 4.8-6.0V
Dead band width : 5us
Gambar 2.17 Servo TowerPro MS-SG90S
(Sumber : http://www.dx.com/p/tower-pro-mg90-metal-gear-servos-with-parts-31964)
(51)
33 BAB III
METODOLOGI PERANCANGAN
3.1Prosedur Perancangan
Prosedur perancangan merupakan langkah – langkah dalam pembuatan tugas akhir ini. Dan prosedur perancangan ini digambarkan pada diagram alir berikut:
Gambar 3.1 Diagram Blok Prosedur Perancangan Desain Sistem
Perancangan Alat
Kesimpulan Tujuan Perancangan
Pengumpulan Informasi
Analisis Kebutuhan Sistem
Verifikasi Alat
Ya
(52)
34 3.1.1 Penjelasan Blog Diagram
1) Tujuan Perancangan
Penelitian ini diawali dengan pembuatan tujuan perancangan dasar mengenai fungsi kerja dari rancang bangun parasut otomatis dan pengiriman sms pada quadcopter.
2) Pengumpulan Informasi
Pada tahap ini akan dikumpulkan data-data dan informasi dari buku, jurnal maupun informasi dari internet.
3) Analisis Kebutuhan Sistem
Sistem memiliki beberapa kebutuhan yang harus dicapai agar dapat sempurna dan sesuai dengan tujuan yang akan dicapai. Kebutuhan-kebutuhan pokok yang harus terpenuhi untuk merancang sistem adalah sebagai berikut :
Mikrokontroler yang digunakan Jenis sensor yang digunakan
Komponen-komponen pendukung seperti elco, resistor, LED dan regulator
Modul GPS yang berfungsi untuk mengetahui data lokasi
Modul GSM yang berfungsi untuk mengirimkan data lokasi dari GPS lewat sms
Servo yang berfungsi untuk membuka tabung parasut
Parasut sebagai output yang berfungsi untuk sistem pengaman quadcopter
4) Desain Sistem
Desain sistem pengaman quadcopter dengan menggunakan parasut dan pengiriman sms otomatis ini terdiri dari dua bagian, yaitu desain sistem perangkat keras (hardware) dan desain perangkat lunak (software). Perangkat keras meliputi desain shield board rangkaian dan tabung parasut sedangkan untuk pembuatan perangkat lunak meliputi
(53)
35 pembuatan program pengirim sms menggunakan SIM800L serta pembuatan program untuk komunikasi data yang dihubungkan pada program servo dan sensor BMP180.
A. Desain Sistem Perangkat Keras
Rancangan keseluruhan sistem ditunjukkan dalam diagram blok seperti berikut :
Gambar 3.2 Diagram Blok Keseluruhan Sistem Keterangan :
= Tegangan = Data
Prinsip Kerja :
1. Baterai lipo 2 sel sebagai catu daya arduino
2. Sensor BMP180 akan memberikan masukan ke arduino nano (Master)
Arduino Nano (Master)
Baterai 2 sel
Sensor BMP180 GPS Modul GSM Servo Parasut Regulator Output 5V Regulator Output 4V Arduino Uno (Slave)
(54)
36 3. Arduino nano akan mengolah data yang diterima oleh sensor
dan data GPS
4. Arduino nano akan memberikan outputan kepada GSM modul untuk mengirimkan sms dan arduino uno(slave)
5. Arduino uno mengirimkan data ke servo untuk membuka parasut.
Komponen-komponen yang dibutuhkan untuk membuat sistem adalah:
1) Alat
a. Laptop
b. Solder dan tenol c. Bor PCB dan gunting
d. Tang potong dan tang panjang e. Obeng
f. Multimeter analog dan digital g. Lem tembak
2) Bahan
a. Papan pcb, art paper dan ferilchlorit b. Box
c. Pipa PVC d. Seng dan baut e. Kabel jumper f. Kabel ties
g. Pin header male dan female h. Kain Parasut
i. Tali sol
(55)
37 B. Desain Sistem Perangkat Lunak
Perangkat lunak dibuat untuk memproses dan mengontrol proses kerja dari keseluruhan sistem. Desain perangkat lunak kali ini menggunakan Arduino IDE.
5) Perancangan
Tahap berikutnya adalah perancangan yaitu rancangan pembuatan sistem rangkaian elektronik, perancangan penyambungan kabel antar modul dan sensor dengan mikrokontroler serta perancangan pembuatan tabung parasut.
6) Verifikasi Alat
Setelah alat dibuat, maka dilakukan verifikasi untuk mengetahui apakah alat sudah bekerja dengan baik. Jika masih terdapat kesalahan maka dilakukan pengecekan dan perbaikan sehingga alat dapat bekerja normal sesuai dengan tujuan pembuatan alat. Jika alat telah bekerja dengan baik maka dilanjutkan ke tahap berikutnya
7) Kesimpulan
Berisikan hasil akhir dari uji coba dan penelitian yang telah dilakukan.
3.2Skenario Alat
Untuk mengetahui secara jelas bagaimana cara kerja alat yang dibuat maka dibuatlah skenario alat seperti penjelasan dan gambar dibawah.
1. Alat yang terdiri dari tabung parasut dan box mikrokontroler di ON kan terlebih dahulu. Percobaan ini dilakukan dari atas gedung dengan ketinggian 10 meter di atas permukaan tanah.
2. Alat kemudian di uji coba jatuhkan dari atas gedung dimana sensor akan membaca kondisi jatuh ketika alat memiliki perubahan ketinggian sejauh 1 meter dari ketinggian awal dalam rentang waktu selama 0,05 detik.
(56)
38 3. Ketika mikrokontroler telah menerima data dari sensor bahwa alat dalam kondisi jatuh, maka mikrokontroler akan membuka kipas servo yang ada pada tabung sehingga parasut keluar dari tabung, dimana pada saat yang sama mikrokontroler mengirimkan data ke sim800l untuk mengirimkan sms lokasi. 4. Setelah parasut keluar dari tabung maka parasut akan terbuka sehingga
menahan alat agar tidak jatuh bebas ke tanah.
(57)
39 Gambar 3.4 Skenario Kedua Saat Alat Telah Dijatuhkan Dari Atas Gedung
Gambar 3.5 Skenario Ketiga Saat Parasut Keluar Dari Tabung Dan SIM800L Mengirimkan Sms
(58)
40 Gambar 3.6 Skenario Keempat Saat Parasut Telah Terbuka
Dan Penguji Menerima Sms Lokasi
3.3Perancangan Perangkat Keras
Perancangan perangkat keras pada alat ini menggunakan beberapa komponen pokok untuk mengatur kinerja sistem pembuka parasut dan mengirimkan sms secara otomatis. Sensor yang digunakan adalah BMP180 yang merupakan barometic sensor. Sensor ini berfungsi untuk mendeteksi ketinggian quadcopter kemudian mengirimkan data ke mikrokontroler. Selain sensor, mikrokontroler juga mendapat masukan data dari GPS mengenai lokasi quadcopter. Data yang telah diolah mikrokontroler akan ditransmisikan ke modul GSM dan servo dimana modul GSM berfungsi untuk mengirimkan sms data lokasi quadcopter sedangkan servo berfungsi untuk membuka tabung parasut. Sebelum dilakukan pembuatan sistem rangkaian alat maka sebelumnya dibuat skematik rangkaian terlebih dahulu. Hasil perancangan skematik papan PCB ditampilkan pada gambar berikut.
(59)
41 Gambar 3.7 Tampilan Layout PCB 1
Gambar 3.8 Tampilan Layout PCB 2
Setelah membuat skematik rangkaian maka selanjutnya membuat shield board dimana skematik rangkaian yang sudah di desain, dicetak pada kertas art paper dan kemudian diletakan pada papan PCB yang telah di amplas permukaannya yang sebelumnya ukuran PCB sudah disesuaikan dengan kebutuhan dan sesuai dengan ukuran skematik yang sudah didesain. Papan PCB yang sudah ditempelkan dengan kertas art paper tadi dipress atau dipanaskan dengan menggunakan setrika listrik atau mesin laminating agar skematik pada kertas berpindah ke papan PCB. Pemindahan desain dengan cara ini dilakukan sekitar 50 kali press bolak-balik.
(60)
42 Gambar 3.9 Proses Pemindahan Skematik Rangkaian ke PCB
Setelah proses press selesai, maka papan PCB direndam di air biasa sampai desain terlihat dan kertas terkelupas. Sisa kertas pada PCB dibersihkan kemudian papan direndam pada larutan FeCl3 yang telah dicampur dengan air hangat agar skematik rangkaian dapat cepat terbentuk pada PCB sambil di gerakan ke kanan dan ke kiri. Saat skematik rangkaian sudah terlihat pada papan PCB maka PCB harus dibersihkan dengan air dingin sambil diamplas hingga tinta yang membentuk jalur hilang digantikan oleh tembaga permukaan PCB. Langkah selanjutnya, board di bor sesuai lubang yang ada pada skematik untuk meletakan komponen-komponen yang digunakan pada alat ini. Setelah papan PCB selesai di bor, maka komponen-komponen dipasang sesuai letaknya kemudian disolder.
Mikrokontroler yang digunakan pada rangkaian ini adalah Arduino Nano V3.0 dengan ATmega328 dan Arduino Uno dengan ATmega328. Arduino nano dalam sistem ini bertugas sebagai penerima data lokasi melalui pin Software Serial Rx (pin D10) dan Tx (pin D11) arduino nano yang dikirim dari modul gps Ublox Neo 6M dimana pin Rx arduino nano dihubungkan dengan pin Tx gps sedangkan pin Tx arduino nano dihubungkan dengan pin Rx gps. Kemudian, untuk modul gsm SIM800L pin Rx dihubungkan dengan pin serial Tx dari arduino nano. Selain dua komponen tersebut terdapat sebuah sensor yang menggunakan jalur komunikasi I2C melalui pin SDA (pin A4) dan SCL (pin A5) pada arduino nano. Kemudian
(61)
43 terdapat pin outputan yaitu pin A2 yang dihubungkan dengan pin inputan A0 pada arduino uno. Pada arduino uno terdapat pin untuk jalur komunikasi ke servo menggunakan sinyal PWM melalui pin D11.
3.3.1 Perancangan Catu Daya
Pada alat ini digunakan dua buah regulator yang berfungsi untuk menstabilkan tegangan masukan dari baterai. Alasan digunakan dua buah regulator adalah karena ada komponen pada rangkaian yang memiliki tegangan masukan berbeda. Regulator pertama memiliki tegangan output sebesar 5V yang masuk ke arduino nano dan arduino uno sedangkan regulator kedua memiliki tegangan output sebesar 4V yang masuk ke tegangan inputan SIM800L dengan catu daya yang digunakan berupa baterai lipo 2 sel yang memiliki tegangan sebesar 7,4V. Regulator yang digunakan pada alat ini berupa regulator DC to DC mini seperti gambar dibawah.
Gambar 3.10 Regulator DC to DC mini (Sumber : http://fpv-reconn.com/store/index.php)
(62)
44 Gambar 3.11 Skema Perancangan Regulator
3.3.2 Perancangan Sensor
Sistem yang digunakan untuk mengambil data ketinggian quadcopter adalah sensor BMP180 dan kontroler (Arduino Nano) berfungsi mengolah data yang diperoleh dari sensor tersebut.
Gambar 3.12 Skematik Perancangan BMP180 dengan Arduino Nano Pin yang digunakan dalam modul sensor ini adalah pin 5V yang dihubungkan dengan pin 5V di arduino nano, pin SCL dan SDA modul ke pin A5 dan A4 arduino nano. Kemudian pin ground modul dihubungkan dengan pin ground arduino nano. Modul sensor ini tidak membutuhkan komponen tambahan sehingga dapat langsung dihubungkan ke port arduino
(63)
45 nano karena sensor bekerja dengan daya sebesar 5V yang dapat langsung diperoleh dari arduino nano tersebut.
Posisi yang berupa data ketinggian, yang terbaca oleh sensor akan diproses pada arduino, ketika sensor mendeteksi posisi jatuh maka sensor akan mengirimkannya ke arduino, kemudian arduino akan menggerakan servo untuk membuka parasut.
3.3.3 Perancangan Modul GSM SIM800L
Modul GSM pada alat ini berfungsi untuk mengirimkan sms ke pengguna tentang data lokasi secara otomatis dimana prinsip kerjanya adalah data yang sudah diolah pada arduino nano dikirimkan dengan menggunakan jalur data di pin TX arduino nano ke pin RX yang ada di SIM800L. Karena perbedaan tegangan pin TX dan RX antara SIM800L dengan arduino nano maka data dari pin Tx arduino nano disambungkan dengan 2 resistor yang diseri baru dihubungkan dengan Rx SIM800L seperti gambar dibawah.
Gambar 3.13 Sambungan Pin Arduino Nano dengan SIM800L
Resistor yang digunakan pada rangkaian ini adalah sebesar R1=10kΩ danR2= 2,2kΩ. Perhitungan tegangan ini dirumuskan dengan persamaan berikut.
(64)
46 Vr =( ) x Vin...
x 5V = 4V
3.3.4 Perancangan GPS
Fungsi GPS adalah untuk mengetahui data lokasi yang kemudian data tersebut dikirimkan ke arduino nano. GPS menggunakan jalur komunikasi UART yaitu menggunakan pin Tx dan Rx. Karena pin Tx Rx arduino sudah digunakan pada sistem modul GSM maka GPS menggunakan software serial yaitu pada pin D10(Rx) dan D11(Tx) kemudian untuk tegangan diambil dari 5V arduino dan untuk pin ground GPS dihubungkan dengan pin ground arduino. Berikut adalah skema rangkaian GPS ke Arduino.
Gambar 3.14 Skema Rangkaian GPS ke ArduinoNano 3.3.5 Perancangan Tabung Parasut
Tabung parasut pada alat ini menggunakan servo yang berfungsi untuk membuka tutup tabung parasut. Ketika sensor mendeteksi posisi alat dalam posisi atau kondisi jatuh, maka arduino nano akan memprosesnya dan mengirimkan data tersebut arduino uno dimana arduino uno mengirimkan data ke servo. Karena servo menggunakan jalur komunikasi PWM, maka pin data PWM yang digunakan pada arduino adalah pin A11. Untuk tegangan yang digunakan pada servo sebesar 5V langsung dihubungkan dari arduino. Prinsip
(65)
47 dari tabung parasut ini sangat simple dimana kain parasut dimasukan kedalam tabung, kemudian kipas servo akan mengunci tutup tabung. Ketika sensor mendeteksi kondisi jatuh maka kipas servo tersebut akan bergeser 90o kearah yang berlawanan sehingga tutup terbuka dan parasut akan terlontar keluar dari tabung.
Tabung parasut sendiri terbuat dari pipa PVC jenis D dengan diameter 1-1/4 atau sekitar 4,2cm dengan panjang 16cm. Untuk bahan dari penutup tabung baik penutup bagian bawah maupun atas menggunakan bahan PCB karena papan PCB merupakan bahan yang cukup ringan namun kuat sehingga tahan terhadap tekanan dan dorongan yang kuat dari pegas, oleh karena itu bahan PCB cocok digunakan sebagai penutup tabung parasut ini. Selain bagian penutup terdapat pula tempat servo dan penutup pegas yang terbuat dari papan PCB. Didalam tabung terdapat sebuah pegas dengan diameter 3cm, panjang 19cm dan 20 putaran. Pegas yang digunakan adalah jenis pegas dorong atau tekan yang tidak terlalu kuat sehingga memudahkan saat memasukan parasut kedalam tabung.
(66)
48 Gambar 3.16 Bagian Dalam Tabung Parasut
Parasut yang digunakan dalam sistem safety harus disesuaikan dengan ukuran dan berat beban. Untuk mengetahui diameter parasut yang digunakan maka dapat menggunakan rumus
Diameter =
Keterangan :
m = berat benda/beban (gram) V= kecepatan (km/h)
Dimana, rumus tersebut digunakan hanya dengan asumsi bahwa kecepatan jatuh quadcopter sekitar 5m/s atau 18km/h. Untuk quadcopter dengan berat sekitar 1kg membutuhkan parasut dengan diameter minimal 122cm. Parasut yang digunakan pada sistem ini memiliki diameter 120cm dan panjang tali parasut 150cm karena wahana yang di uji coba memiliki berat sekitar 0,5kg saja.
3.3.6 Perancangan Servo
Untuk perancangan servo menggunakan arduino Uno sebagai mikrokontrolernya, karena pada arduino nano terdapat komponen menggunakan port SoftwareSerial yang menyebabkan pin interupt sehingga
(67)
49 dibutuhkan mikrokontroler lain. Dibawah ini adalah skematik rangkaian servo dengan arduino Uno. Arduino uno mendapatkan inputan data dari arduino nano, sehingga ketika sensor membaca posisi jatuh maka dari arduino nano mengirimkan data ke arduino uno untuk menggerakan servo.
Gambar 3.17 Skema Rangkaian Mikrokontroler dengan Servo 3.3.7 Perancangan Akhir
Perancangan akhir ini merupakan gabungan perancangan-perancangan perangkat keras diatas, ini bertujuan agar alat dapat bekerja dengan baik dengan tidak melupakan unsur estetika atau kerapiannya. Setiap bagian dari perancangan alat yang telah selesai perlu dilakukan verifikasi atau pengujian kembali. Pengujian dilakukan untuk mengetahui apakah setiap bagian dapat bekerja sesuai dengan yang diharapkan. Sebagai contoh rangkaian elektronik sistem apakah sudah bisa terhubung dengan sensor dan lampu led indikator secara benar, desain tabung parasut apakah sudah sesuai dengan ukuran kain parasut yang digunakan, jalur kabel yang harus diperiksa ketelitiannya agar bisa menyambungkan mikrokntroler dengan sensor, modul GSM dan GPS. Berikut adalah gambar akhir perancangan alat mulai dari bagian mikrokontroler sampai bagian tabung parasut.
(68)
50 Gambar 3.18 Hasil Jadi Rangkaian Mikrokontroler
(69)
51 3.4Perancangan Perangkat Lunak
Untuk memudahkan dalam pembuatan alur program maka penulis membuat flowchart seperti dibawah.
Gambar 3.20 Flowchart Perancangan Perangkat Lunak tidak
Mulai
Arduino Uno Mengolah Data Masukan Dari Sensor
Selesai Apakah Objek
Terdeteksi Dalam Kondisi Jatuh?
SIM800L Mengirim Sms Mengirim Data Ke
Arduino Uno Inisialisasi Port
ya
Mengirim Data Untuk Membuka
Servo Sensor Membaca
(70)
52 Perancangan perangkat lunak ini menggunakan 2 input dan 2 outputan yang diproses di dalam mikrokontroler. Input tersebut adalah nilai dari sensor BMP180 dan data dari GPS. Sedangkan output dari mikrokontroler berupa data PWM untuk servo dan perintah untuk mengirimkan sms ke SIM800L. Perancangan perangkat lunak disini menggunakan software dengan bahasa pemrograman Arduino IDE. Sebelum melakukan pemrograman, pada arduino IDE dipilih terlebih dahulu jenis arduino dan port yang digunakan pada menu tools.
Gambar 3.21 Menu Tools Arduino IDE
Setelah dilakukan setting seperti diatas, maka dilakukan pemrograman untuk input dan output yang ada dalam perancangan ini. Secara garis besar cara kerja alat ini dimulai dengan pembacaan ketinggian menggunakan sensor BMP180 dan pembacaan lokasi berupa data Longitudinal dan Latitude menggunakan GPS. Ketika nilai yang dibaca oleh sensor menunjukan kondisi jatuh yaitu pada saat ada perubahan ketinggian dari titik sekarang ke titik sebelumnya sekitar 1m dalam kurun waktu 0,05 detik maka servo akan bergerak dan membuka tutup tabung parasut. Dalam waktu yang bersamaan arduino akan mengirimkan perintah unuk mengirimkan sms lokasi alat dari GPS melalui SIM800L.
(71)
53
BAB IV
PENGUJIAN DAN ANALISA SISTEM 4.1 Data Percobaan
Pengujian merupakan salah satu bagian hal penting yang harus dilakukan untuk mengetahui apakah alat yang telah dirancang mampu beroperasi sesuai dengan yang diharapkan. Hal itu dapat dilihat dari hasil-hasil yang telah dicapai selama pengujian alat. Selain untuk mengetahui apakah alat sudah bekerja dengan baik sesuai dengan yang diharapkan, pengujian juga bertujuan untuk mengetahui kelebihan dan kekurangan dari alat yang dibuat. Hasil-hasil pengujian tersebut nantinya akan dianalisa agar dapat diketahui mengapa terjadi kekurangan. Pengujian pertama dilakukan secara terpisah, dalam artian dilakukan pengujian tiap fungsi komponen. Kemudian dilakukan pengujian secara keseluruhan ketika semua fungsi sudah disatukan. Pengujian yang telah dilakukan pada bab ini antara lain :
4.1.1 Pengujian Catu Daya
Catu daya yang digunakan pada alat ini berupa baterai 2 sel dengan tegangan 7,4V yang menyuplai tegangan ke dua buah regulator seperti yang telah dijelaskan pada bab perancangan sebelumnya, dimana tujuan dari regulator adalah untuk mengatasi beban rangkaian berlebih.
(72)
54
Gambar 4.2 Pengukuran Tegangan Regulator Kedua
Gambar 4.3 Pengukuran Tegangan Pin Tx SIM800L
Dibawah adalah tabel hasil pengukuran tegangan pada setiap perangkat yang digunakan dengan pengukuran menggunakan multimeter.
Tabel 4.1 Tabel Nilai Tegangan
Variabel Tegangan (Volt) Regulator Mini DC-DC 1 5V
Regulator Mini DC-DC 2 4V
BMP180 5V
SIM800L 4V
GPS 5V
Servo 5V
Arduino Uno 5V
(73)
55
4.1.2 Pengujian BMP180
Pada pengujian ini dilakukan pengukuran nilai ketinggian(altitude). Pengujian ini dilakukan pada jarak 0 – 4 meter dengan melakukan pengambilan data setiap 1 meter. Berikut adalah gambar saat pengukuran BMP180.
Gambar 4.4 Pengujian BMP180
Berikut ini adalah tabel hasil percobaan pengujian BMP180 untuk mengukur ketinggian.
Tabel 4.2 Pengujian Sensor BMP180 Pengujian Ketinggian Menggunakan Sensor BMP180 Nilai
Meteran
Nilai Pengujian
Rata-rata
Nilai Error
1 2 3 4 5 Nilai
0 meter 89.55 meter 89.47 meter 89.30 meter 89.39 meter 88.63 meter 89.26 meter 5% 1 meter 89.89 meter 90.06 meter 90.65 meter 90.39 meter 90.56 meter 90.31 meter 0% 2 meter 91.40 meter 91.23 meter 91.74 meter 90.90 meter 91.32 meter 91.31 meter 4% 3 meter 92.41 meter 92.66 meter 92.16 meter 92.07 meter 92.49 meter 92.35 meter 16% 4 meter 93.50 meter 93.16 meter 93.25 meter 93.67 meter 94.00 meter 93.51 meter 16%
Dari data nilai rata-rata setiap pengujian memiliki perbedaan 1 meter, ini sesuai dengan perbandingan ketinggian meteran. Maka sensor BMP180
(74)
56
sudah bekerja dengan baik dan dapat digunakan pada alat. Data pengujian pada 0 meter hampir mendekati nilai 90 meter, ini karena posisi wilayah jogja berkisar antara 90 – 130 meter diatas permukaan laut.
A. Perhitungan nilai rata-rata sensor :
Pada ketinggian 0 meter =
=
= 89.26 meter
Pada ketinggian 1 meter =
=
= 90.31 meter
Pada ketinggian 2 meter =
=
= 91.31 meter
Pada ketinggian 3 meter =
=
(75)
57 Pada ketinggian 4 meter
=
=
= 93.51 meter
B. Perhitungan Nilai Error Nilai Acuan = 1 meter
Pada ketinggian 0 meter
Error = x 100%
= x 100%
= x 100%
= 0.05 x 100%
= 5 %
Pada ketinggian 1 meter
Error = x 100%
= x 100%
= x 100%
= 0 x 100%
(76)
58 Pada ketinggian 2 meter
Error = x 100%
= x 100%
= x 100%
= 0.04 x 100%
= 4 %
Pada ketinggian 3 meter
Error = x 100%
= x 100%
= x 100%
= 0.16 x 100%
= 16 %
Pada ketinggian 4 meter
Error = x 100%
= x 100%
= x 100%
= 0.16 x 100% = 16 %
(77)
59
Gambar 4.5 Diagram Pengujian Ketinggian Sensor BMP180 4.1.3 Pengujian GPS
Pada pengujian ini dilakukan pengukuran nilai GPS yang terdiri atas Latitude dan Longitude. Pengujian nilai GPS tersebut dibandingkan dengan nilai Latitude dan Longitude dari Google Maps. Selain itu, pengujian dilakukan di tempat yang berbeda-beda mulai dari pantai sampai kaki gunung.Dari pengujian tersebut menghasilkan nilai yang berbeda antar GPS, sehingga dapat diketahui nilai error GPS yang digunakan dalam sistem penggerak antena ini. Berikut ini adalah tabel hasil percobaan pengujian GPS.
Tabel 4.3 Tabel Pengujian GPS Tempat
Latitude Latitude Nilai Longitude Longitude Nilai Google Maps
(°) U-blox(°) Error(%)
Maps(°) U-blox(°) Error(%) Condong Catur -7,745031 -7,744897 0,0017 110,413886 110,423086 0,0083 Gamping -7,802857 -7,802763 0,0012 110,427397 110,327549 0,0904 Kelayan -3,338040 -3,337462 0,0172 114,593995 114,593455 0,0004 Pelaihari -3,800786 -3,800147 0,0168 114,784146 114,782146 0,0017
(78)
60
Pantai Asmara -3,980759 -3,980439 0,0080 115,079796 115,079573 0,0001 Masjid Raya Sabilal -3,318264 -3,320068 0,0543 114,588067 114,590660 0,0022 Qmall -3,439198 -3,438196 0,0291 114,846581 114,926691 0,0697 RSUD DR. H. Ansari
S. -3,278980 -3,279727 0,0227 114,586446 114,589310 0,0024 Jl. Ahmad Yani Bjm -3,367011 -3,366659 0,0104 114,636186 114,639241 0,0026 STMIK Indonesia BJM -3,302655 0,0166 114.606757 114,608827 0,0018
Rata-Rata Total Nilai Error 0,0178 0,01796
Dari tabel diatas, berikut ini adalah perhitungan nilai data error Latitude dan Longitude GPS U-Blox :
Condong Catur A. Latitude
Nilai Error = x 100%
= x 100%
= x 100%
= 1,7301416e-5 x 100%
= 0,0017 %
B. Longitude
Nilai Error = x 100%
= x 100%
(79)
61
= 8,3322853e-5 x 100%
= 0,0083 % Gamping
A. Latitude
Nilai Error = x 100%
= x 100%
= x 100%
= 1,2046869e-5 x 100%
= 0,001204 %
B. Longitude
Nilai Error = x 100%
= x 100%
= x 100%
= 9,041959e-5 x 100%
= 0,0083 % Kelayan B
A.Latitude
Nilai Error = x 100%
(80)
62
= x 100%
= 0,000172 x 100%
= 0,0172 % B. Longitude
Nilai Error = x 100%
= x 100%
= x 100%
= 4,7122888e-5 x 100%
= 0,0004 %
Pelaihari A. Latitude
Nilai Error = x 100%
= x 100%
= x 100%
= 0,0001681231 x 100%
= 0,0168%
B.Longitude
Nilai Error = x 100%
(81)
63
= x 100%
= x 100%
= 0,000017424 x 100%
= 0,0017% Pantai Asmara
A. Latitude
Nilai Error = x 100%
= x 100%
= x 100%
= 0,0000803867 x 100% = 0,0080 %
B. Longitude
Nilai Error = x 100%
= x 100%
= x 100%
= 1,937786e-6 x 100% = 0,0001 %
(1)
78 http://www.kajianpustaka.com/2012/12/teori-sms-short-message-service.html. Diakses tanggal 03 Maret 2016.
http://copter.ardupilot.com/wiki/parachute/. Diakses tanggal 04 Maret 2016.
http://www.uniksharianja.com/2015/06/gerak-benda-jatuh-bebas-dan-soal-latihan.html . Diakses tanggal 15 April 2016.
http://theboredengineers.com/2014/05/the-drone-parachute/. Diakses tanggal 19 Juni 2016.
http://arduino-kit.ru/catalog/id/modul-gsm-gprs-sim800-microsim-s-antennoy. Diakses tanggal 10 Juli 2016.
(2)
79
(3)
PROGRAM PADA ARDUINO NANO #include <Wire.h> #include <Adafruit_BMP085.h> #include "Servo.h" #include <TinyGPS.h> #include <SoftwareSerial.h> Adafruit_BMP085 bmp; Servo motor1; float t_nol,t_sekarang,t_sebelumnya; long w_sekarang,w_sebelumnya; TinyGPS gps; SoftwareSerial ss(10,11);//rx,tx int tinggi; int a;
void setup() { Serial.begin(9600); ss.begin(9600); motor1.attach(5); delay(1000); if (!bmp.begin()) { while (1) {} } pinMode(A0, OUTPUT); pinMode(A2,OUTPUT); t_nol=bmp.readAltitude(101500); delay(1000); digitalWrite(A0,1); //digitalWrite(A2,0); }
void loop() { ss.listen(); sensorbmp (); // delay(2000);
// for(a = 100; a > 0; a--){ // t_sekarang=a;
(4)
// delay(50); //} } void sensorbmp(){ t_sekarang=bmp.readAltitude(101500); w_sekarang=millis();
if(w_sekarang-w_sebelumnya >= 100){ w_sebelumnya=w_sekarang;
if(t_sebelumnya-t_sekarang >=1){
//if((t_sebelumnya-t_sekarang >=1)&& (t_sekarang-t_nol >=8)){ digitalWrite(A0,0); digitalWrite(A2,1); motor1.write(0); while(1){ SendMessage(); delay(5000); } } t_sebelumnya=t_sekarang; } } void carigps(){ ss.listen();
bool newData = false; unsigned long chars;
unsigned short sentences, failed;
for (unsigned long start = millis(); millis() - start < 1000;) {
while (ss.available()) {
char c = ss.read(); if (gps.encode(c)) newData = true; }
}
(5)
{
float flat, flon; unsigned long age;
gps.f_get_position(&flat, &flon, &age); Serial.print("LAT=");
Serial.print(flat == TinyGPS::GPS_INVALID_F_ANGLE ? 0.0 : flat, 6); Serial.print(" LON=");
Serial.print(flon == TinyGPS::GPS_INVALID_F_ANGLE ? 0.0 : flon, 6); }
gps.stats(&chars, &sentences, &failed); }
void SendMessage() {
float flat, flon;
gps.f_get_position(&flat, &flon); Serial.println("AT+CMGF=1"); delay(1000);
Serial.println("AT+CMGS=\"085707174300\"\r"); delay(1000);
Serial.println("The Location"); carigps ();
delay(100);
Serial.println((char)26);// ASCII code of CTRL+Z delay(1000);
(6)
PROGRAM PADA ARDUINO UNO
#include "Servo.h" const int buttonPin = A0; int buttonState = 0; const int ledPin = 13; Servo motor1;
void setup() { motor1.attach(11); pinMode(13, OUTPUT); pinMode(buttonPin, INPUT); }
void loop() {
buttonState = digitalRead(buttonPin); if (buttonState == HIGH) {
digitalWrite(ledPin, HIGH); motor1.write(0);
} }