Daftar Isi:

MQTT di Armtronix Boards: 3 Langkah
MQTT di Armtronix Boards: 3 Langkah

Video: MQTT di Armtronix Boards: 3 Langkah

Video: MQTT di Armtronix Boards: 3 Langkah
Video: MQTT Protocol with NodeMCU ESP8266 Tutorial 2024, November
Anonim
MQTT pada Papan Armtronix
MQTT pada Papan Armtronix

Dalam instruksi ini kami awalnya ingin menunjukkan kepada Anda bagaimana Anda dapat menggunakan sistem berbasis Linux (Debian atau Ubuntu) dan menginstal Mosquitto (Mqtt Broker) di atasnya, juga menunjukkan kepada Anda cara menggunakan klien Mqtt di Ponsel Anda (Android)/ Berbasis Linux sistem, mengirim dan menerima pesan melalui Mqtt. Setelah terbiasa dengan ini, kami ingin menunjukkan kepada Anda bagaimana Anda dapat mengonfigurasi dan menghubungkan papan kami dengan broker Mqtt yang diinstal ini. Juga ingin menunjukkan kepada Anda bagaimana Anda dapat menambahkan otentikasi ke broker Mqtt dan beberapa tip dan trik dasar untuk debug. Jadi mari kita mulai ………..

Langkah 1: Menginstal Mqtt Broker:

Memasang Pialang Mqtt
Memasang Pialang Mqtt
Memasang Pialang Mqtt
Memasang Pialang Mqtt
Memasang Pialang Mqtt
Memasang Pialang Mqtt
Memasang Pialang Mqtt
Memasang Pialang Mqtt

Ada beberapa broker Mqtt yang dapat Anda instal. Beberapa yang dikenal adalah seperti yang disebutkan di bawah ini. Beberapa di antaranya adalah layanan berbasis cloud.

  • sarangMQ
  • Awan Nyamuk
  • MQTT
  • Adafruit.io

Kami akan menunjukkan kepada Anda cara menginstal Mosquitto pada sistem berbasis Linux (Ubuntu 18.04). Untuk melakukan ini, pertama-tama tambahkan Mosquitto ke daftar sumber ubuntu. Setelah Mosquitto tersedia di repositori Ubuntu, Anda dapat menginstalnya dengan apt-get.

Buka saja Terminal. Untuk membuka Terminal, pergi ke pojok kiri bawah Desktop Ubuntu, Klik Show application (grid Doted 3X3). Sebuah Jendela akan terbuka. Di sana Anda mencari Terminal. Klik pada terminal Anda seharusnya dapat melihat jendela terbuka seperti yang ditunjukkan pada gambar berikut.

  • Tampilkan Aplikasi (Gambar 1).
  • Cari Terminal (Gambar 2).
  • Jendela Terminal (Gambar 3).

Masukkan perintah berikut setelah Anda membuka Terminal

sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa

sudo apt-get update

sudo apt-get install mosquitto

Anda juga dapat menginstal klien Mqtt. Perintah untuk melakukan itu adalah

sudo apt-get install mosquitto-clients

Beberapa gambar untuk referensi Anda

  • Menambahkan ppa (Gambar 4).
  • Memperbarui repo (Gambar 5).
  • Memasang Nyamuk (Gambar 6).
  • Memasang Mosquitto Client (Gambar 7).

Langkah 2: Menguji MQTT (Nyamuk)

Menguji MQTT (Nyamuk)
Menguji MQTT (Nyamuk)
Menguji MQTT (Nyamuk)
Menguji MQTT (Nyamuk)
Menguji MQTT (Nyamuk)
Menguji MQTT (Nyamuk)

Untuk menguji mqtt melalui ubuntu (sistem yang sama atau sistem lain) Anda perlu menginstal klien mqtt yang diinstal sebelumnya dengan perintah Sudo apt-get install mosquitto-clients. Jika Anda ingin mengujinya menggunakan ponsel (android), Anda dapat menginstal aplikasi MyMqtt dari play store.

Mqtt bekerja pada sesuatu yang disebut Topik. Untuk memudahkan pemahaman, pertimbangkan topik ini sebagai folder di hard drive komputer. Mari kita perlakukan komputer ini sebagai komputer server (yang di dunia mqtt adalah Mqtt Broker). Di server ini mari kita pertimbangkan untuk memiliki satu folder.

