Isi kandungan:
- Langkah 1: Memasang Mqtt Broker:
- Langkah 2: Menguji MQTT (Mosquitto)
- Langkah 3: Bekerja dengan Armtronix Board & Mqtt
Video: MQTT pada Papan Armtronix: 3 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:07
Dalam instruksional ini, kami ingin menunjukkan pada awalnya bagaimana anda dapat menggunakan sistem berasaskan Linux (Debian atau Ubuntu) dan memasang Mosquitto (Mqtt Broker) di atasnya, juga menunjukkan kepada anda cara menggunakan klien Mqtt di Telefon Anda (Android) / Berbasis Linux sistem, menghantar dan menerima mesej melalui Mqtt. Setelah mengetahui perkara ini, kami ingin menunjukkan kepada anda bagaimana anda dapat mengkonfigurasi dan menghubungkan papan kami dengan broker Mqtt yang dipasang ini. Juga ingin menunjukkan kepada anda bagaimana anda boleh menambahkan pengesahan kepada broker Mqtt dan beberapa petua dan trik asas untuk men-debug. Oleh itu mari kita mulakan ………..
Langkah 1: Memasang Mqtt Broker:
Terdapat beberapa broker Mqtt yang boleh anda pasangkan. Beberapa yang diketahui adalah seperti yang dinyatakan di bawah. Sebahagian daripadanya adalah perkhidmatan berasaskan awan.
- HiveMQ
- MosquittoCloud
- MQTT
- Adafruit.io
Kami akan menunjukkan cara memasang Mosquitto pada sistem berasaskan Linux (Ubuntu 18.04). Untuk melakukan ini terlebih dahulu tambahkan Mosquitto ke senarai sumber ubuntu. Setelah Mosquitto tersedia di repositori Ubuntu, anda akan dapat memasangnya dengan apt-get.
Buka Terminal sahaja. Untuk membuka Terminal, pergi ke sudut kiri bawah Desktop Ubuntu, Klik pada Show aplikasi (Dot grid 3X3). Tetingkap akan dibuka. Di sana anda mencari Terminal. Klik pada terminal anda akan dapat melihat tetingkap terbuka seperti yang ditunjukkan pada gambar berikut.
- Tunjukkan Aplikasi (Gambar 1).
- Cari Terminal (Gambar 2).
- Tetingkap Terminal (Gambar 3).
Masukkan arahan berikut setelah anda membuka Terminal
sudo apt-add-repository ppa: mosquitto-dev / mosquitto-ppa
sudo apt-get kemas kini
sudo apt-get install mosquitto
Anda juga boleh memasang klien Mqtt. Perintah untuk melakukannya akan menjadi
sudo apt-get pasang mosquitto-klien
Beberapa gambar untuk rujukan anda
- Menambah ppa (Gambar 4).
- Mengemas kini repo (Gambar 5).
- Memasang Mosquitto (Gambar 6).
- Memasang Pelanggan Mosquitto (Gambar 7).
Langkah 2: Menguji MQTT (Mosquitto)
Untuk menguji mqtt melalui ubuntu (sistem yang sama atau sistem lain) anda perlu memasang klien mqtt yang telah dipasang lebih awal dengan perintah sudo apt-get install mosquitto-client. Sekiranya anda ingin mengujinya menggunakan telefon bimbit (android), anda boleh memasang aplikasi MyMqtt dari play store.
Mqtt mengusahakan sesuatu yang dipanggil Topik. Untuk kemudahan memahami, pertimbangkan topik-topik ini sebagai folder pada cakera keras komputer. Mari kita menganggap komputer ini sebagai pelayan komputer (yang di dunia mqtt adalah Mqtt Broker). Di pelayan ini mari kita mempertimbangkan untuk mempunyai satu folder.
Nama folder: / Folder_one /
Sekarang mari kita pertimbangkan dua orang dari dua sistem yang berbeza (PC / Laptop) mengakses pelayan ini sama ada untuk membaca fail atau menghantar / membuang fail atau melakukan kedua-dua operasi.
Kami akan menamakan dua orang / sistem tersebut sebagai Sistem X, Sistem Y (Ini adalah Pelanggan Mqtt di Dunia Mqtt).
Sekarang, katakanlah Sistem X mengirim / Membuang beberapa file (nama file: suhu) ke dalam folder "/ Folder_one /", ini di dunia mqtt kita dapat memanggil penerbitan ini (kami mengirim beberapa pesan / muatan bukan file).
Sekarang, katakan System Y ingin mendapatkan / membaca fail ini atau fail baru atau untuk mengemas kini dalam folder ini, perkara pertama yang diperlukannya adalah mengetahui nama folder dan jalan, yang dalam kes kita adalah "/ Folder_one /". Jadi sekarang ia akan pergi ke folder ini dan membaca / menerima fail itu (nama fail: suhu). Mengetahui jalan / Topik dan memeriksa perubahan dalam fail / fail baru di dunia Mqtt adalah langganan topik tersebut.
Mengingat contoh di atas, Sistem X menerbitkan "/ Folder_one" dan Sistem Y telah melanggan "/ Folder_one"
Perhatikan juga bahawa Sistem X juga dapat berlangganan "/ Folder_one" dan Sistem Y juga dapat Menerbitkan ke "/ Folder_one". Seperti yang bijak, malah sistem Server (The Mqtt Broker) dapat menerbitkan / melanggan “/ Folder_one” dengan memasang klien Mqtt di atasnya seperti yang telah kita lakukan sekarang. Perkara lain yang perlu diingat ialah menerbitkan atau melanggan topik yang anda perlukan untuk mengetahui alamat IP Broker Mqtt.
Mula-mula kita akan mengujinya melalui klien ubuntu yang dipasang pada sistem yang sama dengan broker. Kami akan membuka dua tetingkap terminal yang satu akan diterbitkan dan yang lain akan melanggannya. Sebagai contoh Kami akan menggunakan / Folder_one sebagai topik. Sebelum pub / sub topik anda perlu mencari alamat IP ubuntu. Untuk melakukan ini, klik di sudut kanan atas skrin, pilih tetapan wifi, dari sana anda akan dapat mencari alamat IP sistem ubuntu (saat ini IP broker). Screenshort dikongsi untuk rujukan (Gambar 8).
Atau untuk mencari alamat IP broker anda boleh mencari alamat IP dengan memasang alat bersih menggunakan perintah berikut di terminal
sudo apt pasang alat bersih
Memasang alat bersih (Gambar 9). Selepas itu ketik perintah ipconfig anda akan mendapat senarai antara muka rangkaian dengan alamat mac dan IP
sudo ipconfig
Alamat IP sistem saya ialah 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 perintah, diikuti oleh elemen pengenal parameter -h yang merupakan alamat IP host / broker (Dalam kes kami 192.168.1.67), diikuti oleh -t yang merupakan nama topik kepada penerbit (Dalam kes kami / Folder_one), diikuti oleh -m yang bermaksud mesej / muatan yang akan dihantar yang (Dalam kes kami adalah pub_to_folderone).
Untuk melanggan
mosquitto_sub -h 192.168.1.67 -t / Folder_one
Mesej dihantar oleh penerbit: pub_to_folderone
Contoh untuk penerbitan
mosquitto_pub -h 192.168.1.67 -t / Folder_one -m "hi test mqtt"
mosquitto_pub -h 192.168.1.67 -t / Folder_one -m "mqtt working"
Contoh jawapan yang diterima semasa melanggan topik
mosquitto_sub -h 192.168.1.67 -t / Folder_one
Mesej dihantar oleh penerbit:
- pub_to_folderone
- hai ujian mqtt
- mqtt berfungsi
Pub Sub dalam dua tetingkap terminal yang berasingan bersebelahan (Gambar 11)
Menguji Mqtt pada android (mqtt saya)
Pasang aplikasi mymqtt dari play store pada telefon android anda (Gambar 12)
Buka aplikasi dan klik di sudut kiri atas (Gambar 13, Gambar 14).
Klik pada Tetapan dan masukkan alamat IP broker, port secara lalai adalah 1883. Pada masa ini kami tidak menggunakan broker mqtt yang disahkan sehingga nama pengguna dan kata laluan akan kosong. Simpan sahaja dan klik sekali lagi di sudut kiri atas aplikasi (<Tetapan) laci akan dibuka semula (Gambar 15).
Di bahagian atas laci itu akan menunjukkan kepada anda alamat IP broker dan port aplikasi yang disambungkannya (Gambar 16).
Sekarang tambahkan topik yang ingin anda langgani dengan mengklik Langgan. Di sini kita akan menambah topik sebagai / Folder_one (Gambar 17, Gambar 18).
Setelah melakukan ini, dari sistem ubuntu dengan menggunakan terminal kami akan menerbitkan topik tersebut. Semasa menerbitkan, anda mesti mendapatkan muatan / mesej yang diterbitkan di aplikasi mudah alih ini. Contohnya menerbitkan muatan sebagai "ARM-Automatik Robotik & Mekatronik". Perintah adalah seperti yang disebutkan sebelumnya.
mosquitto_pub -h 192.168.1.67 -t / Folder_one -m "ARM -Automasi Robotik & Mekatronik"
penerbitan dari sistem ubuntu (Imej 19).
Menerima mesej yang diterbitkan di papan pemuka (Gambar 20).
Sekarang mari kita terbitkan dari telefon android (mqtt saya) dan melanggan sistem ubuntu. Untuk contoh ini kita menggunakan topik "/ mymqtt_to_pub".
Untuk melakukan ini terlebih dahulu buka terminal dari sistem ubuntu anda dan langgan topik "/ mymqtt_to_pub" menggunakan arahan berikut (Gambar 21)
mosquitto_sub -h 192.168.1.67 -t / mymqtt_to_pub
Sekarang pergi ke laci aplikasi mymqtt dan klik terbitkan. Tambahkan topik penerbitan (Dalam kasus kami adalah "/ mymqtt_to_pub") dan kirimkan beberapa pesan seperti kami akan mengirim "hai Ubuntu", tekan butang kirim (Gambar 22, Gambar 23).
Mesej akan muncul di tetingkap terminal sistem ubuntu anda (Gambar 24).
Perhatikan bahawa kedua-dua sistem ubuntu dan telefon android harus berada di rangkaian yang sama atau port 1883 harus terdedah dan anda harus mengetahui alamat IP penghala / gerbang anda untuk mqtt berfungsi. Sekiranya anda ingin menambahkan pengesahan ke broker mqtt anda, anda boleh melakukannya dengan mengikuti pautan blog yang disebutkan di bawah ini https://medium.com/@eranda/setting-up-authenticat… Ikuti langkah kedua blog ini. Kami telah membolehkan pengesahan broker kami dan akan menggunakan broker yang disahkan untuk papan kami.
Langkah 3: Bekerja dengan Armtronix Board & Mqtt
Pada masa ini untuk instruksional ini, kami menggunakan Papan Dimmer Tunggal Wifi kami yang menggunakan Triac untuk memotong gelombang sinus dan seterusnya meredupkan mentol atau mengawal kelajuan kipas. Kami juga telah menghubungkannya melalui jenis pengesahan mqtt.
Pada mulanya kami telah mengkonfigurasi papan. Langkah-langkah untuk mengkonfigurasinya adalah seperti yang disebutkan di bawah.
Power On board, ia akan mula mengadakan Wifi Access Point.
Dengan menggunakan telefon android atau komputer riba, sambungkan ke AP ini (Gambar 25).
Setelah Disambungkan ke AP ini, ketik 192.168.4.1 dengan membuka penyemak imbas (chrome / firefox) dari sistem / Telefon yang disambungkan AP. Pastikan anda tidak menggunakan sambungan data anda (3G / 4G).
Semasa menaip IP, laman web akan terbuka di mana ikutan harus dimasukkan (Gambar 26).
- SSID: Nama AP Wifi.
- Kata Laluan: Kata Laluan SSID.
- Mod IoT Mqtt atau Http (Pilih Mqtt).
- Mqtt Broker IP (Dalam kes kami adalah 192.168.1.67).
- Nama pengguna dan kata laluan mqtt, kerana kami menggunakan jenis pengesahan, kami telah menggunakan Naren, xxxx
- Topik penerbitan Mqtt: Ini juga topik yang akan diterbitkan oleh dewan, kami telah menggunakan / testpub.
- Mqtt melanggan topik: Ini akan menjadi topik mana dewan dewan mendengar perintah untuk memicu triac, kami telah menggunakan / tesub.
- Nama peranti: Ini adalah nama yang anda panggil ke alexa untuk mencetuskan papan, kami telah menggunakan corvi.
Setelah memasukkan perincian, Tekan butang kirim, dengan melakukan ini Anda akan mendapatkan layar seperti yang ditunjukkan pada Gambar 27, tunggu beberapa saat hingga dewan berhenti menghosting AP.
Harap maklum bahawa kami telah menghubungkan papan kami melalui Uart ke monitor bersiri Arduino IDE. Jadi di sebelah kiri anda akan melihat mesej debug yang dicetaknya melalui Uart (ini hanya untuk rujukan anda).
Setelah selesai, anda dapat melihat skrin debug. Sebilangan besar butiran akan dapat dilihat di sana. Selepas ini, ia akan berjaya disambungkan ke broker pada skrin debug (bersiri) anda dapat melihatnya.
Bersambung dengan broker MQTT dengan pengesahan. Melanggan topik 1.
Setelah mencetak ini, anda kini dapat mulai mengirimkan perintahnya melalui mqtt pada topik yang telah dilanggannya yaitu / tesub /
Untuk arahan papan ini adalah:
- R13_ON: Untuk menghidupkan triac hingga 100%.
- R13_OFF: Untuk mematikan triac hingga 0%.
- Dimmer: xx: Di mana, xx adalah nilai peredupan dan boleh berubah dari 0 hingga 99.
- Tetapkan semula: Untuk membersihkan konfigurasi papan.
- Status: Mencetak status redup papan pada topik penerbitan papan iklan.
Untuk menghantar arahan ini dari sistem berasaskan ubuntu di mana klien mqtt dipasang, ketikkan seperti yang ditunjukkan di bawah. Dua parameter tambahan ditambahkan di sini kerana pengesahan - iaitu -u yang merupakan nama pengguna dan -P adalah kata laluan, harap maklum bahawa ini peka huruf besar kecil.
mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t / testingub -m R13_ON
mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t / testingub -m R13_OFF
mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t / testingub -m Dimmer: 50
Catatan: 50 adalah nilai redup
mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t / testingub -m R13_ON
mosquitto_pub -h 192.168.1.67 -u Naren -P xxxx -t / testingub -m Status
Untuk status terkini, status dicetak pada topik penerbitan dewan yang dalam kes kami adalah / testpub. Di papan kami sebarang perubahan pada peranti dicetak pada topik penerbitan papan iklan. Sebagai contoh, jika kita melewati topik Dimmer: 50 di papan langganan daripada melaksanakannya secara fizikal, dewan akan menghantar mesej yang menyatakan tahap redup pada topik penerbitan. Contoh ditunjukkan di bawah, Untuk melanggan sistem ubuntu anda ke topik penerbitan papan tulis perintah berikut
mosquitto_sub -h 192.168.1.67 -u Naren -P xxxx -t / testpub
mesej yang kami dapat adalah
DimmerIS50
beberapa seluar skrin yang sama ada di bawah (Gambar 28, Gambar 29)
Disyorkan:
Mengubah Pad Dance L-tek ke Poll pada 1000hz pada Windows dan Linux: 9 Langkah
Mengubah Pad Dance L-tek ke Poll pada 1000hz di Windows dan Linux: Mengapa mod ini? Sekiranya anda pernah menatal ke grafik pada lagu 125 BPM, anda mungkin tertanya-tanya, ada apa dengan boi spikey ini? Mengapa masa jatuh ke dalam "slot" diskrit? ITG dan DDR mempunyai tetingkap masa yang sangat ketat, dan dengan ini
Pemasangan De La Carte TagTagTag Tuangkan Nabaztag / Memasang Papan TagTagTag pada Nabaztag Anda: 15 Langkah
Pemasangan De La Carte TagTagTag Tuangkan Nabaztag / Memasang Papan TagTagTag pada Nabaztag Anda: (lihat di bawah untuk versi Bahasa Inggeris) Elle a fait l'objet ensuite d'un finances participatif sur Ulule en juin 2019, si vous souhaitez
Pemasangan De La Carte TagTagTag Pour Nabaztag: tag / Memasang Papan TagTagTag pada Nabaztag anda: tag: 23 Langkah
Pemasangan De La Carte TagTagTag Pour Nabaztag: tag / Memasang Papan TagTagTag pada Nabaztag anda: tag: (lihat di bawah untuk versi Bahasa Inggeris) . Elle a fait l'objet ensuite d'un finances participatif sur Ulule en juin 2019, si vous souhaitez
Papan ARMTRONIX Wifi 30Amps: 4 Langkah (dengan Gambar)
ARMTRONIX Wifi 30Amps Board: PENDAHULUAN: Armtronix 30AMPS Relay board adalah papan IOT. Ciri-ciri papan adalah: Kawalan tanpa wayar. Pada papan USB ke UART. Di papan kuasa AC ke DC, suis maya 230VAC hingga 5V DC.AC. Rupa dan rasa papan adalah 105mm X 7
Memasang Windows pada Pemacu Luaran Dengan Partition Mac pada Mac: 5 Langkah (dengan Gambar)
Memasang Windows pada Pemacu Luaran Dengan Partisi Mac di Mac: Sekiranya anda telah membeli sesuatu seperti MacBook pro asas dan menyimpan sedikit wang tunai, tetapi kemudian segera menghadapi masalah penyimpanan ketika cuba memasang tetingkap menggunakan Bootcamp Kita semua tahu bahawa 128 gb tidak diperlukan ini supaya kita mungkin membeli sesuatu