Anda di halaman 1dari 7

CITEE 2019 Yogyakarta, 24-25 Juli 2019 ISSN: 2085-6350

Pemberdayaan Sensor Smartphone Android dalam Industrial IoT


(IIOT) berbasis protokol MODBUS/TCP

Sujoko Sumaryono, Adhika Setya, Warsun Najib


Departemen Teknik Elektro dan Teknologi Informasi, Fakultas Teknik
Universitas Gadjah Mada Jalan Grafika 2,
Yogyakarta (55281), Indonesia
sujoko@ugm.ac.id, warsun@ugm.ac.id

Intisari — Dalam dunia industri, protokol Modbus/TCP I. PENDAHULUAN


adalah salah satu protokol komunikasi yang banyak
digunakan dalam sistem kontrol untuk mengendalikan Revolusi Industri ke-4 merupakan era ketika terobosan
mesin yang terhubung dalam jaringan melalui di bidang teknologi menyebabkan perbedaan antara dunia
Programmable Logic Controller (PLC). Modbus/TCP juga fisik, biologis, dan digital menjadi semakin kabur.
digunakan sebagai protokol komunikasi pada sistem Terobosan ini menyebabkan perubahan secara
Supervisory Control And Data Acquisition (SCADA). fundamental dalam pola hidup, pola pikir, dan kondisi
Permasalahan yang ada dalam industri, bahwa perangkat sosial manusia [1]. Pada bidang industri, revolusi ini
khusus untuk Human Machine Interface (HMI) relative dipacu oleh perkembangan Industrial Internet of Things
sangat mahal, untuk industri yang bersekala kecil, namun (IIoT) yang berpotensi membuka lapangan kerja baru
sebaliknya harga perangkat Smartphone semakin
serta menghasilkan nilai ekonomis hingga US$15 triliun
terjangkau. Tujuan penelitian ini adalah bagaimana
memberdayakan smartphone sebagai perangkat input pada tahun 2030 [2].
sistem IIoT yang dapat mengirimkan data sensor gyroscope, Komponen dalam sistem Internet of Things (IoT) yang
acceleration, dan proximity ke perangkat PLC dengan berwujud di dunia fisik adalah sensor dan actuator.
menggunakan protokol Modbus/TCP. Lebih khusus Sensor berguna untuk mengumpulkan informasi
penelitian ini untuk mengembangan suatu program aplikasi sedangkan actuator adalah perantara sistem untuk
antarmuka (API) berbasis Android yang mampu melakukan suatu aksi fisik [3]. Dalam dunia industri,
mengirimkan data sensor ke perangkat PLC menggunakan protocol Modbus/TCP merupakan salah satu protocol
protokol Modbus TCP secara real time. Hasil penelitian komunikasi yang banyak digunakan pada sistem
menunjukan bahwa aplikasi antarmuka yang dibangun
pengontrol untuk mengendalikan mesin yang terkoneksi
berdasar protokol TCP Modbus dalam sistem Android,
mampu mengirim data sensor giroskop, akselerasi, dan dalam jaringan. Modbus/TCP juga digunakan sebagai
kedekatan, periode pengiriman 50 milidetik dan latensi protocol komunikasi pada sistem SCADA dengan PLC
rata-rata 0,094 milidetik. Aplikasi antarmuka ini terbukti maupun smart transmitter
andal dengan tingkat keberhasilan pengiriman paket Modbus yang bersifat sumber terbuka dan dapat
mencapai 100%. diimplementasikan dan digunakan secara bebas. Dalam
tren revolusi industri 4.0, sistem kontrol dapat dipadukan
Abstract— In the industrial world, Modbus / TCP protocol is dengan suatu perangkat antarmuka yang dapat berdialog
one of the communication protocols that are widely used in dengan manusia atau pengguna secara intuitif. Berbagai
control systems to control machines connected in a network
perangkat yang dapat dimanfaatkan sebagai media
through Programmable Logic Controller (PLC). Modbus /
TCP is also used as a communication protocol on the kontrol misalnya smartphone dan tablet. Perangkat
Supervisory Control And Data Acquisition (SCADA) system. smartphone telah menjadi barang umum dan mudah
Problems that exist in the industry, that special devices for didapat yang telah banyak dimanfaatkan di berbagai
Human Machine Interfaces (HMI) are relatively very bidang. Selain itu, smartphone memiliki kemampuan
expensive, for industries that are small scale, but on the berkomunikasi yang sangat fleksibel, yaitu melalui sistem
contrary the price of Smartphone devices is increasingly jaringan komunikasi bergerak (mobile) 3G/4G, Wifi dan
affordable. The purpose of this study is to empower Bluetooth. Berbagai teknologi sistem komunikasi tersebut
smartphones as IIoT system input devices that can transmit dapat menyampaikan pesan antar perangkat melalui
gyroscope, acceleration, and proximity sensor data to PLC
protokol Modbus. Smartphone umumnya telah memiliki
devices using the Modbus / TCP protocol. More specifically
this research is to develop an Android-based interface berbagai sensor bawaan seperti gyroscope,
application program (API) that is capable of sending sensor accelerometer, proximity, touch sensor, dan
data to PLC devices using the Modbus TCP protocol in real magnetormeter. Sensor ini dapat dimanfaatkan sebagai
time. The results showed that the interface application built media pengendali yang intuitif. Sebagai contoh,
based on the TCP Modbus protocol in the Android system, penelitian yang dilakukan oleh Mourcou, dkk. [4]
was able to send gyroscope, acceleration, and proximity sensor memanfaatkan sensor accelerometer dan gyroscope pada
data, a delivery period of 50 millisecond and an average smartphone sebagai perangkat pengendali tangan
latency of 0.094 milliseconds. This interface application is robotika dengan akurasi yang memuaskan.
proven reliable with the success rate of package delivery
Permasalahan yang ada dalam industri, bahwa
reaching 100%.
Keywords— IIoT, Modbus/TCP, Android Sensor API perangkat khusus untuk Human Machine Interface (HMI)

