i
TUGAS AKHIR
PROTOTIPE ROBOT PENJINAK BOM BERBASIS
RASPBERRY PI DENGAN KONTROL APLIKASI
IOS JARAK JAUH MELALUI JARINGAN
INTERNET
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 :
EMANUEL TEGAR YUDHA PRASIDHA
NIM : 135114008
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
ii
FINAL PROJECT
THE PROTOTYPE OF BOMB DISPOSAL ROBOT
BASED ON RASPBERRY PI CONTROLLED BY iOS
APPLICATION DISTANCES THROUGH INTERNET
NETWORK
In a partial fulfilment of the requirements
for the degree of Sarjana Teknik
Department of Electrical Engineering
Faculty of Science and Technology, Sanata Dharma University
by :
EMANUEL TEGAR YUDHA PRASIDHA
NIM : 135114008
DEPARTMENT OF ELECTRICAL ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
vi
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
MOTTO:
Berserahlah Hanya Pada Tuhan, Sebab Dia Yang Selalu
Memberikan Hal Dan Pengalaman Terbaik
Emanuel Tegar Yudha Prasidha
Karya ini kupersembahkan untuk….
Tuhan Yesus Kristus, penuntun dan penyelenggara hidupku
Ibu dan bapakku
Teman-teman
dan seluruh pihak yang telah terlibat dalam penulisan karya ini
viii
INTISARI
Robot penjinak bom yang ada di Indonesia memerlukan pengendali dalam bentuk komputer fisik yang kurang praktis untuk digunakan. Pada saat ini dengan basis Internet of Things (IoT) dari Raspberry Pi robot penjinak bom dapat dikendalikan menggunakan aplikasi iOS melalui jaringan internet.
Prototipe robot penjinak bom berbasis Raspberry Pi dirancang memiliki lengan dengan 3 derajat kebebasan (DOF) dan end of effector (EoE) berupa gripper yang terintegrasi dengan cutter. Untuk dapat menggerakkan lengan maka diperlukan aktuator berupa servo. Prototipe robot penjinak bom memiliki dua penggerak yaitu motor DC yang mampu membuat robot berjalan maju, mundur, berbelok ke kiri, dan berbelok ke kanan. Pada bagian atas EoE juga terdapat webcam, webcam mampu membantu pengelihatan operator robot untuk mengendalikan prototipe robot penjinak bom. Untuk dapat mengendalikan prototipe robot penjinak bom diperlukan aplikasi iOS. Di dalam aplikasi iOS terdapat slider dan tombol untuk mengatur sudut lengan, kecepatan roda, juga terdapat tampilan video dari webcam. Supaya data kendali juga tampilan video dapat saling dikirimkan dari prototipe robot penjinak bom dengan aplikasi iOS maka diperlukan jaringan internet 4G yang terhubung dengan VPN-PPTP sehingga prototipe robot penjinak bom memiliki alamat IP yang tetap.
Hasil akhir dari penulisan ini adalah dihasilkan suatu prototipe robot penjinak bom yang dapat dikendalikan dengan aplikasi iOS jarak jauh melalui jaringan internet. Prototipe robot penjinak bom dapat menjinakkan bom dengan cara memotong kabel dan juga bergerak (maju, mundur, belok kiri, belok kanan) sehingga model bom dapat dipindahkan.
ix
ABSTRACT
The bomb disposal robot which exist in Indonesia require controllers in the form of physical computers that are less practical to use. At this time with the technology based on Internet of Things (IoT) of Raspberry Pi bomb disposal robot can be controlled using iOS application via internet network.
The prototype of bomb disposal robot based on Raspberry Pi has robotic arm with 3 degrees of freedom (DOF) and end of effector (EoE) gripper that integrated with cutter. The actuator of the robotic arm using servos. The prototype of bomb disposal robot has two DC motors that make the prototype of bomb disposal robot can move forward, backward, turn left, and turn right. In the upper side of EoE there is a webcam that helps the robot’s operator to have vision when controlling the robot. In order to control the prototype of bomb disposal robot require iOS application. iOS application has slider and button that can control the degree of the servo and the speed of robot, and also have the vision from webcam. Data control and webcam vision transferred from or to robot and iOS application uses 4G internet network that connected to VPN-PPTP so the robot has static IP address.
The final result of this writing is to produce a prototype of bomb disposal robot that can be controlled with iOS application remotely through internet network. The prototype of bomb disposal robot can do bomb disposal by cutting wire and lift the bomb model so the bomb model can be moved.
xi
DAFTAR ISI
Halaman Sampul (Bahasa Indonesia)….………i
Halaman Sampul (Bahasa Inggris)………ii
Halaman Persetujuan…….………iii
Halaman Pengesahan…………..………iv
Halaman Pernyataan Keaslian Karya ..……….v
Halaman Persembahan dan Motto Hidup ………...………vi
Halaman Pernyataan Persetujuan Publikasi Karya Ilmiah untuk Kepentingan Akademis …………..……….. .vii
Intisari ………...………. .viii
Abstract……….………ix
Kata Pengantar………....………..x
BAB I ... 1
1.1. Judul ... 1
1.2. Latar Belakang ... 1
1.3. Tujuan dan Manfaat ... 3
1.4. Batasan Masalah ... 3
1.5. Metodologi Penelitian ... 4
BAB II ... 5
2.1. Robot ... 5
2.2. Raspberry Pi ... 5
2.2.1. Bahasa Pemrograman Python ... 6
2.2.2. PWM (Pulse Width Modulation) ... 6
2.2.3. Motion ... 7
2.3. iOS ... 7
2.3.1. Bahasa Pemrograman Objective-C ... 8
2.4. UDP (User Datagram Protocol) ... 8
2.5. Port Forwarding ... 8
2.6. Motor DC ... 9
2.6.1. Modul Driver Motor Monster Moto Shield VNH2SP30 ... 11
2.7. Servo ... 11
2.7.1. Torsi ... 12
2.8. Modem 4G ZTE MF90 ... 13
2.9. WebCam ... 14
2.10. Logic Level Converter ... 15
2.11. Lengan Robot ... 15
BAB III ... 16
xii
3.1.1. Perancangan Lengan Robot ... 17
3.1.2. Desain Prototipe ... 19
3.1.3. Skematik Hardware ... 21
3.2. Perancangan Software ... 23
3.2.1. Program MotorPi ... 24
3.2.2. Program Remote pada iOS ... 26
3.2.3. Penggunaan Motion ... 28
3.2.4. Pengiriman IP Publik ... 29
BAB IV HASIL DAN PEMBAHASAN ... 30
4.1. Hasil Implementasi ... 30
4.2. Hasil Perancangan Hardware ... 32
4.3. Hasil Perancangan Software ... 35
4.4. Pengujian Hardware dan Software ... 36
4.4.1. Penggunaan Aplikasi heyGar untuk Mengendalikan MotorPi ... 36
4.4.2. Pengujian Motor DC ... 39
4.4.3. Pengujian Servo ... 40
4.4.4. Pengujian Pemotongan Kabel dan Pengangkatan Model Bom Gabus ... 44
4.4.5. Pengujian Aplikasi heyGar ... 45
4.4.6. Penggunaan Motion pada Raspberry Pi ... 50
4.4.7. Penggunaan VPN-PPTP ... 51
4.4.8. Pengiriman Data ... 54
4.4.9. Pembatalan Penggunaan Logic Level Converter (LLC) ... 60
BAB V ... 62
5.1. Kesimpulan ... 62
5.2. Saran ... 62
DAFTAR PUSTAKA ... 64
xiii
DAFTAR GAMBAR
Gambar 2.1. Robot Penjinak Bom milik Royal Logistics Corps[8] …...………. 5
Gambar 2.2. Raspberry Pi 2 Model B………... 5
Gambar 2.3. iPhone 6 dengan sistem operasi iOS 9 [14]………...……. 7
Gambar 2.4. Port Forwarding pada Router…………..………... 8
Gambar 2.5. Motor DC [19]……… 9
Gambar 2.6. Aturan Tangan Kiri………. 9
Gambar 2.7. Prinsip Kerja Motor DC……….. 10
Gambar 2.8. Modul Driver Motor Monster Moto Shield VNH2SP30 11………….. 11
Gambar 2.9. Variasi Lebar Pulsa PWM………... 11
Gambar 2.10. Servo Feetech FT5316M………... 12
Gambar 2.11. Lengan dan Torsi yang dibutuhkan [26]………... 13
Gambar 2.12. Modem 4G ZTE MF90………. 13
Gambar 2.13 WebCam dengan Penerangan 6 LED [31]……… 14
Gambar 2.14. Modul Logic Level Converter [34]……….. 15
Gambar 2.15. Sistem Kontrol Terbuka……… 15
Gambar 3.1. Pemodelan Sistem………... 16
Gambar 3.2. Skema Lengan Robot……….. 17
Gambar 3.3. Torsi pada Setiap Servo……….. 17
Gambar 3.4. Skema EOE………. 19
Gambar 3.4. Desain Prototipe Tampak Samping Kanan………. 19
Gambar 3.6. Desain Prototipe Tampak Samping Kiri………. 20
Gambar 3.7. Desain Prototipe Tampak Depan……… 20
Gambar 3.8. Desain Prototipe Tampak Atas……… 20
Gambar 3.9. Skematik Pemasangan Kabel Motor DC………. 22
Gambar 3.10. Skematik Pemasangan Kabel Servo……….. 23
Gambar 3.11. Diagram Alir Program secara Umum………... 24
Gambar 3.12. Diagram Alir MotorPi……….. 25
Gambar 3.13. Diagram Alir Sub-Routine Mode Bergerak……….. 25
Gambar 3.14. Diagram Alir Sub-Routine Mode Lengan ……… 26
Gambar 3.15. Diagram Alir heyGar……… 26
Gambar 3.16. Tampilan Aplikasi………. 27
Gambar 3.17. Tampilan Settings………...……… 27
Gambar 3.18. Tampilan Mode Lengan……… 28
Gambar 3.19. Diagram Alir Pengiriman IP Publik……….. 29
Gambar 4.1. Foto MotorPi saat Mode Bergerak (kiri) dan saat Mode Lengan (kanan)………. 30
Gambar 4.2. Tampilan Antarmuka Aplikasi heyGar saat Mode Bergerak (atas) dan saat Mode Lengan (bawah)……….. 31
Gambar 4.3. Wiring modul VNH2SP30 dengan Raspberry Pi……… 32
Gambar 4.4. Wiring Servo dengan Raspberry Pi………. 33
Gambar 4.5. Pemasangan USB Modem 4G dan WebCam……….. 34
Gambar 4.6. Pemasangan Servo pada Lengan Robot……….. 34
Gambar 4.7. Penggunaan Tali untuk Menggerakkan Lengan Robot………... 35
Gambar 4.8. EoE pemotong kabel posisi terbuka (kiri) dan posisi menutup (kanan). 35 Gambar 4.9 Tangkapan Layar Data yang Diterima oleh MotorPi………... 35 Gambar 4.10. Tampilan Antarmuka heyGar sebelum dihubungkan dengan MotorPi Gambar 4.11. Tampilan Setting heyGar………..
xiv
Gambar 4.12. Tampilan Mode Lengan………... 39
Gambar 4.13. Sinyal PWM Pengoperasian Motor DC……… 39
Gambar 4.14. Sinyal PWM Pengoperasian servo S1 pada Sudut Sekitar 135°……... 40
Gambar 4.15. Sinyal PWM yang kurang baik 41 Gambar 4.16. Selisih sudut servo S1 yang diatur 180°... Gambar 4.17. Selisih sudut servo S2 yang diatur 45°... Gambar 4.18. Sudut servo S3 pada pengaturan 90°... 42 42 43 Gambar 4.19. File program pada aplikai heyGar………. 45
Gambar 4.20. Penyimpanan data dari UITextField………. 46
Gambar 4.21. Data IP dan port yang digunakan saat program heyGar dibuka……... 46
Gambar 4.22. Listing Program heyGar untuk mengakses gambar bergerak dari MotorPi……… 47
Gambar 4.23. Pengiriman data nilai slider……….. 47
Gambar 4.24. Pengiriman data servo dan mode……….. 47
Gambar 4.25. Pengiriman data servo dan mode (lanjutan)……….. 48
Gambar 4.26. Pembatasan gerak servo……… 48
Gambar 4.27. Listening ke Port UDP 2695………. 48
Gambar 4.28. Pemisahan data yang diterima MotorPi……… 49
Gambar 4.29. Fungsi pembangkitan PWM untuk mengatur motor DC……….. 49
Gambar 4.30. Fungsi pembangkitan PWM untuk mengatur sudut servo S1……….. 49
Gambar 4.31. Video Motion 51 Gambar 4.32. File hasil konfigurasi VPN-PPTP………. 52
Gambar 4.33. Respon VPN-PPTP………... 52
Gambar 4.34. Diagram Alir Pengecekan IP Lokal dan IP Publik MotorPi…………. 53
xv
DAFTAR TABEL
Tabel 1.1. Spesifikasi Morolipi V1[5]………. 1
Tabel 2.1. Spesifikasi Raspberry Pi 2 Model B [9]……….. 5
Tabel 2.2. Spesifikasi Rover 5 [21]……….. 10
Tabel 2.3. Spesifikasi Servo Feetech FT5316M [24]……….. 12
Tabel 2.4. Spesifikasi Modem 4G ZTE MF90 [28]………. 13
Tabel 2.5. Spesifikasi WebCam M-Tech Box 6-LED [32]………. 14
Tabel 3.1. Rancangan Perhitungan Torsi Minimum……… 18
Tabel 3.2. Kekuatan Servo……….. 18
Tabel 3.3. Servo Tiap Sendi dan pada EoE………. 19
Tabel 3.4. Spesifikasi Prototipe Robot Penjinak Bom………. 21
Tabel 3.5. Pemasangan Kabel Motor DC………. 21
Tabel 3.6. Pemasangan Kabel Servo……… 22
Tabel 4.1. Keterangan untuk Wiring Driver Motor VNH2SP30………. 32
Tabel 4.2. Kondisi Enable untuk Mengatur Putaran Motor……… 33
Tabel 4.3. Keterangan untuk Wiring Servo………. 33
Tabel 4.4. Keterangan untuk WIring Servo (lanjutan)………. 34
Tabel 4.5. Data String Perintah heyGar ke MotorPi……… 36
Tabel 4.6. Data Mode pada heyGar………. 36
Tabel 4.7. Pengujian kecepatan maksimal MotorPi……… 37
Tabel 4.8. Interval waktu pemotongan kabel……….. 38
Tabel 4.9. Konfigurasi Motion pada Raspberry Pi………. 44
Tabel 4.10. Pengiriman Data dengan Interval 5 Detik……… 46
Tabel 4.11. Pengiriman Data dengan Interval 10 Detik……….. 46
1
BAB I
PENDAHULUAN
1.1.
Judul
Prototipe Robot Penjinak Bom Berbasis Raspberry Pi dengan Kontrol Aplikasi iOS
Jarak Jauh Melalui Jaringan Internet.
1.2.
Latar Belakang
Berbagai kebutuhan serta keperluan masyarakat saat ini dapat dijumpai dengan mudah
di berbagai pusat perbelanjaan. Pusat perbelanjaan mulai dari pasar tradisional hingga pasar
modern menyediakan apa yang masyarakat butuhkan. Mall-mall sudah menjamur di
berbagai kota yang ada di Indonesia. Ratusan mall yang tersebar di Pulau Jawa menawarkan
fitur menarik sehingga banyak masyarakat yang datang untuk menjajakan uangnya demi
kebutuhan yang dimiliki. Mall menjadi pusat keramaian masyarakat, sehingga dimana ada
mall disana pula keramaian terjadi.
Keramaian masyarakat yang berkumpul terkadang menjadi keuntungan bagi
sekelompok atau seorang oknum untuk memberi teror. Teror yang dilakukan sangat kejam
yaitu dengan adanya peledakan-peledakan bom di mall-mall. Saat ini terjadi pergeseran
sasaran peledakan bom yang sebelumnya adalah pos-pos keamanan, kini tempat keramaian
masyarakat yang menjadi tujuan utama peledakan bom[1]. Bom yang diledakkan biasanya
merupakan bom rakitan yang dirakit sendiri oleh oknum. Bom rakitan dengan bahan peledak
Triacepton Triperoxide (TATP) memiliki kecepatan membakar 5.400 meter per detik,
sehingga dapat dengan cepat memberikan kerusakan di area sekitar bom[2].
Indonesia memiliki satuan tim penjinak bom yang mampu menemukan dan
menjinakkan bom. Satuan Gegana merupakan bagian dari Polri yang tergabung dalam
Brigade Mobil (Brimob) yang memiliki kemampuan khusus seperti anti teror, penjinakan
bom, intelijen, anti anarkis, dan penanganan KBR (Kimia, Biologi, Radio aktif)[3]. Seorang
penjinak bom dengan menggunakan baju anti bom akan mendekat kemudian memeriksa
bom yang ada di suatu lokasi. Bahaya senantiasa mengintai karena bom dapat meledak
Meledaknya bom dapat dicegah dengan adanya proses penjinakan bom. Penjinakan
bom adalah tindakan yang dilakukan supaya bom tidak berfungsi dan aman. Penjinakan
bom dilakukan dengan sistem remote, semi remote, atau manual. Penjinakan dengan sistem
remote merupakan proses penjinakan bom menggunakan robot[4].
Robot penjinak bom mampu dikendalikan dari jarak jauh sehingga risiko terjadinya
kecelakaan saat menjinakkan bom, yaitu saat bom meledak tiba-tiba dapat dihindari.
Penjinakan bom oleh operator paling aman dilakukan sejauh mungkin dari bom yang akan
dijinakkan. Robot penjinak bom dikendalikan dengan perangkat remote yang terdiri dari
komputer, joystick, potensiometer, serta layar yang mampu menampilkan gambar yang
dikirim oleh robot penjinak bom. Robot penjinak bom dari Lembaga Ilmu Pengetahuan
Indonesia (LIPI) yaitu Morolipi dikendalikan dengan komputer menggunakan tampilan
antarmuka Visual Basic. Tabel 1.1. berikut ini adalah tabel spesifikasi Morolipi V1
Tabel 1.1. Spesifikasi Morolipi V1[5].
Spesifikasi Satuan
PxLxT 1050x920x1200 mm
Berat Kotor 190 kg
Daya Angkut 100 kg
Daya Angkat 5 kg
Sistem Penggerak 4 – roda 2-track / FIX
Ketinggian Maksimum Manipulator 1500 mm
Manipulator 5 DOF
End Effector Wire Cutter
Kecepatan Maksimum 2 km/h
Penggunaan komputer beserta perlengkapan pendukung pada remote memerlukan
ruang tersendiri untuk meletakkan alat, sehingga diperlukan waktu untuk mempersiapkan
remote agar dapat digunakan. Selain itu, remote yang akan digunakan menjadi lebih mahal
karena menggunakan PC.
Raspberry Pi mampu meningkatkan kemudahan dalam pengoperasian robot penjinak
bom. Robot penjinak bom dapat bekerja dengan cara dikendalikan menggunakan perangkat
yang sudah ada dan lebih praktis yaitu perangkat smartphone. Dengan aplikasi
remote maka gambar yang dikirimkan oleh robot penjinak bom dapat dilihat, selain itu,
smartphone. Semua fungsi dari remote konvensional dapat digantikan dengan kemudahan
menggunakan smartphone.
Dengan adanya jaringan internet di setiap mall yang ada di Indonesia maka robot
penjinak bom dapat dikendalikan menggunakan aplikasi smartphone dari jarak berapa saja
selama masih tercakup oleh jaringan internet. Pengendalian robot menggunakan
smartphone juga meningkatkan tingkat kerahasiaan anggota penjinak bom karena seorang
penjinak bom akan terlihat seperti memainkan smartphone seperti sedang bermain game.
1.3.
Tujuan dan Manfaat
Penulisan ini memiliki tujuan untuk menghasilkan prototipe robot penjinak bom
berbasis Raspberry Pi yang mampu dikendalikan pada jarak jauh menggunakan aplikasi
smartphone dengan sistem operasi iOS.
Manfaat dari penulisan ini adalah:
1. Mengetahui cara kerja dari prototipe yang dibuat.
2. Menjadi acuan untuk pembuatan robot penjinak bom berbasis Raspberry Pi
dengan fitur yang lebih banyak.
3. Menjadi bahan pertimbangan untuk pengembangan robot penjinak bom berbasis
Raspberry Pi.
1.4.
Batasan Masalah
Pada penulisan ini, penulis memberikan batasan sebagai berikut:
a. Remote pada robot merupakan aplikasi dengan bahasa pemrograman
Objective-C yang berjalan pada sistem operasi iOS.
b. Aplikasi remote mampu menampilkan tampilan video dari prototipe robot
penjinak bom, juga mampu mengirim kendali roda robot serta lengan robot yang
memiliki tiga derajat kebebasan (3DOF).
c. Tampilan video dari prototipe robot dihasilkan oleh WebCam dengan kualitas
640x480 piksel.
d. Prototipe robot dikendalikan melalui jaringan internet 4G.
e. Prototipe robot merupakan perangkat yang diatur oleh komputer mini Raspberry
Pi 2 Model B dengan bahasa pemrograman Python.
f. Prototipe robot mampu mengangkat model bom dari gabus serta mampu
1.5.
Metodologi Penelitian
Penelitian ini dilakukan dengan langkah-langkah sebagai berikut:
a. Mencari teori mengenai robot, Raspberry Pi, servo, motor DC, aplikasi iOS,
jaringan internet, serta bagaimana komunikasi antara aplikasi iOS dengan
Raspberry Pi dapat dilakukan.
b. Merancang prototipe robot penjinak bom serta merancang aplikasi iOS.
5
BAB II
DASAR TEORI
2.1.
Robot
Robot berasal dari bahasa Ceko “robota” yang artinya pekerja [6]. Robot merupakan
sistem yang terdiri dari sensor, pengendali, aktuator, power supply, serta program yang
mampu digunakan untuk membantu menyelesaikan permasalahan manusia [7]. Robot dapat
diprogram untuk melakukan suatu tindakan atau dapat juga diprogram untuk mengikuti
suatu perintah. Salah satu contoh robot yaitu robot penjinak bom seperti pada Gambar 2.1.
Gambar 2.1 Robot Penjinak Bom milik Royal Logistics Corps[8].
2.2.
Raspberry Pi
Raspberry Pi merupakan komputer dengan ukuran sebesar kartu kredit yang mampu
digunakan untuk proyek elektronik dan untuk berbagai keperluan yang dapat dilakukan oleh
desktop PC, seperti pengolah angka, pengolah kata, browsing, bermain game, dan
multimedia. Gambar 2.2. merupakan foto dari Raspberry Pi 2 Model B.
Raspberry Pi menggunakan bahasa pemrograman yang utama yaitu bahasa Python.
Tabel 2.1. berikut ini adalah spesifikasi Raspberry Pi 2 Model B.
Tabel 2.1. Spesifikasi Raspberry Pi 2 Model B [9].
Prosesor Broadcom BCM2837 Arm7 Quad Core 900 MHz
RAM 1 GB
Pin 40 pin GPIO
USB 4 USB (2xUSB 2 port)
Kamera CSI camera port
2.2.1.
Bahasa Pemrograman Python
Python adalah bahasa pemrograman tingkat tinggi (high level language). Python
sangat cocok digunakan dalam membuat program dengan komputer Raspberry Pi
(kompatibel). Python mampu digunakan untuk membuat program standalone [10].
Python dapat pula digunakan untuk berkomunikasi melalui suatu jaringan internet
yaitu menggunakan fitur Python Socket Programming. Socket Programming secara
sederhana yaitu mampu melakukan komunikasi antara client dan server. Selain client dan
server penggunaan Python untuk melakukan pengiriman email (pesan elektronis) dapat
dilakukan dengan fitur subprocess, smtplib, dan email. Pada penulisan proposal ini, fungsi
email digunakan untuk mengirim alamat IP dari prototipe ke remote.
Penggunaan Socket Programming dapat dilakukan dengan memanggil fasilitas
Protocol dari twisted.interternet.protocol dan fasilitas reactor dari twisted.internet. Socket
Programming akan membutuhkan port yang akan digunakan sebagai alamat program yang
berjalan pada suatu alamat IP.
2.2.2.
PWM (Pulse Width Modulation)
Sejumlah 40 pin GPIO pada Raspberry Pi 2 Model B dapat digunakan untuk
membangkitkan sinyal-sinyal PWM. Sinyal PWM yang dihasilkan oleh Raspberry Pi
mampu digunakan untuk mengatur sudut rotor dari motor servo serta mampu digunakan
untuk mengatur kecepatan putaran motor DC. Kemampuan sinyal PWM untuk mengatur
sudut serta kecepatan suatu aktuator dapat dilakukan dengan mengubah Duty Cycle dari
PWM yang dihasilkan.
Duty Cycle merupakan persen waktu suatu sinyal untuk berada pada kondisi high atau
duty cycle dari nilai 0 hingga 100. Apabila duty cycle bernilai 0 maka sinyal PWM akan
menghasilkan 0% waktu high atau ON. Apabila duty cycle bernilai 50 maka sinyal PWM
akan menghasilkan 50% waktu high atau ON. Jika diinginkan PWM menghasilkan waktu
ON selamanya maka duty cycle diatur pada nilai 100.
2.2.3.
Motion
Motion merupakan program yang mampu digunakan untuk melakukan binding
WebCam ke suatu alamat IP. Jika suatu WebCam terpasang pada port USB Raspberry Pi,
maka WebCam dapat diakses menggunakan alamat IP Raspberry Pi dengan port IP yang
telah diatur sebelumnya. Motion mampu memonitor sinyal video dari WebCam yang
terpasang pada Raspberry Pi [12].
2.3.
iOS
iOS adalah sistem operasi mobile yang dikembangkan oleh Apple. iOS saat ini
berjalan pada iPhone, iPod touch, dan iPad. iOS memiliki beberapa versi yang
dikembangkan sejak awal. Pada tahun 2016, Apple telah mengembangkan iOS hingga versi
iOS 10.
Seperti sistem operasi desktop modern, iOS menggunakan antarmuka pengguna
grafis, atau GUI. Namun, karena merupakan sistem operasi mobile, iOS dirancang untuk
input touchscreen, bukan keyboard dan mouse.
Sejak semula, iOS dirancang sangat sederhana dan mudah digunakan, sehingga tidak
memiliki beberapa fitur seperti pada sistem operasi lainnya, yaitu tidak dapat mengatur file
dan folder seperti pada Mac OS X atau Windows. iOS mampu menjalankan beberapa
aplikasi sekaligus (multitasking) [13].
Gambar 2.3 iPhone 6 dengan sistem operasi iOS 9 [14].
Aplikasi yang berjalan pada sistem operasi iOS dapat dibangun menggunakan bahasa
pemrograman Objective-C. Salah satu perangkat yang memiliki sistem operasi iOS adalah
2.3.1.
Bahasa Pemrograman Objective-C
Objective-C adalah bahasa pemrograman utama yang digunakan saat menulis
perangkat lunak untuk OS X dan iOS. Objective-C adalah superset dari bahasa
pemrograman C dan menyediakan kemampuan berorientasi objek. Objective-C mewarisi
sintak, tipe primitif, dan flow Objective-C dan menambahkan sintak untuk mendefinisikan
kelas dan metode [15].
Untuk membuat aplikasi Objective-C diperlukan perangkat lunak X-Code yang dapat
diunduh secara gratis melalui App Store.
2.4.
UDP (User Datagram Protocol)
Raspberry Pi dapat berkomunikasi dengan iOS menggunakan suatu protokol jaringan
User Datagram Protocol. User Datagram Protocol (UDP) merupakan protokol internet
yang mengutamakan kecepatan data. Protokol ini biasanya digunakan untuk streaming
video ataupun fasilitas real-time yang lain. Oleh karena itu pada UDP tidak memerlukan
adanya setup koneksi terlebih dahulu karena hal tersebut dapat menyebabkan adanya
tambahan delay [16].
2.5.
Port Forwarding
Port forwarding adalah metode yang digunakan oleh komputer pada jaringan agar
dapat diakses oleh komputer melalui internet (diluar jaringan lokal). Biasanya digunakan
untung hosting game servers, pengunduhan peer to peer, dan aplikasi VoIP atau video call.
Gambar 2.4 Port Forwarding pada Router.
Port forwarding dapat dilakukan dengan cara mengatur suatu modem atau router pada
bagian menu port forward, kemudian isi kolom port tujuan dengan port yang akan
melalui internet dengan menggunakan alamat IP yang dapat diakses oleh semua orang atau
IP Publik. Gambar 2.4. merupakan gambaran mengenai port (80 dan 8080) yang mengalami
proses port forwarding melalui jaringan internet ke perangkat komputer.
2.6.
Motor DC
Motor DC merupakan motor yang ditenagai oleh arus listrik searah (DC), Gambar 2.5.
merupakan salah satu contoh motor DC. Kelebihan motor DC adalah dapat diatur kecepatan
putarannya dengan cara mengubah tegangan masukan. Semakin besar tegangan masukan
maka semakin cepat pula putaran motor DC [18].
Gambar 2.5 Motor DC [19].
Rotor pada motor DC dapat berputar karena adanya medan magnet. Medan magnet
dapat terjadi akibat adanya magnet tetap atau arus listrik yang mengalir pada suatu
konduktor, misalnya kawat tembaga. Arus listrik pada kawat tembaga yang memotong
secara tegak lurus suatu medan magnet akan menghasilkan suatu gaya gerak. Prinsip medan
magnet dijelaskan oleh Fleming menggunakan aturan tangan kiri.
Gambar 2.6 Aturan Tangan Kiri.
Gambar 2.6. menjelaskan bagaimana suatu gaya gerak dapat terjadi pada motor DC.
Arah arus digambarkan sebagai jari tengah, arah medan magnet digambarkan dengan jari
Gambar 2.7 Prinsip Kerja Motor DC
Sesuai dengan Gambar 2.7 torsi yang dihasilkan oleh motor DC berbanding lurus
dengan arus yang diberikan[20], untuk lebih jelasnya lagi tentang nilai torsi yang dihasilkan
dapat dilihat pada Persamaan 2.1.
! = #. %. &. '()* (2.1)
dengan:
! = torsi
B = medan magnet
I = arus listrik
L = panjang kawat yang terpapar medan magnet
ɑ = Sudut yang terbentuk antara arah medan magnet dengan kawat
Salah satu contoh motor DC adalah TFK280SC-21138-45 yang terpasang pada casis
robot Rover 5. Tabel 2.2. berikut adalah spesifikasi dari Rover 5:
Tabel 2.2 Spesifikasi Rover 5 [21].
Parameter Spesifikasi
Rated Voltage 7.2 volt DC
Arus maksimal 2.5 A
Torsi maksimum 10 kgf.cm
Kecepatan linear 1 km/jam
Pengoperasian motor DC dapat dilakukan menggunakan Raspberry Pi, namun
diperlukan perangkat tambahan supaya motor DC memperoleh arus listrik yang cukup, yaitu
2.6.1.
Modul Driver Motor Monster Moto Shield VNH2SP30
Gambar 2.8 Modul Driver Motor Monster Moto Shield VNH2SP30.
Modul Driver Monster Moto Shield VNH2SP30 (Gambar 2.8) mampu
mengendalikan motor DC dengan total arus maksimum hingga 30A. Modul Driver Monster
Moto Shield VNH2SP30 dapat digunakan untuk mengendalikan 2 motor DC sekaligus.
Modul menggunakan IC VNH2SP30 yang merupakan driver motor full-bridge. Modul
Driver Monster Moto Shield VNH2SP30 mampu menangani tegangan DC hingga 16 volt
[22].
2.7.
Servo
Servo merupakan motor DC yang mampu mengetahui posisi rotor saat sedang
beroperasi, hal ini dapat terjadi karena adanya potensiometer yang menjadi sensor umpan
balik dari servo. Servo memiliki rangkaian elektronik yang dapat bekerja mengatur sudut
rotor berdasarkan sinyal (PWM) yang diberikan.
Keunggulan servo adalah:
1. Tidak bergetar dan tidak berresonansi saat beroperasi.
2. Daya yang dihasilkan sebanding dengan ukuran dan berat motor.
3. Penggunaan arus listrik sebanding dengan beban yang diberikan.
Supaya dapat beroperasi, servo membutuhkan sumber tegangan dan PWM. Sumber
tegangan yang dibutuhkan servo bergantung pada spesifikasi servo, sedangkan untuk
mengatur sudut rotor dibutuhkan PWM dengan frekuensi 50 Hz atau periode 20ms dan
dengan duty cycle yang bervariasi.
Untuk lebih jelasnya dalam mengatur sudut rotor servo dapat diberikan PWM seperti
pada Gambar 2.9 Agar rotor berputar 90° diperlukan lebar pulsa dengan ton duty cycle
1.5ms, agar rotor berputar 180° diperlukan lebar pulsa dengan ton duty cycle 2ms, sedangkan
untuk sudut putar 0° diperlukan lebar pulsa dengan ton duty cycle 1ms [23].
Gambar 2.10 Servo Feetech FT5316M
Salah satu contoh servo adalah Servo Feetech FT5316M (Gambar 2.10). Servo yang
digunakan harus sesuai dengan torsi yang dibutuhkan. Torsi yang dihasilkan suatu servo
akan bermacam-macam sesuai dengan tipe servo. Servo Feetech FT5316M memiliki
spesifikasi seperti pada Tabel 2.3.
Tabel 2.3. Spesifikasi Servo Feetech FT5316M [24].
Dimensi (PxLxT) 40.5x20.2x38 mm
Bobot 56 gram
Kecepatan rotasi 0.16 detik/60 derajat
Torsi 15.5 kgf.cm
Tegangan kerja 4.8-6 volt
Sudut kerja 180°
Periode PWM 500-2500 µs
2.7.1.
Torsi
Motor servo memiliki batasan torsi yang dapat ditangani. Torsi atau momen gaya
merupakan besaran vektor yang merupakan hasil perkalian antara gaya (F) dengan panjang
lengan (r). Untuk menghitung torsi dapat dengan cara berikut:
! = +. , (2.2)
Apabila terbentuk suatu sudut antara r dan F maka perhitungan torsi adalah:
! = +. ,. sin (2) (2.3)
Dari persamaan 2.3, apabila gaya yang diberikan membentuk sudut 2 = 90°, maka
torsi yang diberikan akan maksimal [25].
dari hasil nilai persamaan 2.3. Pada Gambar 2.11 berikut dapat terlihat besarnya torsi yang
diperlukan dalam suatu lengan.
Gambar 2.11 Lengan dan Torsi yang dibutuhkan [26]
Dari Gambar 2.11 dapat dilihat bahwa pada lengan yang sama dengan jarak kerja
1m dihasilkan torsi 20N sedangkan pada jarak kerja lengan 2m dihasilkan torsi 10N. Nilai
torsi akan semakin mengecil seiring dengan bertambahnya jarak kerja lengan.
2.8.
Modem 4G ZTE MF90
Modem adalah perangkat keras yang mampu menghubungkan suatu komputer dengan
jaringan broadband. Adanya modem mengakibatkan suatu komputer dapat mengirim dan
menerima data melalui jaringan internet[27]. ZTE MF90 (Gambar 2.12.) merupakan
modem 4G yang memiliki spesifikasi sebagai berikut:
Tabel 2.4 Spesifikasi Modem 4G ZTE MF90 [28].
Kompatibilitas Jaringan LTE-FDD 800/1800/2600 MHz
GSM/GPRS/EDGE 900/1800 MHz
Kecepatan Transfer Data LTE-FDD: DL/UL 100/50Mbps (Category3)
LTE-TDD:DL/UL 68/17Mbps (Category3)
DC-HSPA+: DL/UL 42/5.76Mbps
Modem 4G ZTE MF90 kompatibel dengan Raspberry Pi, sehingga dapat memberikan
koneksi internet untuk melakukan komunikasi dengan aplikasi iOS (remote).
Modem 4G ZTE MF90 memerlukan kabel USB micro to USB supaya dapat terhubung
melalui port USB yang ada pada Raspberry Pi.
2.9.
WebCam
WebCam merupakan singkatan dari Web Camera yang merupakan suatu kamera
digital yang terhubung dengan komputer. WebCam mampu mengirimkan gambar gerak
atau video langsung dari satu lokasi ke lokasi lain menggunakan jaringan internet [29].
Tidak seperti kamera digital pada umumnya, suatu WebCam tidak memiliki media
penyimpanan internal, komputer yang terhubung WebCam akan menjadi media
penyimpanan. Apabila WebCam terhubung dengan internet, maka setiap orang dibelahan
dunia manapun dapat melihat tampilan yang dihasilkan oleh WebCam dan dapat
menyimpan tampilan dalam format gambar ataupun video [30].
Gambar 2.13 WebCam dengan Penerangan 6 LED[31].
Salah satu contoh dari WebCam adalah WebCam M-Tech Box 6-LED (Gambar 2.12).
WebCam M-Tech Box 6-LED memiliki spesifikasi seperti pada Tabel 2.5.
Tabel 2.5 Spesifikasi WebCam M-Tech Box 6-LED[32].
Komunikasi dengan PC USB 2.0
Tipe sensor CMOS, VGA (640x480 pixels)
Frame rate 15 fps
Pengaturan Gambar Otomatis (warna dan kecerahan)
Dimensi 32(p)x76.8(l)x59(t) mm
2.10.
Logic Level Converter
Logic Level Converter (LLC) adalah perangkat kecil yang menyediakan antarmuka
dua arah antara dua perangkat dengan perbedaan tegangan kerja[33]. LLC mampu
melakukan step-up dan step-down tegangan pada waktu yang bersamaan, misalnya
mengubah 3.3 volt menjadi 5 volt, dan mengubah 5 volt menjadi 3.3 volt. Gambar 2.14.
berikut ini adalah gambar dari LLC.
Gambar 2.14 Modul Logic Level Converter[34].
2.11.
Lengan Robot
Lengan robot merupakan suatu lengan buatan yang dapat digunakan untuk
menggantikan fungsi lengan manusia. Lengan robot umumnya terdiri dari link, joint (sendi),
dan end of effector (bisa dalam bentuk penjepit, pemotong, atau pengebor). Untuk
menggerakkan tiap link diperlukan pengubahan sudut sendi[35]. Pada Gambar 2.1 yang
merupakan robot penjinak bom, terdapat lengan robot dengan end of effector berjenis
gripper.
Gambar 2.15 Sistem Kontrol Terbuka
Sendi pada lengan robot dapat menggunakan servo. Pengaturan servo dapat dilakukan
menggunakan sistem kontrol terbuka (open loop system). Sistem kontrol terbuka merupakan
suatu sistem yang tidak dipengaruhi oleh hasil keluaran sistem[36]. Servo yang berada
dipasaran seperti Feetech FT5316M merupakan servo dengan sistem kontrol tertutup,
sehingga apabila diberikan sinyal untuk suatu sudut tertentu maka rotor pada servo akan
bergerak mempertahankan sudut yang diberikan. Penggunaan Feetech FT5316M pada
lengan robot akan memudahkan pengendalian lengan robot dengan sistem kontrol terbuka.
16
BAB III
RANCANGAN PENELITIAN
3.1.
Perancangan Hardware
Gambar 3.1. Pemodelan Sistem.
Berdasarkan Gambar 3.1. sistematika kerja secara keseluruhan adalah sebagai berikut.
Pada saat Prototipe dihidupkan maka beberapa detik kemudian akan segera tersambung
dengan internet menggunakan Modem 4G. Secara otomatis Prototipe akan mengaktifkan
port yang berfungsi untuk pengendalian gerak serta pengendalian lengan robot, port
pengendalian menggunakan port 2695. Selain pengendalian, prototipe juga akan
mengaktifkan WebCam yang kemudian akan ditampilkan pada port yang telah disediakan
yaitu pada port 2570. Setelah port tersedia maka Prototipe siap menerima kendali dan
mengirim tampilan video dari dan ke aplikasi iOS. Aplikasi iOS akan bekerja menampilkan
diambil dari port 2570 serta menampilkan tuas pengaturan untuk pengendalian gerak serta
pengendalian lengan robot.
3.1.1.
Perancangan Lengan Robot
Gambar 3.2 Skema Lengan Robot.
Berdasarkan Gambar 3.2, maka Prototipe Robot Penjinak Bom akan memiliki 3 derajat
kebebasan dengan masing-masing sendi memiliki kemampuan bergerak sebesar 180°.
Gambar 3.3 Torsi pada Setiap Servo.
Berdasarkan Gambar 3.3 dan Persamaan 2.2 maka besaran torsi minimal yang
diperlukan agar torsi dapat menggerakkan robot adalah sebagai berikut. Servo 1 (S1)
membutuhkan torsi minimal:
!&123 = :&1 + :&2 + :&3 ×(&1 + &2 + &3) (3.1)
!:=2 = :=2×>1 (3.2)
!:=3 = :=3×&1 (3.3)
!:?@?, &123 = :?@?×(&3 + &2 + &1) (3.4)
Menggunakan persamaan (3.1), (3.2), (3.3), dan (3.4) maka !1 dapat dihitung
dengan:
!1 = !&123 + !:=2 + !:=3 + !:?@?, &123 (3.5)
Selanjutnya servo 2 (S2) membutuhkan torsi minimal:
!:?@?, &23 = :?@?×(&2 + &3) (3.7)
Menggunakan persamaan (3.6) dan (3.7) maka !2 dapat dihitung dengan:
!2 = !&23 + !:?@?, &23 (3.8)
Selanjutnya servo 3 (S3) membutuhkan torsi minimal:
!&3 = :&3×&3 (3.9)
!:?@?, &3 = :?@?×&3 (3.10)
Menggunakan persamaan (3.9) dan (3.10) maka !3 dapat dihitung dengan:
!3 = !&3 + !:?@?, &3 (3.11)
Tabel 3.1 merupakan hasil rancangan perhitungan torsi minimum yang diperlukan oleh
tiap-tiap servo pada lengan robot Prototipe Robot Penjinak Bom.
Tabel 3.1 Rancangan Perhitungan Torsi Minimum.
Satuan kg cm kg.cm
x Servo mL1 mL2 mL3 mS2 mS3 mEOE L1 L2 L3 l1 !L !mS2 !mS3 !mEOE,Lx !x
1 S1 0.02 0.01 0.015 0.056 0.056 0.121 12.7 6 10.8 3.9 1.3 0.2 0.7 3.6 5.8
2 S2 0.01 0.015 0.121 6 10.8 0.4 2.0 2.5
3 S3 0.015 0.121 10.8 0.2 1.3 1.5
Berdasarkan perhitungan pada Tabel 3.1 servo Feetech FT5316M memiliki cukup torsi
yaitu 15kgf.cm yang mampu digunakan untuk menggerakkan Lengan Robot. Apabila
menggunakan servo Feetech FT5316M maka tiap sendi pada lengan robot akan memiliki
kekuatan angkat seperti pada Tabel 3.2.
Tabel 3.2 Kekuatan Servo
Servo Torsi(kgf.cm) Jumlah Servo Panjang Lengan(cm) Kekuatan Angkat (kg)
S1 15 2 29.5 1.0
S2 15 1 16.8 0.9
S3 15 1 10.8 1.4
EoE 15 1 6.9 2.2
Pada Lengan Robot diperlukan suatu end of effector (EoE) yang mampu bertindak
mencengkeram dan memotong kabel. EoE merupakan sebuah grip pencengkeram yang
terdiri dari dua buah logam dengan pemotong pada bagian ujungnya, ide seperti ini mirip
Berikut ini adalah pemodelan EOE yang akan digunakan pada Lengan Robot. Dengan
ukuran panjang L1 sama dengan L2 maka nilai F yang diberikan oleh setiap bilah
EOE akan dibagi dua dari nilai torsi yang diberikan oleh servo. Berdasarkan persamaan 2.2
saat L1 sejajar dengan L2 maka dapat diperoleh:
, =B
C (3.12)
Gambar 3.4 Skema EOE.
Apabila panjang L1 dan L2 adalah 8cm, torsi servo yang diberikan sebesar 15kgf.cm,
maka melihat pada Gambar 3.4, nilai F1 dan F2 adalah sebesar F, yaitu
, = 15 2×8
, = 0.94 GHf
Servo yang dibutuhkan pada tiap bagian lengan robot dapat dilihat pada Tabel 3.3
berikut ini.
Tabel 3.3 Servo Tiap Sendi dan pada EoE
No Servo Jumlah Servo Torsi Jenis Servo
1. S1 2 2x15kgf.cm Feetech FT5316M
2. S2 1 1x15kgf.cm Feetech FT5316M
3. S3 1 1x15kgf.cm Feetech FT5316M
4. EOE 1 1x15kgf.cm Feetech FT5316M
3.1.2.
Desain Prototipe
Gambar 3.5. berikut ini adalah desain prototipe robot penjinak bom yang selanjutnya
disebut MotorPi.
Gambar 3.6 Desain MotorPi Tampak Samping Kiri.
Gambar 3.7 Desain MotorPi Tampak Depan.
MotorPi memiliki spesifikasi seperti pada Tabel 3.4.
Tabel 3.4 Spesifikasi MotorPi.
Spesifikasi Satuan
PxLxT 533x225x161 mm
Berat 1.5 kg
Daya Angkut Maksimum 1.8 kg
Daya Angkat Maksimum 0.7 kg
Sistem Penggerak 4 – roda 2-track / FIX
Ketinggian Maksimum Manipulator 496 mm
Manipulator 3 DOF
End Effector Gripper, Wire Cutter
Kecepatan Maksimum 1 km/h
3.1.3.
Skematik Hardware
Penggerak roda pada MotorPi menggunakan motor DC yang terhubung dengan driver
VNH2SP30, namun supaya motor DC dapat dikendalikan dengan efektif maka perlu
menggunakan logic level converter yang menghubungkan driver dengan Raspberry Pi.
Skema pemasangan kabel motor DC dapat dilihat pada Tabel 3.5.
Tabel 3.5 Pemasangan Kabel Motor DC.
No Raspberry Pi(Board) LLC(x) VNH2SP30 Keterangan
1 GPIO3 LV2-HV2(1) 2 En(A) Kiri
2 GPIO10 LV3-HV3(1) 3 En(B) Kiri
3 GPIO12 LV2-HV2(2) 8 PWM Kiri
4 GPIO5 LV1-HV1(1) 4 En(A) Kanan
5 GPIO8 LV4-HV4(1) 5 En(B) Kanan
6 GPIO16 LV3-HV3(2) 9 PWM Kanan
Huruf x pada bagian LLC(x) menandakan nomor LLC yang digunakan, yaitu untuk
menggerakkan dua motor DC diperlukan dua modul LLC. LV yaitu singkatan dari low
voltage atau tegangan yang lebih kecil (3.3v) pada GPIO Raspberry Pi, sedangkan HV
yaitu singkatan dari high voltage yaitu tegangan yang lebih tinggi (5v) pada modul driver
Gambar 3.9. berikut ini adalah skematik pemasangan kabel motor DC. Skema terdiri
dari Raspberry Pi, dua modul LLC, serta driver VNH2SP30 dan dua motor DC.
Gambar 3.9 Skematik Pemasangan Kabel Motor DC.
Kabel berwarna kuning berfungsi untuk mengatur motor kanan, sedangkan kabel
berwarna biru berfungsi untuk mengatur motor kiri. LLC juga harus terhubung dengan
sumber tegangan kecil (3.3v) untuk mengaktifkan pin LV serta sumber tegangan lebih
besar (5v) untuk mengkatifkan pin HV.
Pemasangan servo pada Raspberry Pi juga membutuhkan LLC agar PWM yang
dihasilkan Raspberry Pi dapat diterima dengan efektif oleh tiap servo. Skema pemasangan
kabel servo dapat dilihat pada Tabel 3.6.
Tabel 3.6 Pemasangan Kabel Servo.
No Raspberry Pi(Board) LLC(x) Servo(x) Keterangan
1 GPIO37 LV1-HV1(1) 1 Servo Sendi 1
2 GPIO35 LV2-HV2(1) 2 Servo Sendi 1
3 GPIO36 LV3-HV3(1) 3 Servo Sendi 2
4 GPIO38 LV4-HV4(1) 4 Servo Sendi 3
5 GPIO40 LV1-HV1(2) 5 Servo EoE
Gambar 3.10. berikut ini adalah skematik pemasangan kabel servo lengan robot.
Gambar 3.10 Skematik Pemasangan Kabel Servo.
Servo akan terhubung dengan LLC, namun juga harus terhubung dengan sumber
tegangan 6v supaya servo dapat beroperasi.
3.2.
Perancangan Software
Program yang digunakan pada MotorPi, akan menjalankan bahasa pemrograman
Python. Fitur-fitur yang akan dipakai yaitu factory, reactor, RPi.GPIO, dan os. Selanjutnya
MotorPi akan melakukan binding port ke port 2695 yaitu port bebas atau tidak digunakan
oleh Raspberry Pi untuk jaringan.
Program pada MotorPi akan terhubung dengan program remote yang selanjutnya
disebut heyGar.Aplikasi heyGar menjadi pusat pengendalian robot. Setelah robot terhubung
dengan heyGar maka MotorPi dapat berjalan maju, mundur, belok kiri, belok kanan,
menggerakkan lengan naik dan turun, serta mengatur sudut grip yang dapat digunakan untuk
mencengkeram model bom serta memotong kabel.
MotorPi hanya dapat dikendalikan secara manual, yaitu dengan menggerakkan tiap
slider pada aplikasi heyGar. Slider akan mengatur kecepatan roda kiri dan kecepatan roda
kanan prototipe, sehingga MotorPi dapat memiliki kecepatan gerak sesuai dengan perintah.
Apabila kecepatan roda kanan lebih besar dari kecepatan roda kiri, maka MotorPi akan
berbelok ke kiri, sedangkan apabila kecepatan roda kiri lebih besar dari kecepatan roda
kanan, maka MotorPi akan berbelok ke kanan. Selain adanya slider, pada aplikasi heyGar
Secara umum program MotorPi akan terhubung dengan program heyGar seperti pada
diagram alir berikut ini. mmmmmmmmmmmmmmmmmm
Gambar 3.11 Diagram Alir Program secara Umum.
Dari Gambar 3.11 terdapat garis putus-putus yang menjelaskan bagaimana suatu data
dikirim serta diterima melalui jaringan internet antara program MotorPi dengan heyGar.
3.2.1.
Program MotorPi
Raspberry Pi akan melakukan inisialisasi perangkat yang tersambung pada port USB,
sehingga modem 4G ZTE MF90 akan terdeteksi dan memberikan koneksi internet bagi
Raspberry Pi. Adanya koneksi internet akan membuat MotorPi dapat diakses dari mana saja,
menggunakan port 2695. Selanjutnya, port akan masuk dalam kondisi listening, yaitu
menunggu komunikasi atau perintah. Gambar 3.12. berikut merupakan diagram alir
Gambar 3.12 Diagram Alir MotorPi.
Saat MotorPi memperoleh perintah, maka akan dilanjutkan untuk menjalankan
sub-routin dari MotorPi yaitu Mode Bergerak atau Mode Lengan. Pada sub-routine Mode
Bergerak, Raspberry Pi akan mengatur GPIO yang berakibat pada perubahan kecepatan
roda. Gambar 3.13. berikut ini adalah diagram alir sub-routine Mode Bergerak.
Gambar 3.13 Diagram Alir Sub-Routine Mode Bergerak
Mode Lengan (Gambar 3.14.) adalah sub-routine MotorPi yang bekerja mengatur
ini ada 4 bagian, yaitu pada bagian Servo1 (S1), Servo2 (S2), Servo3 (S3), dan Servo
Gripper (pada EoE).
Gambar 3.14 Diagram Alir Sub-Routine Mode Lengan
3.2.2.
Program Remote pada iOS
Program remote pada iOS yang selanjutnya disebut heyGar memerlukan konektivitas
internet sebelum dapat digunakan. Setelah konektivitas internet siap maka heyGar akan siap
digunakan, namun agar heyGar dapat berkomunikasi dengan MotorPi, user harus
memasukkan IP address beserta port yang digunakan oleh MotorPi. Program heyGar dapat
dijelaskan melalui Gambar 3.15.
Gambar 3.16. berikut ini merupakan rancangan tampilan aplikasi pada heyGar.
Gambar 3.16 Tampilan Aplikasi.
Pada Tampilan Aplikasi ini dapat mengendalikan kecepatan serta arah gerak dari
MotorPi. Slider dengan tulisan Left dan Right berfungsi untuk mengatur tingkat kecepatan
roda kiri dan kanan MotorPi. Tombol bertuliskan BRAKE berfungsi untuk menghentikan
laju MotorPi sewaktu-waktu, sedangkan tombol bertuliskan RELEASE berfungsi untuk
menonaktifkan fungsi BRAKE. Kotak putih yang ada pada bagian tengah merupakan frame
yang akan menampilkan tampilan video dari MotorPi.
Sebelum dapat berkomunikasi dengan MotorPi, maka perlu dilakukan pengaturan
koneksi yaitu dengan menyentuh logo Raspberry Pi pada Tampilan Aplikasi, sehingga
muncul antarmuka seperti pada Gambar 3.17. Gambar 3.17. merupakan Tampilan Settings
yang berguna untuk menentukan pada alamat IP berapakah MotorPi akan dikendalikan, dan
pada port berapakah fungsi MotorPi dapat menyediakan layanan kontrol serta tampilan
video. Pada Tampilan Settings, Pengguna juga dapat menonaktifkan MotorPi dengan cara
menyentuh tombol Shutdown Raspberry Pi serta dapat menghidupkan ulang (restart)
MotorPi dengan menyentuh tombol Restart Raspberry Pi.
Setelah mengisi alamat IP serta port yang digunakan maka pengguna harus menekan
tombol Save dan kemudian dapat langsung kembali ke Tampilan Aplikasi dengan
menyentuh tombol Back. Pada Tampilan Aplikasi, pengguna harus menyentuh tombol
heyGar supaya dapat membuat koneksi ke MotorPi.
Mengubah mode MotorPi dapat dilakukan dengan menyentuh tombol V1.0 sehingga
akan muncul tampilan seperti pada Gambar 3.18 berikut ini.
Gambar 3.18 Tampilan Mode Lengan.
3.2.3.
Penggunaan Motion
Motion dapat digunakan untuk melakukan streaming WebCam pada Raspberry Pi,
namun diperlukan pengaturan yang bertujuan untuk memperlancar terjadinya streaming
melalui jaringan internet.
Dari percobaan yang dilakukan penulis (pra percobaan) dengan mengambil gambar
33KB. WebCam M-Tech Box 6 LED memiliki kecepatan menangkap gambar sebesar 15
fps, sehingga dalam satu detik menghasilkan gambar dengan ukuran files sebesar:
33KB×15 = 495KB
Kecepatan UL minimal agar streaming dapat dilakukan adalah diatas 495KBps,
sehingga Motion dapat melakukan upload files untuk streaming. Modem 4G ZTE MF90
memiliki kecepatan UL terendah 5.76 Mbps atau dalam satuan bytes yaitu:
5.76
8 = 0.72M#N)
atau 720KBps sehingga mampu digunakan untuk melakukan streaming.
3.2.4.
Pengiriman IP Publik
Aplikasi heyGar dapat tersambung dengan prototipe robot apabila memiliki IP Publik
dari MotorPi, maka dari itu aplikasi heyGar perlu mengetahui IP Publik dari MotorPi. Untuk
dapat mengetahui IP Publik, maka MotorPi akan mengirim IP Publik kepada aplikasi
heyGar. Pengiriman IP Publik diawali dengan mengetahui IP Publik MotorPi. IP Publik
bersifat dinamis atau berubah-ubah pada tiap koneksi internet maka perlu adanya update
setiap membuat koneksi internet untuk mencari nilai IP Publik. Gambar 3.19 berikut adalah
diagram alir yang merupakan program untuk mengetahui IP Publik MotorPi.
Gambar 3.19 Diagram Alir Pengiriman IP Publik
Pada proses Kirim IP maka MotorPi akan mengirimkan email kepada heyGar yang
30
BAB IV
HASIL DAN PEMBAHASAN
4.1.
Hasil Implementasi
Gambar 4.1. Foto MotorPi saat Mode Bergerak (kiri) dan saat Mode Lengan (kanan)
Gambar 4.1. merupakan foto MotorPi yang telah dirancang secara menyeluruh, yaitu
terdapat roda penggerak, lengan robot, end of effector, webcam, dan juga modem yang
berada dibagian belakang atas. MotorPi akan memiliki bentuk yang berbeda pada saat mode
bergerak dengan mode penggunaan lengan. Saat berada pada mode bergerak, lengan
MotorPi akan terlipat mendekati badan MotorPi sehingga akan terlihat lebih ringkas.
Sedangkan pada mode lengan maka lengan MotorPi akan bergerak menjauhi badan MotorPi
sehingga tampilan layar pada aplikasi heyGar akan lebih tinggi.
Lengan MotorPi memiliki 3 derajat kebebasan seperti pada perancangan. EoE pada
lengan MotorPi dilengkapi gripper dan cutter yang mampu memotong kabel dengan
diameter 1mm, yaitu kabel pelangi atau kabel jumper. Lengan MotorPi juga mampu
mengangkat model bom yang terbuat dari sterofoam atau gabus.
Gambar 4.2. merupakan tangkapan layar dari aplikasi heyGar pada mode bergerak
dan mode lengan. Terdapat perubahan pada tampilan aplikasi mode lengan yaitu adanya dua
slider horizontal disamping logo Raspberry Pi (Gambar 4.2. bawah) yang berfungsi untuk
menggerakkan MotorPi ke kiri atau ke kanan pada saat berada dalam mode lengan. Selain
itu terdapat logo disket yang berguna untuk menyimpan kondisi servo pada saat itu,
sehingga apabila pengguna aplikasi menekan tombol V1.0 untuk masuk ke mode bergerak
tidak akan mengubah sudut servo ketika masuk kembali ke mode lengan. Terdapat pula
tombol diatas slider EoE, tombol tersebut adalah tombol dengan tulisan “EoE” yang
Gambar 4.2. Tampilan Antarmuka Aplikasi heyGar saat Mode Bergerak (atas) dan saat
Mode Lengan (bawah)
Penggunaan Motion mampu menghasilkan web server mini pada MotorPi dengan port
sesuai dengan pengaturan. Port yang telah diatur dapat diakses menggunakan IP MotorPi.
Dalam proses pengiriman data dari heyGar ke MotorPi dan juga sebaliknya, MotorPi
menggunakan koneksi VPN-PPTP sehingga memperoleh alamat IP yang tetap. Dengan
penggunaan VPN-PPTP ini maka pengaturan port forwarding serta pengiriman alamat IP
Publik secara berkala menjadi tidak diperlukan.
Bila MotorPi telah terhubung dengan VPN-PPTP maka MotorPi dapat dikendalikan
secara manual menggunakan slider dan tombol yang terdapat pada aplikasi heyGar. Pada
4.2.
Hasil Perancangan Hardware
Gambar 4.3. Wiring modul VNH2SP30 dengan Raspberry Pi
Pada Gambar 4.3. terdapat huruf yang menjelaskan fungsi kabel yang terhubung
antara Raspberry Pi dengan modul driver VNH2SP30. Keterangan lebih lengkap dapat
diketahui dari Tabel 4.1. berikut ini.
Tabel 4.1. Keterangan untuk Wiring Driver Motor VNH2SP30
Huruf Pin Keterangan
Raspberry Pi VNH2SP30
a 16 6 PWM motor kanan
b 12 5 PWM motor kiri
c 10 8 Enable B motor kiri
d 8 7 Enable B motor kanan
e 6 gnd Ground
f 4 5v Power 5V DC
g 2 A1 dan A2 Mengaktifkan motor kiri dan kanan
h 11 4 Enable A motor kiri
i 13 9 Enable A motor kanan
r - Motor Kanan Output motor kanan
l - Motor Kiri Output motor kiri
p - Daya Motor Tegangan 7.4V DC dari baterai
Untuk dapat menggunakan kedua motor pada driver VNH2SP30 diperlukan adanya
kondisi high pada pin A1 dan A2 driver, maka dari itu pin A1 dan A2 saling paralel dan
terhubung dengan pin 2 pada Raspberry Pi. Enable A dan Enable B pada tiap motor harus
diberikan kondisi yang berbeda supaya motor dapat berputar. Putaran motor dapat terjadi
Tabel 4.2. Kondisi Enable untuk Mengatur Putaran Motor
En A En B Kondisi
Motor kiri Motor kanan
low high Maju Mundur
high low Mundur Maju
low low Berhenti Berhenti
Gambar 4.4. Wiring Servo dengan Raspberry Pi
MotorPi memiliki lima buah servo yang terhubung dengan Raspberry Pi seperti pada
Gambar 4.4. Raspberry pi akan mengirimkan sinyal PWM dengan frekuensi 50Hz atau
periode 20ms dengan pengaturan lebar pulsa yang bervariasi dari 0.5ms hingga 2.5ms.
Untuk medapatkan lebar pulsa dengan rentang 0.5ms hingga 2.5ms diperlukan pengaturan
duty cycle dari 2.5 hingga 12.5. Berikut ini adalah Tabel 4.3. dan Tabel 4.4. yang
menjelaskan tentang koneksi kabel antara tiap-tiap servo dengan Raspberry Pi.
Tabel 4.3. Keterangan untuk Wiring Servo Huruf Pin Raspberry Pi Servo
a 37 S1 kiri
b 35 S1 kanan
c 36 S2
d 38 S3
Tabel 4.3. Keterangan untuk Wiring Servo (lanjutan) Huruf Pin Raspberry Pi Servo
f 39 Ground
p - 6 volt
gnd - Ground
Untuk mempermudah pemasangan servo dengan Raspberry Pi, maka dibutuhkan PCB
yang terhubung dengan pin sinyal PWM servo, daya 6 volt servo (p), serta ground (gnd).
Gambar 4.5. Pemasangan USB Modem 4G dan WebCam
Dari Gambar 4.5. terlihat adanya dua konektor USB berwarna putih dan hitam yang
tersambung dengan WebCam dan Modem 4G. Penggunaan WebCam dapat dilakukan
secara langsung, sehingga apabila Raspberry Pi aktif, maka WebCam dapat langsung
digunakan. Sebelum mengaktifkan Raspberry Pi, Modem 4G harus aktif terlebih dahulu,
sehingga koneksi internet dapat langsung dilakukan.
Gambar 4.6. Pemasangan Servo pada Lengan MotorPi
Dari Gambar 4.6. bagian kiri terlihat adanya dua servo yang saling berhadapat yaitu
servo S1 Kanan dan servo S1 Kiri yang bekerja saling berlawanan. Apabila S1 Kanan
mendapat sinyal dengan duty cycle 12.5 maka S1 Kiri akan mendapat sinyal 2.5 begitu pula
sebaliknya. Pengurangan nilai duty cycle S1 Kiri akan berbanding dengan penambahan nilai
Gambar 4.7. Penggunaan Tali untuk Menggerakkan Lengan MotorPi
Penggunaan servo selain servo S1 dan EoE adalah menerapkan penyaluran torsi
melalui tali. Penggunaan tali selain mampu menggeser beban lengan ke pusat lengan, namun
juga dapat menghasilkan gerakan lengan yang tidak terhambat, yaitu lengan tetap dapat
bergerak dari 0° hingga 180°. Penggunaan tali sebagai penyalur torsi dapat dilihat pada
Gambar 4.7. Dari Gambar 4.7 sebelah kiri terlihat bahwa L2 sedang dalam keadaan sudut
90°, begitu pula pada Gambar 4.7 sebelah kanan terlihat bahwa L3 sedang dalam keadaan
sudut 90°.
Gambar 4.8. EoE pemotong kabel posisi terbuka (kiri) dan posisi menutup (kanan)
4.3.
Hasil Perancangan Software
Gambar 4.9. Tangkapan Layar Data yang Diterima oleh MotorPi
Aplikasi heyGar akan mengirim data dalam bentuk string ke MotorPi. Data string
yang dikirim memiliki nilai yang berbeda yang memuat sudut tiap servo, intensitas PWM
motor, serta kode mode yang tiap nilainya dipisahkan oleh huruf “s”. Format nilai string
tensitas M.Kiri>s<intensitas M.Kanan>s<mode>. Dari Gambar 4.9. diperoleh data string
114s92s80s82s5s5s-1 yang artinya dapat dilihat pada Tabel 4.4. berikut.
Tabel 4.4. Data String Perintah heyGar ke MotorPi
Data S1 S2 S3 EoE M.Kiri M.Kanan Mode
114s92s80s82s5s5s-1 114° 92° 80° 82° 60% 60% Lengan
Mode yang akan dimengerti oleh MotorPi dapat dilihat pada Tabel 4.5. berikut ini.
Tabel 4.5. Data Mode pada heyGar
Data Perintah
-2 Mengubah posisi lengan untuk mode bergerak -1 Masuk mode lengan dan posisi lengan berubah 188 Masuk mode lengan dan posisi lengan tetap
181 Pengereman
182 Membuka rem
183 Reboot Raspberry Pi
184 Shutdown Raspberry Pi
190 Masuk mode bergerak
0 Clear mode tanpa mengubah mode saat itu
4.4.
Pengujian Hardware dan Software
4.4.1.
Penggunaan Aplikasi heyGar untuk Mengendalikan MotorPi
Sebelum dapat menggunakan aplikasi heyGar, maka aplikasi harus di-install di
perangkat iOS. Setelah ter-install maka aplikasi dapat langsung dijalankan dengan
menyentuh ikon aplikasi. Akan muncul tampilan seperti pada Gambar 4.10. berikut ini.
Berdasarkan Gambar 4.10. sebelum dapat melakukan pengendalian terhadap
MotorPi, maka pengguna aplikasi heyGar harus menyentuh tombol pengaturan, yaitu
tombol dengan logo Raspberry Pi (a) sehingga akan muncul tampilan seperti pada Gambar
4.11. untuk mengatur alamat IP dan juga port sesuai dengan MotorPi, namun bila langkah
ini sudah pernah dilakukan maka pengaturan tidak diperlukan. Supaya heyGar dapat
menampilkan tampilan video dari MotorPi, maka pengguna aplikasi harus menyentuh
tombol heyGar (b) sehingga UIWebView (e) akan menampilkan tampilan video.
Pada Gambar 4.10. terdapat dua buah slider (d) yang berguna untuk mengatur
kecepatan putar roda pada MotorPi. Slider Left berguna untuk mengatur kecepatan dan arah
putar roda kiri, sedangkan slider Right berguna untuk mengatur kecepatan dan arah putar
roda kanan. Indeks atau angka yang berada disebelah slider menandakan intensitas
kecepatan putaran roda MotorPi, sehingga, apabila slider Left digeser pada angka 80 atas
dan slider Right digeser pada angka kurang dari 80 (misal 10 atas) maka kecepatan roda kiri
akan lebih cepat kedepan dibanding kecepatan roda kanan, sehingga MotorPi akan berjalan
maju ke kanan. Bila nilai slider Right digeser ke nilai atas yang lebih besar dari slider Left
maka MotorPi akan berjalan maju ke kiri. Pengaturan kecepatan juga berlaku untuk
menjalankan MotorPi mundur. Perbedaan pengauturan slider akan mengakibatkan MotorPi
berbelok. Bila slider Left dan slider Right digeser ke atas dengan nilai angka yang sama
maka MotorPi akan maju sedangkan bila slider Left dan slider Right digeser ke bawah
dengan nilai angka yang sama maka MotorPi akan mundur. Untuk dapat menghentikan
putaran roda MotorPi secara tiba-tiba dapat dilakukan dengan menyentuh tombol BRAKE
(c) dan untuk menjalankan roda MotorPi kembali dapat menyentuh tombol RELEASE.
Apabila pengguna aplikasi heyGar belum pernah melakukan setting alamat IP maka
pengguna dapat mengatur nilai IP serta port pada Tampilan Setting. Alamat IP dapat diisi
pada kolom Alamat IP, port penggerak dapat diisi pada kolom Port Penggerak dan port
video dapat diisi pada kolom Port Video seperti yang ditunjukkan pada Gambar 4.11.
Setelah alamat IP dan port diisi maka pengguna harus menyentuh tombol Save dan dapat
menekan tombol Back untuk kembali ke Tampilan Antarmuka (Gambar 4.10). Pada
tampilan Setting pengguna juga dapat mematikan serta me-restart RaspberryPi.
Untuk mengatur sudut lengan dan end of effector maka pengguna aplikasi harus
menyentuh tombol V1.0 (f) pada tampilan Antarmuka sehingga akan muncul tampilan
pengaturan lengan MotorPi seperti pada Gambar 4.12. berikut ini.
Gambar 4.12. Tampilan Mode Lengan
Pada tampilan Mode Lengan terdapat slider pengatur sudut lengan MotorPi (a) dan
juga slider penggerak roda MotorPi(c). Slider S1 berguna untuk mengatur sudut servo 1
MotorPi, slider S2 berguna untuk mengatur sudut servo 2 MotorPi, slider S3 berguna untuk
mengatur sudut servo 3 sedangkan slider EoE berguna untuk mengatur intensitas
terbukanya eoe pada lengan MotorPi. Apabila slider telah diatur ke sudut tertentu dan
pengguna aplikasi hendak kembali ke tampilan Antarmuka atau mode bergerak maka
supaya sudut servo bertahan dan tidak berubah maka pengguna harus menyentuh tombol
disket (b) terlebih dahulu. Apabila pada saat mengatur sudut lengan, namun pengguna
aplikasi juga ingin menggeser lengan ke kiri maupun ke kanan, maka pengguna aplikasi
dapat menggeser slider penggerak roda (c). Terdapat dua slider penggerak roda, namun
memiliki fungsi yang sama, adanya dua slider ini memudahkan pengguna aplikasi bila
pengguna dapat menggeser lengan MotorPi ke kiri atau ke kanan menggunakan slider
penggerak dibagian kanan, begitu pula jika pengguna aplikasi sedang menggunakan jari
kanan untuk menggerakkan servo S2 ataupun EoE maka pengguna dapat menggeser lengan
MotorPi ke kiri ataupun ke kanan menggunakan slider penggerak dibagian kiri. Untuk
memotong kabel, pengguna dapat menggerakkan slider EoE dengan cepat dari nilai 100 ke
0, atau dapat pula dengan menekan tombol EoE yang terdapat pada bagian atas slider.
Baik pada saat berada pada tampilan mode bergerak ataupun tampilan mode lengan,
pengguna aplikasi dapat dengan mudah melipat lengan MotorPi agar menjadi lebih ringkas
yaitu dengan mengetuk sebanyak 3 kali pada tampilan video. Jika lengan MotorPi telah
terlipat menjadi ringkas, maka bila pengguna aplikasi kembali ke mode bergerak atau
kembali ke mode lengan maka posisi sudut servo tidak berubah, karena dengan mengetuk 3
kali pada tampila video akan dilakukan penyimpanan sudut lengan MotorPi pula.
Untuk dapat mengangkat dan memotong kabel model bom maka pengguna harus
mengatur slider guna mendekatkan MotorPi ke model bom. Setelah berada pada jarak yang
tepat dengan model bom, maka lengan MotorPi harus menempel pada kabel model bom
agar kabel dapat terpotong. Kabel harus menempel pada bagian tengan EoE pada saat EoE
berada pada kondisi terbuka, selanjutnya pengguna dapat menyentuh tombol EoE.
4.4.2.
Pengujian Motor DC
Gambar 4.13. Sinyal PWM Pengoperasian Motor DC
Dari Gambar 4.13. terdapat dua sinyal yang merupakan sinyal PWM motor kiri (sinyal
nomor 1) dan PWM motor kanan (sinyal nomor 2) pada duty cycle masing-masing 79.19%
dan 79.99%. Sinyal PWM yang diberikan kepada motor DC menggunakan frekuensi 50Hz
dan mampu memutar motor DC pada MotorPi. Walaupun pada program python MotorPi
pada Gambar 4.13. frekuensi sinyal 1 adalah 49.52Hz dan frekuensi sinyal 2 adalah
50.01Hz.
Apabila PWM diatur pada duty cycle 100% maka motor DC akan berputar dengan
maksimal. Putaran maksimal pada motor DC akan menggerakkan MotorPi dengan
kecepatan maksimal. Kecepatan maksimal MotorPi dapat dilihat pada Tabel 4.6. berikut ini.
Tabel 4.6. Pengujian kecepatan maksimal MotorPi
Pengujian Kecepatan(km/h)
1 1,20
2 1,21
3 1,21
4 1,21
5 1,20
6 1,19
Rata-rata 1,20
Pengujian kecepatan diukur menggunakan LDR dan laser yang menjadi sensor
kecepatan Arduino Uno. Terdapat dua pasang sensor yang terpasang sejajar dengan jarak
35,4 cm. Kecepatan MotorPi dapat diukur yaitu dengan mengetahui waktu yang diperlukan
oleh MotorPi untuk bergerak memotong sinar laser sensor 1 ke sinar laser sensor 2, sehingga
dapat diperoleh kecepatan yaitu (3,6*0,354/waktu bergerak). Perhitungan 3,6 adalah untuk
merubah data dari satuan m/s menjadi km/h, sedangkan 0,354 adalah jarak sensor dalam
satuan meter (m).
4.4.3.
Pengujian Servo
Gambar 4.14. Sinyal PWM Pengoperasian servo S1 pada Sudut Sekitar 135°
Dari Gambar 4.14. terlihat adanya dua sinyal PWM dengan nilai yang berlawanan
senilai dengan sudut 180° pada servo S1 kanan. Nilai duty cycle tentu akan berbeda yaitu
seperti pada Gambar 4.14. dimana duty cycle bernilai 5.01% pada sinyal PWM 1 dan 9.94%
pada sinyal PWM 2.
Berdasarkan datasheet Servo Feetech FT5316M diperlukan sinyal PWM dengan
periode 20ms yaitu senilai dengan frekuensi 50Hz. Akan tetapi, walaupun pada program
MotorPi diatur frekuensi 50Hz, GPIO Rapsberry Pi menghasilkan frekuensi yang
berubah-ubah dari 49.20Hz hingga 50.01Hz. Inkonsistensi dari frekuensi yang digunakan untuk
mengatur sudut servo berimbas pada terjadinya jitter atau getaran yang tidak diperlukan
pada tiap-tiap servo. Dari uji coba penggunaan servo didapat kelemahan dari Raspberry Pi
yaitu untuk mengatur servo dihasilkan inkonsistensi frekuensi. Inkonsistensi dari frekuensi
juga berimbas pada inkonsistensi dutycycle yaitu terjadi keterlambatan pembangkitan pulsa
sehingga dutycycle yang seharusnya muncul menjadi hilang. Adanya keterlambatan
pembangkitan pulsa pada sinyal PWM dapat dilihat pada Gambar 4.15. yaitu terlihat suatu
sinyal yang kurang baik untuk mengatur servo. Jitter yang terjadi sangat berakibat pada
tidak stabilnya gambar video yang ditampilkan di aplikasi heyGar.
Gambar 4.15. Sinyal PWM yang kurang baik
Sinyal PWM yang dihasilkan oleh GPIO Raspberry Pi akan diterima oleh servo
sehingga servo mampu bergerak ke sudut sesuai dengan PWM yang diatur, namun servo
FT5316 memiliki keterbatasan sehingga tidak dapat mencapai sudut sesuai yang diatur.
Gambar 4.16. Selisih sudut servo S1 yang diatur 180°
Dari Gambar 4.16. pada aplikasi