Điều khiển thiết bị qua Cayenne Mydevices và NodeMCU ESP8266
Trong nội dung bài viết hôm nay mình sẽ chia sẽ cho các bạn làm thế nào để có thể điều khiển thiết bị trên Cayenne bằng cách sử dụng NodeMCU ESP8266.
Tạo tài khoản Cayenne ESP8266
Đầu tiên để có thể điều khiển được thiết bị trên Cayenne ta cần tạo một tài khoản. Các bạn truy cập vào website cayenne.mydevices.com để khởi tạo nhé.
Sau khi đã hoàn tất quá trình đăng ký các bạn Click vào “Create App” và chọn “Bring Your Own Thing” để tạo một dự án mới.
Tiếp theo phía bên tay trái các bạn để mặc định chúng ta chỉ cần quan tâm phía bên tay phải, các bạn cần lưu ý các thông số sau:
- MQTT USERNAME
- MQTT PASSWORD
- CLIENT ID
Các bạn lưu các thông số này lại để đưa vào chương trình.
Ở mục NAME YOUR DEVICE các bạn đặt tên cho dự án.
Bây giờ hãy mở Arduino IDE và cài đặt thư viện Cayenne MQTT và tiến hành upload chương trình nhé.
Code
#include <CayenneMQTTESP8266.h> #define CAYENNE_DEBUG #define CAYENNE_PRINT Serial char ssid[] = "Nha Tro 4"; char password[]="nguyennam"; char username[] = "3f7e1830-3cf2-11e7-b3ab-4b1cd153a1be"; char mqtt_password[] = "f3002665d9cc3402638ee9d3e5227f6ad9218c96"; char cliend_id[] = "9bdf5f00-ad5a-11e9-be3b-372b0d2759ae"; void setup() { Cayenne.begin(username, mqtt_password, cliend_id, ssid, password); pinMode(2, OUTPUT); digitalWrite(2, HIGH); } void loop() { Cayenne.loop(); } CAYENNE_IN(0) { digitalWrite(2, !getValue.asInt()); }
Đây là một đoạn code sử dụng thư viện CayenneMQTTESP8266 để kết nối với cổng MQTT của dịch vụ lưu trữ Cayenne. Nó cho phép gửi và nhận dữ liệu từ các cảm biến, thiết bị và tác động lên các thiết bị điện tử khác.
char ssid[] = "Nha Tro 4"; char password[]="nguyennam";
Trong đoạn mã này, đầu tiên ta khai báo các biến như tên đăng nhập, mật khẩu MQTT, tên khách hàng và mạng WiFi được sử dụng. Sau đó, ta bắt đầu kết nối với cổng MQTT của Cayenne bằng lệnh “Cayenne.begin” và cấu hình chân số 2 của bo mạch để làm đầu ra.
char username[] = "3f7e1830-3cf2-11e7-b3ab-4b1cd153a1be"; char mqtt_password[] = "f3002665d9cc3402638ee9d3e5227f6ad9218c96"; char cliend_id[] = "9bdf5f00-ad5a-11e9-be3b-372b0d2759ae";
Cấu hình các thông số username, password, cliend_id cho Cayenne MQTT.
Trong hàm “loop”, ta sử dụng “Cayenne.loop” để giữ kết nối đến cổng MQTT. Để xử lý dữ liệu đến, ta sử dụng macro “CAYENNE_IN” để xác định mã của kênh. Ở đây, khi nhận được dữ liệu trên kênh 0, ta thay đổi trạng thái đầu ra của chân số 2 bằng cách sử dụng hàm “digitalWrite”. Nếu dữ liệu là 0, ta sẽ đặt đầu ra trên chân số 2 là HIGH, ngược lại, nếu dữ liệu khác 0 thì đầu ra trên chân số 2 sẽ là LOW.
Thư viện
Download thư viện “<CayenneMQTTESP8266.h>”: Tải ngay
Thiết lập bảng điều khiển Cayenne
Sau khi upload chương trình lên ta quay lại mở bảng điều khiển Cayenne.
Tiếp theo ta chọn “Add new – Device/Widget – Custom Widgets – Button(Controller Widget).
Tiếp theo nhấn vào Button thiết lập nút điều khiển.
- Name: Đặt tên “LED”.
- Data: Chọn là”Digital Actuator”.
- Unit: Chọn là “Digital(0/1)”.
- Channel: Đặt là O.
- Choose icon: Chọn Blot.
Tiếp theo nhấn Add Widget để hoàn tất việc cài đặt.
Điều khiển Led trên App Cayenne
Đầu tiên ta lên CH Play gõ Cayenne tải về máy nhé hoặc truy cập vào đường link để tải về nhé.
Bài viết liên quan
- Hướng dẫn chi tiết điều khiển thiết bị Sonoff thông qua Google Assistant Tiếng Việt 2019
- Điều khiển thiết bị bằng giọng nói thông qua Google Assitant sử dụng ESP8266, Adafruit, IFTTT
- Điều khiển thiết bị bằng giọng nói thông qua Google Assistant Tiếng Viết sử dụng ESP8266, Blynk và IFTTT
- Điều khiển LED bằng WebServer sử dụng NodeMCU ESP8266
- Điều khiển thiết bị bằng MIT App Inventor sử dụng NodeMCU ESP8266