Nama folder: /Folder_one/

Sekarang mari kita pertimbangkan dua orang dari dua sistem yang berbeda (PC/Laptop) mengakses server ini baik untuk membaca file atau untuk mengirim/membuang file atau untuk melakukan kedua operasi tersebut.

Kami akan menamai dua orang/sistem sebagai Sistem X, Sistem Y (Ini adalah Klien Mqtt di Dunia Mqtt).

Sekarang, katakanlah System X mengirim/Membuang beberapa file (nama file: suhu) ke folder "/Folder_one/", ini di dunia mqtt kita dapat memanggil penerbitan ini (kita mengirim beberapa pesan/payload alih-alih file).

Sekarang, katakanlah Sistem Y ingin mendapatkan/membaca file ini atau file baru apa pun atau memperbarui di folder ini, hal pertama yang perlu diketahui adalah nama folder dan jalurnya, yang dalam kasus kami adalah "/Folder_one/". Jadi sekarang akan masuk ke folder ini dan membaca/menerima file itu (nama file: suhu). Mengetahui jalur/Topik dan memeriksa perubahan dalam file/file baru di dunia Mqtt adalah berlangganan topik itu.

Mengingat contoh di atas, Sistem X menerbitkan ke "/ Folder_one" dan Sistem Y telah berlangganan "/ Folder_one"

Perhatikan juga bahwa Sistem X juga dapat berlangganan ke “/Folder_one” dan Sistem Y juga dapat Menerbitkan ke “/Folder_one”. Seperti bijaksana bahkan sistem Server (The Mqtt Broker) dapat mempublikasikan / berlangganan "/ Folder_one" dengan menginstal klien Mqtt di atasnya seperti yang telah kita lakukan saat ini. Hal lain yang perlu diingat adalah untuk mempublikasikan atau berlangganan suatu topik, Anda perlu mengetahui alamat IP dari Mqtt Broker.

Pertama kita akan mengujinya melalui klien ubuntu yang diinstal pada sistem yang sama dengan broker. Kami akan membuka dua jendela terminal, salah satunya akan menerbitkan dan yang lainnya akan berlangganan. Sebagai contoh Kami akan menggunakan /Folder_one sebagai topik. Sebelum pub/sub ke topik, Anda perlu menemukan alamat IP ubuntu. Untuk melakukan ini, klik di sudut kanan atas layar, pilih pengaturan wifi, dari sana Anda akan dapat menemukan alamat IP dari sistem ubuntu (saat ini adalah IP broker). Screenshort dibagikan untuk referensi (Gambar 8).

Atau untuk menemukan alamat IP broker Anda dapat menemukan alamat IP dengan menginstal alat bersih menggunakan perintah berikut di terminal

sudo apt install net-tools

Memasang net-tools (Gambar 9). Setelah itu ketik saja perintah ipconfig Anda akan mendapatkan daftar antarmuka jaringan dengan mac dan alamat IP

sudo ipconfig

Alamat IP sistem saya adalah 192.168.1.67 (Gambar 10)

Untuk menerbitkan

mosquitto_pub -h 192.168.1.67 -t /Folder_one -m pub_to_folderone

Di sini, mosquitto_pub adalah perintahnya, diikuti oleh elemen pengenal parameter -h yang merupakan alamat IP host/broker (Dalam kasus kami 192.168.1.67), diikuti oleh -t yang merupakan nama topik untuk penerbit (Dalam kasus kami /Folder_one), diikuti oleh -m yang berarti pesan/payload yang akan dikirim yang (Dalam kasus kami adalah pub_to_folderone).

Untuk berlangganan

mosquitto_sub -h 192.168.1.67 -t /Folder_one

Pesan yang dikirim oleh penerbit: pub_to_folderone

Contoh untuk penerbitan

mosquitto_pub -h 192.168.1.67 -t /Folder_one -m “hai tes mqtt”

mosquitto_pub -h 192.168.1.67 -t /Folder_one -m “mqtt berfungsi”

Contoh untuk tanggapan yang diterima tentang berlangganan topik

mosquitto_sub -h 192.168.1.67 -t /Folder_one

