Phyton adalah bahasa pemrograman yang memiliki bermacam-macam fungsi, dapat ditafsirkan dan berlevel tinggi. Diciptakan oleh Guido van Rossum dan pertama kali dirilis di tahun 1991, filosofi desain Python menekankan ke keterbacaan kode dengan penggunaan whitespace yang signifikan. Phyton membantu programer untuk menulis kode yang logis dan jelas untuk projek berskala kecil maupun besar. Show MQTT adalah sebuah protokol messaging IoT lightweight berbasis model publish/subscribe yang menyediakan servis messaging yang dapat diandalkan dan real-time untuk perangkat IoT dengan hanya menggunakan sedikit kode dan bandwith. MQTT cocok untuk perangkat dengan sumber hardware yang terbatas dan jaringan dengan bandwith yang terbatas pula. Karena itu, protokol MQTT banyak digunakan di IoT, internet HP, tenaga listrik, dan industri lainnya. Dalam artikel ini, saya akan mengajar Anda cara menggunakan client paho-mqtt dan koneksinya, subscribe, messaging, dan fungsi lainnya antara client dan broker MQTT dalam projek Python. Memulai ProjekProjek ini menggunakan Python 3.6 dengan tujuan perkembangan dan test. Anda dapat menggunakan command dibawah ini untuk mengecek versi Python.
Pilih client MQTTPaho Python Client menyediakan class client yang mendukung MQTT v3.1 dan v3.1.1 dalam Python 2.7 atau 3.x. Ia juga menyediakan fungsi pembantu untuk memudahkan publikasi pesan ke server MQTT. Gunakan pip untuk mengunduh client Paho MQTTPip adalah software manajemen untuk paket Python. Software ini menyediakan fungsi find, download, install dan uninstall untuk paket Python.
Kegunaan Python MQTTKoneksi ke MQTT brokerDalam artikel ini, saya akan menggunakan MQTT broker publik gratis dari EMQX. Servis ini dibuat dengan berdasarkan platform cloud MQTT IoT. Kunci akses broker adalah sebagai berikut:
Impor Paho MQTT Client
Atur parameter koneksi MQTT BrokerAtur address, port, dan topik koneksi MQTT Broker. Disaat yang sama, kita memanggil fungsi Phython 1 untuk menghasilkan ID client MQTT secara acak.
Tulis fungsi koneksi MQTTTulis fungsi callback koneksi 2. Fungsi ini akan dipanggil setelah dikoneksikan dengan client dan kita dapat mengkonfirmasi apakah client telah berhasil dikoneksikan berdasarkan 3 didalam fungsi ini. Biasanya, kami akan membuat client MQTT disaat yang sama dan client ini akan dikoneksikan ke 4.
Publikasi pesanPertama, kita perlu mendefinisikan sebuah while loop. Dalam loop ini, kita perlu mengatur fungsi 5 client MQTT untuk mengirim pesan ke topik 6 tiap detiknya.
Subscribe ke pesanTulis fungsi callback pesan 7. Fungsi ini akan dipanggil setelah client menerima pesan dari MQTT Broker. Dalam fungsi ini, kita perlu mencetak nama dari topik yang telah di-subscribe dan pesan yang diterima.
Kode LengkapnyaKode publikasi pesan
Kode subscribe pesan
TesPublikasi pesanMulai kode publikasi pesan. Disini kita dapat melihat bahwa client telah berhasil terkoneksi dan pesan telah dikirim.
Subscribe ke pesanMulai kode subscribe pesan. Disini kita dapat melihat bahwa client telah berhasil terkoneksi dan pesan yang dipublikasi telah diterima. 0RangkumanSejauh ini, kita telah mempelajari cara mengkoneksikan client paho-mqtt ke MQTT broker publik gratis, mengimplimentasi koneksi, mempublikasi pesan dan subscribe pesan antara test client dan MQTT broker. Python berbeda dari bahasa pemrograman level tinggi lainnya seperti C++ atau Java. Python lebih cocok untuk mengimplimentasikan logika bisnis dari segi perangkat. Penggunaan Python dapat mempermudah kode yang dipakai dan mengurangi biaya interaksi dengan perangkat. Kami percaya bahwa Python akan memiliki aplikasi yang lebih luas dalam bidang IoT. Di artikel selanjutnya, kami akan menulis lebih banyak artikel tentang pengembangan IoT dan Python. Jangan kemana-mana ya! Python menggunakan database apa?Standar Interface Python untuk database adalah Python DB-API.
Apa itu bahasa pemrograman Python?Python adalah bahasa pemrograman yang banyak digunakan dalam aplikasi web, pengembangan perangkat lunak, ilmu data, dan machine learning (ML). Developer menggunakan Python karena efisien dan mudah dipelajari serta dapat dijalankan di berbagai platform.
|