Daftar Isi:
- Langkah 1: Instalasi Perpustakaan
- Langkah 2: Kode
- Langkah 3: Konfigurasi Klien MQTT (MQTTBOX)
- Langkah 4: Hasil Menjalankan Program
Video: NodeMCU - MQTT Contoh Dasar: 4 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:56
Pelajaran ini akan menunjukkan penggunaan protokol MQTT dasar pada papan NodeMCU. Kami menggunakan MQTTBox sebagai klien MQTT di sini, dan kami akan menggunakan NodeMCU untuk menyelesaikan operasi berikut:
Publikasikan "hello world" ke topik "outTopic" setiap dua detik. Berlangganan topik "inTopic", cetak semua pesan yang diterima. Diasumsikan payload yang diterima adalah string, bukan biner. Jika pesan berlangganan adalah "1", nyalakan LED onboards. Matikan LED onboard jika pesan untuk berlangganan adalah “0”.
Persiapan: Osoyoo NodeMCU x1
Kabel USB x1
PC x1
Arduino IDE (Versi 1.6.4+)
Hubungkan NodeMCU ke PC melalui kabel USB.
Langkah 1: Instalasi Perpustakaan
Instal PubSubClientlibrary
Kami perlu menginstal perpustakaan titik akhir MQTT (PubSubClient) untuk berkomunikasi dengan broker MQTT, silakan unduh perpustakaan dari tautan berikut:
Unzip file di atas, pindahkan folder unzip ke folder library Arduino IDE.
Buka IED Arduino, Anda dapat menemukan "pubsubclient" pada kolom "Contoh".
Instal Klien MQTT:
kita akan menggunakan MQTTBox sebagai klien MQTT. silakan unduh dari:
Langkah 2: Kode
buka Arduino IDE–>File–>Contoh–>pubsubclient–>mqtt esp8266, Anda akan mendapatkan kode sampel.
Edit kode agar sesuai dengan pengaturan WiFi dan MQTT Anda sendiri sebagai operasi berikut: 1) Konfigurasi Hotspot: Temukan baris kode di bawah ini, masukkan ssid dan kata sandi Anda sendiri di sana.
const char* ssid = “your_hotspot_ssid”;const char* password = “your_hotspot_password”;
2) Setting Alamat Server MQTT, disini kami menggunakan broker MQTT gratis "broker.mqtt-dashboard.com". Anda dapat menggunakan URL atau alamat IP broker MQTT Anda sendiri untuk menetapkan nilai mqtt_server di atas. Anda juga dapat menggunakan beberapa server MQTT gratis yang terkenal untuk menguji proyek seperti “broker.mqtt-dashboard.com”, “iot. Eclipse.org” dll.
const char* mqtt_server = “broker.mqtt-dashboard.com”;
3) Pengaturan Klien MQTT Jika broker MQTT Anda memerlukan ID klien, nama pengguna, dan otentikasi kata sandi, Anda perlu
mengubah
jika (client.connect(clientId.c_str()))
Ke
if (client.connect(clientId, userName, passWord)) // letakkan clientId/userName/passWord Anda di sini
Jika tidak, simpan saja sebagai default. Setelah itu, pilih jenis papan dan jenis port yang sesuai seperti di bawah ini, lalu unggah sketsa ke NodeMCU.
- Papan: "NodeMCU 0.9 (Modul ESP-12)"
- Frekuensi CPU: "80MHz" Ukuran Flash: "4M (3M SPIFFS)"
- Kecepatan Unggah:”115200″
- Port: Pilih Port Serial Anda sendiri untuk NodeMCU Anda
Langkah 3: Konfigurasi Klien MQTT (MQTTBOX)
Pada langkah ini, kami akan menunjukkan cara membuat klien MQTT di MQTTBox.
Buka MQTTBox Anda dan klik tombol biru untuk menambahkan klien MQTT baru.
Konfigurasi MQTT CLIENT SETTINGS seperti di bawah ini:
- Nama Klien MQTT -- Pilih nama yang Anda suka
- Protokol -- Pilih “mqtt/tcp”
- Host - Ketik "mqtt_server" Anda di kolom ini, pastikan sama dengan sketsa Anda. (Kami menggunakan "broker.mqtt-dashboard.com" di sini)
- Simpan pengaturan lain sebagai default
- Klik untuk menyimpan perubahan Anda.
Selanjutnya, Anda akan secara otomatis masuk ke halaman baru. Jika semua konfigurasi di atas sudah benar, “Not Connected” akan berubah menjadi “Connected”, nama klien MQTT dan nama Host Anda akan ditampilkan di bagian atas halaman ini.
Pengaturan topik: Pastikan topik publikasi klien MQTT Anda sama dengan topik berlangganan sketsa Arduino Anda dalam Topik di sini). Pastikan topik langganan klien MQTT Anda sama dengan topik publikasi sketsa Arduino Anda outTopic here).
Langkah 4: Hasil Menjalankan Program
Setelah pengunggahan selesai, jika pengaturan nama hotspot wifi dan kata sandi ok, dan broker MQTT terhubung, buka Serial Monitor, Anda akan melihat pesan publish "hello world" di monitor serial.
Kemudian buka klien MQTT dan publikasikan payload "1" ke topik, NodeMCU ini akan menerima pesan-pesan ini dengan berlangganan "inTopic", dan LED akan menyala.
Publikasikan payload “0” ke topik ini, LED NodeMCU akan dimatikan.
Direkomendasikan:
Komponen Pemasangan Permukaan Solder - Dasar-dasar Solder: 9 Langkah (dengan Gambar)
Komponen Pemasangan Permukaan Solder | Dasar-dasar Solder: Sejauh ini dalam Seri Dasar Solder saya, saya telah membahas dasar-dasar yang cukup tentang penyolderan untuk Anda mulai berlatih. Dalam Instructable ini, apa yang akan saya diskusikan sedikit lebih maju, tetapi ini adalah beberapa dasar untuk menyolder Surface Mount Compo
Menyolder Kabel ke Kabel - Dasar-dasar Solder: 11 Langkah
Menyolder Kabel ke Kabel | Dasar-dasar Solder: Untuk Instruksi ini, saya akan membahas cara umum untuk menyolder kabel ke kabel lain. Saya akan berasumsi bahwa Anda telah memeriksa 2 Instructables pertama untuk seri Soldering Basics saya. Jika Anda belum melihat Instruksi saya tentang Menggunakan
Driver H-Bridge Kecil - Dasar-dasar: 6 Langkah (dengan Gambar)
Driver H-Bridge Kecil | Dasar-dasar: Halo dan selamat datang kembali di Instructable lainnya! Pada bagian sebelumnya, saya telah menunjukkan cara membuat kumparan di KiCad menggunakan skrip python. Kemudian saya membuat dan menguji beberapa variasi kumparan untuk melihat mana yang bekerja paling baik. Tujuan saya adalah untuk menggantikan yang besar
Pengenalan Python - Katsuhiko Matsuda & Edwin Cijo - Dasar-dasar: 7 Langkah
Pengenalan Python - Katsuhiko Matsuda & Edwin Cijo - Dasar-dasar: Halo, kami adalah 2 siswa di MYP 2. Kami ingin mengajari Anda dasar-dasar cara membuat kode Python. Itu dibuat pada akhir 1980-an oleh Guido van Rossum di Belanda. Itu dibuat sebagai penerus bahasa ABC. Namanya adalah "Python" karena ketika
Contoh Dasar De Termistor NTC Y Arduino: 5 Langkah (dengan Gambar)
Contoh Dasar dari Termistor NTC Y Arduino: Como hemos visto en un tutorial anterior, aunque con un microcontrolador no podemos medir directamente una resistencia, podemos hacer uso de un divisor de tensión para transformar el valor de una resistencia en un equale de voltaje. Bibi