สารบัญ:

NodeMCU ESP8266 - MQTT - Ubidots: 5 ขั้นตอน
NodeMCU ESP8266 - MQTT - Ubidots: 5 ขั้นตอน

วีดีโอ: NodeMCU ESP8266 - MQTT - Ubidots: 5 ขั้นตอน

วีดีโอ: NodeMCU ESP8266 - MQTT - Ubidots: 5 ขั้นตอน
วีดีโอ: สาธิตการเชื่อมต่อ MQTT กับอุปกรณ์วัดอุณหภูมิ DHT11 และควบคุมเปิดปิดหลอด LED จากที่ไหนก็ได้ 2024, พฤศจิกายน
Anonim
NodeMCU ESP8266 - MQTT - Ubidots
NodeMCU ESP8266 - MQTT - Ubidots
NodeMCU ESP8266 - MQTT - Ubidots
NodeMCU ESP8266 - MQTT - Ubidots
NodeMCU ESP8266 - MQTT - Ubidots
NodeMCU ESP8266 - MQTT - Ubidots

MQTT เป็นโปรโตคอลการส่งข้อความมาตรฐาน OASIS สำหรับ Internet of Things (IoT) ได้รับการออกแบบมาเพื่อเผยแพร่/สมัครรับส่งข้อความที่มีน้ำหนักเบามาก ซึ่งเหมาะอย่างยิ่งสำหรับการเชื่อมต่ออุปกรณ์ระยะไกลด้วยรหัสขนาดเล็กและแบนด์วิดท์เครือข่ายที่น้อยที่สุด ปัจจุบัน MQTT ถูกใช้ในอุตสาหกรรมที่หลากหลาย เช่น ยานยนต์ การผลิต โทรคมนาคม น้ำมันและก๊าซ เป็นต้น

เหตุใด MQTT: ไคลเอ็นต์ MQTT มีขนาดเล็กมาก ต้องใช้ทรัพยากรเพียงเล็กน้อย จึงสามารถใช้กับไมโครคอนโทรลเลอร์ขนาดเล็กได้ ส่วนหัวข้อความ MQTT มีขนาดเล็กเพื่อเพิ่มประสิทธิภาพแบนด์วิดท์เครือข่าย

การสื่อสารแบบสองทิศทาง: MQTT ช่วยให้สามารถส่งข้อความระหว่างอุปกรณ์กับคลาวด์และคลาวด์ไปยังอุปกรณ์ ทำให้ง่ายต่อการกระจายข้อความไปยังกลุ่มของสิ่งต่างๆ

ปรับขนาดเป็นล้านสิ่ง: MQTT สามารถปรับขนาดเพื่อเชื่อมต่อกับอุปกรณ์ IoT หลายล้านเครื่อง

ความน่าเชื่อถือของการส่งข้อความ: เป็นสิ่งสำคัญสำหรับกรณีการใช้งาน IoT จำนวนมาก นี่คือเหตุผลที่ MQTT กำหนดคุณภาพการบริการไว้ 3 ระดับ:

  • 0 - อย่างมากที่สุด
  • 1- อย่างน้อยหนึ่งครั้ง
  • 2 - ครั้งเดียว

รองรับเครือข่ายที่ไม่น่าเชื่อถือ: อุปกรณ์ IoT จำนวนมากเชื่อมต่อผ่านเครือข่ายเซลลูลาร์ที่ไม่น่าเชื่อถือ การสนับสนุนของ MQTT สำหรับเซสชันต่อเนื่องช่วยลดเวลาในการเชื่อมต่อลูกค้ากับนายหน้าอีกครั้ง

เปิดใช้งานการรักษาความปลอดภัย: MQTT ทำให้ง่ายต่อการเข้ารหัสข้อความโดยใช้ TLS และรับรองความถูกต้องของไคลเอ็นต์โดยใช้โปรโตคอลการตรวจสอบสิทธิ์ที่ทันสมัย เช่น OAuth

เสบียง

  1. NodeMCU ESP8266 (หรือ) บอร์ด ESP8266 ทั่วไปอื่นๆ
  2. ทะเบียนอุบลฯ
  3. รองรับไลบรารี่จาก GitHub
  4. Arduino IDE เพื่ออัปโหลดรหัส

ขั้นตอนที่ 1: การตั้งค่าเริ่มต้นของ Arduino IDE