Departemen Teknik Elektro dan Teknologi Informasi, FT UGM 269


ISSN: 2085-6350 Yogyakarta, 24-25 Juli 2019 CITEE 2019

relative sangat mahal, untuk industri yang bersekala magnet di sekitar perangkat.
kecil, namun sebaliknya harga perangkat Smartphone
semakin terjangkau. Sensor pada perangkat Android dapat diatur untuk
Penelitian ini, akan mengeksplorasi bagaimana piranti memperbaharui data dalam 4 tingkatan waktu yang
smartphone dapat menggantikan piranti HMI. Bagaimana berbeda-beda[9], yaitu:
pengembangan aplikasi antarmuka dalam sistem • SENSOR_DELAY_FASTEST – kecepatan
Android, dan menguji kinerja serta interoperabilitasnya pembaharuan yang paling cepat.
dengan piranti standar industri. • SENSOR_DELAY_NORMAL – kecepatan
Tujuan pengembangan ini, yaitu memberdayakan pembaharuan standar, cocok untuk mengukur
penggunaan smartphone sebagai perangkat input pada perubahan orientasi layar.
sistem IIoT yang dapat mengirimkan data yang berasal • SENSOR_DELAY_GAME – kecepatan pembaharuan
dari sensor gyroscope, acceleration, dan proximity, ke yang cocok untuk digunakan sebagai input di aplikasi
perangkat PLC melalui protokol Modbus/TCP. Lebih permainan
spesifik dari penelitian ini adalah mengembangkan • SENSOR_DELAY_UI – kecepatan pembaharuan
program aplikasi antarmuka (API) berbasis Android yang sesuai refresh rate tampilan.
mampu mengirimkan data sensor tersebut ke perangkat Pada smartphone Google Nexus 4 kecepatan
PLC menggunakan protokol Modbus TCP secara real pembaharuan tingkat SENSOR_DELAY_FASTEST
time. kurang lebih 4 kali lebih cepat dari pada
Beberapa studi sebelumnya, belum memberdayakan SENSOR_DELAY_NORMAL dan mengonsumsi baterai
sensor sensor smartphone berbasis Android sebagai ~33% - 40% lebih banyak [10]. Baik untuk sensor
komponen untuk interaksi antara manusia dengan mesin gyroscope dan accelerometer, sampling
dalam dunia industri [4][5]. SENSOR_DELAY_NORMAL memiliki rata-rata
periode waktu 20 milidetik dan sampling
SENSOR_DELAY_FASTEST 5 milidetik. Nilai ini
II. METODOLOGI
dapat bervariasi antar perangkat.
A. Sensor pada Perangkat Android
Android adalah sistem operasi piranti bergerak yang B. Pengembangan Aplikasi Android
dikembangkan oleh Google dan dirilis pertama kali pada Proses pengembangan aplikasi Android adalah
tahun 2008. Android dikembangkan dari basis kernel langkah dan tata cara pengembangan perangkat lunak
Linux dan dirilis secara open source [5]. Sistem operasi yang ditargetkan untuk dijalankan pada platform
ini diperuntukkan untuk perangkat berbasis layar sentuh Android. Google menyediakan Software Develompent Kit
seperti smartphone, smartwatch, dan tablet. Belakangan (SDK) yang berisi alat-alat untuk compiling, debugging,
ini, Android juga digunakan dalam sistem seperti smart mengatur beberapa versi SDK yang ditujukan untuk versi
TV, automotif, game console, hingga kamera digital. Android yang berbeda, hingga emulasi perangkat
Pada perangkat smartphone Android yang relatif modern Android virtual [11]. SDK Android tidak bersifat
dengan sistem operasi versi Android 4.4 (Kitkat) dan backward-compatible [12]. Hal ini berarti jika
generasi yang lebih baru, telah dilengkapi dengan pemrogram menggunakan versi SDK yang terbaru, maka
beberapa sensor, antara lain; sensor accelerometer, hasil aplikasi tersebut hanya bisa dijalankan di perangkat
temperatur, gravitasi, gyroscope, cahaya, medan keluaran terbaru. Untuk mengatasi hal ini, biasanya
magnetik, orientasi perangkat, tekanan, proximity, dan pemrogram tidak secara khusus menggunakan SDK versi
kelembaban [6]. Umumnya, perangkat Android terbaru, namun menggunakan SDK versi beberapa rilis
mendukung koneksi eksternal berupa GSM/3G/4G, Wifi, sebelumnya. Jikalau pemrogram membutuhkan suatu
atau sambungan USB mikro, dan bluetooth. Sensor pada fitur atau panggilan library yang hanya tersedia di SDK
sistem Android walaupun telah diteliti cukup reliabel versi terbaru, maka perlu dibuat pemanggilan kondisional
untuk mengukur suatu sudut dan gerakan tangan [7], yang hanya terjadi atau hanya aktif pada perangkat
namun memiliki kendala berupa drift atau pergeseran keluaran baru saja [13]. Pengembangan aplikasi Android
yang membuat akurasi sensor memburuk seiring waktu dapat dilakukan dalam berbagai bahasa. Bahasa yang
[8]. secara resmi didukung oleh SDK Android adalah Java,
Sensor-sensor yang umumnya ditemukan pada Kotlin, dan C++ [14]. Namun, terdapat banyak third
perangkat Android: party tools yang memungkinkan pengembangan
• Sensor accelerometer – mengukur percepatan menggunakan bahasa pemrograman lain seperti Python,
perangkat. Javascript, Go, dll.
• Sensor temperatur – mengukur suhu udara sekitar Software untuk pengembangan aplikasi Android yang
perangkat. paling umum dipakai sekaligus didukung secara resmi
• Sensor cahaya – mengukur tingkat intensitas cahaya oleh Google adalah Integrated Development Environment
yang mengenai perangkat. (IDE) Android Studio [15]. IDE ini menyediakan
• Sensor proximity – mengukur nilai jauh/dekat integrasi proses pembangunan aplikasi menggunakan
perangkat dengan suatu benda di depannya. Gradle, code refactor, linter untuk inspeksi kode yang
• Sensor gyroscope – mengukur nilai rotasi angular dan kurang baik, editor User Interface (UI) gaya WYSIWYG,
orientasi perangkat.
• Sensor medan magnet – mengukur besaran medan

270 Departemen Teknik Elektro dan Teknologi Informasi, FT UGM


CITEE 2019 Yogyakarta, 24-25 Juli 2019 ISSN: 2085-6350

pengaturan versi-versi SDK yang berbeda, kerangka kerja 1) Aplikasi dapat berjalan di Android versi Kitkat dan
tes, emulasi perangkat Android virtual, dll. [16]. yang lebih baru. Pemilihan versi Kitkat ini
dikarenakan versi ini adalah versi terlama Android
C. Protokol Modbus TCP yang masih memiliki persentase pengguna yang
Modbus adalah protokol komunikasi serial yang signifikan, yaitu sebesar 10,3% dan akumulasi
pertama kali dipublikasikan oleh Schnieder Electric pada pengguna dari versi ini hingga versi terbaru 8.1 Oreo
tahun 1979. Protokol ini memiliki desain yang simpel dan adalah 95%[20]. Aplikasi ini tidak membutuhkan fitur
telah menjadi standar de facto sebagai protokol yang terdapat di versi SDK lebih tinggi sehingga tidak
komunikasi perangkat elektronik di bidang industri. masalah jika menggunakan versi SDK lama.
Spesifikasi Modbus bersifat terbuka dan dapat 2) Aplikasi dapat membaca sensor accelerometer,
diimplementasikan secara bebas [17]. gyroscope, dan proximity. Pemilihan sensor ini
memungkinkan penggunaan smartphone sebagai
Komunikasi dalam Modbus memiliki pola master- pengendali intuitif yaitu menggunakan gerakan
slave seperti pada Gambar 2.1. Perangkat master akan tangan yang dibaca oleh sensor accelerometer dan
mengendalikan dan mengubah data yang disimpan oleh gyroscope. Penggunaan gerakan tangan yang
perangkat slave [18]. Berdasarkan lapisan jaringan ISO, ditangkap oleh sensor smartphone ini telah diteliti
protokol Modbus bekerja pada lapisan aplikasi dan cukup intuitif [7] dan cukup akurat untuk mereplika
implementasi pengiriman data pada lapisan jaringan posisi tangan hingga akurasi 0.3⁰ [4].
dapat menggunakan protokol internet seperti TCP dan 3) Aplikasi dapat mengirim data ke perangkat master
UDP, protokol mesh network seperti Zigbee [19], atau Modbus berupa PLC yang terkoneksi ke jaringan
koneksi serial. LAN.
B. Desain Arsitektur Aplikasi

