Trung cấpESP32 DevKitC V4Relay220 VSerial
Nhà thông minh với relay 4 kênh
ESP32 đóng cắt đèn và quạt 220 V qua module relay 4 kênh. Gõ số 1 đến 4 vào Serial Monitor để bật tắt từng kênh.
Linh kiện
- ESP32 DevKitC V4
- Module relay 4 kênh
- Nguồn điện lưới 220VAC
- Bóng đèn 220VAC
- Quạt điện 220VAC
Thư viện
Không cần thư viện ngoài.
Thử ngay khi mô phỏng chạy
- Gõ 1 rồi Enter trong Serial Monitor: đèn sáng và nghe tiếng relay.
- Gõ 0 để tắt tất cả.
- Nối thêm thiết bị vào kênh 3 và 4.
main.cpp
// Module relay 4 kênh kích mức LOW: IN1…IN4 trên GPIO23, 22, 21, 19// Gõ 1…4 trong Serial Monitor để đảo từng kênh, 0 để tắt tất cả.const int RELAY_PINS[4] = {23, 22, 21, 19};bool relayOn[4] = {false, false, false, false}; void apply(int channel) { // Module kích mức LOW: LOW = đóng relay, HIGH = nhả. digitalWrite(RELAY_PINS[channel], relayOn[channel] ? LOW : HIGH); Serial.printf("Relay %d: %s\n", channel + 1, relayOn[channel] ? "ON" : "OFF");} void setup() { Serial.begin(115200); for (int i = 0; i < 4; i++) { pinMode(RELAY_PINS[i], OUTPUT); digitalWrite(RELAY_PINS[i], HIGH); // HIGH = relay nhả (module kích mức LOW) } Serial.println("San sang: go 1-4 de bat/tat, 0 de tat het");} void loop() { if (!Serial.available()) return; char c = Serial.read(); if (c >= '1' && c <= '4') { int channel = c - '1'; relayOn[channel] = !relayOn[channel]; apply(channel); } else if (c == '0') { for (int i = 0; i < 4; i++) { relayOn[i] = false; apply(i); } }}