본문 바로가기

컴퓨터

[아두이노 센서] KY-021 Mini reed magnet

KY-021은 주변에 자성이 감지되면 회로를 연결하거나 끊는 미니 마그네틱 리드 스위치(Mini Magnetic Reed Switch) 모듈입니다

1. [KY-021 모듈] 무엇을 하는 친구일까?

 

"자석이 다가오면 반응하는 보이지 않는 스위치"

  • 내부 구조: 작은 유리관 안에 두 개의 얇은 금속판(리드)이 살짝 떨어져 있습니다.
  • 작동 원리: 주변에 자석이 다가오면 자성에 의해 두 금속판이 서로 달라붙으면서 회로가 연결(ON)됩니다. 자석이 멀어지면 다시 떨어집니다(OFF).
  • 특징: 기계적인 마찰 없이 자력만으로 작동하기 때문에 수명이 길고, 아주 작은 크기라 좁은 틈새에 설치하기 좋습니다.

2. [활용사례] 우리 주변의 어디에 있을까?

"열렸는지 닫혔는지 감시하는 보안 요원"

  • 창문/현관문 보안 센서: 문이 열리면 자석이 멀어지는 것을 감지해 경보를 울리는 장치.
  • 노트북 화면: 노트북 덮개를 닫으면 화면이 자동으로 꺼지는 이유도 이 리드 스위치와 자석 덕분입니다.
  • 자전거 속도계: 바퀴에 달린 자석이 회전할 때마다 리드 스위치를 지나가며 회전수를 계산합니다.
  • 스마트 폰 케이스: 케이스 덮개를 열고 닫을 때 화면이 켜지고 꺼지는 기능.

3. [회로도] 어떻게 연결할까?

"자석의 유무를 디지털 신호로 읽기"

 

KY-021은 스위치 방식이므로 아두이노의 디지털 핀에 연결합니다.

모듈 핀
아두이노 연결
설명
S (Signal)
Digital 3번
자석 감지 상태(HIGH/LOW) 전송
중간 (VCC)
5V
센서 구동 전원
- (GND)
GND
접지선

4. [코드설명] 아두이노에게 명령 내리기

"자석이 가까이 오면 LED로 알리기"

int reedPin = 3;  // 센서 신호선을 3번에 연결
int ledPin = 13; // 상태 확인용 내장 LED

void setup() {
  pinMode(reedPin, INPUT); // 리드 스위치 상태 읽기
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  int val = digitalRead(reedPin); // 자석 감지 여부 읽기

  if (val == LOW) { // 자석이 다가와 스위치가 닫힌 경우 (모듈에 따라 다를 수 있음)
    digitalWrite(ledPin, HIGH);
    Serial.println("자석 감지! 문이 닫혔습니다.");
  } else {
    digitalWrite(ledPin, LOW);
    Serial.println("자석 없음! 문이 열렸습니다.");
  }
  delay(100);
}
 

5. [미션] 도전! 직접 만들어보기

"나만의 비밀 금고 알람 만들기"

  • 침입자 경보: 보물상자 뚜껑에는 자석을, 본체에는 KY-021을 붙여보세요. 뚜껑이 열리면 KY-006 부저가 울리게 만들어 볼 수 있을까요?
  • 거리 테스트: 자석이 어느 정도 거리까지 접근해야 스위치가 작동하는지 '감지 거리'를 측정해 보세요. 자석의 세기에 따라 결과가 어떻게 달라지는지 확인해 보세요.
  • 카운터 만들기: 자석을 센서 앞에서 왔다 갔다 할 때마다 숫자가 올라가는 '운동 횟수 측정기'를 만들어 보세요.

리드 스위치는 유리관으로 되어 있어 강하게 누르거나 떨어뜨리면 깨질 수 있으니 주의해야 합니다. 또한, 자석의 방향(N극, S극)에 따라 감도가 미세하게 다를 수 있으니 여러 방향으로 테스트해 보는 재미가 있을 거예요!

#아두이노 #KY021 #리드스위치 #자석센서 #비접촉스위치 #보안시스템DIY #ReedSwitch

반응형