Ground control station pada sistem quadcopter.

(1)

INTISARI

Perkembangan ilmu pengetahuan membawa manusia masuk ke jaman mordernisasi, jaman dimana manusia menggunakan segenap pengetahuan untuk menciptakan sebuah teknologi rekayasa terbarukan. Salah satu bentuk teknologi terbarukan adalah quadcopter, sebuah robot terbang yang mampu membantu manusia melakukan kegiatan yang berhubungan dengan aerial space. Dalam melaksanakan tugasnya wahana quadcopter tidak dapat bekerja sendiri, di perlukan sebuah perangkat pemantau kerja wahana yang biasa disebut dengan Ground Control Stations (GCS) yang dapat diperoleh dengan membeli dengan harga yang mahal.

Untuk mengatasi permasalahan diatas, perlu dilakukan penelitian lebih lanjut mengenai sistem GCS. Selain dapat menghemat biaya, pengguna bisa menciptakan sistem GCS dengan fungsi yang dikehendaki. Oleh karena itu, dibuat sistem GCS yang terjangkau dan dapat diproduksi sendiri. Sistem GCS menggunakan Arduino Mega 2560 sebagai pusat pusat kontrol dan RFM12 sebagai modul komunikasi dua arah. GCS mampu mengendalikan wahana dalam dua jenis pengendalian, yaitu: manual dan autonomous.

Sistem GCS telah berhasil dibuat dengan kecepatan data komunikasi 3,9 kbps pada frekuensi kerja 432MHz menggunakan modul transceiver RFM12. Sistem ini telah diuji untuk mengontrol dan memantau wahana quadcopter dengan jarak maksimal penggunaan alat kurang dari 100 meter di ruang terbuka. Terdapat dua jenis pengendalian wahana, yaitu: manual dan autonomous.


(2)

ABSTRACT

In the science world, knowledge of human’s being brings human to a modernization era. They transfer their knowledge into a new technology. One of the most new technology in the world is quadcopter, an aerial space robot that could helps humans to do his job. In performing the task, this vehicle couldn’t be used alone. It needs Ground Control Station (GCS) as its monitoring device. But, user who want to use GCS need to buy with an expensive prices.

To overcome this, needs a deep research to build some devices resemble of GCS. User could save their money if they build GCS by theirself. So, GCS could be built by an arduino mega 2560 as microcontroller and RFM12 as transceiver modul.

GCS system was succesfully created based on RFM12 as transceiver modul which could transfering 3,9 kbps data at 432 MHz. This system already tested to controlled and monitored quadcopter and can communicated less than 100 meters. In this GCS lies two kind of flying mode, that is: manual and autonomous.


(3)

(4)

TUGAS AKHIR

GROUND CONTROL STATION PADA

SISTEM QUADCOPTER

Diajukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik pada

Program Studi Teknik Elektro Jurusan Teknik Elektro

Fakultas Sains dan Teknologi Universitas Sanata Dharma

disusun oleh:

ADOVAN PUJIANTA GINTING

NIM: 125114045

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA


(5)

FINAL PROJECT

GROUND CONTROL STATION FOR

QUADCOPTER SYSTEM

In partial fulfillment of requirements for the degree of Sarjana Teknik In Electrical Engineering Study Program

ADOVAN PUJIANTA GINTING

125114045

ELECTRICAL ENGINEERING STUDY PROGRAM

ELECTRICAL ENGINEERING DEPARTMENT

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2016


(6)

iii

LEMBAR PERSETUJUAN

TUGAS AKHIR

GROUND CONTROL STATION PADA SISTEM

QUADCOPTER

disusun oleh:

ADOVAN PUJIANTA GINTING

NIM: 125114045

telah disetujui oleh:

Pembimbing,


(7)

iv

HALAMAN PENGESAHAN

TUGAS AKHIR

GROUND CONTROL STATION PADA SISTEM

QUADCOPTER

disusun oleh:

ADOVAN PUJIANTA GINTING NIM : 125114045

Telah dipertahankan didepan panitia penguji Pada tanggal 26 Juli 2016

dan dinyatakan memenuhi syarat

Susunan Panitia Penguji:

Nama Lengkap Tanda Tangan

Ketua : Petrus Setyo Prabowo, S.T., M.T. ___________________

Sekretaris : Martanto, S.T., M.T. ___________________

Anggota : Ir. Tjendro, M.Kom ___________________

Yogyakarta, 28 Juli 2016 Fakultas Sains dan Teknologi Universitas Sanata Dharma Dekan,


(8)

v

PERNYATAAN KEASLIAN KARYA

Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka sebagaimana layaknya karya ilmiah.

Yogyakarta, 11 Juli 2016


(9)

vi

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP

MOTTO:

Apa pun juga yang kamu perbuat,

perbuatlah dengan segenap hatimu

seperti untuk Tuhan dan bukan untuk manusia


(10)

vii

LEMBAR PERNYATAAN PERSETUJUAN

PUBLIKASI KARYA ILMIAH UNTUK

KEPENTINGAN AKADEMIS

Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma: Nama : Adovan Pujianta Ginting

Nomor Mahasiswa : 125114045

Demi perngembangan ilmu pengetahuan, saya memberikan karya ilmiah peneltian ini kepada Perpusatakaan Univesitas Sanata Dharma karya ilmiah saya yang berjudul:

GROUND CONTROL STATION PADA SISTEM

QUADCOPTER

Beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas, dan mempublikasikannya di media massa lain, seperti: internet untuk kepentingan akademis tanpa perlu meminta ijin dari saya maupun memberikan royalty kepada saya selama tetap mencantumkan nama saya sebagai penulis.

Demikian pernyataan ini saya buat dengan sebenarnya.

Yogyakarta, 11 Juli 2016


(11)

viii

INTISARI

Perkembangan ilmu pengetahuan membawa manusia masuk ke jaman mordernisasi, jaman dimana manusia menggunakan segenap pengetahuan untuk menciptakan sebuah teknologi rekayasa terbarukan. Salah satu bentuk teknologi terbarukan adalah quadcopter, sebuah robot terbang yang mampu membantu manusia melakukan kegiatan yang berhubungan dengan aerial space. Dalam melaksanakan tugasnya wahana quadcopter tidak dapat bekerja sendiri, di perlukan sebuah perangkat pemantau kerja wahana yang biasa disebut dengan Ground Control Stations (GCS) yang dapat diperoleh dengan membeli dengan harga yang mahal.

Untuk mengatasi permasalahan diatas, perlu dilakukan penelitian lebih lanjut mengenai sistem GCS. Selain dapat menghemat biaya, pengguna bisa menciptakan sistem GCS dengan fungsi yang dikehendaki. Oleh karena itu, dibuat sistem GCS yang terjangkau dan dapat diproduksi sendiri. Sistem GCS menggunakan Arduino Mega 2560 sebagai pusat pusat kontrol dan RFM12 sebagai modul komunikasi dua arah. GCS mampu mengendalikan wahana dalam dua jenis pengendalian, yaitu: manual dan autonomous.

Sistem GCS telah berhasil dibuat dengan kecepatan data komunikasi 3,9 kbps pada frekuensi kerja 432MHz menggunakan modul transceiver RFM12. Sistem ini telah diuji untuk mengontrol dan memantau wahana quadcopter dengan jarak maksimal penggunaan alat kurang dari 100 meter di ruang terbuka. Terdapat dua jenis pengendalian wahana, yaitu: manual dan autonomous.


(12)

ix

ABSTRACT

In the science world, knowledge of human’s being brings human to a modernization era. They transfer their knowledge into a new technology. One of the most new technology in the world is quadcopter, an aerial space robot that could helps humans to do his job. In performing the task, this vehicle couldn’t be used alone. It needs Ground Control Station (GCS) as its monitoring device. But, user who want to use GCS need to buy with an expensive prices.

To overcome this, needs a deep research to build some devices resemble of GCS. User could save their money if they build GCS by theirself. So, GCS could be built by an arduino mega 2560 as microcontroller and RFM12 as transceiver modul.

GCS system was succesfully created based on RFM12 as transceiver modul which could transfering 3,9 kbps data at 432 MHz. This system already tested to controlled and monitored quadcopter and can communicated less than 100 meters. In this GCS lies two kind of flying mode, that is: manual and autonomous.


(13)

x

KATA PENGANTAR

Segala hormat dan puji syukur penulis persembahkan kepada Tuhan Yesus karena melalui kasih-Nya penulis boleh menyelesaikan tugas akhir yang berjudul “Ground Control Station pada Sistem Quadcopter”. Selama proses perkuliahan berlangsung penulis mengalami banyak tantangan dan hambatan, hingga pada akhirnya penulis dapat menyelesaikan penulisan tugas akhir ini dengan bantuan dari beberapa pihak. Oleh karena itu, penulis ini mengucapkan terimakasih kepada:

1. Orang tua dan keluarga penulis yang senantiasa berdoa dan mendidik, terkhusus untuk tante Alm.Prasetyaningsih.

2. Universitas Sanata Dharma yang telah memberikan bantuan beasiswa penuh 4 tahun. 3. Bapak Petrus Setyo Prabowo dan Bapak Tjendro selaku Ketua dan Wakil Ketua Program Studi Teknik Elektro Universitas Sanata Dharma dan sebagai dosen penguji. 4. Bapak Martanto selaku dosen pembimbing yang telah meluangkan waktu dan

tenaganya untuk memberikan solusi dan saran.

5. Seluruh staf dan pengajar Program Studi Teknik Elektro yang telah bersedia membagikan ilmu dan nilai hidup.

6. Seorang wanita yang diberikan Tuhan dalam hidup saya, Indriyani Permatasi atas dukungan dan perhatian.

7. Hans dan Nenu yang mengerjakan sistem wahana quadcopter.

8. Teman-teman Persekutuan Mahasiswa Kristen Apostolos dan Prodi Teknik Elektro 2012, terkhusus: Ketut, Riski, dan Yudhi.

Dengan rendah hati penulis menyadari bahwa tugas akhir ini masih jauh dari sempuna, oleh karena itu berbagai kritik dan saran yang membangun untuk perbaikan tugas akhir ini sangat diharapkan. Penulis percaya tugas akhir ini dapat bermanfaat bagi semua pihak. Akhir kata penulis mengucapkan terima kasih.

Yogyakarta, 11 Juli 2016


(14)

xi

DAFTAR ISI

HALAMAN JUDUL (Bahasa Indonesia) ... i

HALAMAN JUDUL (Bahasan Inggris) ... ii

HALAMAN PERSETUJUAN ... iii

HALAMAN PENGESAHAN ... iv

PERNYATAAN KEASLIAN KARYA ... v

HALAMAN MOTTO HIDUP DAN PERSEMBAHAN ... vi

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ... vii

INTISARI ... viii

ABSTRACT ... ix

KATA PENGANTAR ... x

DAFTAR ISI ... xi

DAFTAR GAMBAR ... xiv

DAFTAR TABEL ... xvii

BAB 1 PENDAHULUAN ... 1

1.1. Latar Belakang ... 1

1.2. Tujuan dan Manfaat ... 2

1.3. Batasan Masalah ... 2

1.4. Metodologi Penelitian ... 4

BAB 2 DASAR TEORI ... 5

2.1. Sistem Kontrol ... 5

2.1.1. Sistem Kontrol Kalang Terbuka ... 5

2.1.2. Sistem Kontrol Kalang Tertutup ... 5

2.2. Radio Kontrol ... 6

2.3. Gerakan Dasar Wahana Quadcopter ... 7

2.4. Sistem Komunikasi ... 8

2.5. Modulasi ... 10

2.6. Modulasi Digital ... 10

2.7. Frequency Shift Keying ... 11

2.8. Atmega 2560 ... 11

2.8.1. Serial Peripheral Interface ... 12


(15)

xii

2.9. Modul Transmitter RFM02 ... 20

2.9.1. Configuration Setting Command ... 21

2.9.2. Power Management Command ... 22

2.9.3. Frequency Stting Command ... 23

