본문 바로가기

컴퓨터

[아두이노 센서] 비접촉 스위치! KY-003 홀 자기 센서 사용법

홀(Hall) 자기 센서는 자석의 자기장을 전기 신호(전압/전류)로 변환하는 비접촉식 센서다.

자석이 얼마나 가까이 있는지를 전자적으로 감지한다.

 

센서 설명

홀 효과는 전류가 흐르는 도체나 반도체에 수직 방향으로 자기장을 가할 때, 전류와 자기장 모두에 수직인 방향으로 전위차(전압)가 발생하는 현상이다. 1879년 미국 물리학자 에드윈 홀(Edwin Hall)이 발견했다.

 

도선에 전류가 흐를 때 자석을 가까이 대면 전하 입자가 한쪽으로 쏠린다. 이로 인해 양쪽에 전압 차이가 발생하고, 이 전압을 증폭하여 자석의 존재를 감지하는 것이 홀 센서다.

강물이 흐를 때 바람이 불면 물이 한쪽으로 쏠리듯, 전류도 자기장에 의해 한쪽으로 밀린다. 전자회로는 이 전압 차이를 측정하여 자석의 유무와 극성을 판단한다.

홀 효과 요약

원인: 전류가 흐르는 곳에 자기장을 가하면

과정: 전자가 한쪽으로 밀리면서

결과: 전압이 발생한다

결론: 아두이노가 이 전압을 읽어 자석을 감지한다

 

교육적 가치

  • 보이지 않는 힘의 시각화: 자기장을 디지털 데이터로 변환하는 과정을 체험한다
  • 극성 학습: 자석의 S극과 N극에 대한 반응을 테스트하여 자석의 성질을 배운다

실제 활용 사례

  • 자전거 속도계: 바퀴에 자석을 부착하고 프레임에 홀 센서를 달아 회전당 신호를 받아 속도를 계산한다
  • 도어 센서: 창문이나 문의 개폐 상태를 확인하는 보안 장치에 사용한다
  • 모터 회전수(RPM) 측정: 회전축에 자석을 부착하여 회전 속도를 제어한다 (BLDC 모터 내부에 필수)
 
 

Code-Example:

자석이 가까이 오면 아두이노 보드의 13번 LED가 켜지는 코드

const int hallPin = 3;     // 홀 센서 신호 핀
const int ledPin = 13;    // 내장 LED

void setup() {
  pinMode(hallPin, INPUT); // 센서 입력 설정
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  int state = digitalRead(hallPin); // 자석 감지 읽기
  
  // 자석이 감지되면 보통 LOW 신호가 들어옵니다 (모듈마다 다를 수 있음)
  if (state == LOW) {
    digitalWrite(ledPin, HIGH);
    Serial.println("자석 감지됨!");
  } else {
    digitalWrite(ledPin, LOW);
  }
}

 

#아두이노 #KY003 #홀센서 #자석센서 #자기장센서 #비접촉스위치 #HallSensor #아두이노기초 #자전거속도계원리 #스마트홈DIY

반응형