Arduino Uno 로 HMC5883L 지자기 센서를 이용해 X, Y, Z 축 위치값을 출력해 보는 프로젝트 입니다
HMC5883L은 HMC5883L 디지털 나침반 칩을 사용한 3축 지자기 센서 모듈(3-Axis Digital Compass Module) 입니다
전류가 와이어를 통과 할때 자기장이 발생된는 원리를 바탕으로 유용한 정보를 도출하여 계산하는데 도움이 됩니다
AVR 또는 아두이노(Arduino)로 다양한 프로젝트에 적용이 가능하며, MPU-6050 센서와 함께 사용하면 자세제어가 가능하여
퀴드콥터등에 유용하게 사용 되고 있습니다
<HMC5883L 3축 지자기 센서 모듈 이미지>HMC5883L 3축 지자기 센서 모듈은 I2C IIC 통신프로토콜 방식으로 동작하며, 동작전압 3~5V, 측정범위 ±1.3~8 Gauss 입니다
VCC, GND, SCL, SDA DRDY 핀의 인터페이스 구성 입니다
<HMC5883L 3축 지자기 센서 회로도>
사용된 부품
Arduino Uno R3 (Italy)
점퍼케이블
사용된 키트
Arduino Starter kit (클릭)
구성 배선도
사용된 예제소스
사용된 라이브러리
HMC5883L 3축 지자기 센서는 라이브러리를 추가해 주어야 합니다
라이브러리 추가 방법은 Arduino IDE 설치하기 포스팅을 참조해 주세요
주의사항
배선시 핀맵에 주의 합시다
VCC-------5V
GND-------GND
SCL-------A5
SDA-------A4
하단 프로젝트 동영상을 참고하면, 위치를 바꿀 때 마다 시리얼 모니터에 출력 된
X, Y, Z 출력값이 변하는 것을 확인 할 수 있습니다
Wire.h 는 아두이노 IDE를 설치하면 기본으로 제공되는 라이브러리 이며
본 프로젝트는 HMC5883L 지자기센서로 기본 X, Y, Z 위치값을 읽는 간단한 테스트로
HMC5883L 라이브러리는 사용하지 않았습니다
참고용으로 라이브러리 파일을 첨부하였습니다 (오픈소스로 제공된 HMC5883L 라이브러리를 사용한
여러가지 다양한 프로젝트들이 공유 되고 있습니다)
프로젝트 동영상
HMC5883L 칩의 생산이 수월치 않아서 라고도 하고, 단종이라고 하기도 하고 아무튼 최근에는
HMC5883L 대신 QMC5883L 칩 QMC5883L-Datasheet.pdf 을 탑재해서 지자기 센서가 출고되고 있습니다
<QMC5883L 칩을 탑재한 지자기 센서 이미지- IC의 마킹이 틀린것을 확인할수 있습니다>
이경우 기존의 HMC5883L 라이브러리나 예제로 동일하게 테스트 할수가 없습니다
QMC5883L 라이브러리를 사용해서 테스트 가능합니다
라이브러리 설치 후 아두이노 IDE 에서
파일-->예제--->Mecha_QMC5883L-master--->example--->raw 순으로 클릭해서 테스트 하면 됩니다
배선은 위의 HMC5883L과 동일하게 하면 됩니다
arduino.cc 의 IDE 1.8.5 버전 기준으로 이상없이 테스트 하였습니다 (IDE 버전에 따라 컴파일 에러가 나는 경우가 있는것 같습니다)
프로젝트 동영상
'Arduino(아두이노) 키트 강좌' 카테고리의 다른 글
Step.26-XBee USB Adapter 를 사용해서 XBee 모듈간 통신 테스트 하기 (1) | 2016.05.27 |
---|---|
Step.25-Arduino Uno 로 IR 적외선 원격제어 키트를 이용해 적외선 송수신 테스트 하기 (0) | 2015.11.20 |
Step.23-Arduino Uno 로 HC-06 블루투스 슬레이브 모듈을 사용해 LED 깜박이기 (0) | 2015.11.19 |
Step.22-Arduino Uno 로 L9110S 듀얼 모터 드라이버를 사용해 DC 모터 구동 시키기 (0) | 2015.11.19 |
Step.21-Arduino Uno 로 L9110S 듀얼 모터 드라이버를 사용해 2상 바이폴라 스테핑 모터 구동 시키기 (0) | 2015.11.19 |
댓글