2.10. Modul Transceiver RFM12 ... 24

2.10.1. Configuration Setting Command ... 25

2.10.2. Power Management Command ... 26

2.10.3. Transmitter Register Write Command ... 27

2.10.4. FIFO and Reset Mode Command ... 27

2.10.5. Receiver FIFO Read Command ... 28

BAB 3 RANCANGAN PENELITIAN ... 29

3.1. Konsep Perangcangan ... 29

3.2. Rancangan Perangkat Keras ... 31

3.2.1. Komponen Elektronik ... 31

3.2.2. Komponen Mekanik ... 37

3.3. Rancangan Perangkat Lunak ... 39

3.3.1. Diagram Alir Program Utama ... 39

3.3.2. Diagram Alir Sub Rutin Ping ... 39

3.3.3. Diagram Alir Sub Rutin Pengendalian ... 40

3.3.4. Diagram Alir Sub Rutin Autonomous ... 42

3.3.5. Diagram Alir Sub Rutin Pengendalian Manual ... 43

3.3.6. Diagrram Alir Sub Rutin Error ... 45

3.3.7. Sistem Failsafe ... 46

3.4. Prosedur Pengiriman Data Modul Transmitter RFM02 ... 47

3.5. Prosedur Pengiriman Data Modul Transceiver RFM12 ... 47

3.6. Prosedur Penerimaan Data Modul Transceiver RFM12 ... 48

3.7. Format Paket Data ... 48

3.7.1. Format Paket Data Saat Pengendalian Manual ... 49

3.7.2. Format Paket Data Saat Pengendalian Autonomous ... 50

BAB 4 HASIL DAN PEMBAHASAN ... 51

4.1. Perangkat Keras Penyusun GCS ... 51

4.1.1. Bentuk Fisik GCS ... 51


(16)

xiii

4.1.3. Pengujian Alat ... 55

4.2. Perangkat Lunak Penyusun GCS ... 64

4.2.1. Inisialisasi ... 64

4.2.2. Program Utama ... 64

4.2.3. Sub Rutin Cek Komunikasi ... 65

4.2.4. Sub Rutin Pengendalian ... 66

4.2.5. Program Pengendalian Manual ... 67

4.2.6. Program Pengendalian Autonomous ... 71

BAB 5 KESIMPULAN DAN SARAN ... 74

5.1. Kesimpulan ... 74

5.2. Saran ... 74

DAFTAR PUSTAKA ... 74 LAMPIRAN


(17)

xiv

DAFTAR GAMBAR

Gambar 1.1 Model Sistem Quadcopter ... 2

Gambar 1.2 Cakupan Longitude dan Lattitude Lapangan PMSD ... 3

Gambar 2.1 Blok Diagram Sistem Kontrol Kalang Terbuka [9] ... 5

Gambar 2.2 Blok Diagram Sistem Kontrol Kalang Tertutup [9] ... 6

Gambar 2.3 Gerakan Pitch, Roll, dan Yaw pada Quadcopter [6] ... 7

Gambar 2.4 Pengaruh Kecepatan Putar Motor terhadap Gerakan Wahana [7] ... 8

Gambar 2.5 (a) Sinyal Digital (b) Sinyal Modulasi FSK [11]... 11

Gambar 2.6 Konfigurasi Pin Atmega 2560 [4]... 12

Gambar 2.7 Hubungan Tuan dan Hamba pada Sistem Komunikasi SPI [12] ... 13

Gambar 2.8 Register Kontrol SPI (SPCR) [12] ... 13

Gambar 2.9 Register Keadaan SPI (SPSR) [12] ... 14

Gambar 2.10 Register Data SPI (SPDR) [12] ... 15

Gambar 2.11 ADC dengan (a) Sampling Rendah dan (b) Sampling Tinggi [5] ... 16

Gambar 2.12 ADC Multiplexing Selection Register [12] ... 17

Gambar 2.13 ADC Control and Status Register A [12] ... 17

Gambar 2.14 ADC Control and Status Register B [12] ... 18

Gambar 2.15 ADC Data Register ketika ADLAR Bernilai 1 (a) dan Bernilai 0 (b) [12] ... 19

Gambar 2.16 Konfigurasi kaki RFM02 [13] ... 20

Gambar 2.17 Keterangan Bit-bit pada Configuration Setting Command [13] ... 21

Gambar 2.18 Keterangan Bit-bit pada Power Management Command [13] ... 22

Gambar 2.19 Keterangan Bit-bit pada Frequency Setting Command [13]... 23

Gambar 2.20 Konfigurasi Kaki RFM12 [14] ... 24

Gambar 2.21 Keterangan Bit-bit pada Configuration Setting Command [14] ... 25

Gambar 2.22 Keterangan Bit-bit pada Power Management Command [14] ... 26

Gambar 2.23 Keterangan Bit-bit pada Transmitter Register Write Command [14] ... 27

Gambar 2.24 Keterangan Bit-bit pada FIFO and Reset Mode Command [14] ... 27

Gambar 2.25 Keterangan Bit-bit pada Receiver FIFO Read Command [14] ... 28

Gambar 3.1 Blok Diagram Sistem GCS (Bagian di dalam Kotak dengan Garis Putus) ... 29

Gambar 3.2 Keypad 4x4 [16] ... 30

Gambar 3.3 Pembagian Komponen Elektronik ... 32


(18)

xv

Gambar 3.5 Tuas pada Joystick USB [17] ... 33

Gambar 3.6 Rangkaian pada Perangkat Navigasi ... 34

Gambar 3.7 Rangkaian Sistem Arduino Mega 2560 R3 [15] ... 35

Gambar 3.8 Rangkaian RFM12 [14] ... 37

Gambar 3.9 Rangkaian RFM02 [13] ... 37

Gambar 3.10 Rangkaian LCD 16x2 ... 37

Gambar 3.11 Desain Bingkai Perangkat Navigasi ... 38

Gambar 3.12 Desain Bingkai Perangkat GCS ... 38

Gambar 3.13 Diagram Alir Program Utama GCS ... 39

Gambar 3.14 Diagram Alir Sub Rutin PING ... 40

Gambar 3.15 Diagram Alir Sub Rutin Pengendalian ... 41

Gambar 3.16 Diagram Alir Sub Rutin Pengendalian Autonomous ... 42

Gambar 3.17 (Lanjutan) Diagram Alir Sub Rutin Pengendalian Autonomous ... 43

Gambar 3.18 Diagram Alir Sub Rutin Pengendalian Manual ... 44

Gambar 3.19 (Lanjutan) Diagram Alir Sub Rutin Pengendalian Manual ... 45

Gambar 3.20 Diagram Alir Sub Rutin Error ... 46

Gambar 3.21 Diagram Alir Sub Rutin Failsafe ... 46

Gambar 3.22 Timing Diagram Proses Penerimaan Data RMF12 [14]... 48

Gambar 4.1 Purwarupa GCS ... 51

Gambar 4.2 Rangkaian Analog Ball pada Perangkat Navigasi ... 52

Gambar 4.3 Perangkat Navigasi ... 53

Gambar 4.4 Rangkaian LCD 20x4 ... 54

Gambar 4.5 Grafik Perbandingan Perubahan Potensiometer ... 55

Gambar 4.6 Pengujian LCD 20x4 ... 56

Gambar 4.7 Simulasi Penulisan Tampilan LCD 20x4 ... 57

Gambar 4.8 Penjelasan Perintah Pengaturan RFM12 [18] ... 58

Gambar 4.9 Contoh Keluaran Sinyal SDI ... 59

Gambar 4.10 Denah Pengujian Modul Transceiver ... 60

Gambar 4.11 Grafik Perbandingan Jarak Komunikasi Satu Arah ... 61

Gambar 4.12 Grafik Perbandingan Jarak Komunikasi Dua Arah ... 63

Gambar 4.13 Tampilan LCD saat Program Cek Komunikasi Berjalan ... 65

Gambar 4.14 Hasil Serial Monitor Sub Rutin Cek Komunikasi ... 66


(19)

xvi

Gambar 4.16 Serial Monitor Sub Rutin Pengendalian ... 67

Gambar 4.17 Serial Monitor Program Manual ... 69

Gambar 4.18 Sinyal PWM buatan untuk Throttle (a) 1000us dan (b) 2000us ... 70

Gambar 4.19 Uji Coba Penggunaan Perangkat Navigasi ... 70

Gambar 4.20 Tampilan-tampilan LCD saat Program Autonomous Berjalan ... 72


(20)

xvii

DAFTAR TABEL

Tabel 2.1 Hubungan Kecepatan Pulsa dengan Frekuensi Osilasi [12] ... 15

Tabel 2.2 Pilihan Tegangan Referensi pada ADC [12] ... 17

Tabel 2.3 Pilihan Nilai Prescaler ADC [12] ... 18

Tabel 2.4 Pilihan Sumber Picuan ADC [12] ... 19

Tabel 2.5 Fungsi Kaki Modul Transmitter RFM02 [13] ... 21

Tabel 2.6 Keterangan Fungsi Bit x3, x2, x1, dan x0 [13] ... 22

Tabel 2.7 Keterangan Fungsi bit d2, d1, dan d0 [13] ... 22

Tabel 2.8 Keterangan Fungsi Bit b1 dan b0 [13] ... 22

Tabel 2.9 Fungsi Bit-bit pada Power Management Command [13] ... 23

Tabel 2.10 Nilai C1 dan C2 berdasarkan Pita Frekuensi [13] ... 23

Tabel 2.11 Fungsi Kaki Modul Transceiver RFM12 [14]... 25

Tabel 2.12 Keterangan Bit b1 dan b0 [14] ... 26

Tabel 2.13 Keterangan Bit x3, x2, x1, dan x0 [14] ... 26

Tabel 2.14 Fungsi Bit-bit pada Power Management Command [14] ... 27

Tabel 3.1 Keterangan Data-Data yang Diolah pada GCS ... 31

Tabel 3.2 Nilai �� dan ADC pada Perangkat GCS ... 34

Tabel 3.3 Format Pengaturan Frekuensi [14] ... 36

Tabel 3.4 Parameter Kapasitor untuk Masing-masing Pita Frekuensi [14] ... 36

Tabel 3.5 Keterangan Format Paket Data saat Pengendalian Manual ... 49

Tabel 4.1 Daftar Perubahan Perangkat Keras Penyusun GCS ... 52

Tabel 4.2 Daftar Komponen pada Perangkat Navigasi ... 53

Tabel 4.3 Daftar Keluaran Perangkat Navigasi ... 54

Tabel 4.4 Daftar Keluaran LCD 20x4 ... 54

Tabel 4.5 Perbandingan Perubahan Potensiometer terhadap Nilai ADC ... 56

Tabel 4.6 Data Pengujian Komunikasi Satu Arah ... 61

Tabel 4.7 Data Pengujian Komunikasi Dua Arah ... 63

Tabel 4.8 Paket Data Manual ... 68

Tabel 4.9 Sinyal PWM yang dibutuhkan oleh Wahana ... 69


(21)

1

BAB 1

PENDAHULUAN

1.1.

Latar Belakang

Pada saat ini, manusia memasuki zaman globalisasi yang disebut juga dengan zaman modernisasi. Modernisasi sendiri dalam ilmu sosial merujuk pada bentuk transformasi dari keadaan yang kurang maju atau kurang berkembang ke arah yang lebih baik dengan harapan kehidupan masyarakat akan menjadi lebih baik. Modernisasi mencakup banyak bidang, salah satu contoh adalah bidang ilmu pengetahuan dan teknologi [1].

Perkembangan teknologi merupakan dasar untuk mengembangkan kehidupan berbangsa dan bernegara. Kemajuan suatu negara dapat diukur dari seberapa jauh ilmu pengetahuan dan teknologi yang dikuasai oleh negara tersebut. Hal ini terjadi karena saat ini ilmu pengetahuan dan teknologi telah menjadi dasar dari segala aspek kehidupan manusia. Dengan adanya perkembangan ilmu dan teknologi manusia semakin merasakan dampak positif, seperti halnya penggunaan robot untuk membantu menyelesaikan pekerjaan manusia sehari-hari.