Pesan yang dikirim oleh penerbit:

  • pub_to_folderone
  • hai tes mqtt
  • mqtt bekerja

Pub Sub di dua jendela terminal terpisah berdampingan (Gambar 11)

Menguji Mqtt di Android (mqtt saya)

Instal aplikasi mymqtt dari play store di ponsel android Anda (Gambar 12)

Buka aplikasi dan klik di pojok kiri atas (Gambar 13, Gambar 14).

Klik Pengaturan dan masukkan alamat IP broker, port secara default adalah 1883. Saat ini kami tidak menggunakan broker mqtt yang diautentikasi sehingga nama pengguna dan kata sandi akan kosong. Simpan saja dan klik lagi di sudut kiri atas aplikasi (<Pengaturan) laci akan dibuka kembali (Gambar 15).

Di bagian atas laci itu akan menunjukkan kepada Anda alamat IP broker dan port yang terhubung dengan aplikasi (Gambar 16).

Sekarang tambahkan topik yang Anda ingin berlangganan dengan mengklik Berlangganan. Di sini kita akan menambahkan topik sebagai /Folder_one (Gambar 17, Gambar 18).

Setelah melakukan ini, dari sistem ubuntu dengan menggunakan terminal kami akan mempublikasikan ke topik. Saat menerbitkan, Anda harus mendapatkan muatan/pesan yang dipublikasikan di aplikasi seluler ini. Misalnya menerbitkan payload sebagai "ARM -Automation Robotics & Mechatronics". Perintah adalah seperti yang disebutkan sebelumnya.

mosquitto_pub -h 192.168.1.67 -t /Folder_one -m “ARM -Otomasi Robotika & Mekatronika”

penerbitan dari sistem ubuntu (Gambar 19).

Menerima pesan yang dipublikasikan di dasbor (Gambar 20).

Sekarang mari kita publikasikan dari ponsel android (My mqtt) dan berlangganan di sistem ubuntu. Untuk contoh ini kita menggunakan topik “/mymqtt_to_pub”.

Untuk melakukan ini pertama-tama buka terminal dari sistem ubuntu Anda dan berlangganan topik "/ mymqtt_to_pub" menggunakan perintah berikut (Gambar 21)

mosquitto_sub -h 192.168.1.67 -t /mymqtt_to_pub

Sekarang buka laci aplikasi mymqtt dan klik terbitkan. Tambahkan topik penerbitan (Dalam kasus kami ini adalah "/ mymqtt_to_pub") dan kirim beberapa pesan seperti kami akan mengirim "hai Ubuntu", tekan tombol kirim (Gambar 22, Gambar 23).

Pesan tersebut akan muncul di jendela terminal sistem ubuntu Anda (Gambar 24).

Perhatikan bahwa sistem ubuntu dan ponsel android harus berada di jaringan yang sama atau port 1883 harus terbuka dan Anda harus mengetahui alamat IP router/gateway Anda agar mqtt berfungsi. Jika Anda ingin menambahkan otentikasi ke broker mqtt Anda, Anda dapat melakukannya dengan mengikuti tautan blog yang disebutkan di bawah ini https://medium.com/@eranda/setting-up-authenticat… Ikuti dari langkah kedua blog ini. Kami telah mengaktifkan otentikasi broker kami dan akan menggunakan broker yang diautentikasi untuk papan kami.

Langkah 3: Bekerja Dengan Armtronix Board & Mqtt

Bekerja Dengan Armtronix Board & Mqtt
Bekerja Dengan Armtronix Board & Mqtt
Bekerja Dengan Armtronix Board & Mqtt
Bekerja Dengan Armtronix Board & Mqtt
Bekerja Dengan Armtronix Board & Mqtt
Bekerja Dengan Armtronix Board & Mqtt

Saat ini untuk instruksi ini, kami menggunakan Wifi Single Dimmer Board kami yang menggunakan Triac untuk memotong gelombang sinus dan pada gilirannya meredupkan bohlam atau mengontrol kecepatan kipas. Kami juga telah menghubungkannya melalui jenis otentikasi mqtt.

Awalnya kami telah mengkonfigurasi papan. Langkah-langkah untuk mengkonfigurasinya adalah seperti yang disebutkan di bawah ini.

