Mục lục:

Ví dụ cơ bản về NodeMCU - MQTT: 4 bước
Ví dụ cơ bản về NodeMCU - MQTT: 4 bước

Video: Ví dụ cơ bản về NodeMCU - MQTT: 4 bước

Video: Ví dụ cơ bản về NodeMCU - MQTT: 4 bước
Video: Giao thức MQTT - Bài1: Tìm hiểu về MQTT trong lập trình esp8266 và IOT - cách tạo MQTT broker HiveMQ 2024, Tháng bảy
Anonim
Image
Image

Bài học này sẽ chỉ ra cách sử dụng giao thức MQTT cơ bản trên bo mạch NodeMCU. Chúng tôi sử dụng MQTTBox làm ứng dụng khách MQTT ở đây và chúng tôi sẽ sử dụng NodeMCU để hoàn thành các hoạt động sau:

Xuất bản “hello world” lên chủ đề “outTopic” hai giây một lần. Đèn LED trên bo mạch Tắt đèn LED trên bo mạch nếu thông báo đăng ký là “0”.

Chuẩn bị: Osoyoo NodeMCU x1

Cáp USB x1

PC x1

Arduino IDE (Phiên bản 1.6.4+)

Kết nối NodeMCU với PC qua cáp USB.

Bước 1: Cài đặt Thư viện

Cài đặt Thư viện
Cài đặt Thư viện
Cài đặt Thư viện
Cài đặt Thư viện

Cài đặt PubSubClientlibrary

Chúng tôi cần cài đặt thư viện điểm cuối MQTT (PubSubClient) để giao tiếp với nhà môi giới MQTT, vui lòng tải xuống thư viện từ liên kết sau:

Giải nén tập tin trên, di chuyển thư mục đã giải nén vào thư mục thư viện Arduino IDE.

Mở Arduino IED, bạn có thể tìm thấy “pubsubclient” trên cột “Ví dụ”.

Cài đặt MQTT Client:

chúng tôi sẽ sử dụng MQTTBox làm ứng dụng khách MQTT. vui lòng tải xuống từ:

Bước 2: Mã

Mã số
Mã số
Mã số
Mã số

mở Arduino IDE–> File–> Example–> pubsubclient–> mqtt esp8266, bạn sẽ nhận được mã mẫu.

Chỉnh sửa mã để phù hợp với cài đặt WiFi và MQTT của riêng bạn như các hoạt động sau: 1) Di chuyển điểm phát sóng: Tìm dòng mã bên dưới, đặt ssid và mật khẩu của riêng bạn vào đó.

const char * ssid = “your_hotspot_ssid”; const char * password = “your_hotspot_password”;

2) Cài đặt địa chỉ máy chủ MQTT, ở đây chúng tôi sử dụng nhà môi giới MQTT miễn phí "broker.mqtt-dashboard.com". Bạn có thể sử dụng địa chỉ IP hoặc URL người môi giới MQTT của riêng mình để đặt trên giá trị mqtt_server. Bạn cũng có thể sử dụng một số máy chủ MQTT miễn phí nổi tiếng để kiểm tra dự án như “broker.mqtt-dashboard.com”, “iot.eclipse.org”, v.v.

const char * mqtt_server = “broker.mqtt-dashboard.com”;

3) Cài đặt ứng dụng khách MQTT Nếu nhà môi giới MQTT của bạn yêu cầu xác thực ID khách hàng, tên người dùng và mật khẩu, bạn cần

thay đổi

if (client.connect (clientId.c_str ()))

Đến

if (client.connect (clientId, userName, passWord)) // đặt clientId / userName / passWord của bạn ở đây

Nếu không, chỉ cần giữ chúng như mặc định, sau đó chọn loại bo mạch và loại cổng tương ứng như bên dưới, sau đó tải bản phác thảo lên NodeMCU.

  • Bảng:”NodeMCU 0.9 (Mô-đun ESP-12)”
  • Tần số CPU:”80MHz” Kích thước đèn flash:”4M (3M SPIFFS)”
  • Tốc độ tải lên:”115200 ″
  • Cổng: Chọn Cổng nối tiếp của riêng bạn cho NodeMCU của bạn

Bước 3: Định cấu hình MQTT Client (MQTTBOX)

Định cấu hình MQTT Client (MQTTBOX)
Định cấu hình MQTT Client (MQTTBOX)
Định cấu hình MQTT Client (MQTTBOX)
Định cấu hình MQTT Client (MQTTBOX)
Định cấu hình MQTT Client (MQTTBOX)
Định cấu hình MQTT Client (MQTTBOX)
Định cấu hình MQTT Client (MQTTBOX)
Định cấu hình MQTT Client (MQTTBOX)

Trong bước này, chúng tôi sẽ hướng dẫn cách tạo một ứng dụng khách MQTT trên MQTTBox.

Mở MQTTBox của bạn và nhấp vào nút màu xanh lam để thêm ứng dụng khách MQTT mới.

Định cấu hình CÀI ĐẶT KHÁCH HÀNG MQTT như sau:

  • Tên khách hàng MQTT - Chọn bất kỳ tên nào bạn thích
  • Giao thức - Chọn “mqtt / tcp”
  • Máy chủ lưu trữ - Nhập “mqtt_server” của bạn vào cột này, đảm bảo rằng nó giống với bản phác thảo của bạn. (Chúng tôi sử dụng “broker.mqtt-dashboard.com” ở đây)
  • Giữ các cài đặt khác làm mặc định
  • Nhấn vào đây để lưu các thay đổi của bạn.

Tiếp theo, bạn sẽ tự động vào trang mới, nếu tất cả cấu hình ở trên là đúng, “Chưa kết nối” sẽ chuyển thành “Đã kết nối”, tên máy khách MQTT và tên máy chủ của bạn sẽ được hiển thị ở đầu trang này.

Cài đặt chủ đề: Đảm bảo chủ đề xuất bản ứng dụng khách MQTT của bạn giống với chủ đề đăng ký bản phác thảo Arduino của bạn (inTopic here). Đảm bảo chủ đề đăng ký ứng dụng khách MQTT của bạn giống với chủ đề xuất bản bản phác thảo Arduino của bạn (outTopic here).

Bước 4: Kết quả chạy chương trình

Kết quả chạy chương trình
Kết quả chạy chương trình
Kết quả chạy chương trình
Kết quả chạy chương trình
Kết quả chạy chương trình
Kết quả chạy chương trình
Kết quả chạy chương trình
Kết quả chạy chương trình

Sau khi quá trình tải lên hoàn tất, nếu cài đặt mật khẩu và tên điểm phát sóng wifi là ok và nhà môi giới MQTT được kết nối, hãy mở Serial Monitor, bạn sẽ thấy thông báo xuất bản “hello world” trên màn hình nối tiếp.

Sau đó, mở ứng dụng MQTT và xuất bản tải trọng “1” cho chủ đề, NodeMCU này sẽ nhận được những thông báo này bằng cách đăng ký vào “inTopic” và đèn LED sẽ sáng.

Xuất bản tải trọng “0” cho chủ đề này, đèn LED NodeMCU sẽ bị tắt.

Đề xuất: