새로운 보조기기나 개조/제작 방법 및 기술, 뉴스 등을 전반적인 정보를 자유롭게 공유하는 게시판입니다.
※ 플랫폼의 성격에 어긋나거나 문제가 있는 게시물은 삭제될 수 있습니다.
|
ESP8266을 활용한 Wifi 원격 스위치 제작
2025.11.26
|
경기도재활공학센터
|
18
|
|||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| ESP8266을 활용한 Wifi 원격 스위치 제작 | |||||||||||
| 첨부파일 | |||||||||||
이 튜토리얼에서는, 많이 알려진 ESP8266을 사용해 거의 처음부터 직접 제작한 Wi-Fi 스위치를 만드는 과정을 보여드리려고 합니다.
제가 만들고자 했던 아이디어는 이렇습니다.
부품들은 브레드보드에 올리는 대신, 가능한 한 크기를 작게 만들고 고전력을 안전하게 처리하기 위해 PCB에 직접 납땜해서 구성했습니다.
스위치와 스마트폰 사이의 인터페이스는 Blynk 앱으로 관리합니다.
![]()
완성된 모습은 위 사진과 같습니다.
이번 프로젝트는 이런 형태로는 제가 처음 시도해본 것이라, 만들고 나서 보니 몇 가지 실수가 있었다는 것을 뒤늦게 깨달았습니다. 단, PCB 버전 2는 아직 직접 제작해보지 않았기 때문에 실제로 잘 작동하는지는 확신할 수 없습니다.
마지막으로 말씀드리자면, 저는 이 분야의 초보자라 전문 용어를 완벽히 사용하지 못할 수도 있습니다.
Step 1: 회로도 및 구성요소(Scheme and Components)
이 프로젝트를 시작하기 전에, 저는 아래 두 가지 튜토리얼을 참고했습니다.
● WiFi / Internet Controlled Relays using ESP8266 : https://www.instructables.com/WiFi-Internet-Controlled-Relays-using-ESP8266-Quic/ (이 튜토리얼은 별도의 전원공급장치와 어댑터를 사용해 스위치에 전원을 공급합니다.)
● ESP8266 WiFi relay switch (Arduino IDE) : http://iot-playground.com/blog/2-uncategorised/40-esp8266-wifi-relay-switch-arduino-ide (제가 사용한 Blynk 앱 대신, EasyIoT 웹 인터페이스를 사용합니다.)
저는 가격이 저렴하고 크기가 아주 작은 ESP8266-01을 사용하기로 결정했습니다. 디지털 출력은 2개가 있지만, 여기서는 그중 GPIO2 하나만 사용합니다.
![]()
릴레이는 싱글 릴레이 보드(1채널)를 사용했습니다. ![]()
ESP8266은 3.3V로 동작하고, 릴레이는 5V 입력이 필요합니다. 5V 전원을 얻기 위해 저는 HLK-PM01 AC-DC 모듈을 사용했습니다. 이 모듈은 100~240V AC를 받아 5V DC로 변환합니다. ![]()
과열, 고전압, 과전류로부터 보호하기 위해 다음 부품을 추가했습니다.
- 250VAC 바리스터(varistance) - 315mA 퓨즈 - LD1117V33 전압 레귤레이터 (5V DC를 3.3V DC로 변환하기 위한 모듈)
그 외에 사용한 부품들은 다음과 같습니다.
- 전원 케이블 연결용 스크루 터미널 - NPN 바이폴라 트랜지스터 (PN2222) - 릴레이 연결용 암/수 점퍼 와이어 (3인치, 20개) - 1kΩ, 100kΩ 저항 - 10µF 전해 캐패시터
회로도와 보드는 Eagle 무료 버전으로 제작했습니다. 보드는 2층(2-layer)으로 구성했지만, 실제로는 1층으로도 충분했을 것 같습니다.
🔧 개선점(Improvement)개선 1) ESP8266을 헤더에 꽂아 쓰면 보드 위에서 높이가 꽤 높아집니다. 덕분에 캐패시터 2개를 90°로 돌려서 ESP8266 아래로 눕혀 설치했다면 공간을 좀 더 확보할 수 있었을 것입니다. 개선 2) 315mA 퓨즈는 보드 도면에서는 사각형 타입으로 그렸는데, 실제로는 원형 타입만 구할 수 있었습니다. 다행히 핀 간격은 동일해 문제는 없습니다. 개선 3) 사용했던 3.5mm 스크루 터미널은 전원 케이블을 넣기엔 너무 작았습니다. 특히 릴레이를 병렬로 연결하기 위해 한 구멍에 두 개의 전선을 넣어야 했기 때문에 더 불편했습니다.
Step 2: 조립(Assembling)
1. 서멀퓨즈를 가장 먼저 보드에 올립니다. 3. 보드를 뒤집어서 컵에 담긴 물 위에 올립니다. 서멀퓨즈의 몸체는 반드시 물에 잠겨 있어야 합니다. 그래야 열이 천천히 전달되어 퓨즈가 망가지지 않습니다. 4. 하지만 보드 자체가 물에 닿으면 납땜이 불가능하므로, 보드는 물에 닿지 않게, 퓨즈만 담기도록 해야 합니다. 과열되지 않도록 주의하면서 퓨즈를 납땜합니다. 5. 너무 뜨겁게, 혹은 너무 오래 가열하지 않도록 신경 씁니다. 이렇게 하면 서멀퓨즈 납땜이 훨씬 안정적으로 이루어집니다. 나머지 부품들에서는 특별한 난관이 없었습니다.
ESP8266 프로그래밍ESP8266은 Arduino IDE를 사용해 프로그래밍했습니다 (프로그램 내용은 다음 단계에서 설명합니다).
사용한 USB–TTL 변환기는 FT232RL USB to TTL Converter Module입니다. 펌웨어를 업로드하기 전에, GPIO0을 GND에 연결한 상태에서 ESP를 리셋해야 합니다.
보드 조립ESP8266을 헤더에 꽂고 릴레이는 점퍼 케이블에 연결하며 전원선은 앞에서 보여준 회로도와 사진대로 연결합니다. 모든 배선이 끝나면 전체 회로를 플라스틱 케이스 안에 넣고, 양쪽에 구멍을 내어 수컷 플러그와 암 플러그를 각각 연결했습니다. 이렇게 하면 벽 콘센트–스위치–제어할 장치가 하나의 완성된 모듈로 구성됩니다.
Step 3: Blynk 앱 프로그래밍 (Blynk App and Programming)
Blynk 앱을 사용하면 스마트폰에서 여러 스위치를 만들어 각각의 장치를 관리할 수 있습니다.
버튼의 설정은 다음과 같이 구성했습니다.
- PIN: 가상 핀(V0) - LABEL ON 과 LABEL OFF - 색상 설정
이제 프로그램으로 넘어갑니다. - Wi-Fi 네트워크 이름 1 및 비밀번호 - Wi-Fi 네트워크 이름 2 및 비밀번호 (ESP8266이 1번에 연결되지 않을 경우 자동으로 2번 네트워크를 시도합니다.) - Blynk 토큰(Blynk Token)
이 값들을 코드에 입력해 두고 업로드하면, ESP8266이 집의 Wi-Fi에 연결된 뒤 Blynk 서버와 통신하여 스마트폰 앱의 버튼과 릴레이 ON/OFF 동작이 연동됩니다.
Step 4: 개선점(Improvements)
이 프로젝트에는 여러 가지 개선점을 적용할 수 있으며, 이 내용들은 GitHub 저장소의 버전 2(Version 2) 에 반영해 두었습니다.
- 사각형 TE5 규격 퓨즈를 원형 TR5 퓨즈로 교체
다만, 저는 아직 버전 2를 실제로 제작해보지 않았고, 버전 1이 잘 작동하기 때문에 당분간 인쇄할 계획도 없습니다.
⚠️ 주의 사항이 프로젝트 또는 프로젝트의 일부를 직접 제작하고자 한다면, 모든 작업은 본인의 책임 하에 진행해야 합니다.
추가 제안이나 피드백이 있으시다면 언제든지 알려주세요.
출처: AUTODESK Instructables (https://www.instructables.com/ESP8266-Wifi-Switch/) |
|||||||||||
댓글 0개
돋보기 기능을 위해 캡처 중입니다.....