IoT 기기의 지속적인 와이파이 연결 보장하기 – 자동 재부팅 장치
부품 및 소모품
| 아두이노 MKR1000 (내장 와이파이) |
× |
1 |
| 피에조 부저 |
× |
1 |
| 송레 릴레이 (Songle Relay) |
× |
1 |
프로젝트 소개
와이파이 공유기에 접속 안 될 때가 종종 있습니다. 와이파이 의존 IoT 기기가 늘수록 골치 아픈 문제입니다. 대부분 공유기 전원 재부팅(뽑았다 꽂기)으로 해결됩니다. 매번 직접 하기 귀찮으니 자동으로 감시하고 재부팅하는 장치를 만들었습니다.
동작 원리: 와이파이 연결이 끊기면 부저로 경고 → 릴레이로 공유기 전원 차단(설정 시간) → 전원 재투입 → 부팅 대기 → 와이파이 재확인. 유한 상태 머신(Finite State Machine) 패턴으로 설계했습니다.
MKR1000의 내장 와이파이로 google.com 접속 시도해 연결 상태 판단. 성공 시 상태에서 주기적 검사, 실패 시 → 부저 울림 → → 릴레이로 전원 차단 → → 전원 투입 후 부팅 대기 → 상태로 전이.
제작 단계
1단계: 스피커(부저) 연결
- 아두이노 핀 3 → 부저 빨간 선
- 아두이노 GND → 부저 검은 선
2단계: 릴레이 연결
- 전원 코드 한 선을 잘라 릴레이 공통 단자(COM)와 상시 닫힘 단자(NC)에 연결. 선끼리 닿지 않게 주의.
- 릴레이를 회로도대로 아두이노에 연결. 릴레이 하단에 고전압(메인 전원)이 노출되니 절연 표면/케이스 필수. 프로젝트 완성 전엔 메인 전원 연결 금지.
- 릴레이 IN1 → 아두이노 디지털 핀 0
3단계: 스케치 업로드
코드: GitHub 저장소
코드 내 SSID와 비밀번호를 본인 공유기 정보로 수정 필수.
Setup에서 핀 설정 및 와이파이 연결 후 Checking 상태로 진입. Loop에서 현재 상태에 따른 처리 메서드 호출.
코드
GitHub에서 다운로드: KeepTheWiFiOn (SSID/비밀번호 수정 후 업로드)
회로도
회로도는 아두이노 마이크로 Rev3 기준이나, MKR1000으로 대체하면 됩니다.