การตั้งค่าเริ่มต้นของ Arduino IDE
การตั้งค่าเริ่มต้นของ Arduino IDE
การตั้งค่าเริ่มต้นของ Arduino IDE
การตั้งค่าเริ่มต้นของ Arduino IDE
การตั้งค่าเริ่มต้นของ Arduino IDE
การตั้งค่าเริ่มต้นของ Arduino IDE
การตั้งค่าเริ่มต้นของ Arduino IDE
การตั้งค่าเริ่มต้นของ Arduino IDE
  1. ดาวน์โหลดไลบรารี UbidotsMQTTESP8266 จาก GIT Repository
  2. เปิด Arduino IDE ไปที่ "การตั้งค่า" จากเมนู "ไฟล์"
  3. ในช่องข้อความ "Additional Boards Manager URLs" ให้วางสิ่งต่อไปนี้: https://arduino.esp8266.com/stable/package_esp8266… & กดที่ Ok เพื่อดำเนินการต่อ
  4. ไปที่ "Add. ZIP Library" จากเมนู "Sketch > Include Library" และระบุเส้นทางของไฟล์ zip ที่ดาวน์โหลด
  5. รอจนกว่า IDE จะได้รับข้อความ: เพิ่มไลบรารีลงในไลบรารีของคุณ ตรวจสอบเมนู "รวมไลบรารี"
  6. ไปที่ "รวมไลบรารี" จาก "ร่าง" และตรวจสอบ "Ubidots MQTT สำหรับ ESP8266"

ขั้นตอนที่ 2: Ubidots API Credentials

Ubidots API Credentials
Ubidots API Credentials
Ubidots API Credentials
Ubidots API Credentials
Ubidots API Credentials
Ubidots API Credentials

เข้าสู่ระบบ Ubidots และจดบันทึกข้อมูลรับรอง API โปรดทราบว่าเราต้องการเพียงค่าของ "โทเค็นเริ่มต้น" เท่านั้น

ขั้นตอนที่ 3: รหัส.

รหัส..
รหัส..
รหัส..
รหัส..

#include "UbidotsESPMQTT.h"

#กำหนดโทเค็น "********************************************** ***" // Ubidots TOKEN ของคุณ

#define WIFINAME "************" // SSID ของคุณ

#define WIFIPASS "******************" // Wifi Pass ของคุณ

ลูกค้า Ubidots (TOKEN);

การโทรกลับเป็นโมฆะ (หัวข้อ char*, เพย์โหลดไบต์*, ความยาว int ที่ไม่ได้ลงชื่อ)

{

Serial.print("ข้อความมาถึง [");

Serial.print(หัวข้อ);

Serial.print("] ");

สำหรับ (int i=0; i<ความยาว; i++)

{

Serial.print((ถ่าน)เพย์โหลด);

}

การตั้งค่าเป็นโมฆะ ()

{

client.setDebug(จริง);

Serial.begin(115200);

client.wifiConnection(WIFINAME, WIFIPASS);

client.begin(โทรกลับ);

}

วงเป็นโมฆะ ()

{

if(!client.connected())

{

client.reconnect();

}

float value1 = analogRead(A0);

client.add("อุณหภูมิ", ค่าที่ 1);

client.ubidotsPublish("อุปกรณ์ใหม่ของฉัน");

client.loop();

}

หมายเหตุ: โปรดดูภาพหน้าจอเพื่อการเยื้องของบรรทัดที่ดีขึ้น

ขั้นตอนที่ 4: เชื่อมต่อ คอมไพล์ และอัปโหลดโค้ด.

เชื่อมต่อ รวบรวม และอัปโหลดโค้ด.
เชื่อมต่อ รวบรวม และอัปโหลดโค้ด.
เชื่อมต่อ รวบรวม และอัปโหลดโค้ด.
เชื่อมต่อ รวบรวม และอัปโหลดโค้ด.
เชื่อมต่อ รวบรวม และอัปโหลดโค้ด.
เชื่อมต่อ รวบรวม และอัปโหลดโค้ด.

ไม่ใช่เวลาที่จะเชื่อมต่อ NodeMCU ESP8266 กับพีซี/แล็ปท็อป ระบุพอร์ต คอมไพล์ และอัปโหลดโค้ด

โปรดใช้ความช่วยเหลือที่จำเป็นจากภาพหน้าจอที่แนบมาเพื่อให้เข้าใจกระบวนการดีขึ้น หากคุณยังใหม่กับ Arduino IDE

ขั้นตอนที่ 5: การตรวจสอบขั้นสุดท้าย.

สอบปลายภาค..
สอบปลายภาค..

หากทุกอย่างเป็นไปด้วยดี คุณควรจะสามารถสังเกตได้เหมือนกับที่แสดงในภาพหน้าจอ

บรรทัดนี้ในรหัส "client.ubidotsPublish("my-new-device");" ได้รับการเผยแพร่

หมายเหตุ: ในกรณีที่ไม่มีอะไรแสดงในแดชบอร์ด Ubodots ขอแนะนำให้ยกเลิกการเชื่อมต่อและเชื่อมต่อ NodeMCU อีกครั้ง

คอยติดตามกัน ฉันกำลังพยายามโพสต์เพิ่มเติมด้วย Ubidots & NodeMCU ESP8266

แนะนำ: