QMC5883L 3축 지자기 센서
일반
QMC5883L은 3축 지자기 센서로 지구 자기장을 측정하여 전자 나침반이나 방향 감지에 사용할 수 있습니다. I2C 인터페이스를 사용합니다.

사양
- 동작 전압: 2.0V ~ 3.6V
- 통신 인터페이스: I2C (2-wire, 최대 400kHz)
- 출력 데이터: 16비트 디지털 (X, Y, Z 축)
- 측정 범위 (감도 설정): ±2, ±8 Gauss (사용자 설정 가능)
- 해상도:
- ±2 Gauss일 때 약 0.061 μT/LSB (≈ 0.61 mG/LSB)
- ±8 Gauss일 때 약 0.24 μT/LSB (≈ 2.44 mG/LSB)
- 샘플링 속도 (ODR): 최대 200Hz
- 온도 동작 범위: -40°C ~ +85°C
- 전류 소비: 평균 약 75 μA (측정 모드 기준, 매우 저전력)
- 정밀도 (방위각 오차): ±1–2° (캘리브레이션 상태 및 환경에 따라 다름)
사용 가능한 GPIO
- 라즈베리파이 0~4
- 라즈베리파이 5
- 비글본 블랙/그린
- 젯슨 나노
- FT232H, FT2232H, FT4232H
- MCP2221
명령
[READ_MAG]
3축 지자기 값을 읽어옵니다. 단위는 마이크로 테슬라 (uT) 입니다.
항목 | 타입 | 설명 |
---|---|---|
지자기 X축 (uT) | READ | X축 지자기 값입니다. |
지자기 Y축 (uT) | READ | Y축 지자기 값입니다. |
지자기 Z축 (uT) | READ | Z축 지자기 값입니다. |
[GET_HEADING]
방위각을 계산합니다.
항목 | 타입 | 설명 |
---|---|---|
방위각 (º) | READ | 계산한 방위각 입니다. |
QMC5883L 센서는 지구 자기장을 이용해 방향(방위각)을 측정합니다. 하지만 이때의 기준은 진북 (True North)이 아니라 지구 자기장이 가리키는 자북(Magnetic North)입니다.
지구 자기장은 지역마다 방향이 조금씩 다르기 때문에, 자북과 진북 사이에는 각도 차이가 존재합니다. 이 각도 차이를 자기편각(Magnetic Declination)이라고 합니다.
따라서 진북을 기준으로 정확한 방향을 알고 싶다면, 자북 기준 방위각에 자기편각을 더하거나 빼서 보정해 주어야 합니다.
자기편각은 계속 변화되며, 현재 위치, 시간의 자기편각은 여기를 참고합니다.
지구 자기장은 지역마다 방향이 조금씩 다르기 때문에, 자북과 진북 사이에는 각도 차이가 존재합니다. 이 각도 차이를 자기편각(Magnetic Declination)이라고 합니다.
따라서 진북을 기준으로 정확한 방향을 알고 싶다면, 자북 기준 방위각에 자기편각을 더하거나 빼서 보정해 주어야 합니다.
자기편각은 계속 변화되며, 현재 위치, 시간의 자기편각은 여기를 참고합니다.
예제
목표
센서에서 측정한 3축 지자기값과 방위각을 대시보드 위젯으로 표시합니다.
부품
부품 | 갯수 |
---|---|
라즈베리파이 4 * | 1 |
QMC5883L | 1 |
* 다른 하드웨어를 사용할 수도 있습니다. 사용 가능한 GPIO를 참고하세요.
연결
아래의 핀들을 가로 방향으로 서로 연결합니다.
QMC5883L | GPIO |
---|---|
VCC | 3.3V |
GND | GND |
SCL | 3 (I2C1 SCL) |
SDA | 2 (I2C1 SDA) |
