아두이노 우노, 릴레이, 안드로이드 앱으로 전구 원격 제어하기
부품 및 소모품
| 아두이노 우노 (Arduino UNO) |
×1 |
| 릴레이 모듈 (Relay Module) |
×1 |
| 암-수 점퍼 와이어 (Male/Female Jumper Wires) |
×1 |
| 안드로이드 기기 |
×1 |
앱 및 온라인 서비스
프로젝트 소개
설명
이 프로젝트는 전구(또는 모든 기기)를 릴레이 모듈을 통해 아두이노 우노에 연결하는 방법과, 안드로이드 기기와 아두이노를 연결하여 기기를 원격으로 켜고 끄는 방법을 다룹니다.
릴레이란?
릴레이를 사용하면 고전압 전자기기를 제어할 수 있습니다. 릴레이는 전자석으로 작동하는 스위치입니다. 마이크로컨트롤러의 저전압(예: 5V)으로 전자석을 활성화하면, 접점이 당겨져 고전압 회로를 연결하거나 차단합니다.
HL-52S 릴레이 모듈
이 프로젝트에서는 2채널 HL-52S 릴레이 모듈을 사용합니다. 2개의 릴레이가 있으며 정격은 10A @ 250V/125V AC, 10A @ 30V/28V DC입니다. 고전압 출력 커넥터는 3핀으로, 중간이 공통(Common) 핀이고 나머지 두 핀은 각각 상시 개방(Normally Open)과 상시 폐쇄(Normally Closed) 연결용입니다.
모듈 반대편에는 두 세트의 핀이 있습니다. 첫 번째 세트는 6핀으로 그라운드, VCC(전원), 입력 핀 4개(In1, In2, In3, In4)가 있습니다. 두 번째 세트는 3핀에 JDVcc와 Vcc 사이에 점퍼가 있습니다. 이 구성에서는 릴레이의 전자석이 아두이노 보드에서 직접 전원을 공급받으며, 릴레이에 문제가 생기면 마이크로컨트롤러가 손상될 수 있습니다.
실행 단계
1단계: 아두이노를 USB로 컴퓨터에 연결합니다.
2단계: 아두이노 그라운드 핀 ↔ 릴레이 모듈 그라운드 핀, 릴레이 VCC ↔ 아두이노 5V, 아두이노 핀 7 ↔ 릴레이 In1을 연결합니다.
3단계: 아래 코드를 아두이노에 업로드하고 전구 회로의 전원을 켭니다.
안드로이드 폰에서 수행할 단계
1단계: 구글 플레이 스토어에서 Blynk 앱을 설치하고 "Create New" 버튼을 누릅니다.
2단계: 프로젝트 이름을 정하고 IoT 보드(아두이노)를 선택한 뒤 "Email"을 누르고 "Create"를 누릅니다. Blynk에서 이메일로 전송된 Auth Token을 코드의 해당 부분에 입력하세요.
3단계: 화면에 버튼을 추가하고 길게 눌러 설정합니다.
4단계: 버튼 이름을 Bulb로, 색상 변경, 출력을 D7(디지털 핀 7)로 설정합니다.
5단계: 화면 왼쪽 상단의 재생 버튼을 누릅니다.
이제 안드로이드 폰의 전구 버튼을 눌러 전기 전구를 제어할 수 있습니다.
코드
아두이노
/*
* 1. 선택 사항이지만 권장. 추가 USB-시리얼 어댑터 연결하여 출력 확인.
* 2. 인증 토큰 수정 후 스케치 업로드.
* 3. 트래픽을 서버로 리다이렉트하는 스크립트 실행 (라이브러리 루트의 'scripts' 폴더 내, 예: 'blynk-library/scripts'):
* Windows:
* 1. cmd.exe 열기
* 2. 경로 입력: cd C:\blynk-library\scripts
* 3. 실행 (COM4는 아두이노 포트): blynk-ser.bat -c COM4
* 4. Enter 3번 누르기
* 4. 블링크 시작! :)
**************************************************************/
#include
SoftwareSerial DebugSerial(2, 3); // RX, TX
#define BLYNK_PRINT DebugSerial
#include
// Blynk 앱에서 Auth Token 받기
// 프로젝트 설정(톱니바퀴 아이콘)으로 이동
char auth[] = "Your Auth Token";
void setup() {
// 디버그 콘솔
DebugSerial.begin(9600);
// Blynk는 시리얼을 통해 작동
Serial.begin(9600);
Blynk.begin(auth, Serial);
}
void loop() {
Blynk.run();
}