3개 방에 ESP-01s릴레이 스위치 모듈을 설치합니다. 기존에 수동스위치를 그대로 두고 병렬로 연결 합니다. 사용중인 수동 스위치는 항상 꺼진 상태로 두어야 합니다. 켜진 상태이면 릴레이스위치는 동작은 하지만 반응은 수동 스위치에 적용을 받습니다.
폰 화면 입니다. 큰방, 작은방, 작업실에 설치하여 사용중에 있습니다. 화살표는 부루투스로 커텐 제어 할 계획입니다. 개발 중에 있습니다.
전등 아두이노 코드업로드 합니다. 반드시 같은 공유기에 접속 되어 있어야 합니다. 그리고 주어지는 ip를 기억하여, 인벤터 스케치 코딩 할 때 사용해야 합니다.
예를 들면 192.168,0,X유형입니다.
큰방과 작은 방은 가까위치이므로 전원 5v 같이 사용했습니다.
사용하지 않은 폰 충전 어답터가 있으면 활용가능 합니다. 끈 부분을 피복을 벗기여 빨간, 검은 선을 이용합니다.
작업실은 멀리 있어 독립적으로 사용합니다.
#include <ESP8266WiFi.h>
const char *ssid = "skyiptime7209";
const char *password = "skylife209";
int ledPin = 0; // GPIO0 of ESP8266
WiFiServer server(80);
void setup() {
Serial.begin(115200);
delay(10);
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);
Serial.println();
Serial.println();
Serial.print("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi c onnected");
// Start the server
server.begin();
Serial.println("Server started");
//Print the IP address
Serial.print("Use this URL to connect: ");
Serial.print("http://");
Serial.print(WiFi.localIP());
Serial.println("/");
}
void loop() {
//Check if a client has connected
WiFiClient client = server.available();
if (!client) {
return;
}
//Wait until the client sends some data
Serial.println("new client");
while (!client.available()) {
delay(1);
}
//Read the first line of the request
String request = client.readStringUntil('\r');
Serial.println(request);
client.flush();
//Match the request
int value = LOW;
if (request.indexOf("/LED=ON") != -1) {
digitalWrite(ledPin, HIGH);
value = HIGH;
}
if (request.indexOf("/LED=OFF") != -1) {
digitalWrite(ledPin, LOW);
value = LOW;
}
//Return the response
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println(""); // do not forget this one
client.println("<!DOCTYPE HTML>");
client.println("<html>");
client.print("Led pin is now: ");
if (value == HIGH) {
client.print("On");
}
else {
client.print("Off");
}
client.println("<br><br>");
client.println("Click <a href=\"/LED=ON\">here</a> turn the LED on pin 2 ON<br>");
client.println("Click <a href=\"/LED=OFF\">here</a> turn the LED on pin 2 OFF<br>");
client.println("</html>");
delay(1);
Serial.println("Client disonnected");
Serial.println("");
}
큰 방 스위치 코딩입니다.
작은 방 스케치 코드
작업실 스케치 코딩
'IOT(Arduino+Inventor)' 카테고리의 다른 글
우리주위에 동작되고 있는 WiFi 목록 보기 (0) | 2025.01.16 |
---|---|
Room WiFi Switch (0) | 2025.01.09 |
Esp-01, ThingSpeak,Control Of LED (0) | 2023.05.02 |
온도 센서 ds18b20 (0) | 2023.04.12 |
esp-01S Relay[5] (0) | 2023.04.12 |