Internet of ThingsOpen HabSmartHome
Bài 2.2: Điều khiển bật/tắt Led bằng openHAB Phần 2
Ở phần 1 chúng ta đã tìm hiểu hệ thống openHAB như nào và cách cài đặt. Sang phần 2 chúng ta sẽ cài đặt chương trình để xem ứng dụng này có gì đặc biệt. Chúng ta sẽ điều khiển, bật/tắt đèn LED bằng openHAB. Mời các bạn cùng theo dõi tiếp bài học dưới đây.
3. Code Arduino
Các bạn dùng theo mẫu copy/ paste vào Arduino để nạp code cho ESP8266
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
#incloude <ESP8266WiFi.h> #include <Wire.h> #include <PubSubClient.h> byte outPin1 = D0; #define wifi_ssid "hacker mu xanh" // tên Wifi mà ESP8266 sẽ kết nối #define wifi_password "120397tb" // mật khẩu wifi #define mqtt_server "192.168.50.106" // Địa chỉ IP của máy chủ chạy MQTT server WiFiClient espClient; PubSubClient client(espClient); void setup() { pinMode(outPin1,OUTPUT); Serial.begin(115200); setup_wifi(); client.setServer(mqtt_server, 1883); client.setCallback(callback); } void setup_wifi() { delay(10); // We start by connecting to a WiFi network Serial.println(); Serial.print("Connecting to "); Serial.println(wifi_ssid); WiFi.begin(wifi_ssid, wifi_password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.println("WiFi connected"); Serial.println("IP address: "); Serial.println(WiFi.localIP()); } void callback(char* topic, byte* payload, unsigned int length) { Serial.print("Message arrived ["); Serial.print(topic); Serial.print("] "); for (int i = 0; i < length; i++) { Serial.print((char)payload[i]); } /*--------------------------Control-------------------------------------*/ if(strcmp(topic, "Galileo/PhongKhach1/Den")==0) { if((char)payload[0] == 'O' && (char)payload[1]=='N') //on digitalWrite(outPin1, HIGH); else if((char)payload[0] == 'O' && (char)payload[1]=='F' && (char)payload[2]=='F') //off digitalWrite(outPin1, LOW); } } void reconnect() { while (!client.connected()) { if (client.connect("client_Galileo")) { client.subscribe("Galileo/PhongKhach1/Den"); }else { delay(5000); } } } void loop() { if (!client.connected()) { reconnect(); } client.loop(); } |
4. Chuẩn bị
+ ESP8266 nodeMCU

+ LED

– Dây nối loại đực-đực

– Bảng mạch
– Cáp nối (cáp sạc điện thoại)

5. Nguyên lý hoạt động
Khi thao tác được thực hiện trên OpenHAB,nhờ có giao thức MQTT + code đã được nạp vào ESP nhờ arduino => đén sẽ sáng/tắt.

6. Lắp đặt
– Các bạn lắp đặt theo ảnh

-Hình ảnh thực tế

– Video minh họa:
Ở bài viết tới, chúng ta sẽ cùng tìm hiểu tiếp cách điều khiển bật/ tắt led bằng giọng nói qua ứng dụng openHAB
Nếu có gì thắc mắc, các bạn có thể đặt các câu hỏi trực tiếp Fanpage và Group
————————
Chi tiết liên hệ:
📌Website: https://lophocvui.com/
☎Hotline: 0983811938
🖌Fanpage: https://www.facebook.com/lophocvui.comm/