Power Di papan, itu akan mulai meng-hosting Titik Akses Wifi.

Menggunakan ponsel android atau laptop terhubung ke AP ini (Gambar 25).

Setelah Terkoneksi ke AP ini ketik 192.168.4.1 dengan membuka browser (chrome/firefox) dari sistem AP yang terhubung/Telepon. Pastikan Anda tidak menggunakan koneksi data (3G/4G).

Saat mengetik IP, halaman web akan terbuka di mana ikuti harus dimasukkan (Gambar 26).

  • SSID: Nama AP Wifi.
  • Kata Sandi: Kata Sandi SSID.
  • Mode IoT Mqtt atau Http (Pilih Mqtt).
  • Mqtt Broker IP (Dalam kasus kami ini adalah 192.168.1.67).
  • Nama pengguna dan kata sandi Mqtt, karena kami menggunakan jenis otentikasi, kami telah menggunakan Naren, xxxx
  • Mqtt publish topic: Ini akan menjadi topik yang juga diterbitkan oleh board, kami telah menggunakan /testpub.
  • Topik berlangganan Mqtt: Ini akan menjadi topik mana papan mendengarkan perintah untuk memicu triac, kami telah menggunakan /testsub.
  • Nama perangkat: Ini adalah nama yang Anda panggil ke alexa untuk memicu papan, kami telah menggunakan corvi.

Setelah memasukkan detail, Tekan tombol kirim, saat melakukan ini Anda akan mendapatkan layar seperti yang ditunjukkan pada Gambar 27, tunggu beberapa saat hingga papan berhenti menampung AP.

Harap dicatat bahwa kami telah menghubungkan papan kami melalui Uart ke monitor serial Arduino IDE. Jadi di sisi kiri Anda akan melihat pesan debug yang dicetaknya melalui Uart (ini hanya untuk referensi Anda).

Setelah ini selesai, Anda dapat melihat layar debug. Sebagian besar detail akan terlihat di sana. Setelah ini, itu akan berhasil terhubung ke broker di layar debug (serial) Anda dapat melihat ini.

Terhubung ke broker MQTT dengan otentikasi. Berlangganan ke topik 1.

Setelah mencetak ini, Anda sekarang dapat mulai mengirimkannya perintah melalui mqtt pada topik yang menjadi langganannya yaitu /testsub/

Untuk perintah papan ini adalah:

  • R13_ON: Untuk menghidupkan triac menjadi 100%.
  • R13_OFF: Untuk mematikan triac ke 0%.
  • Dimmer:xx: Dimana, xx adalah nilai peredupan dan dapat divariasikan dari 0 hingga 99.
  • Reset: Untuk menghapus konfigurasi board.
  • Status: Cetak status redup papan pada topik penerbitan papan.

Untuk mengirim perintah ini dari sistem berbasis ubuntu tempat klien mqtt diinstal, ketik saja seperti yang ditunjukkan di bawah ini. Dua parameter tambahan ditambahkan di sini karena otentikasi - yaitu -u yang merupakan nama pengguna dan -P adalah kata sandi, harap dicatat bahwa ini peka huruf besar-kecil.

mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t /testsub -m R13_ON

mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t /testsub -m R13_OFF

mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t /testsub -m Dimmer:50

Catatan: 50 adalah nilai redup

mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t /testsub -m R13_ON

mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t /testsub -m Status

Untuk status terbaru, status akan dicetak pada topik penerbitan papan yang dalam kasus kami adalah /testpub. Di papan kami, setiap perubahan pada perangkat dicetak pada topik penerbitan papan. Misalnya, jika kami melewati Dimmer:50 di papan topik berlangganan daripada mengeksekusi ini secara fisik, papan akan mengirim pesan yang menyatakan tingkat redup pada topik penerbitan. Contoh ditunjukkan di bawah ini, Untuk berlangganan dari sistem ubuntu Anda ke topik penerbitan papan masukkan perintah berikut

mosquitto_sub -h 192.168.1.67 -u Naren -P xxxx -t /testpub

pesan yang kami terima adalah

Peredup IS50

beberapa screen short yang sama ada di bawah ini (Gambar 28, Gambar 29)

Direkomendasikan: