???? - 4. 아두이노에서 기울기 센서(MPU-6050) 사용하기


MPU-6050은 아두이노에서 사용할 수 있는 기울기 센서 중 하나입니다. MPU-6050은 (중력)가속도 3축 + 자이로 3축을 합쳐서 6축 센서라고 불리는데 가속도 센서는 정적인 상태에서만 정확한 측정이 가능하므로 자이로 센서로 이를 보정하는 식으로 측정이 이루어집니다. (자이로 3축 + 가속도 2축 + 온도 이렇게 6축이라는데도 있습니다) 기능으로는 Pitch, Roll, Yaw 세 방향의 기울기를 측정할 수 있는데, 실제로 테스트를 해봤을 때 Yaw값의 경우는 다소 정확하지 않은 느낌을 받았습니다.



배선도



관련 라이브러리 설치

  1. 아두이노 IDE를 실행합니다.
  2. 툴 -> 라이브러리 관리 메뉴를 실행합니다.
  3. 라이브러리 매니저 화면에서 MPU6050를 검색합니다.
  4. MPU6050 by Electronic Cats를 설치합니다.


예제 실행

  1. 파일 >예제 밑에 MPU6050 항목이 생긴 것을 볼 수 있습니다.
  2. 이 밑에 있는 MPU6050_DMP6 예제를 열어서 컴파일 후 업로드합니다.
  3. 툴 > 시리얼 모니터를 엽니다.
  4. 속도를 115200 보드레이트로 변경합니다.
  5. 시리얼 모니터 상단 입력란에 아무 값이나 입력하고 전송을 누르면 화면 출력이 시작됩니다.


실행 결과

  • 센서를 기울임에 따라 Yaw, Pitch, Roll 값이 변경되는 것을 확인할 수 있습니다.
Initializing DMP...
Enabling DMP...
Enabling interrupt detection (Arduino external interrupt 0)...
DMP ready! Waiting for first interrupt...

ypr	30.79	18.42	-64.17
ypr	31.31	18.09	-63.87
ypr	31.79	18.02	-63.55
ypr	32.53	18.19	-62.95
ypr	33.78	19.00	-61.67
ypr	35.42	20.35	-59.94
ypr	37.08	21.77	-58.21
ypr	38.17	22.89	-57.00
ypr	38.77	23.71	-56.29
ypr	39.22	24.47	-55.71
ypr	39.75	25.41	-54.93
ypr	40.41	26.68	-53.86
ypr	41.32	28.44	-52.36
ypr	42.19	30.52	-50.78
ypr	42.77	32.47	-49.49
ypr	43.36	34.06	-48.33
ypr	43.91	35.41	-47.32
ypr	44.24	36.57	-46.51
ypr	44.41	37.62	-45.85
ypr	44.76	38.83	-45.03
ypr	45.24	40.09	-44.09
ypr	45.65	41.30	-43.15
ypr	46.17	42.65	-42.10
ypr	46.70	43.95	-41.17
ypr	46.98	44.78	-40.65
ypr	46.97	45.16	-40.28

,