Salah satu jenis robot yang turut andil dalam kegiatan manusia sehari-hari adalah robot terbang (aerial robot), seperti: drone. Drone merupakan robot terbang yang menggunakan beberapa rotor untuk bisa terbang. Jumlah rotor dari drone bermacam-macam, mulai tiga buah rotor yang biasa disebut dengan tricopter, empat buah rotor (quadcopter), enam buah (hexacopter), dan delapan buah rotor (octocopter).

Wahana drone tidak dapat bekerja sendiri dalam pengoperasiannya, perlu adanya perangkat sistem kontrol nirkabel untuk bisa memantau dan mengatur kinerja dari wahana yang pada umumnya dikenal dengan istilah Ground Control Station (GCS). Penelitian mengenai GCS pernah dilakukan oleh Ali Akbar Farghani, dkk dengan judul “Purwarupa Ground Control Station untuk pengamatan dan pengendalian Unmanned Aerial Vehicle Bersayap Tetap”. Dalam penelitian tersebut, Ali dan tim merancang sebuah GCS menggunakan media komputer dengan tampilan antarmuka GCS menggunakan perangkat lunak Visual Studio 2010. Data yang mampu diolah GCS meliputi indikator ketinggian, indikator kecepatan udara, indikator sikap, indikator kecepatan vertikal, dan indikator arah. [8].


(22)

Mengacu pada penelitian yang dilakukan oleh Farghani, dkk, perangkat GCS masih dapat dikembangkan lebih lanjut untuk mendapatkan sebuah perangkat kontrol dan pemantau yang tidak bergantung pada perangkat komputer. Perangkat GCS akan menjadi topik pembahasan pada penelitian ini. Berbeda dengan penelitian yang dilakukan oleh Farghani, dkk yang menggunakan unmanned aerial vehicle bersayap tetap sebagai wahana, nantinya perangkat GCS yang ada akan menggunakan wahana quadcopter.

1.2.

Tujuan dan Manfaat

Tujuan dari penelitian ini adalah menciptakan sebuah perangkat GCS sebagai pusat kontrol dan monitor dari wahana quadcopter.

Manfaat penelitian ini antara lain mempermudah memantau dan mengontrol wahana quadcopter menggunakan perangkat GCS dan perangkat navigasi buatan pribadi. Bagi dunia pendidikan penggunaan GCS pada quadcopter nantinya bisa dikembangkan sesuai dengan penerapan dan fungsi wahana quadcopter.

1.3.

Batasan Masalah

Gambar 1.1 Model Sistem Quadcopter

Sistem quadcopter dirancang seperti Gambar 1.1. Berdasarkan gambar tersebut, penelitian tentang sistem quadcopter dibagi menjadi tiga bagian, yaitu:

1. Ground Control Station pada Sistem Quadcopter.

2. Flight Controller pada Sistem Quadcopter Menggunakan Sensor Inertial Measurement Unit Berbasis Mikrokontroler ATmega 2560.

3. Autonomous Mode pada Sistem Quadcopter Menggunakan Modul GPS dan Compass Berbasis Mikrokontroler ATmega 2560.

Controller Controller Flight Perangkat

Navigasi Sensor

Layar Penampil

Modul Komunikasi

Motor 1, 2, 3, dan 4

Ground Control Station Wahana Quadcopter Modul


(23)

Bagian pertama dari sistem quadcopter tentang “Ground Control Station pada Sistem Quadcopter” menjadi konsep perancangan pada penelitian ini dengan batasan masalah sebagai berikut:

1. GCS digunakan untuk mengendalikan satu buah wahana quadcopter dengan dua buah pilihan pengendalian, yaitu: manual dan autonomous.

2. Modul komunikasi yang digunakan ada dua jenis. Modul Komunikasi yang pertama adalah modul RFM12 dengan pita frekuensi 433 Mhz digunakan sebagai modul transceiver untuk mengirim dan menerima data-data yang berhubungan dengan wahana, baik saat pengendalian manual maupun pengendalian autonomous. Dan modul komunikasi yang kedua adalah modul RFM02 dengan pita frekuensi 433 Mhz untuk mengirimkan data navigasi ke wahana saat pengendalian manual diaktifkan. 3. Proses penggunaan GCS hanya berlangsung satu siklus pengerjaan. Jika ingin

mengulangi penggunaan GCS dapat dilakukan dengan memulai kembali penggunaan dari awal.

4. Pada saat wahana beroperasi manual, GCS mempunyai tugas untuk memonitor ketinggian dan kecepatan masing-masing motor di wahana, serta mengontrol gerak wahana sebatas naik dan turun (throttle), depan dan belakang (pitch), kanan dan kiri (roll), serta memutar ke kanan dan putar ke kiri (yaw).

5. Pada saat wahana beroperasi autonomous, GCS mempunyai tugas untuk memberikan koordinat tujuan berupa longitude dan latitude kepada wahana dan memonitor secara aktual koordinat wahana (pitch, roll, dan yaw). Luas cakupan longitude dan latitude diatur seperti terlihat pada Gambar 1.2 yang menggunakan lapangan Politeknik Mekatronika Sanata Dharma (PMSD) sebagai tempat pengujian.


(24)

1.4.

Metodologi Penelitian

Dalam proses penelitian ini, metodologi yang digunakan untuk mempermudah mencapai tujuan adalah sebagai berikut:

1. Studi literatur berupa pemahaman teori dari sumber referensi berupa buku, jurnal, artikel, dan situs edukasi di internet. Tahapan ini dilakukan untuk mengetahui dasar teori dari penelitian yang akan dilakukan.

2. Perancangan model sistem untuk merancang blok sistem perangkat GCS yang sesuai dengan batasan masalah yang sudah dikemukakan.

3. Perancangan perangkat keras dan perangkat lunak berupa pemilihan perangkat keras yang akan digunakan sesuai dengan spesifikasi perancangan model sistem beserta pembuatan diagram alir program tentang sistem yang akan dirancang.

4. Pembuatan perangkat keras dan perangkat lunak berupa pengimplementasian rancangan perangkat keras dan perangkat lunak kedalam rangkaian yang sudah saling terintegrasi dan program-program pendukung.

5. Pengujian sistem berupa uji coba perangkat GCS dan navigasi, perbaikan perangkat jika terjadi kesalahan sistem, dan pengambilan data-data komunikasi GCS dan wahana.

6. Analisis dan pengambilan kesimpulan berupa analisis performa sistem dengan membandingkan data-data komunikasi GCS dan wahana dengan hasil perancangan, serta mengambil hasil kesimpulan dari penelitian yang telah dilakukan.


(25)

5

BAB 2

DASAR TEORI

2.1.

Sistem Kontrol

Dalam sebuah sistem, pengontrolan perlu dilakukan agar nilai keluaran sesuai dengan yang pengguna inginkan. Menurut fungsinya, sistem kontrol terbagi menjadi dua jenis, yaitu: sistem kontrol kalang terbuka dan sistem kontrol kalang tertutup [9].

2.1.1. Sistem Kontrol Kalang Terbuka

Sistem kontrol kalang terbuka (open loop control system) adalah suatu sistem yang keluarannya tidak mempunyai pengaruh terhadap aksi kontrol. Dengan kata lain, sistem kontrol kalang terbuka keluarannya tidak dapat digunakan sebagai perbandingan umpan balik dengan masukan [9].

Dalam suatu kontrol sistem kalang terbuka keluaran tidak dapat dibandingkan dengan masukan sebagai acuan. Jadi, untuk tiap masukan berhubungan dengan kondisi operasi tertentu sebagai akibat ketetapan dari sistem tergantung pada kalibrasi. Dengan adanya gangguan, sistem kontrol kalang terbuka tidak dapat melaksanakan tugas seperti yang kita harapkan. Sistem kontrol kalang terbuka dapat digunakan hanya jika hubungan antara masukan dan keluaran diketahui dan tidak terdapat gangguan internal maupun eksternal [9].

Gambar 2.1 Blok Diagram Sistem Kontrol Kalang Terbuka [9]

2.1.2. Sistem Kontrol Kalang Tertutup

Sistem kontrol kalang tertutup merupakan pengembangan dari sistem kontrol kalang terbuka yang tidak bisa mempertahankan kuantitas nilai keluaran mendekati nilai masukan yang diinginkan. Blok diagram sistem kontrol kalang tertutup dapat dilihat pada Gambar 2.2. Terdapat tambahan fungsional blok umpan balik yang akan menghasilkan sinyal umpan

Masukan Keluaran

Sinyal Acuan

Plant Pemilih Sinyal

Acuan


(26)

balik yang akan mengurangi sinyal acuan. Hasil dari pengurangan sinyal tersebut berupa sinyal aktual. Sinyal aktual inilah yang akan mempertahankan nilai keluaran menyerupai nilai masukan [9].

Sebutan kalang tertutup diambil dari aksi pengurangan nilai keluaran dengan nilai masukan untuk menghasilkan nilai keluaran yang sesuai dengan nilai masukan. Hal ini berarti bahwa sistem kalang tertutup mengontrol keluaran untuk mendapatkan hasil sesuai dengan nilai masukan [9].

Gambar 2.2 Blok Diagram Sistem Kontrol Kalang Tertutup [9]

2.2.

Radio Kontrol

Radio kontrol adalah penggunaan sinyal radio untuk mengontrol perangkat dari jarak jauh. Sinyal radio dikirimkan oleh sebuah remote genggam melalui modul pengirim menuju modul penerima yang terpasang pada suatu model perangkat. Sinyal inilah yang akan mengontrol pergerakkan dari model perangkat. Model perangkat tersebut bermacam-macam jenisnya, salah satu contoh adalah model pesawat terbang [2].

Pada radio kontrol model pesawat terbang, sinyal radio yang dikirimkan adalah sinyal untuk memutar shaft pada motor. Dengan berputarnya shaft pada masing-masing motor, model pesawat terbang dapat ber-manuver. Pergerakan manuver pada model pesawat terbang dikendalikan oleh posisi tuas yang terdapat pada remote genggam [3].

Radio kontrol untuk model pesawat terbang membutuhkan minimal empat saluran komunikasi untuk dapat mengatur pergerakkan dari model pesawat terbang. Empat saluran komunikasi tersebut masing-masing digunakan untuk [3]:

1. Ailerons untuk mengontrol gerakan roll, yaitu bergerak ke kiri dan ke kanan.

2. Elevator untuk mengontrol gerakan pitch, yaitu bergerak ke depan dan ke belakang. 3. Throttle untuk mengontrol gerakan throttle, yaitu bergerak ke atas dan ke bawah. 4. Rudder untuk mengontrol gerakan yaw, yaitu bergerak memutar ke kiri dan ke kanan.

Keluaran Masukan

Plant

Umpan Balik Pemilih

Sinyal Acuan Sinyal Acuan

Sinyal Umpan Balik

Sinyal Aktual


(27)

Gambar 2.3 Gerakan Pitch, Roll, dan Yaw pada Quadcopter [6]

Frekuensi kerja modul pengirim dan penerima juga perlu disamakan agar dapat mengirimkan sinyal untuk menggerakkan motor. Pengaturan frekuensi ini dilakukan untuk menghindari interferensi sinyal radio yang ada. Oleh karena itu setiap negara mengatur penggunaan pita frekuensi untuk keperluan radio kontrol [3].

Di Indonesia penggunaan frekuensi untuk perangkat telekomunikasi jarak dekat telah diatur dalam peraturan Menteri Komunikasi dan Informatika Republik Indonesia nomor 34 tahun 2012. Penggunaan pengendali radio jarak jauh untuk aktivitas hobi/penggemar pesawat terbang, terbang layang, model-model mobil, kapal atau perahu diatur pada frekuensi 26,96 - 27,28 Mhz dan 29,7 – 30 Mhz, sedangkan untuk frekuensi 315 – 470 Mhz merupakan frekuensi bebas.

2.3.

Gerakan Dasar Wahana Quadcopter

Dalam dunia penerbangan, jenis pesawat terbang dapat dibagi berdasarkan mekanisme gaya angkat. Dan mekanisme gaya angkat yang telah berhasil diterapkan ke dalam dunia penerbangan, antara lain: pesawat sayap, jet, balon, serta rotor, dan salah satu contoh pesawat rotor adalah quadcopter. Prinsip kerja quadcopter menyerupai helikopter, meskipun terdapat perbedaan seperti jumlah rotor yang digunakan serta mekanisme terbang yang diterapkan ke dalam sistem. Quadcopter menggunakan empat buah rotor, dengan arah putaran dua buah rotor searah jarum jam (clockwise) dan dua buah rotor lainnya berlawanan arah jarum jam (counter clockwise). Dan hal ini digunakan sebagai dasar sistem untuk mengendalikan gerakan pesawat [6].


(28)

Konfigurasi wahana yang paling sering digunakan adalah X-quadcopter. Ketika quadcopter sedang terbang dan melayang di udara (hovering) kecepatan putar pada setiap rotor diselaraskan. Saat quadcopter melakukan gerakan maju, dua buah baling-baling (propeller) yang berada dibelakang akan berputar lebih cepat sehingga body quadcopter akan condong ke depan. Gaya dorong yang dihasilkan keempat propeller akan mempunyai komponen gaya ke atas dan ke depan sehingga quadcopter akan terdorong ke arah depan sambil mempertahankan ketinggiannya [7]. Gambar 2.4 memperlihatkan pengaruh kecepatan putar propeller terhadap gerakan wahana quadcopter.

Gambar 2.4 Pengaruh Kecepatan Putar Motor terhadap Gerakan Wahana [7]

2.4.

Sistem Komunikasi

Komunikasi adalah pertukaran data antara dua perangkat atau lebih melalui sebuah media transmisi. Untuk mencapai proses komunikasi, perangkat-perangkat yang ingin berkomunikasi harus saling terhubung menjadi sebuah bagian dari sistem komunikasi. Sistem komunikasi terdiri atas kombinasi dari hardware (perangkat keras) dan software (perangkat lunak). Efektivitas sistem komunikasi bergantung pada empat karakteristik, yaitu: pengiriman, akurasi, ketepatan waktu, dan jitter [4].

Dalam sebuah sistem komunikasi, perlu adanya beberapa komponen utama sebagai standar sebuah sistem disebut sebagai sistem komunikasi. Komponen-komponen tersebut antara lain [4]:


(29)

1. Pengirim yaitu perangkat yang mengirimkan data. 2. Penerima perangkat yang menerima data.

3. Data sebagai informasi yang akan dipindahkan atau dikirimkan.

4. Media pengiriman yaitu media ataupun saluran yang dapat digunakan untuk mengirimkan data tersebut.

5. Protokol yaitu aturan-aturan yang berfungsi untuk menyesuaikan atau menyelaraskan hubungan.

Salah satu komponen komunikasi yang cukup menjadi perhatian dalam dunia komunikasi adalah media pengiriman. Melalui sebuah media pengirim maka data dapat berpindah dari pengirim menuju penerima. Kualitas dari media pengiriman inilah yang sangat menentukan juga kualitas hasil data yang diterima oleh penerima. Berdasarkan media pengiriman sebuah sistem, komunikasi dapat di bagi menjadi dua jenis, yaitu [4]:

1. Media kabel sering disebut juga guided media, yaitu media yang mengendalikan gelombang dalam jalur fisik kepada penerima data. Sebagai contoh: fiber optik, UTP dan kabel coaxial.

2. Media tanpa kabel / nirkabel (wireless), sering disebut dengan unguided media. Media tanpa kabel menyediakan alat untuk mentransmisikan gelombang, akan tetapi tidak mengendalikannya. Seperti contohnya: perambatan (propagation) di udara maupun di laut.

Melalui sebuah media komunikasi data dapat berpindah dari pengirim menuju penerima. Perpindahan data berlangsung selama proses komunikasi berjalan. Dan dari proses perpindahan data yang bermacam-macam jenisnya, komunikasi dapat dibagi menjadi tiga jenis, yaitu [4]:

1. Simplex adalah komunikasi satu arah, dimana komunikasi hanya berjalan satu arah

dari pengirim menuju penerima tanpa adanya timbal balik. Sebagai contoh: siaran radio dan siaran televisi.

2. Half duplex adalah komunikasi dua arah dimana komunikasi dilakukan secara

bergantian. Perangkat yang digunakan terdiri atas dua pasang pengirim dan penerima. Sebagai contoh: Short Message Services (SMS) dan Handy Talkie (HT).

3. Full duplex merupakan pengembangan dari half duplex, prinsip yang diadopsi sama

namun dalam full duplex komunikasi berjalan dua arah penuh (tidak bergantian). Sebagai contoh: telepon genggam.


(30)

2.5.

Modulasi

Modulasi adalah proses perubahan suatu gelombang periodik sehingga menjadikan suatu sinyal mampu membawa suatu informasi. Dengan proses modulasi, suatu informasi (biasanya berfrekuensi rendah) bisa dimasukkan ke dalam suatu gelombang pembawa, biasanya berupa gelombang sinus berfrekuensi tinggi. Terdapat tiga parameter kunci pada suatu gelombang sinusoidal, yaitu: amplitudo, fase, dan frekuensi. Ketiga parameter tersebut dapat dimodifikasi sesuai dengan sinyal informasi (berfrekuensi rendah) untuk membentuk sinyal yang termodulasi [10].

Peralatan untuk melaksanakan proses modulasi disebut modulator, sedangkan peralatan untuk memperoleh informasi awal (kebalikan dari proses modulasi) disebut demodulator dan peralatan yang melaksanakan kedua proses tersebut disebut modem (modulator demodulator) [10].

Informasi yang dikirim bisa berupa data analog maupun digital sehingga berdasarkan informasi yang bisa dikirimkan, modulasi dapat dibagi kedalam dua jenis, yaitu: modulasi analog dan modulasi digital [10].

2.6.

Modulasi Digital

Dalam hal komunikasi mobile, kemajuan teknologi di bidang Very Large-Scale Integration (VLSI) dan Digital Signal Processing (DSP) menjadikan modulasi dengan sistem digital terasa lebih efektif daripada modulasi menggunakan sistem analog. Modulasi digital menawarkan banyak keuntungan dibandingkan dengan modulasi analog, antara lain seperti [10]:

1. Daya tahan terhadap noise dan gangguan saluran lebih besar. 2. Lebih mudah dalam melakukan multiplexing.

Biasanya sinyal modulasi digital ditulis sebagai besaran waktu atau besaran simbol untuk pulsa, dimana masing simbol mempunyai keadaan terbatas m. Dan masing-masing simbol mewakili banyaknya n bit informasi, dimana n = log m bit/simbol [10].

Secara keseluruhan semua teknik modulasi digital menggunakan skema diatas, jika ada perbedaan antara satu teknik dengan teknik yang lain tidak akan mengubah skema modulasi diatas. Beberapa teknik yang sering digunakan pada proses modulasi digital antara lain: Amplitude Shift Keying, Frequency Shift Keying, dan Phase Shift Keying [10].


(31)

2.7.

Frequency Shift Keying

Frequency Shift Keying (FSK) adalah salah satu teknik modulasi digital dimana sinyal informasi digital di transmisi melalui sebuah sinyal pembawa yang frekuensinya berubah sesuai dengan perubahan sinyal informasi. Salah satu jenis yang paling sederhana dari FSK adalah Binary FSK (BFSK). Pada BFSK, variasi frekuensi sinyal pembawa merepresentasikan bit 1 atau 0 [11].

= { � cos �� cos � (2.1) Dimana merupakan frekuensi yang merepresentasikan bit 0, sedangkan merepresentasikan bit 1. Istilah pergeseran frekuensi (frequency shift) dikenal sebagai perbedaan dari kedua sinyal pembawa ini [11]. Gambar 2.5 memperlihatkan bagaimana sinyal informasi digital berubah saat melalui proses transmisi data dalam teknik modulasi FSK.

Gambar 2.5 (a) Sinyal Digital (b) Sinyal Modulasi FSK [11]

2.8.

Atmega 2560

ATmega 2560 merupakan sebuah mikrokontroler dengan arsitektur Reduced Instruction Set Computer (RISC) yang memroses sebuah instruksi pada setiap satu siklus pulsa. Spesifikasi utama yang dimiliki ATmega 2560 antara lain seperti [12]:

1. Tegangan operasi 4,5 – 5,5 volt.

2. Jumlah Input /Output sebanyak 54 buah. 3. ADC 10 bit sebanyak 16 saluran.

4. PWM 8 bit sebanyak 4 saluran dan PWM 16 bit sebanyak 12 saluran. 5. Satu unit port komunikasi SPI dan dua unit port USART.

6. Memiliki EEPROM sebesar 4 Kb, Internal SRAM sebesar 8 Kb, dan memori flash sebesar 256 Kb.


(32)

Gambar 2.6 Konfigurasi Pin Atmega 2560 [4]

2.8.1. Serial Peripheral Interface

Serial Peripheral Interface (SPI) merupakan salah satu jenis transmisi data serial tidak sinkron yang menghubungkan dua atau lebih perangkat mikrokontroler, dimana satu perangkat berperan sebagai master (tuan) dan perangkat lainnya sebagai slave (hamba). Hubungan antara tuan dan hamba dapat dilihat pada Gambar 2.7. Terdapat dua buah register geser (shift register) 8 bit yang mempunyai peran masing-masing sebagai tuan dan hamba. Kedua register tersebut bekerja dengan masukan pulsa dari sebuah pembangkit pulsa yang dimiliki oleh tuan [12].

Secara umum ada empat jalur yang menghubungkan register tuan dengan hamba, yaitu: Source Clock (SCK), Master Output Slave Input (MOSI), Master Input Slave Output (MISO), dan Select Slave (SS). Masing-masing jalur memilki fungsi dan kegunaan yang berbeda, berikut ini adalah fungsi masing-masing jalur pada komunikasi SPI [12]:

1. SCK untuk mendistribusikan pulsa masukan kepada tuan dan hamba. 2. MOSI merupakan jalur data dari tuan menuju hamba.

3. MISO merupakan jalur data dari hamba menuju tuan. 4. SS yang berfungsi mengaktifkan hamba.

Pada komunikasi SPI data-data berpindah dari tuan menuju hamba ataupun sebaliknya. Data-data tersebut berpindah satu-persatu bit seiring dengan masukan pulsa dari pembangkit pulsa. Proses perpindahan data seperti ini terlihat seperti bergeser dari tuan


(33)

menuju hamba, karena itu jenis register tuan dan hamba disebut juga dengan register geser. Proses perpindahan satu siklus data akan berakhir saat telah mencapai delapan kali pergeseran [12].

Gambar 2.7 Hubungan Tuan dan Hamba pada Sistem Komunikasi SPI [12]

Pengaturan komunikasi SPI pada ATmega 2560 melibatkan beberapa register, seperti: SPCR (SPI Control Register), SPSR (SPI Status Register), dan SPDT (SPI Data Register).

2.8.1.1 SPCR – SPI Control Register

Gambar 2.8 Register Kontrol SPI (SPCR) [12]

Gambar 2.8 memperlihatkan isi dari SPCR. SPCR terdiri dari delapan buah bit yang masing-masing memiliki fungsi dan penjelasan sebagai berikut [12]:

1. Bit 7 – SPIE: SPI Interrupt Enable. SPIE merupakan bit yang mengaktifkan

fasilitas interupsi pada SPI.

2. Bit 6 – SPE: SPI Enable. SPE merupakan bit yang dapat mengaktifkan atau

menonaktifkan komunikasi SPI. Jika SPE bernilai 1 (tinggi) maka komunikasi SPI akan aktif dan bisa digunakan, sedangkan jika bernilai 0 (rendah) maka komunikasi SPI tidak aktif.


(34)

3. Bit 5 DORD: Data Order. DORD merupakan bit yang mengatur urutan

pengiriman data saat komunikasi data antara tuan dan hamba berlangsung. Jika DORD bernilai 1 maka urutan pengiriman dimulai dari bit Low Sign Bit (LSB) sedangkan jika bernilai 0 maka urutan pengiriman data dimulai dari bit Most Sign Bit (MSB).

4. Bit 4 – MSTR: Master or Slave Select. MSTR merupakan bit yang mengatur posisi

dari mikrokontroler apakah akan bertindak sebagai tuan atau bertindak sebagai hamba. Jika MSTR bernilai 1 maka mikrokontroler akan bertindak sebagai tuan, sedangkan jika MSTR bernilai 0 maka mikrokontroler akan bertindak sebagai hamba. Bit MSTR tidak akan dapat diatur jika pin SS di konfigurasi sebagai masukan, karena apabila pin SS di konfigurasi sebagai masukan maka penentuan mikrokontroler bertindak sebagai tuan atau hamba dilakukan dengan cara membaca level tegangan pada pin SS.

5. Bit 3 – CPOL: Clock Polarity. CPOL merupakan bit yang mengatur jenis tepian

pulsa yang digunakan sebagai acuan pembacaan data. Jika CPOL bernilai 1 maka pembacaan data dilakukan setiap tepian turun, sedangkan jika bernilai 0 pembacaan data setiap tepian naik.

6. Bit 2 – CPHA: Clock Phase. CPHA merupakan bit yang mengatur fase pulsa yang

digunakan, yaitu fase pulsa positif atau fase tepian pulsa negatif. Jika CPHA bernilai 1 maka fase pulsa positif diaktifkan, sedangkan jika CPHA bernilai 0 maka fase pulsa negatif yang diaktifkan.

7. Bit 1, 0 - SPR1, SPR0: SPI Clock Rate Select 1 and 0. Kedua bit ini mengatur

kecepatan pulsa untuk komunikasi. Pengaturan ini hanya diberikan kepada mikrokontroler yang bertindak sebagai tuan dan tidak diberikan kepada hamba. Sehingga mikrokontroler yang bertindak sebagai hamba hanya bisa menerima pulsa hasil dari tuan dan tidak bisa menghasilkan pulsa sendiri.

2.8.1.2 SPSR – SPI Status Register


(35)

Gambar 2.9 memperlihatkan isi dari SPSR. SPSR terdiri dari delapan buah bit yang masing-masing memiliki fungsi dan penjelasan sebagai berikut [12]:

1. Bit 7 – SPIF: SPI Interrupt Flag. SPIF merupakan bit yang memberikan tanda jika

proses pengiriman data 1 byte (8 bit) sudah selesai, karena pengiriman data dalam komunikasi SPI dilakukan per 8 bit. Jika proses pengiriman data telah selesai maka SPIF akan bernilai 1 (tinggi), dan saat proses pengiriman data belum genap 8 bit, maka SPIF akan selalu bernilai 0 (rendah).

2. Bit 6 – WCOL: Write Collision Flag. WCOL merupakan bit yang memberikan

tanda jika terjadi proses pembacaan data pada SPDR selama komunikasi berjalan. Selama proses pembacaan data berlangsung bit WCOL akan bernilai 1.

3. Bit 5:1 – Reserved Bit. Bit-bit ini diabaikan dan harus selalu bernilai 0 (rendah).

4. Bit 0 – SPI2X: Double SPI Speed Bit. SPI2X merupakan bit yang menjadikan

kecepatan pulsa menjadi dua kali lipat lebih cepat, seperti terlihat pada Tabel 2.1. Hal ini berarti kecepatan komunikasi bertambah cepat dua kali lipat.

Tabel 2.1 Hubungan Kecepatan Pulsa dengan Frekuensi Osilasi [12]

SPI2x SPR1 SPR0 Frekuensi Pulsa

0 0 0 fosc/4

0 0 1 fosc/16

0 1 0 fosc/64

0 1 1 fosc/128

1 0 0 fosc/2

1 0 1 fosc/8

1 1 0 fosc/32

1 1 1 fosc/64

2.8.1.3 SPDR – SPI Data Register

SPDR merupakan register yang digunakan untuk menyimpan data 8 bit pada komunikasi SPI [12]. Jika data yang dikirimkan lebih dari 8 bit data maka data akan tetap diterima keseluruhan, namun dipisahkan per 8 bit. Gambar 2.10 memperlihatkan isi SPDR.


(36)

2.8.2. Analog to Dogotal Converter

Analog to Digital Converter (ADC) adalah pengubah masukan sinyal analog menjadi kode-kode digital. ADC banyak digunakan sebagai pengatur proses industri, komunikasi digital dan rangkaian pengukuran atau pengujian yang menghubungkan sensor-sensor dengan sistem komputer [5].

Gambar 2.11 ADC dengan (a) Sampling Rendah dan (b) Sampling Tinggi [5]

ADC memiliki dua karakter prinsip, yaitu kecepatan sampling dan resolusi. Kecepatan sampling suatu ADC menyatakan seberapa sering sinyal analog di konversikan ke bentuk sinyal digital pada selang waktu tertentu. Kecepatan sampling biasanya dinyatakan dalam Sample per Second (SPS) [5].

Resolusi ADC menentukan ketelitian nilai hasil konversi ADC. Sebagai contoh: ADC 8 bit akan memiliki keluaran 8 bit data digital, ini berarti sinyal masukan dapat dinyatakan dalam 255 (2n – 1) nilai diskret. ADC 12 bit memiliki 12 bit keluaran data digital, ini berarti sinyal masukan dapat dinyatakan dalam 4096 nilai diskret. Dari contoh diatas ADC 12 bit akan memberikan ketelitian nilai hasil konversi yang jauh lebih baik daripada ADC 8 bit [5].

Prinsip kerja ADC adalah mengonversi sinyal analog ke dalam bentuk besaran yang merupakan rasio perbandingan sinyal masukan dan tegangan referensi. Sebagai contoh, bila tegangan referensi 5 volt, tegangan masukan 3 volt, rasio masukan terhadap referensi adalah 60%. Jadi, jika menggunakan ADC 8 bit dengan skala maksimum 255, akan didapatkan sinyal digital sebesar 60% x 255 = 153 (bentuk desimal) atau 10011001 (bentuk biner) [5].

� � = � � × � �� � � � � � � (2.2)

= ×

= �


(37)

Beberapa mikrokontroler telah menambahkan fitur ADC kedalam sistemnya, tidak terkecuali juga IC ATmega 2560 yang memiliki 16 port ADC dengan resolusi 10 bit. Beberapa register yang digunakan untuk mengaktifkan ADC pada IC ATmega 2560, antara lain adalah: ADMUX, ADCSRB, ADCSRA, ADCL, ADCH, DIDR0, dan DIDR2 [12].

2.8.2.1 ADMUX – ADC Multiplexing Selection Register

Gambar 2.12 ADC Multiplexing Selection Register [12]

Gambar 2.12 memperlihatkan bit-bit yang terdapat pada ADMUX dengan penjelasan masing-masing bit sebagai berikut:

1. Bit 7:6 – REF1:0: Reference Selection Bits. Bit-bit ini digunakan untuk memilih

tegangan referensi ADC dengan pengaturan seperti terlihat pada Tabel 2.2.

2. Bit 5 – ADLAR: ADC Left Adjust Result. ADLAR merupakan bit untuk mengatur

penjajaran hasil konversi ADC. Jika ADLAR bernilai 1 maka hasil konversi akan dimulai dari MSB, sedangkan jika bernilai 0 akan dimulai dari LSB.

3. Bit 4:0 – MUX 4:0: Analog Channel and Gain Selection Bits. Keempat bit ini

merupakan bit yang mengatur masukan analog yang akan dihubungkan ke ADC.

Tabel 2.2 Pilihan Tegangan Referensi pada ADC [12] REFS1 REFS0 Pilihan Tegangan Referensi

0 0 AREF, VREF dimatikan

0 1 AVCC dengan kapasitor eksternal pada pin AREF 1 0 Tegangan referensi dalam sebesar 1,11 volt 1 1 Tegangan referensi dalam sebesar 2,56 volt

2.8.2.2 ADCSRA – ADC Control and Status Register A


(38)

Gambar 2.13 memperlihatkan bit-bit yang terdapat pada ADCSRA dengan penjelasan masing-masing bit sebagai berikut:

1. Bit 7 – ADEN: ADC Enable. Jika bit ini bernilai 1 maka fitur ADC akan aktif.

Menuliskan nilai 0 pada bit ini akan mematikan fitur ADC. Nilai konversi akan secara langsung dihentikan jika fitur ADC dimatikan pada saat proses konversi dilakukan.

2. Bit 6 – ADSC: ADC Start Conversion. Dengan memberikan nilai 1 pada bit ini maka

proses konversi akan dimulai untuk masing-masing nilai jika menggunakan mode konversi tunggal dan mengkorversi nilai awal jika menggunakan mode free running.

3. Bit 5 – ADATE: ADC Auto Trigger Enable. Ketika bit ini bernilai 1, picuan pada

ADC akan aktif. ADC akan memulai konversi nilainya pada pinggiran positif dari sinyal picuan yang dipilih.

4. Bit 4 – ADIF: ADC Interupt Flag. Bit ini akan bernilai 1 saat konversi nilai ADC

telah selesai dan data pada register ADCL dan ADCH telah diperbaharui. Nilai pada ADIF akan terhapus ketika ADC mengeksekusi sebuah interupsi yang baru.

5. Bit 3 – ADIE: ADC Interupt Enable. Menuliskan nilai 1 pada bit ini akan

mengaktifkan fitur interupsi konversi nilai pada ADC.

6. Bit 2:0 – ADPS 2:0: ADC Prescaler Select Bits. Bit-bit ini menentukan nilai pembagi

antara frekuensi XTAL dengan masukan pulsa pada ADC.

Tabel 2.3 Pilihan Nilai Prescaler ADC [12] ADPS2 ADPS1 ADPS0 Faktor Pembagi

0 0 0 2

0 0 1 2

0 1 0 4

0 1 1 8

1 0 0 16

1 0 1 32

1 1 0 64

1 1 1 128

2.8.2.3 ADCSRB – ADC Control and Status Register B


(39)

Gambar 2.14 memperlihatkan bit-bit yang terdapat pada ADCSRB dengan penjelasan masing-masing bit sebagai berikut:

1. Bit 7, 5, 4 – Reserved bit. Bit ini harus selalu bernilai 0.

2. Bit 3 – MUX5: Analog Channel and Gain Selection Bit. Bit ini digunakan bersama

dengan bit MUX4:0 pada register ADMUX untuk menentukan masukan analog menuju ADC.

3. Bit 2:0 – ADTS2:0: ADC Auto Trigger Source. Jika bit ADATE pada ADCSRA

bernilai 1, nilai pada bit-bit ini akan menentukan sumber picuan konversi ADC seperti terlihat pada Tabel 2.4.

Tabel 2.4 Pilihan Sumber Picuan ADC [12]

ADTS2 ADTS1 ADTS0 Sumber Picuan

0 0 0 Mode Free Running

0 0 1 Komparator Analog

0 1 0 Permintaan Interupt eksternal 0

0 1 1 Timer/Counter 0 dengan perbandingan match A

1 0 0 Timer/Counter 0 overflow

1 0 1 Timer/Counter 1 dengan perbandingan match A

1 1 0 Timer/Counter 1 overflow

1 1 1 Timer/Counter 1 capture Event

2.8.2.4 ADCL dan ADCH – ADC Data Register

Gambar 2.15 ADC Data Register ketika ADLAR Bernilai 1 (a) dan Bernilai 0 (b) [12]

Ketika konversi nilai ADC sudah selesai, hasilnya bisa ditemukan di kedua register ADCL dan ADCH. Kedua register ini memiliki kapasitas 16 bit data. Dan pembacaan nilai pada kedua register tersebut dipengaruhi oleh nilai pada bit ADLAR. Penjelasan bit-bit yang ada pada ADCL dan ADCH adalah sebagai berikut [12]:

(a)


(40)

1. ADC9:0 – ADC Conversion Result. Bit-bit ini berisi data hasil konversi nilai ADC,

dengan perhitungan seperti persamaan berikut ini. � = ���. 4

�� (2.3)

2.9.

Modul Transmitter RFM02

RFM02 merupakan modul transmitter yang bekerja menggunakan modulasi FSK untuk pita frekuensi kerja 433/868/915 Mhz. Modul ini memilki modul pasangan RFM01 sebagai modul receiver. Kedua modul ini mampu berkomunikasi sampai sejauh 300m di udara terbuka. Spesifikasi utama dari modul transmitter RFM02 adalah sebagai berikut [13]:

1. Tegangan suplai DC 2,2 sampai 5,4 volt.

2. Antarmuka sistem komunikasi berbasis Serial Peripheral Interface (SPI).

3. Menggunakan teknologi Phase Lock Loop (PLL) dengan resolusi 2,5 KHz per step. 4. Menggunakan kristal osilasi 10 MHz untuk PLL.

5. Konsumsi daya rendah.

6. Kecepatan transmisi data digital mencapai 115,2 kbps.

7. Terdapat fitur: wake-up timer, automatic antenna tuning, low battery detection, dan differential antenna output.

Gambar 2.16 memperlihatkan konfigurasi kaki-kaki yang terdapat pada modul transmitter RFM02 dan kegunaan dari kaki-kaki tersebut dijelaskan pada Tabel 2.5.

Gambar 2.16 Konfigurasi kaki RFM02 [13]

Untuk dapat mengontrol fungsi-fungsi yang terdapat pada modul transmitter RFM02, pengguna perlu memberikan instruksi melalui port SDI. Tabel 2.7 memperlihatkan instruksi-instruksi yang dimiliki oleh modul transmitter RFM02 untuk melakukan fungsinya.


(41)

Beberapa instruksi utama yang digunakan untuk proses pengiriman dan penerimaan data modul ini adalah: Configuration Setting Command, Power Management Command, Frequency Setting Command, dan Data Transmit Command.

Tabel 2.5 Fungsi Kaki Modul Transmitter RFM02 [13]

Kaki Keterangan Fungsi

FSK DI Masukan data FSK

VDD S Suplai tegangan positif

SDI DI Masukan data SPI

SCK DI Masukan pulsa SPI

nSEL DI Pemilihan chip (aktif rendah)

SDO DO Keluaran data serial dengan bus nIRQ DO Keluaran interrupt (aktif rendah)

CLK DO Keluaran pulsa untuk mikrokontroler tambahan

GND S Pembumian

2.9.1. Configuration Setting Command

Gambar 2.17 Keterangan Bit-bit pada Configuration Setting Command [13]

Configuration setting command merupakan perintah yang diberikan kepada modul transmitter RFM02 untuk menentukan konfigurasi pengaturan beberapa parameter, seperti: pemilihan penggunaan pita frekuensi, pemilihan frekuensi pulsa keluaran, dan penggunaan nilai kapasitansi beban kristal. Nilai awal dari instruksi ini saat modul dihidupkan adalah 8008h [13].

Dengan memberikan nilai 1 pada bit 12 hingga bit 0 yang ada pada configuration setting command maka akan mengaktifkan fungsi dari bit tersebut. Tabel 2.6, 2.7, dan 2.8 menjelaskan fungsi masing-masing bit 12 hingga bit 1 pada configuration setting command [13]. Bit 12 dan bit 11 digunakan untuk memilih pita frekuensi kerja, bit 10 sampai bit 8 digunakan untuk memilih frekuensi pulsa keluaran, bit 7 sampai bit 4 digunakan untuk memilih nilai kapasitansi XTAL, sedangkan bit 3 sampai bit 0 digunakan untuk menghitung frekuensi kerja dari modul transmitter RFM02. Perhitungan frekuensi kerja modul ini dapat dilihat pada persamaan berikut ini:


(42)

Dimana nilai adalah nilai tengah frekuensi yang dapat dihitung seperti terlihat pada persamaan 2.5, SIGN merupakan nilai masukan FSK, dan M merupakan nilai desimal dari bit-bit m2 sampai dengan m0 yang dimasukkan nilainya pada configuration setting command. Jika nilai , SIGN, dan M diketahui maka nilai dari bisa dicari berdasarkan persamaan 2.4.

Tabel 2.6 Keterangan Fungsi Bit x3, x2, x1, dan x0 [13] x3 x2 x1 x0 Kapasitansi Beban XTAL (pF)

0 0 0 0 8,5

0 0 0 1 9,0

0 0 1 0 9,5

0 0 1 1 10,0

1 1 1 0 15,5

1 1 1 1 16,0

Tabel 2.7 Keterangan Fungsi bit d2, d1, dan d0 [13] d2 d1 d0 Frekuensi Pulsa Keluaran (MHz)

0 0 0 1

0 0 1 1.25

0 1 0 1.66

0 1 1 2

1 0 0 2.5

1 0 1 3.33

1 1 0 5

1 1 1 10

Tabel 2.8 Keterangan Fungsi Bit b1 dan b0 [13] b1 b0 Pita Frekuensi (MHz)

0 0 315

0 1 433

1 0 868

1 1 915

2.9.2. Power Management Command


(43)

Power management command merupakan instruksi untuk mengatur penggunaan sistem yang ada pada blok pengirim. Sebelum modul transmitter memulai pengiriman data, bit-bit yang terdapat pada power management command harus diatur terlebih dahulu. Pada instruksi ini memuat beberapa bit yang memiliki fungsinya masing-masing. Tabel 2.9 memperlihatkan fungsi masing-masing bit pada power management command [13].

Tabel 2.9 Fungsi Bit-bit pada Power Management Command [13]

Bit Fungsi

a1 Mengatur jenis kontrol synthesizer dan XTAL a0 Mengaktifkan penguat daya

ex Mengaktifkan XTAL

es Mengaktifkan synthesizer ea Mengaktifkan penguat daya eb Mengaktifkan pendeteksi baterai

et Mengaktifkan wake-up timer dc Mematikan keluaran pulsa

2.9.3. Frequency Stting Command

Gambar 2.19 Keterangan Bit-bit pada Frequency Setting Command [13]

Bit 11 sampai bit 0 merupakan bit-bit yang merepresentasikan nilai dari F, dimana nilai F adalah nilai frekuensi yang diberikan ke frequency setting command dan harus berada pada rentang 96 sampai 3903. Jika nilai F berada diluar cakupan maka nilai sebelumnya akan dipertahankan. Nilai tengah dari frekuensi dapat dihitung sebagai berikut [13]:

= �� ∗ ∗ +4 2.5

Dimana nilai C1 dan C2 merupakan besaran yang sudah ditentukan oleh masing-masing pilihan pita frekuensi seperti terlihat pada Tabel 2.10.

Tabel 2.10 Nilai C1 dan C2 berdasarkan Pita Frekuensi [13] Pita Frekuensi (MHz) C1 C2

433 1 43

868 2 43


(44)

2.10.

Modul Transceiver RFM12

RFM12 merupakan modul FSK multichannel transceiver buatan HOPE ELECTRONICS. Terdapat beberapa jenis pita frekuensi yang disediakan yaitu: 315, 433, 868, dan 915 MHz. Untuk modul RFM12-433 jenis pita frekuensi yang digunakan adalah 433 MHz, dengan cakupan frekuensi antara 430,24 MHz – 439,75 MHz. Spesifikasi dari modul transceiver RFM12 adalah sebagai berikut [14]:

1. Tegangan suplai DC antara 2,2 sampai 5,4 volt.

2. Antarmuka sistem komunikasi berbasis Serial Peripheral Interface (SPI). 3. 2 jenis Keluaran RSSI, yaitu: analog dan digital.

4. Kecepatan transmisi mencapai 256 kbps untuk analog dan 115,2 kbps untuk digital. 5. Terdapat fitur Phase Lock Loop (PLL).

6. Sinyal pulsa dan reset dari mikrokontroler. 7. Konsumsi daya rendah.

8. 8 bit register data TX dan 16 bit FIFO data RX.

9. Terdapat fitur: wake-up timer, automatic frequency control, data quality detection, internal data filtering dan clock recovery.

Konfigurasi kaki-kaki modul transceiver RFM12 dapat dilihat pada Gambar 2.20 dengan penjabaran fungsi setiap kaki dijelaskan pada Tabel 2.11.

Gambar 2.20 Konfigurasi Kaki RFM12 [14]

Untuk dapat mengontrol fungsi-fungsi dan mengaktifkan penguat daya pengirim dan penerima yang terdapat pada modul transceiver RFM12, pengguna perlu memberikan instruksi melalui port SDI (MOSI pada mikrokontroler). Instruksi tersebut diberikan dengan memberikan sebuah nilai heksadesimal tertentu sesuai dengan ketetapan yang sudah ditentukan.


(45)

Beberapa instruksi utama yang digunakan modul transceiver RFM12 untuk proses pengiriman dan penerimaan data modul ini adalah: Configuration Setting Command, Power Management Command, Frequency Setting Command, Transmitter Register Write Command, Receiver Control Command, FIFO and Reset Mode Command, dan Receiver FIFO Read Command.

Tabel 2.11 Fungsi Kaki Modul Transceiver RFM12 [14]

2.10.1.Configuration Setting Command

Gambar 2.21 Keterangan Bit-bit pada Configuration Setting Command [14]

Configuration setting command merupakan perintah yang diberikan kepada modul transceiver RFM12 untuk menentukan konfigurasi pengaturan beberapa parameter, seperti: pemilihan penggunaan pita frekuensi, pengaktifan register data dan jenis FIFO, dan penggunaan nilai kapasitansi beban kristal. Nilai awal dari instruksi ini saat modul dihidupkan adalah 8008h, yang berarti pengaturan nilai kapasitansi beban kristal awal diatur pada nilai 13pF [14]. Nantinya nilai kapasitansi kristal dapat diubah-ubah dengan memasukan pengaturan digit pada bit x3 sampai x0 seperti terlihat pada tabel 2.13.

Kaki Keterangan Fungsi

nINT/VDI DI/DO Masukan Interrupt (aktif rendah) / indikator data benar

VDD S Suplai tegangan positif

SDI DI Masukan data SPI

SCK DI Masukan pulsa SPI

nSEL DI Pemilihan chip (aktif rendah)

SDO DO Keluaran data serial dengan bus

nIRQ DO Keluaran interrupt (aktif rendah)

FSK/DATA/nFFS DI/DO/DI Masukan data FSK/keluaran data/pemilihan FIFO

DCLK/CFIL/FFIT DO/AIO/DO

Keluaran pulsa (bukan FIFO)/kapasitor filter (untuk analog)/interrupt FIFO, saat FIFO

berlogika 1

CLK DO Keluaran pulsa untuk mikrokontroler

tambahan

nRES DIO Me-reset keluaran (aktif rendah)


(46)

Bit 7 hingga bit 0 merupakan parameter yang nilainya dapat diubah. Dengan memberikan nilai 1 pada bit maka akan mengaktifkan fungsi dari bit tersebut [14]. Bit el digunakan untuk mengaktifkan penggunaan register data, sedangkan bit ef digunakan untuk mengaktifkan mode FIFO. Jika Bit el bernilai 1 menandakan bahwa register data sedang digunakan dan jika bit ef bernilai 0 maka pin DATA dan DCLK akan digunakan sebagai keluaran data dan pulsa [14]. Tabel 2.12 menjelaskan fungsi mulai dari bit b1 dan b0 pada configuration setting command.

Tabel 2.12 Keterangan Bit b1 dan b0 [14] b1 b0 Pita Frekuensi (MHz)

0 0 315

0 1 433

1 0 868

1 1 915

Tabel 2.13 Keterangan Bit x3, x2, x1, dan x0 [14] x3 x2 x1 x0 Kapasitansi Beban XTAL (pF)

0 0 0 0 8.5

0 0 0 1 9.0

0 0 1 0 9.5

0 0 1 1 10.0

1 1 1 0 15.5

1 1 1 1 16.0

2.10.2.Power Management Command

Gambar 2.22 Keterangan Bit-bit pada Power Management Command [14]

Penjelasan mengenai bit-bit yang terdapat pada instruksi power management command dapat dilihat pada Tabel 2.14. Nilai awal instruksi power management command saat modul dihidupkan adalah 8208h yang menandakan bahwa kristal osilasi sudah diaktifkan dengan nilai awal 13pF dan nilai osilasi kristal dapat diubah dengan mengatur konfigurasi bit x3 sampai x0 [14].


(47)

Tabel 2.14 Fungsi Bit-bit pada Power Management Command [14]

Bit Fungsi

er Pengaktifan keseluruhan receiver ebb Pengaktifan rangkaian baseband receiver

et Switch untuk PLL dan power amplifier, serta untuk memulai transmisi jika register TX dihidupkan

es Pengaktifan synthesizer

ex Pengaktifan kristal osilasi eb Pengaktifan alat pendeteksi baterai ew Pengaktifan wake-up timer

dc Menonaktifkan keluaran pulsa

2.10.3.Transmitter Register Write Command

Gambar 2.23 Keterangan Bit-bit pada Transmitter Register Write Command [14]

Dengan menuliskan perintah ini, pengguna akan dapat menulis 8 bit data (t7 sampai t0) menuju ke register pengirim data, dengan syarat bit el pada configuration control command harus bernilai 1. Nilai awal instruksi ini saat modul dihidupkan adalah B8AAh. Nila B8h merupakan nilai inisialisasi untuk pengiriman 8 bit data. Nilai dari 8 bit data akan mengikuti nilai inisialisasi tersebut. Jika data yang akan dikirimkan lebih dari 8 bit maka proses pengiriman data dapat diulang sampai seluruh data berhasil dikirimkan [14].

2.10.4.FIFO and Reset Mode Command

Gambar 2.24 Keterangan Bit-bit pada FIFO and Reset Mode Command [14]

Nilai awal instruksi ini saat modul dihidupkan adalah 0xCA80h. berikut ini adalah fungsi masing-masing bit pada instruksi FIFO and reset mode command [14]:

1. Bit 7:4 - FIFO IT Level. FIFO akan menghasilkan IT ketika jumlah data yang diterima mencapai level ini


(48)

2. Bit 2 – al. Bit ini digunakan untuk memilih kondisi masukan FIFO saat memulai pengisian data. Jika bernilai 0 maka FIFO akan diisi dengan karakter sinkonisasi, sedangkan jika bernilai 1 maka masukan akan selalu diisi oleh data.

3. Bit 1 – ff. Dengan memberikan nilai 1 pada bit ini akan mengaktifkan FIFO sesaat setelah karakter sinskronisasi diterima.

4. Bit 0 – dr. Bit ini akan mematikan mode reset jika diberi nilai 1.

2.10.5.Receiver FIFO Read Command

Gambar 2.25 Keterangan Bit-bit pada Receiver FIFO Read Command [14]

Dengan menuliskan nilai B000h pada receiver FIFO read command, kontroler akan membaca 8 bit data dari penerima data FIFO, dengan syarat bit ef pada configuration control command harus bernilai 1 [14].

Pembacaan data 8 bit dilakukan setelah instruksi B000h dituliskan melalui pin SDI. Jika data yang di baca lebih dari 8 bit maka proses pembacaan data akan berulang sampai ada karakter yang menandai berakhirnya pembacaan data [14].


(49)

29

BAB 3

RANCANGAN PENELITIAN

3.1.

Konsep Perangcangan

Perancangan perangkat GCS mengacu pada blok diagram model sistem pada Gambar 3.1. Perangkat GCS menggunakan dua buah modul komunikasi, karena saat wahana beroperasi pada pengendalian manual komunikasi data dan komunikasi perangkat navigasi berjalan bersamaan.

Gambar 3.1 Blok Diagram Sistem GCS (Bagian di dalam Kotak dengan Garis Putus-putus)

Blok diagram yang tersusun di dalam GCS memiliki peranannya masing-masing. Berikut ini adalah penjelasan fungsional masing-masing blok diagram pada GCS:

a. Tombol power digunakan untuk mengaktifkan atau menonaktifkan perangkat GCS. b. Keypad 4x4 digunakan untuk memilih jenis pengendalian wahana dan memberikan

koordinat tujuan (latitude-longitude) saat wahana dioperasikan pada pengendalian autonomous. Gambar 3.2 menunjukkan tombol-tombol yang terdapat pada keypad 4x4. Mikro- kontroler A Mikro-kontroler B Perangkat navigasi Keypad 4x4 Sensor GPS dan Kompas Sensor Inertial Measurement Komunikasi perangkat navigasi Komunikasi Transceiver A Transceiver B Layar Penampil

Motor 1, 2, 3, dan 4 ESC 1, 2, 3,

dan 4 data Transmitter Receiver Tombol power

III


(50)

Saat memilih jenis pengendalian, dengan menekan tombol 1 maka pengguna akan mengaktifkan pengendalian manual dan dengan menekan tombol 2 maka pengguna akan mengaktifkan pengendalian autonomous.

Nilai latitude-longitude dapat diberikan dengan menekan angka-angka yang tertera pada keypad. Dan dengan menekan tombol # maka koordinat akan dikunci kemudian dikirimkan ke wahana.

Gambar 3.2 Keypad 4x4 [16]

c. Pada perangkat GCS juga dilengkapi dengan perangkat navigasi yang digunakan pada saat pengendalian manual diaktifkan. Perangkat navigasi memuat dua buah tuas dengan masing-masing tuas memiliki 4 Degrees of Freedom (DOF).

Tuas pertama akan menggerakkan wahana ke atas dan ke bawah serta memutar ke kanan dan ke kiri, sedangkan tuas kedua akan menggerakkan wahana ke depan dan ke belakang serta ke kanan dan ke kiri.

d. Mikrokontroler merupakan komponen yang akan memproses data-data yang berkaitan dengan wahana. Data-data tersebut dijabarkan pada Tabel 3.1.

e. Penampil layar berfungsi sebagai media visualisasi data-data yang diterima dari wahana pada GCS. Keterangan data yang divisualisasikan pada layar penampil terdapat pada Tabel 3.1.

f. Modul transceiver digunakan sebagai pemancar (transmitter) atau penerima (receiver) secara bergantian, tergantung dari mikrokontroler mengirimkan data ke wahana atau menerima data dari wahana.

g. Modul transmitter diaktifkan saat pengguna memilih jenis pengendalian manual. Modul ini akan mengirimkan data navigasi dari GCS menuju wahana. Sedangkan komunikasi data tetap dilakukan melalui modul transceiver.


(51)

Tabel 3.1 Keterangan Data-Data yang Diolah pada GCS

No Jenis

Pengendalian

Data yang dikirim ke wahana

Data yang diterima dari wahana

(ditampilkan pada LCD)

1 Manual

Arah navigasi kiri Ketinggian wahana Arah navigasi atas Kecepatan motor 1 Arah navigasi kanan Kecepatan motor 2 Arah navigasi bawah Kecepatan motor 3 Putar kiri Kecepatan motor 4 Putar kanan

Naik Turun

2 Autonomous Koordinat tujuan Koordinat wahana

3.2.

Rancangan Perangkat Keras

Perangkat keras yang terdapat pada prototipe GCS terbagi kedalam dua bagian, yaitu: komponen elektronik dan komponen mekanik.

3.2.1. Komponen Elektronik

Berdasarkan blok diagram sistem terlihat seperti pada Gambar 3.1, komponen elektronik yang terdapat pada sistem GCS dapat dibagi kembali menjadi 3 bagian, yaitu: masukan, proses, dan keluaran. Seperti terlihat pada Gambar 3.3, bagian masukan terdiri dari komponen keypad 4x4 dan perangkat navigasi. Keypad 4x4 digunakan dengan alasan mudah ditemukan di pasaran dan memiliki dimensi yang cukup tipis.

Bagian proses terdiri dari mikrokontroler, modul transceiver, dan modul transmitter. Mikrokontroler yang digunakan adalah IC ATmega 2560 dengan shield Arduino karena memilki dua buah port komunikasi SPI yang bisa dihubungkan dengan modul transceiver dan transmitter. Modul RFM12 dan modul RFM02 akan digunakan sebagai modul transceiver dan transmitter karena menyediakan antarmuka SPI untuk berkomunikasi dan memiliki kecepatan transmisi data digital sampai 115.2 kbps.

Bagian keluaran hanya terdiri dari layar penampil. Layar LCD dengan resolusi 16x2 akan digunakan sebagai media penampil karena jumlah karakter pada layar LCD sudah cukup untuk menampilkan data-data yang berhubungan dengan wahana.


(52)

Gambar 3.3 Pembagian Komponen Elektronik

1. Bagian Masukan

Pada bagian masukan terdapat dua buah komponen elektronik, yaitu: keypad dan perangkat navigasi. Keypad 4x4 mempunyai delapan buah kaki, dimana empat buah kaki mewakili tombol secara baris dan 4 buah lainnya mewakili tombol secara kolom. Gambar 3.4 memperlihatkan jalur rangkaian keypad 4 x 4. Kedelapan keluaran tersebut akan dihubungkan ke port D ATmega 2560, karena pada port ini tidak digunakan untuk fitur yang lain.

Gambar 3.4 Rangkaian Keypad 4 x 4 [16]

Perangkat navigasi terdiri dari dua buah tuas, dengan spesifikasi masing-masing tuas memiliki 4 DOF. Perangkat navigasi yang digunakan dalam penelitian ini memanfaatkan kedua buah tuas pada modul joystick Universal Serial Bus (USB). Keluaran data pada modul tersebut akan dihubungkan ke masukan ADC pada mikrokontroler. Gambar 3.6 memperlihatkan gambar rangkaian perangkat navigasi dimana potensiometer-potensiometer tersebut dimanfaatkan dari tuas yang terdapat pada joystick seperti terlihat pada Gambar 3.5

Keluaran

LCD 16x2

Proses

Mikrokontroler MEGA 2560

Modul Transceiver RFM12

Masukan

Keypad 4x4

Perangkat Navigasi

Modul Transmitter RFM02


(53)

Gambar 3.5 Tuas pada Joystick USB [17]

Sinyal ADC dirancang pada rentang 0 – 255 atau 8 bit karena nantinya sinyal ADC ini akan diolah sebagai sinyal PWM yang juga beresolusi 8 bit untuk menggerakkan masing-masing motor pada wahana. Nilai ADC tersebut dapat diperoleh dengan mengaktifkan fitur prescaler pada arduino sebagai mikrokontroler. Prescaler pada fitur ADC perlu diaktifkan untuk mendapatkan nilai ADC 8 bit, hal ini dikarenakan resolusi awal ADC pada arduino adalah 10 bit. Dengan melihat persamaan 3.1, maka nilai tegangan yang perlu dihasilkan oleh masing-masing potensiometer pada perangkat navigasi bisa dicari berdasarkan nilai ADC yang telah dirancang.

� = �� . �

(3.1)

Dimana nilai � merupakan nilai tegangan keluaran dari masing-masing potensiometer pada perangkat navigasi, ADC merupakan besaran 8 bit data yang merepresentasikan besaran PWM yang nantinya akan dikirimkan ke wahana, dan untuk � peneliti menggunakan tegangan referensi sebesar 3,3 volt yang terdapat pada fitur bawaan arduino. Jika nilai ADC dan � telah ditentukan maka nilai �bisa dicari dengan memasukan parameter-parameter yang ada pada persamaan 3.2. Hasil perhitungan tegangan masukan telah dirangkum ke dalam Tabel 3.2 dengan contoh perhitungannya sebagai berikut:

=�� .,

8 , = �. �= ,8 �


(54)

Tabel 3.2 Nilai �dan ADC pada Perangkat GCS No ADC Vin (volt)

1 0 0

2 50 0,161 3 100 0,323 4 255 0,823

Gambar 3.6 Rangkaian pada Perangkat Navigasi

2. Bagian Proses

Pada bagian proses, komponen elektronik dibagi menjadi tiga, yaitu: mikrokontroler, modul transceiver, dan modul transmitter. IC mikrokontroler yang digunakan adalah ATmega 2560 dengan shield arduino revisi yang ketiga. Gambar 3.7 memperlihatkan rangkaian sistem Arduino MEGA 2560 R3 dimana IC ATmega 16 ditambahkan untuk memperbanyak saluran komunikasi yang disediakan. Salah satu saluran komunikasi yang ditambahkan adalah satu buah sambungan komunikasi SPI pada Arduino MEGA 2560 R3. Total sambungan komunikasi SPI pada Arduino MEGA 2560 R3 adalah dua buah, dimana kedua sambungan komunikasi SPI ini akan dibutuhkan untuk sambungan modul transceiver RFM12 dan modul transmitter RFM02.

Untuk dapat berkomunikasi, baik modul transceiver RFM12 maupun modul transmitter RFM02 harus melewati proses pengaturan frekuensi kerja menggunakan perintah “Frequency Setting Command”. Instruksi ini memiliki total 16 bit sama halnya dengan instruksi lain yang terdapat pada masing-masing modul, dengan 4 bit awal nilainya selalu tetap yaitu 1010 diikuti dengan 12 bit yang menyatakan besaran frekuensi yang akan digunakan modul transceiver RFM12 saat beroperasi.


(55)

Gambar 3.7 Rangkaian Sistem Arduino Mega 2560 R3 [15]

Tabel 3.3 memperlihatkan format pengaturan frekuensi pada modul transceiver RFM12 menggunakan perintah “Frequency Setting Command”. Bit 11 sampai bit 0 merepresentasikan nilai F yang dapat dihitung menggunakan persamaan 3.2 yang didapat dari datasheet modul transceiver RFM12.


(56)

Tabel 3.3 Format Pengaturan Frekuensi [14]

Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Data 1 0 1 0 f11 f10 f9 f8 f7 f6 f5 f4 f3 f2 f1 f0

� = ∗ ∗ +4 �� (3.2)

Peneliti memilih menggunakan frekuensi f=432 MHz sebagai frekuensi kerja dari modul transceiver RFM12. Hal ini ditujukan untuk membedakan frekuensi kerja modul transceiver dengan modul transmitter. Pada modul transmitter, frekuensi kerja akan diatur selain frekuensi 432 MHz. Sedangkan nilai C1 dan C2 didapatkan dengan melihat Tabel 3.4.

Tabel 3.4 Parameter Kapasitor untuk Masing-masing Pita Frekuensi [14] Pita Frekuensi (MHz) C1 C2

315 1 31

433 1 43

868 2 43

915 3 30

Karena frekuensi yang peneliti pakai masuk kedalam pita frekuensi 433 MHz maka nilai parameter C1 dan C2 adalah 1 dan 43. Untuk itu nilai F menjadi:

� = ∗ ∗ ( + ) ��

� = 8 ��

Nilai 800 MHz perlu dikonversi kedalam bentuk biner, yang selanjutnya dimasukan kedalam perintah frequency setting command untuk mengaktifkan modul transceiver RFM12 yang bekerja pada frekuensi 432 MHz.

Untuk dapat melaksanakan tugasnya, modul transceiver RFM12 maupun modul transmitter RFM02 telah terintegrasi dengan beberapa komponen pendukung. Gambar 3.8 dan 3.9 memperlihatkan jalur rangkaian pada modul transceiver RFM12 dan modul transmitter RFM02.

Pin-pin masukan dan keluaran yang terdapat pada modul transceiver RFM12 akan dihubungkan pada port B Arduino MEGA 2560, dengan spesifikasi: pin SDI terhubung dengan pin MOSI (PB2), pin SCK terhubung dengan pin SCK (PB1), pin nSEL terhubung dengan pin SS (PB0), pin SDO terhubung dengan pin MISO (PB3), dan pin nIRQ terhubung dengan pin PB4 sebagai keluaran untuk perintah interupsi.


(57)

Gambar 3.8 Rangkaian RFM12 [14] Gambar 3.9 Rangkaian RFM02 [13]

3. Bagian Keluaran

Layar penampil beresolusi 16x2 merupakan komponen elektronik keluaran dari perangkat GCS. Pada umumya rangkaian layar penampil dapat dilihat pada Gambar 3.10. Konektor J2 akan dihubungkan ke PORT A pada mikrokontroler sebagai masukan data pada layar penampil.

Gambar 3.10 Rangkaian LCD 16x2

3.2.2. Komponen Mekanik

Komponen mekanik sistem meliputi bingkai perangkat GCS yang terbuat dari kayu dan acrylic sebagai bahan utamanya. Pada bingkai akan terpasang juga sebuah perangkat navigasi yang menggunakan joystick USB sebagai bingkainya. Perangkat navigasi akan terhubung ke perangkat GCS melalui sebuah media kabel penghantar sepanjang satu meter yang akan memudahkan pengguna mengontrol wahana saat pengendalian manual diaktifkan.


(1)

delay(1000); cekkom(); batere();

pengendalian(); lcd.clear(); a = 1; limit = 0; RFRXinit();

while ( terimaKendali != ".." & a) { if (digitalRead(RFIRQ) == LOW) { x = RF12ReadByte();

RFtransfer(0xCA80); RFtransfer(0xCA83); terimaKendali += x;

if (terimaKendali.length() > 2) { terimaKendali = "";

} }

limit++;

if (limit == 1000000) { lcd.setCursor(1, 1);

lcd.print("wahana tidak merespon"); lcd.setCursor(1, 2);

lcd.print("kesalahan komunikasi"); delay(2500);

while (1) { error(); }

} } a = 1;

Serial.println(terimaKendali); while (a) {

//---Autonomous---// if (terimaKendali == ".." && kendali == "--") {

Serial.println("Autonomous"); lcd.setCursor(1, 1);

lcd.print("Kendali autonomous"); lcd.setCursor(3, 2);

lcd.print("telah terpilih"); delay(2000);

lcd.clear(); delay(400);


(2)

lcd.setCursor(3, 1);

lcd.print("Menunggu data"); lcd.setCursor(2, 2);

lcd.print("koordinat wahana"); bacaKoordinat();

delay(1);

kirimKoordinat(); lcd.clear();

lcd.setCursor(3, 1);

lcd.print("Wahana bersiap"); lcd.setCursor(1, 2);

lcd.print("menuju koor tujuan"); delay(2500);

RFRXinit(); while (x != 'o') {

if (digitalRead(RFIRQ) == LOW) { x = RF12ReadByte();

RFtransfer(0xCA80); RFtransfer(0xCA83); Serial.print(x); if (x == 'a') { //Serial.println(x); lcd.clear();

lcd.setCursor(3, 1);

lcd.print("Wahana berputar"); lcd.setCursor(6, 2);

lcd.print("ke kanan"); //delay(300);

}

if (x == 'i') { //Serial.println(x); lcd.clear();

lcd.setCursor(3, 1);

lcd.print("Wahana berputar"); lcd.setCursor(6, 2);

lcd.print("ke kiri"); //delay(300); }

} }

Serial.println();

Serial.println("wahana menghadap utara"); lcd.clear();


(3)

lcd.setCursor(2, 1);

lcd.print("Wahana menghadap"); lcd.setCursor(7, 2);

lcd.print("utara"); delay(2000); while (1) { autonomous(); if (Isr == 1) {

Serial.print("paket data di terima: "); Serial.println(koordinatWahana); lcd.clear();

lcd.setCursor(2, 0);

lcd.print("Koordinat Wahana"); lcd.setCursor(0, 1);

lcd.print("Latt: -7.7"); lcd.print(Latt); lcd.setCursor(0, 2);

lcd.print("Long: 110.4"); lcd.print(Long); lcd.setCursor(0, 3);

lcd.print("Wahana ");

if (koordinatWahana[7] == '1') { lcd.print("ke kanan");

Serial.println("Wahana ke kanan"); }

else if (koordinatWahana[7] == '2') { lcd.print("ke kiri");

Serial.println("Wahana ke kiri"); }

else if (koordinatWahana[7] == '3') { lcd.print("mundur");

Serial.println("Wahana ke belakang"); }

else if (koordinatWahana[7] == '4') { lcd.print("ke depan");

Serial.println("Wahana ke depan"); }

Isr = 0; }

RFRXinit();

for (i = 0; i < 50; i++) {

if (digitalRead(RFIRQ) == LOW) { x = RF12ReadByte();

RFtransfer(0xCA80); RFtransfer(0xCA83); if (x == 'S') {


(4)

Serial.println("Wahana sampai di koordinat tujuan"); while (1) {

lcd.clear(); delay(400);

lcd.setCursor(2, 1);

lcd.print("Wahana sampai di"); lcd.setCursor(2, 2);

lcd.print("koordinat tujuan"); delay(2000);

} } }

if (x == 'L') { RFTXinit();

for (i = 0; i < 10; i++) { RF12Open();

RF12SendByte('G'); RF12Close(); RFtransfer(0x8008); }

Serial.println('G'); failsafe();

} } } }

//---Manual---// if (terimaKendali == ".." && kendali == "++") {

//Serial.println(terimaKendali); lcd.setCursor(2, 1);

lcd.print("Gunakan joystick"); lcd.setCursor(2, 2);

lcd.print("untuk mengontrol"); while (1) {

putar = 4;

for (int i = 0; i < 3; i++) { pinpot = analogRead(i); if (i == 0 || i == 1) {

pinpot = map (pinpot, 0, 1023, 511, 0); }

else if (i == 2) {

pinpot = map (pinpot, 0, 1023, 0, 511); }


(5)

String spinpot = String(pinpot); joystick[i] = spinpot;

joystick[i].trim();

joystick[i].toCharArray(pd[i], joystick[i].length() + 1); //Serial.println(joystick[0].length());

if (joystick[i].length() == 2) { //memberikan nilai 0 jika nilai ADC tidak 3 digit for (int j = 2; j >= 0; j--) {

pd[i][j] = pd[i][j - 1]; }

pd[i][0] = '0'; }

if (joystick[i].length() == 1) { //memberikan nilai 00 jika ADC tidak 3 digit pd[i][2] = pd[i][0];

pd[i][1] = '0'; pd[i][0] = '0'; }

}

putarKananStatus = digitalRead(putarKanan); putarKiriStatus = digitalRead(putarKiri);

if (putarKananStatus == HIGH && putarKiriStatus == LOW) { putar = 0;

}

else if (putarKiriStatus == HIGH && putarKananStatus == LOW) { putar = 8;

}

else if (putarKananStatus == HIGH && putarKiriStatus == HIGH) { putar = 4;

}

String putarString = String (putar);

putarString.toCharArray(putarChar, putarString.length() + 1); putarChar[1] = '\0';

for (int i = 0; i <= 12; i++) { if (i == 0) {

paketdata[i] = '*'; }

else if (i >= 1 && i <= 3) { paketdata[i] = pd[0][i - 1]; }

else if (i >= 4 && i <= 6) { paketdata[i] = pd[1][i - 4]; }


(6)

else if (i >= 7 && i <= 9) { paketdata[i] = pd[2][i - 7]; }

else if (i == 10) {

paketdata[i] = putarChar[0]; }

else if (i == 11) { paketdata[i] = '#'; }

else if (i == 12) { paketdata[i] = '\0'; }

}

//Serial.println(paketdata); RFTXinit();

for (int i = 0; i < 12; i++) { RF12Open();

RF12SendByte(paketdata[i]); RF12Close();

RFtransfer(0x8008); }

Serial.println(paketdata); }

} } }