Trong Arduino, bạn soạn thảo đoạn code sau:
/* Comment this out to disable prints and save space */ #define BLYNK_PRINT Serial #include <ESP8266WiFi.h> #include <BlynkSimpleEsp8266.h> #define RELAY_PIN 14 // digital 0 #define LED_PIN 12 // digital 1 #define BUTTON_PIN 13 // digital 2 char auth[] = "cc5d24d8dbae4cef8d9e00fc724dadc4"; char ssid[] = "YourWifiName"; char pass[] = "YourWifiPassword"; boolean socketState = 0; void setup() { Serial.begin(9600); pinMode(BUTTON_PIN, INPUT); pinMode(RELAY_PIN, OUTPUT); pinMode(LED_PIN, OUTPUT); Blynk.begin(auth, ssid, pass, "blynk.getblocky.com", 80); } // Hàm này sẽ được gọi mỗi khi widget nút nhấn trên phần mềm Blynk được nhấn // và gửi lệnh bật tắt vào Virtual Pin V1 BLYNK_WRITE(V1) { int pinValue = param.asInt(); // Tùy vào lệnh nhận được ta thay đổi trạng thái bật tắt của ổ cắm if (pinValue == 1) socketState = true; else socketState = false; } void loop() { Blynk.run(); if (digitalRead(BUTTON_PIN) == HIGH) { // Nút được nhấn, đảo trạng thái của ổ cắm điện socketState = !socketState; // cập nhật lên phần mềm Blynk Blynk.virtualWrite(V1, socketState); delay(200); } // bật tắt relay tùy vào trạng thái của biến socketState if (socketState) { digitalWrite(RELAY_PIN, HIGH); digitalWrite(LED_PIN, HIGH); } else { digitalWrite(RELAY_PIN, LOW); digitalWrite(LED_PIN, LOW); } }
Trước khi upload, bạn cần sửa thông tin Wifi và auth key của tài khoản Blynk của bạn (trong phần Cài đặt Blynk app) ở các dòng sau:
char auth[] = "xxxxxxxxxxxxxxxxxxxxxxx"; char ssid[] = "YourWifiName"; char pass[] = "YourWifiPassword";
Upload code và mở cửa sổ Serial sẽ thấy báo:
[48] Connecting to Sandiego [2550] Connected to WiFi [2550] My IP: 192.168.1.115 [5001] Connecting to blynk.getblocky.com:80 [5585] Ready (ping: 238ms).
Trên mobile, tải và mở ứng dụng Blynk ra và tạo một nút nhấn trong project. Phần setting của widget, nhớ chọn Virtual Pin V1 trong phần Output, Mode đổi từ PUSH sang SWITCH.
Bạn thử nhấn nút trên Blynk app để bật tắt và sẽ thấy relay và led được bật tắt tương ứng. Đồng thời khi nhấn nút bấm nối với Node, trạng thái relay sẽ được bật tắt và cập nhật lên Blynk app.
Như vậy chúc mừng bạn đã hoàn thành ổ cắm thông minh trong nhà. Vì relay công suất nhỏ nên bạn tránh dùng bật tắt các thiết bị công suất lớn như bếp hay máy lạnh, tủ lạnh nhé.