Cara Kerja dan Penjelasan Mengenai Protokol MQTT untuk IoT internet of things

By | November 26, 2023
834 Views

Cara Kerja dan Penjelasan Mengenai Protokol MQTT untuk IoT internet of things – MQTT adalah protokol pesan berbasis standar, atau seperangkat aturan, yang digunakan untuk komunikasi mesin-ke-mesin. Sensor pintar, perangkat yang dapat dikenakan, dan perangkat Internet untuk Segala (IoT) lainnya biasanya harus mengirim dan menerima data melalui jaringan dengan sumber daya dan bandwidth terbatas. Perangkat IoT ini menggunakan MQTT untuk transmisi data, karena mudah diterapkan dan dapat mengomunikasikan data IoT secara efisien. MQTT mendukung pengiriman pesan antara perangkat ke cloud dan cloud ke perangkat.

Bila sebelumnya kita banyak membahas komunikasi berbasis webserver menggunakan teknologi ajax yang didalamnya menggunakan HTML, Java Script, dan CSS. Maka MQTT tidak membutuhkan hal tersebut karena komunikasi yang sifatnya bisa 2 arah.

Broker, Publiser, dan Subcriber

Protokol HTTP menggunakan cara kerja sever dan klien. Klien akan mengirim request ke Server dan Server akan me respon permintaan klien yang disebut dengan request / respond. Sedangkan dalam MQTT itu ada yang namanya Broker sebagai server yaitu menerima sekaligus mengirimkan kembali data. Publiser akan mengirimkan berita/message berdasarkan topic sedangkan Subcriber akan menerima.

Dalam konsep IoT ada hal yang penting yaitu mikrokontroler akan mengirimkan informasi sekaligus juga bisa menerima pesan/perintah. Sehingga protokol MQTT sangat pas digunakan untuk hal tersebut.

 

MQTT yang hemat bandiwidth

MQTT awalnya dikembangkan oleh IBM pada tahun 1999 untuk melakukan monitoring terhadap sebuah pipa minyak yang ada di suatu tempat yang jauh dan sulit dijangkau. Tujuan dari proyek ini adalah untuk mempunyai sebuah protocol, yang sangat bandwidth-efficient dan mengonsumsi tenaga batere se-sedikit mungkin, hal ini karena perangkat terkoneksi melalui jaringan satelit yang sangat mahal pada jaman itu.

Protocol ini menggunakan konsep publish/subscribe. Berbeda dengan HTTP yang menggunakan konsep request/response. Pubsub adalah event-driven dan memungkinkan dari server untuk mengirim pesan ke client kapanpun dibutuhkan. Pusat komunikasi ada di MQTT broker, broker ini bertanggung jawab atas terkirimnya semua pesan termasuk jalur distribusinya. Setiap client yang mengirim pesan ke broker, termasuk juga mengirimkan topic ke dalam pesan tersebut.

Topic merupakan bagian dari routing information untuk broker-nya. Tiap klien yang menginginkan menerima pesan, bisa meng-subscribe ke suatu topic tertentu dan broker akan mengirimkan semua message yang cocok dengan pola (pattern) topic tersebut kepada client yang sesuai. Mekanisme tersebut membuat klien tidak perlu untuk tau satu sama lain untuk bisa berkomunikasi, melainkan mereka cukup berkomunikasi menggunakan topic. Arsitektur semacam ini membuat solusi percakapan bisa dikembangkan dengan skala besar (scalable) karena tidak memerlukan dependencies antara data producers dan data consumers.

Mencoba Protokol MQTT untuk IoT internet of things viar server Local

Agar lebih jelasnya, kita akan mencoba MQTT dari https://mosquitto.org/download/, Oiya MQTT bersifat open source sehingga ada banyak broker ditulis dengan beragam bahasa. Bahkan banyak tersedia broker gratisan. Setelah kalian download sesuai jenis OS nya dan jangan lupa setting PATH nya ya

Menjalankan Broker

Untuk menjalankan broker cukup buka terminal ketikan

mosquitto

Akan terlihat broker sedang berjalan

Menjalankan Publisher

Untuk menjalankan publiser cukup ketikan berikut

mosquitto_pub -h localhost -t pesan -m "test"

Artinya

  • -h atau host dengan alamat localhost
  • -t atau topiknya adalah pesan
  • -m atau message nya adalah “test”

Menjalankan Subcriber

Untuk menjalankan subcriber nya cukup ketikan topik yang sesuai yaitu -h localhost -t pesan

mosquitto_sub -h localhost -t pesan

maka akan tampil message nya

 

Sangat mudah bukan? misalkan kita punya banyak sensor, maka ganti saja topicnya menjadi berikut

  • -t ruangan1 -m 10
  • -t ruangan2 -m 20

Protokol MQTT untuk IoT internet of things dengan Broker Gratisan

Nah sekarang kalian coba matikan broker moquitto nya, kita akan mencoba broker online yang gratisan dan menggunakan 2 komputer yang berbeda untuk publiser dan subcriber. Alamat brokernya yaitu https://iyoti.id dengan alamat host nya yaitu free.mqtt.iyoti.id

Menjalankan Publisher

mosquitto_pub -h free.mqtt.iyoti.id -t pesan -m "hallo broker"

Menjalankan Subcriber

mosquitto_sub -h free.mqtt.iyoti.id -t pesan

 

Nah dengan cara tersebut kalian bisa menggunakan NodeMCU sebagai publisher sekaligus subcriber, misalkan dengan membuat jaringan hotspot sendiri dan menjalakan server/broker menggunakan PC. Library NodeMCU sudah ada kok implementasi NodeMCU. Nanti kita akan bahas

Mencoba Protokol MQTT untuk IoT internet of things untuk Berkirim file via MQTT

Sebenarnya ini tidak direkomendasikan, karena pada dasarnya MQTT pada sisi subcriber akan menerima text, tapi bila penasaran, kita akan coba mengirimkan file CSV saja yaitu bmri.csv berisi data saham

mosquitto_pub -h free.mqtt.iyoti.id -t pesan -f bmri.csv

berikut tampilan dari sisi subcriber