홀 센서 는 1869 년 Edwin Hall이 제안한 홀 효과 원리에 따라 작동합니다. 제안 된 성명 은 다음과 같습니다. 그리고 전류에 수직 인인가 된 자기장에.”
그렇다면 더 나은 방식으로 이해하기 위해 가장 간단한 형태의 진술은 무엇일까요? 이 튜토리얼에서는 실제 예제와 함께 단계별로 설명합니다. 여기에서 홀 센서는 Atmega16 마이크로 컨트롤러 와 인터페이스되며 하나의 LED는 자석이 홀 센서 근처에있을 때 효과를 표시하는 데 사용됩니다.
홀 효과 란 무엇입니까?
홀 효과는 자기장의 이동 전하와 관련이 있습니다. 실용적인 방법으로 이해하려면 아래 그림 (a)와 같이 도체에 배터리를 연결하십시오. 전류 (i)는 배터리의 양극에서 음극으로 도체를 통해 흐르기 시작합니다.
전자의 흐름의 (e -) 배터리의 양극 단자에 도선을 통해 배터리의 마이너스 단자로부터 전류 (Ie)의 반대 방향이 될 것이다. 이 순간 아래 그림 (b)와 같이 도체 사이의 전압을 측정하면 전압이 0이됩니다. 즉 전위차가 0이됩니다.
이제 자석을 가져와 아래 이미지 (c)와 같이 도체 사이에 자기장을 만듭니다.
이 조건에서 도체에 걸쳐 전압이 측정되면 약간의 전압이 발생합니다. 이 발전된 전압을 "홀 전압 " 이라고하며이 현상을 " 홀 효과 "라고합니다.
우리는 속도계, 도어 알람, 가상 현실 등과 같은 흥미로운 애플리케이션을 구축하기 위해 많은 마이크로 컨트롤러와 함께 홀 센서를 사용했으며, 모든 링크는 아래에서 찾을 수 있습니다.
- 홀 센서를 이용한 자기 도어 알람 회로
- Arduino를 사용한 DIY 속도계 및 Android 앱 처리
- Arduino 및 프로세싱을 사용하는 가상 현실
- PIC 마이크로 컨트롤러를 사용하는 디지털 속도계 및 주행 거리계 회로
필요한 구성 요소
- A3144 홀 센서 IC
- Atmega16 마이크로 컨트롤러 IC
- 16Mhz 수정 발진기
- 2 개의 100nF 커패시터
- 2 개의 22pF 커패시터
- 누름 단추
- 점퍼 와이어
- 브레드 보드
- USBASP v2.0
- Led (모든 색상)
회로도
홀 센서 용 Atmega16 프로그래밍
여기서 Atmega16은 USBASP 및 Atmel Studio7.0을 사용하여 프로그래밍됩니다. USBASP를 사용하여 Atmega16을 프로그래밍하는 방법을 모르는 경우 링크를 방문하십시오. 전체 프로그램은 프로젝트가 끝날 때 제공되며 이전 튜토리얼에서 설명한대로 JTAG 프로그래머와 Atmel Studio 7.0을 사용하여 Atmega16에 프로그램을 업로드하면됩니다.
Atmega16 프로그래밍은 쉬울 것이며 두 개의 PORT 핀만 사용됩니다. 홀 센서에서 판독 값을 가져 오는 데 하나의 PORT 핀이 사용됩니다. 다른 PORT 핀은 하나의 LED를 연결하는 데 사용됩니다. 첫째, 프로그램에 필요한 모든 라이브러리를 포함합니다.
홀 센서 판독을위한 입력 핀을 정의합니다.
#define hallIn PA0
여기서 홀 센서는 Atmega16의 PORTA0에 연결되어 있으며 상태를 읽기 위해 초기화됩니다.
DDRA = 0xFE; PINA = 0x01;
자석이 센서 근처에 있으면 LED를 켜거나 LED를 끕니다. 감지는 PORT 핀의 상태 변경을 기반으로합니다.
if (bit_is_clear (PINA, hallIn)) { PORTA = 0b00000010; } else { PORTA = 0b00000000; }
홀 센서의 응용
홀 센서는 자기장 강도를 측정하거나 자석의 극을 감지해야하는 모든 곳에서 널리 사용됩니다. 이 외에도 일반적으로 찾을 수있는 많은 응용 프로그램이 있습니다. 일부 응용 프로그램은 다음과 같습니다.
- 휴대폰의 근접 센서로
- 자동차의 기어 변속 메커니즘
- 회전식 홀 효과 센서
- 파이프 및 튜브와 같은 재료 검사
- 회전 속도 감지
홀 센서에 대해 자세히 알아 보려면 홀 센서를 기반으로 한 이전 자습서를 살펴보십시오.