SISTEM MONITORING SUHU JARAK JAUH
BERBASIS INTERNET OF THINGS
MENGGUNAKAN PROTOKOL MQTT
SISTEM MONITORING SUHU JARAK JAUH
BERBASIS INTERNET OF THINGS
MENGGUNAKAN PROTOKOL MQTT
salah
satu perkembangan teknologi internet pada saat ini adalah perkembangan Internet of Things. Internet of
things adalah infrastruktur global untuk masyarakat informasi,
memungkinkan layanan yang canggih, dengan menghubungkan objek (things) baik fisik maupun virtual
berdasarkan teknologi pertukaran informasi saat ini dan perkembaangannya serta
teknologi komunikasi[1].
Monitoring
suhu jarak jauh sangat bermanfaat jika dilakukan pada daerah yang luas, daerah
yang berbahaya atau untuk kecepatan pengambilan data karena hanya peralatan
sensor dan sistem transmisi yang berada di lokasi. Akses jarak jauh dapat
melalui media kabel, nirkabel atau serat optik baik secara point to point maupun jaringan.
Protokol Message Queue Telemetry Transport (MQTT)
adalah protokol pesan yang sangat sederhana dan ringan. Protokol
MQTTmenggunakan arsitektur publish/subscribe
yang dirancang secara terbuka dan mudah untuk diimplementasikan, yang mampu
menangani ribuan client jarak jauh
dengan hanya satu server. MQTT meminimalkan bandwidth jaringan dan kebutuhan
sumber daya perangkat ketika mencoba untuk menjamin kehandalan dan pengiriman.
Pendekatan ini membuat protokol MQTT sangat cocok untuk menghubungkan mesin ke
mesin (M2M), merupakan aspek penting dari konsep Internet of things [2]. Arsitektur MQTT seperti pada Gambar
1[2].
Publikasi
yang terkait dengan memonitor atau mengukur suhu jarak jauh sudah ada dengan
berbagai metoda baik cara transmisi jarak jauhnya maupun protokol yang
digunakan. Pada artikel [3] pengiriman data suhu dilakukan point to point secara nirkabel dengan menggunakan protokol
komunikasi Universal Asyncrounous
Syncronous Receiver Transmitter (UASRT), yang merupakan protokol standar
pengiriman data serial pada mikrokontroler. Pada artikel [4] pengiriman data
suhu menggunakan saluran komunikasi seluler dengan protokol Short
Message Service (SMS). Sistem ini mampu menjangkau jarak yang jauh
namun masih bersifat point to point. Pada
artikel [5] pengiriman data suhu menggunakan SMS dan Web yang dapat diakses
melalui perangkat berbasis Android. Sistem ini juga masih bersifat point to point sehingga penambahan titik
sensor harus menduplikasi sistem.
Publikasi yang terkait dengan aplikasi
protokol MQTT seperti pada artikel[6][7]yang digunakan untuk home automation melalui jaringan
internet dan GSM. Sedangkan pada artikel protokol MQTT digunakan untuk home automation dengan koneksi jaringan
nirkabel.
Tahapan
penelitian diawali dengan melakukan perancangan sistem dan menentukan komponen
yang akan digunakan, membuat prototip hardware, membuat program node sensor dan
node monitor, dan melakukan pengujian.
Arsitektur Sistem
Koneksi
jaringan komputer pada Node Sensor
menggunakan wifi. Komponen yang digunakan pada Node Sensor adalah Arduino Uno dan modul wifi esp8266 ver 01 dengan
bahasa pemrograman C/C++ sedangkan Node
Monitor menggunakan PC Windows atau Linux dengan bahasa pemrograman Java.
Server MQTT yang digunakan adalah Mosquitto,
untuk tujuan ujicoba server Mosquitto
diinstal pada jaringan lokal sedangkan untuk uji coba pada jaringan global
menggunakan server mqtt://test.mosquitto.org.
Node Sensor
Node Sensor diimpelentasikan menggunakan
sensor suhu LM35, Arduino UNO dan modul wifi Esp8266 ver 01. Board Arduino UNO
, Sensor suhu LM35, dan modul Esp8266
ver 01 masing-masing diperlihatkan pada Gambar 4, 5, dan dan 6. Sedangkan fungsi pin pada board Arduino
UNO, sensor
Tegangan keluaran LM35 berbanding linear dengan suhu, dengan
perbandingan 10mV/OC atau 1V/100 OC[10]. Sedangkan
masukan Analog pada board Arduino UNO mempunyai nilai dari 0 –1023 dan tegangan
referensi 5V. Sehingga hasil pembacaan data Analog dapat dikonversikan ke suhu
Celsius dengan persamaan sebagai berikut .
T
= (dataAnalog)/1024 * 5*100 0C
(1)
Pada Node Sensor program diimplementasikan
menggunakan bahasa C/C++ menggunakan lingkungan pengembangan Arduino. Ada dua
program, pertama untuk board Arduino yang berfungsi membaca data suhu dari
sensor suhu LM35 dan yang kedua untuk modul wifi Esp8266 yang berfungsi untuk
koneksi wifi dan implementasi protokol client MQTT. Program untuk modul wifi
Esp8266 membutuhkan pustaka ESP8266wifi.h untuk koneksi wifi dan PubSubClient.h untuk implementasi client MQTT
merupakan hasil dari proyek Eclipse Paho. Komunikasi data antara Arduino UNO
dan modul wifi Esp8266 menggunakan UASRT dengan kecepatan 115200 bps. Diagram
alir program untuk Arduino UNO seperti pada Gambar 8 dan untuk modul wifi
Esp8266 seperti pada Gambar 9.
Node Monitor menggunakan Personal
Computer (PC) dengan koneksi jaringan menggunakan kabel atau wifi. Program
diimplemetasikan menggukan bahasa Java pada lingkungan pengembangan Processing
versi 3. Ada 3 fungsional program utama, pertama inisialisasi dan loop yang berfungsi untuk inisialisasi
variabel atau membuat objek dan melakukan looping terus menerus. Diagram
alirnya diperlihatkan pada Gambar 10. Kedua subscribe
event handler yaitu program yang berfungsi untuk memproses data yang
diterima pada subscribe topik
tertentu.
Ketiga adalah program button
event handler yaitu program yang digunakan untuk memproses penekanan
tombol. Semua event tombol diproses pada program ini.
Server/Broker
MQTT
Server/Broker
MQTT menggunakan Mosquitto yang dapat
berjalan pada sistem operasi Windows, Linux. Server MQTT defaultnya mendengar
pada protokol TCP port 1883[2]. Untuk tujuan ujicoba lokal, server MQTT
diinstal pada sistem operasi Linux Ubuntu LTS 14.04, sedangkan untuk ujicoba
koneksi global menggunakan server Mosquitto untuk tujuan pengujian pada alamat
mqtt://test.mosquitto.org. Metode Pengujian
Pengujian
dilakukan dengan cara menjalankan Node
Sensor dan Node Monitor untuk
melakukan persambungan ke server MQTT lokal. Persambungan lokal dibuat
menggunakan Access Point. Untuk
tujuan melakukan debug dan pengujian,
program pada Node Sensor dan Node Monitor diberi fungsi tambahan
diluar fungsi untuk monitor suhu jarak jauh. Pengujian koneksi ke server global
dilakukan dengan menyediakan Access Point
yang terkoneksi dengan internet kemudian Node
Sensor dan Node Monitor disambungkan
ke server Mosquitto pada alamat
mqtt://test.mosquitto.org.
Pengujian pembacaan sensor
dilakukan dengan mengukur tegangan keluaran sensor dan data yang ditampilkan
serta dibandingan dengan termometer digital untuk suhu tubuh.
III. HASIL
Hasil pengujian pembacaan sensor suhu LM35
seperti pada Tabel 1. Suhu tertampil diproses menggunakan persamaan 1:
TABEL IV.
HASIL PENGUKURAN KELUARAN
SENSOR LM35
No
|
Tegangan LM35(mV)
|
Suhu
Tertampil (0C)
|
Suhu hitungan(0C)
|
1
|
270
|
26.00
|
27.00
|
2
|
272
|
26.20
|
27.20
|
3
|
273
|
26.20
|
27.30
|
4
|
277
|
26.54
|
27.70
|
5
|
280
|
26.88
|
28.00
|
6
|
300
|
29.03
|
30.00
|
rerata
|
278.67
|
26.70
|
27.74
|
Rata-rata kesalahan suhu tertampil terhadap suhu hasil
perhitungan sebesar 1.04 0C. Hasil ini lebih jelek jika dibandingan
dengan hasil pada artikel[3].
Hasil koneksi server MQTT lokal dan server MQTT global oleh Node Monitor diperlihatkan masingmasing
pada Gambar 10 dan Gambar 11. Tampilan
suhu hasil pengukuran didapatkan dari subscribe Node Sensor pada topik “sensor/suhu”.
Gambar 10.
Koneksi server MQTT Lokal Gambar 11.
Koneksi server MQTT Global
Prototip Node Sensor diperlihatkan pada Gambar 12.
Gambar 12.
Prototip Node Sensor
BERBASIS INTERNET OF THINGS
MENGGUNAKAN PROTOKOL MQTT
sAlah
satu perkembangan teknologi internet pada saat ini adalah perkembangan Internet of Things. Internet of
things adalah infrastruktur global untuk masyarakat informasi,
memungkinkan layanan yang canggih, dengan menghubungkan objek (things) baik fisik maupun virtual
berdasarkan teknologi pertukaran informasi saat ini dan perkembaangannya serta
teknologi komunikasi.
Monitoring
suhu jarak jauh sangat bermanfaat jika dilakukan pada daerah yang luas, daerah
yang berbahaya atau untuk kecepatan pengambilan data karena hanya peralatan
sensor dan sistem transmisi yang berada di lokasi. Akses jarak jauh dapat
melalui media kabel, nirkabel atau serat optik baik secara point to point maupun jaringan.
Protokol Message Queue Telemetry Transport (MQTT)
adalah protokol pesan yang sangat sederhana dan ringan. Protokol
MQTTmenggunakan arsitektur publish/subscribe
yang dirancang secara terbuka dan mudah untuk diimplementasikan, yang mampu
menangani ribuan client jarak jauh
dengan hanya satu server. MQTT meminimalkan bandwidth jaringan dan kebutuhan
sumber daya perangkat ketika mencoba untuk menjamin kehandalan dan pengiriman.
Pendekatan ini membuat protokol MQTT sangat cocok untuk menghubungkan mesin ke
mesin (M2M), merupakan aspek penting dari konsep Internet of things .
Publikasi
yang terkait dengan memonitor atau mengukur suhu jarak jauh sudah ada dengan
berbagai metoda baik cara transmisi jarak jauhnya maupun protokol yang
digunakan. Pada artikel pengiriman data suhu dilakukan point to point secara nirkabel dengan menggunakan protokol
komunikasi Universal Asyncrounous
Syncronous Receiver Transmitter (UASRT), yang merupakan protokol standar
pengiriman data serial pada mikrokontroler. Pada artikel pengiriman data
suhu menggunakan saluran komunikasi seluler dengan protokol Short
Message Service (SMS). Sistem ini mampu menjangkau jarak yang jauh
namun masih bersifat point to point. Pada
artikel pengiriman data suhu menggunakan SMS dan Web yang dapat diakses
melalui perangkat berbasis Android. Sistem ini juga masih bersifat point to point sehingga penambahan titik
sensor harus menduplikasi sistem.
Publikasi yang terkait dengan aplikasi
protokol MQTT seperti pada artikel yang digunakan untuk home automation melalui jaringan
internet dan GSM. Sedangkan pada artikel protokol MQTT digunakan untuk home automation dengan koneksi jaringan
nirkabel.
Tahapan
penelitian diawali dengan melakukan perancangan sistem dan menentukan komponen
yang akan digunakan, membuat prototip hardware, membuat program node sensor dan
node monitor, dan melakukan pengujian. Diagram alir tahapan penelitian seperti
pada Gambar 2.
Arsitektur Sistem
Koneksi
jaringan komputer pada Node Sensor
menggunakan wifi. Komponen yang digunakan pada Node Sensor adalah Arduino Uno dan modul wifi esp8266 ver 01 dengan
bahasa pemrograman C/C++ sedangkan Node
Monitor menggunakan PC Windows atau Linux dengan bahasa pemrograman Java.
Server MQTT yang digunakan adalah Mosquitto,
untuk tujuan ujicoba server Mosquitto
diinstal pada jaringan lokal sedangkan untuk uji coba pada jaringan global
menggunakan server mqtt://test.mosquitto.org.
Node Sensor
Node Sensor diimpelentasikan menggunakan
sensor suhu LM35, Arduino UNO dan modul wifi Esp8266 ver 01. Board Arduino UNO
, Sensor suhu LM35, dan modul Esp8266
ver 01 masing-masing diperlihatkan pada Gambar 4, 5, dan dan 6. Sedangkan fungsi pin pada board Arduino
UNO, sensor
Tegangan keluaran LM35 berbanding linear dengan suhu, dengan
perbandingan 10mV/OC atau 1V/100 OC[10]. Sedangkan
masukan Analog pada board Arduino UNO mempunyai nilai dari 0 –1023 dan tegangan
referensi 5V. Sehingga hasil pembacaan data Analog dapat dikonversikan ke suhu
Celsius dengan persamaan sebagai berikut
T
= (dataAnalog)/1024 * 5*100 0C
(1)
Pada Node Sensor program diimplementasikan
menggunakan bahasa C/C++ menggunakan lingkungan pengembangan Arduino. Ada dua
program, pertama untuk board Arduino yang berfungsi membaca data suhu dari
sensor suhu LM35 dan yang kedua untuk modul wifi Esp8266 yang berfungsi untuk
koneksi wifi dan implementasi protokol client MQTT. Program untuk modul wifi
Esp8266 membutuhkan pustaka ESP8266wifi.h untuk koneksi wifi dan PubSubClient.h untuk implementasi client MQTT
merupakan hasil dari proyek Eclipse Paho. Komunikasi data antara Arduino UNO
dan modul wifi Esp8266 menggunakan UASRT dengan kecepatan 115200 bps. Diagram
alir program untuk Arduino UNO seperti pada Gambar 8 dan untuk modul wifi
Esp8266 seperti pada Gambar 9.
Node Monitor
Node Monitor menggunakan Personal
Computer (PC) dengan koneksi jaringan menggunakan kabel atau wifi. Program
diimplemetasikan menggukan bahasa Java pada lingkungan pengembangan Processing
versi 3. Ada 3 fungsional program utama, pertama inisialisasi dan loop yang berfungsi untuk inisialisasi
variabel atau membuat objek dan melakukan looping terus menerus. Diagram
alirnya diperlihatkan pada Gambar 10. Kedua subscribe
event handler yaitu program yang berfungsi untuk memproses data yang
diterima pada subscribe topik
tertentu. Diagram alirnya diperlihatkan pada
Ketiga adalah program button
event handler yaitu program yang digunakan untuk memproses penekanan
tombol. Semua event tombol diproses pada program ini. Diagram alirnya
diperlihatkan pada Gambar 12.
Server/Broker
MQTT
Server/Broker
MQTT menggunakan Mosquitto yang dapat
berjalan pada sistem operasi Windows, Linux. Server MQTT defaultnya mendengar
pada protokol TCP port 1883. Untuk tujuan ujicoba lokal, server MQTT
diinstal pada sistem operasi Linux Ubuntu LTS 14.04, sedangkan untuk ujicoba
koneksi global menggunakan server Mosquitto untuk tujuan pengujian pada alamat
mqtt://test.mosquitto.org. Metode Pengujian
Pengujian
dilakukan dengan cara menjalankan Node
Sensor dan Node Monitor untuk
melakukan persambungan ke server MQTT lokal. Persambungan lokal dibuat
menggunakan Access Point. Untuk
tujuan melakukan debug dan pengujian,
program pada Node Sensor dan Node Monitor diberi fungsi tambahan
diluar fungsi untuk monitor suhu jarak jauh. Pengujian koneksi ke server global
dilakukan dengan menyediakan Access Point
yang terkoneksi dengan internet kemudian Node
Sensor dan Node Monitor disambungkan
ke server Mosquitto pada alamat
mqtt://test.mosquitto.org.
Pengujian pembacaan sensor
dilakukan dengan mengukur tegangan keluaran sensor dan data yang ditampilkan
serta dibandingan dengan termometer digital untuk suhu tubuh.
III. HASIL
Hasil pengujian pembacaan sensor suhu LM35
seperti pada Tabel 1. Suhu tertampil diproses menggunakan persamaan 1:
TABEL IV.
HASIL PENGUKURAN KELUARAN
SENSOR LM35
No
|
Tegangan LM35(mV)
|
Suhu
Tertampil (0C)
|
Suhu hitungan(0C)
|
1
|
270
|
26.00
|
27.00
|
2
|
272
|
26.20
|
27.20
|
3
|
273
|
26.20
|
27.30
|
4
|
277
|
26.54
|
27.70
|
5
|
280
|
26.88
|
28.00
|
6
|
300
|
29.03
|
30.00
|
rerata
|
278.67
|
26.70
|
27.74
|
Rata-rata kesalahan suhu tertampil terhadap suhu hasil
perhitungan sebesar 1.04 0C. Hasil ini lebih jelek jika dibandingan
dengan hasil pada artikel[3].
Hasil koneksi server MQTT lokal dan server MQTT global oleh Node Monitor diperlihatkan masingmasing
pada Gambar 10 dan Gambar 11. Tampilan
suhu hasil pengukuran didapatkan dari subscribe Node Sensor pada topik “sensor/suhu”.
Prototip Node Sensor diperlihatkan pada Gambar 12.
Gambar 12.
Prototip Node Sensor
Tidak ada komentar:
Posting Komentar