Gambar 1 - Arsitektur Komunikasi Protokol Modbus TCP [17]

Gambar 2 - Diagram Arsitektur Sistem


D. EasyModbus
EasyModbus adalah library pemrograman yang dirilis Berdasarkan kebutuhan aplikasi, disusun garis besar
oleh Rossmann-engineering yang bertujuan untuk arsitektur aplikasi seperti pada Gambar 2. Aplikasi yang
memudahkan proses pengembangan aplikasi yang dikembangkan akan memiliki beberapa modul utama,
memanfaatkan protokol Modbus [20]. Library ini yaitu:
dipublikasikan secara open source dan tersedia dalam Modbus slave module - menangani komunikasi atau
lingkup pemrograman .NET, Java, dan Python. pengiriman dan penerimaan data antara aplikasi
Implementasi EasyModbus yang digunakan dalam smartphone dengan perangkat master Modbus. Data akan
penelitian ini adalah implementasi bahasa Java, sesuai dikirimkan menggunakan protokol Modbus yang di
dengan bahasa yang akan digunakan dalam enkapsulasi ke dalam paket TCP.
pengembangan aplikasi Android. Versi rilis dari Sensor manager module - mengaktifkan, mengatur
EasyModbus dalam bahasa Java dapat di unduh dari (manage), dan mengambil data sensor untuk dikirimkan
mirror di website SourceForge [21]. EasyModbus ke modbus slave module yang kemudian diteruskan ke
mendukung sambungan protokol Modbus via TCP, UDP, master Modbus.
dan RTU. Library ini mengimplementasikan sebagian Sensor module – setiap sensor dibungkus dalam
dari function code yang ditetapkan di standar spesifikasi modulnya masing-masing. Hal ini dikarenakan setiap
Modbus, terutama yang berkaitan dengan pengiriman sensor memiliki cara yang berbeda dalam pengaksesan
data. dan pengolahan datanya.
Modbus memory display module - menampilkan data-
III. HASIL DAN PEMBAHASAN data yang tersimpan dalam memori penyimpanan
perangkat master Modbus.
A. Fitur Aplikasi yang Dikembangkan
C. Layanan Aplikasi
Aplikasi yang dikembangkan memiliki fitur yang
dikehendaki adalah sebagai berikut: Arsitektur Aplikasi Android

Departemen Teknik Elektro dan Teknologi Informasi, FT UGM 271


ISSN: 2085-6350 Yogyakarta, 24-25 Juli 2019 CITEE 2019

Arsitektur aplikasi Android dapat dibangun


berdasarkan panduan arsitektur sistem Android dan
diadaptasi sesuai gaya pemrograman aplikasi Android.
Aplikasi-aplikasi dikembangkan dalam modul-modul
seperti pada Gambar 3. Secara keseluruhan, modul pada
aplikasi terdiri dari 3 jenis, yaitu:
 Activity – bertanggung jawab dalam mengatur tampilan
pengguna (User Interface) dan logika yang berkaitan
dengan tampilan seperti alur menu, pergantian status
tombol aktif/tidak aktif, dan manipulasi tampilan
lainnya.
 Service – menangani logika bisnis utama program
seperti mengirimkan data Modbus dan mengatur
sensor.
 SensorListener – mengambil dan mengolah data sensor
hingga siap untuk dikirim oleh service.

Gambar 4 - Diagram Alir ModbusSlaveService

Layanan ModbusSlaveService
Layanan ModbusSlaveService bertanggung jawab
untuk melakukan komunikasi eksternal dengan perangkat
PLC. Layanan ini memfasilitasi kerja fitur pengiriman
data sensor (SensorManagerService) dan fitur melihat
data memori modbus (ModbusMemoryActivity). Layanan
ini mulai berjalan seiring dengan dimulainya aplikasi
sekaligus memulai layanan SensorManagerService.
Dalam layanan ModbusSlaveService melayani beberapa
aktivitas dengan aplikasi antarmuka pengguna yaitu
ModbusMemoryActivity, HomePageActivity, dan
SettingActivity. Secara keseluruhan, aksi yang dilakukan
layanan ModbusSlaveService dapat digambarkan
Gambar 3- Arsitektur Aplikasi Android menggunakan diagram alir di Gambar 4.

Layanan SensorManagerService
Layanan ini bertanggung jawab untuk mengaktifkan
perangkat sensor yang ada pada smartphone dan
membuat objek SensorListener sehingga data dari
perangkat sensor tersebut dapat dimanfaatkan. Layanan
SensorManagerService merupakan bounded service yang
dikaitkan dengan ModbusSlaveService. Ini berarti bahwa
layanan SensorManagerService akan selalu aktif selama
aplikasi berjalan.

272 Departemen Teknik Elektro dan Teknologi Informasi, FT UGM


CITEE 2019 Yogyakarta, 24-25 Juli 2019 ISSN: 2085-6350

1 @ Nullable tanggal ISO, timestamp dalam satuan detik, tujuan alamat


2 @Override memori, serta isi data memori dalam format
3 public IBinder onBind(Intent intent) {
4 accelerometerSensor = sensorManager heksadesimal. Setiap nilai dipisahkan dengan karakter “-
5 .getDefaultSensor(Sensor.TYPE_ACCELEROMETER); “. Konten log aplikasi Android pada Gambar 8.
6 gyroscopeSensor = sensorManager mengandung nilai timestamp dalam satuan mikro detik,
7 .getDefaultSensor(Sensor.TYPE_GYROSCOPE); nama sensor, nomor elemen data sensor, serta nilai data
8 magnetometerSensor = sensorManager
9 .getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD); yang dikirimkan.
10 proximitySensor = sensorManager
11 .getDefaultSensor(Sensor.TYPE_PROXIMITY); 2018-08-09 19:07:03,463 -
12 1533816423.463648 - Processing: 0x0 0x1
13 accelerometerSensorListener = new AcelerationSensorListener( 0x0 0x0 0x0 0x6 0x1 0x6 0x0 0x1 0x7f
14 getSensorBroadcastDelayPref()); 0xf9
15 proximitySensorListener = new ProximitySensorListener(); 2018-08-09 19:07:03,468 -
16 gyroscopeSensorListener = new GyroscopeSensorListener( 1533816423.468657 - Processing: 0x0 0x1
17 getSensorBroadcastDelayPref()); 0x0 0x0 0x0 0x6 0x1 0x6 0x0 0x2 0x7f
18 0xfd
19 startProximitySensor(); 2018-08-09 19:07:03,471 -
20 startGyroscopeSensor(); 1533816423.471658 - Processing: 0x0 0x1
21 startAccelerometerSensor(); 0x0 0x0 0x0 0x6 0x1 0x6 0x0 0x3 0x80 0x0
22 2018-08-09 19:07:03,477 -
23 sensorSwitchFilter = new IntentFilter(); 1533816423.477651 - Processing: 0x0 0x1
0x0 0x0 0x0 0x6 0x1 0x6 0x0 0x4 0x80
24 sensorSwitchFilter.addAction(ACTION_SENSOR_ON);
0x17
25 sensorSwitchFilter.addAction(ACTION_SENSOR_OFF);
2018-08-09 19:07:03,484 -
26 LocalBroadcastManager.getInstance(this)
1533816423.484653 - Processing: 0x0 0x1
27 .registerReceiver(onSensorOffRequest, sensorSwitchFilter);
0x0 0x0 0x0 0x6 0x1 0x6 0x0 0x5 0x81
28
0x66
29 return binder;
2018-08-09 19:07:03,487 -
30 }
1533816423.487662 - Processing: 0x0 0x1
0x0 0x0 0x0 0x6 0x1 0x6 0x0 0x6 0x81
Gambar 5 - Cuplikan Kode SensorManagerService pada Bagian 0x62
Fungsi onBind() 2018-08-09 19:07:03,613 -
1533816423.613681 - Processing: 0x0 0x1
D. Hasil Pengujian Aplikasi 0x0 0x0 0x0 0x6 0x1 0x6 0x0 0x1 0x7f
Contoh use case dari aplikasi ini adalah untuk 0xf9
mematikan lampu jika perangkat smartphone diletakkan Gambar 7 - Cuplikan File Log PLC
menghadap kebawah. PLC akan mengawasi nilai dari
"1533816423274","Accelerometer
sensor gyroscope koordinat x yang berada pada holding
Sensor","0","32761"
register nomor 4. Jika nilai dari data ini adalah -180 atau "1533816423277","Accelerometer
mendekati, maka smartphone dalam kondisi menghadap Sensor","1","32765"
ke bawah. Pengembang PLC kemudian dapat "1533816423281","Accelerometer
mengirimkan sinyal pengontrol untuk mematikan lampu. Sensor","2","32768"
"1533816423288","Gyroscope
Pengujian Fitur Pengiriman Data Sensor Sensor","0","32791"
Dari hasil uji coba, didapatkan 8 file log yaitu log "1533816423293","Gyroscope
Sensor","1","33126"
dari perangkat PLC dan dari aplikasi Android untuk "1533816423296","Gyroscope
varian broadcast data sensor dengan periode waktu 0, 50, Sensor","2","33122"
200, dan 1000 milidetik. Daftar file tersebut dapat dilihat "1533816423429","Accelerometer
di Gambar 6. Sensor","0","32761"
"1533816423434","Accelerometer
Sensor","1","32765"
"1533816423437","Accelerometer
Sensor","2","32768"
"1533816423503","Gyroscope
Sensor","0","32791"
"1533816423509","Gyroscope
Sensor","1","33126"
"1533816423513","Gyroscope
Sensor","2","33122"
Gambar 8 - Contoh Cuplikan File Log Aplikasi
Gambar 6 - Daftar File Log Pengiriman Data Sensor
D. Uji Kecocokan Data
Uji kecocokan data dilakukan dengan mencocokkan
Cuplikan log perangkat PLC dapat dilihat pada nilai antara kedua file log tersebut. Data yang dikirimkan
Gambar 7. Tiap baris data merepresentasikan suatu paket oleh perangkat slave seharusnya sama persis dengan data
Modbus yang diterima oleh master Modbus. Format log yang diterima oleh perangkat master. Hasil dari
tersebut adalah waktu diterimanya paket dalam format pencocokan adalah kedua data tersebut sesuai.

Departemen Teknik Elektro dan Teknologi Informasi, FT UGM 273


ISSN: 2085-6350 Yogyakarta, 24-25 Juli 2019 CITEE 2019

Latensi pengiriman data antara dikirimnya paket


Modbus dari slave hingga diterima oleh master dapat
dihitung dengan mencari rata-rata selisih timestamp-nya.
Perhitungan latensi waktu ini dapat dilihat pada Tabel 1.

Tabel 1 - Rata-rata Latensi Waktu Pengiriman Paket Data Modbus


Jeda Latensi Latensi Latensi Standar
Pengirima Rata-rata Maksimal Minimal Deviasi
n (mdetik) (mdetik) (mdetik) (mdetik) (mdetik)
0 0,190 0,192 0,180 0,0016
50 0,096 0,097 0,085 0,0018
200 0,091 0,093 0,073 0,0024
1000 0,091 0,092 0,074 0,0025

Gambar 9- Halaman HomePageActivity Ketika Belum dan Telah


Berdasarkan hasil uji coba pada Tabel 1, dapat Tersambung
dilihat bahwa latensi waktu paling tinggi dialami pada
periode waktu pengiriman data 0 milidetik, sedangkan
periode pengiriman 50, 200, dan 1000 milidetik tidak
memiliki perbedaan signifikan. Untuk semua variasi
periode, konsistensi latensi pengiriman sangat stabil. Hal
ini ditandai dengan selisih antara latensi maksimal dan
minimal di bawah 0,020 milidetik dan standar deviasi di
kisaran 0,0020 milidetik.

E. Uji Persentase Paket Diterima


Untuk menentukan persentase paket diterima, maka
jumlah data yang terdapat di kedua log dihitung
jumlahnya. Hasil dari penghitungan ini dapat dilihat pada
Tabel 2. Dapat disimpulkan bahwa protokol Modbus
Gambar 10 - Halaman ModbusMemoryActivity dan SettingActivity
TCP untuk pengiriman data sensor sangat reliabel dalam
menghindari terjadinya packet loss. Sebagai catatan,
100% reliabilitas ini dapat juga dicapai karena fitur dari IV. KESIMPULAN
protokol TCP yang akan mengirim ulang paket yang
hilang. Namun dalam proses uji coba, sensor proximity Dari hasil pengujian dan pembahasan, dapat
memiliki jeda waktu yang cukup signifikan (1-5 detik) disimpulkan bahwa ;
antara ditutupnya sensor secara fisik dengan pengiriman 1) Aplikasi Android yang dikembangkan telah berhasil
paket data Modbus-nya. Jeda waktu ini cenderung lebih mengirim data sensor ke perangkat PLC dengan
lama jika periode pengiriman data dipersingkat. menggunakan protokol Modbus/TCP.
2) Smartphone dapat menggantikan piranti HMI khusus
Tabel 2 - Persentase Paket Data Sensor Diterima dalam Berbagai yang digunakan dalam industry dengan biaya yang
Periode Pengiriman relatif murah.
Jeda Jumlah Jumlah Paket Persentase 3) Protokol Modbus TCP dapat mengirim data dengan
Pengiriman Paket Diterima Paket tingkat akurasi 100% dan rata-rata latensi waktu
Data Dikirim PLC Diterima terbaik 0,091 milidetik untuk periode pengiriman data
(milidetik) Aplikasi 50, 200, dan 1000 milidetik serta latensi terburuk
0 29445 29445 100% sebesar 0,190 milidetik untuk periode pengiriman 0
50 20229 20229 100% milidetik (secepat mungkin), Pengiriman data
200 12685 12685 100% Modbus TCP memiliki reliabilitas 100%. Penggunaan
1000 3427 3427 100% paling optimal aplikasi sebagai media input real-time
Antarmuka Pengguna dapat digunakan dengan mengatur jeda waktu
Aplikasi memiliki 3 halaman antarmuka, yaitu halaman pengiriman data sensor sebesar 50 milidetik.
utama (HomePageActivity), halaman melihat memori Saran
Modbus (ModbusMemoryActivity), dan halaman Saran untuk pengembangan lebih lanjut dari
pengaturan (SettingActivity). Setiap halaman memiliki penelitian ini adalah:
file class dan layout sendiri. Antarmuka pengguna atau 1) Pemanfaatan dan pengolahan data sensor yang telah
User Interface (UI) dari aplikasi dikembangkan dengan tersimpan pada perangkat PLC. Salah satu potensi
memanfaatkan widget yang telah disediakan oleh SDK penggunaannya adalah penggunaan smartphone
Android. Tampilan halaman aplikasi yang dirancang untuk mengendalikan tangan robotik, mengendalikan
ditunjukan pada Gambar 9 dan Gambar 10. kendaraan (seperti pada video game racing), atau
pengiriman data citra dari kamera smartphone.

274 Departemen Teknik Elektro dan Teknologi Informasi, FT UGM


CITEE 2019 Yogyakarta, 24-25 Juli 2019 ISSN: 2085-6350

2) Mengeksplorasi penggunaan desain bounded [11] Google Developers, “Command Line Tools | Android API
services pada aplikasi Android untuk memperlancar Documentation [Technical Documentation],” 5 Juni 2018,
throughput pengiriman data sensor ke jaringan. Available: https://developer.android.com /studio/command-
line/. [Diakses 25 Juli 2018].
REFERESI [12] Google Developers, “Device Compatibility Overview |
Android API Documentation [Technical Documentation],”
[1] Drath, R., dan Horch, A., “Industrie 4.0: Hit or Hype? 8 Mei 2018, Available: https://developer.android.com/
[IEEE Magazine],” IEEE Industrial Electronics Magazine, guide/practices/compatibility#defined. [Diakses 25 Juli
vol. 8, no. 2, pp. 56-58, Juni 2014. 2018].
[2] Banerjee,P., Daugherty, P.,W. Negm dan Alter, A. E. [13] Google Developers, “Support Different Platform Versions |
“Driving Unconventional Growth through the Industrial Android API Documentation [Technical Documentation],”
Internet of Things,” 2015. [Online]. Available: 8 Mei 2018, Available: https://developer.android.com
https://www.accenture.com/mz-en/_acnmedia/Accenture /training/basics/supporting-devices/platforms. [Diakses 25
/next-gen/reassembling-industry/pdf/Accenture-Driving- Juli 2018].
Unconventional-Growth-through-IIoT.pdf. [Diakses 18 Juli [14] Google Developers, “Application Fundamentals | Android
2018]. Developers,” 30 April 2018. [Online]. Available:
[3] Bojanova,I.,“What Makes Up the Internet of Things?,” 31 https://developer.android.com/guide/components/fundament
Maret 2015. [Online]. Available: https://www.computer.org als. [Diakses 25 Juli 2018].
/web/sensing- [15] Google Developers, “Download Android Studio and SDK
iot/content?g=53926943&type=article&urlTitle=what-are- Tools,” March 2018, Available: https:
the-components-of-iot-. [Diakses 18 Juli 2018]. //developer.android.com/studio/. [Diakses 25 Juli 2018].
[4] Mourcou,Q., A. Fleury, C. Franco, F. Klopcic dan N. [16] Google Developers, “Meet Android Studio, Android
Vuillerme, “Performance Evaluation of Smartphone Inertial Developers,” 5 Juni 2018, Available: https://developer.
Sensors Measurement for Range of Motion [Journal],” android.com/studio/intro/. [Diakses 25 Juli 2018].
Sensors, vol. 15, no. 9, pp. 23168-23187, 15 September [17] Modbus-IDA, “MODBUS Messaging on TCP/IP
2015. Implementation Guide,” 24 Oktober 2006, Available:
[5] Google Developers, “About the Android Open Source http://www.modbus.org/docs/Modbus_Messaging_Impleme
Project,” 2018., Available: https://source.android.com/. ntation_Guide_V1_0b.pdf. [Diakses 2018 Juli 25].
[Diakses 22 Juli 2018]. [18] Modbus Organization, “About the Protocol,” 2018.
[6] Google, “Sensors Overview,” 24 April 2018, Available: [Online]. Available: http://www.modbus.org/faq.php.
https://developer.android.com/guide/topics/sensors/sensors_ [Diakses 22 Juli 2018].
overview#sensor-availability. [Diakses 22 Juli 2018]. [19] Zigbee Alliance, “What is Zigbee?,” 2018. [Online].
[7] Devine,S. K. Rafferty dan S. Ferguson, “Real time robotic Available: http://www.zigbee.org/what-is-zigbee/. [Diakses
arm control using hand gestures with multiple end 22 Juli 2018].
effectors,” dalam UKACC 11th International Conference on [20] Rossmann-engineering, “EasymodbusTCP Modbus
Control (CONTROL), Belfast, UK, 2016. Library for .NET and Java with Mqqt-bridge –
[8] Leal,R. L. A. G. M. Lopez, A. L. H. May dan J. M. Castillo, Communication library and professional tools for industrial
“Reliability Analysis Sensors Based on Embedded,” dalam communication,” 2017, Available: http:
International Conference on Computing Systems and //easymodbustcp.net/en/. [Diakses 2018 Juli 30].
Telematics (ICCSAT), Xalapa, Mexico, 2015. [21]Rossmann-engineering,“EasyModbusTCP/UDP RTU.java,”
[9] Google Developers, “SensorManager | Android API 16 Juli 2017. [Online]. Available: https://sourceforge.net
Documentation [Technical Documentation],” 6 Juni 2018,]. /projects/easymodbustcp-udp-java. [Diakses 31 Juli 2018].
Available: https://developer.android.com/reference /android
/hardware/SensorManager. [Diakses 1 Agustus 2018].
[10] Z. Ma, Y. Qiao, B. Lee dan E. Fallon, “Experimental
Evaluation of Mobile Phone Sensors,” dalam Irish Signals
and Systems Conference, Letterkenny, Ireland, 2013.

Departemen Teknik Elektro dan Teknologi Informasi, FT UGM 275

Anda mungkin juga menyukai