Popis: |
In this paper, an enhanced method for attitude determination is proposed for systems using an IMU (Inertial Measurement Unit). In attitude determination with IMU, it is generally assumed that the IMU can be located in the center of gravity on the vehicle. If the IMU is not located in the center of gravity, the accelerometers of the IMU are disturbed from additive accelerations such as centripetal acceleration and tangential acceleration. Additive accelerations are derived from the lever arm which is the distance between the center of gravity and the position of the IMU. The performance of estimation errors can be maintained in system with a non-zero lever arm, if the lever arm is estimated to remove the additive accelerations from the accelerometer’s measurements. In this paper, an estimation using Kalman filter is proposed to include the lever arm in the state variables of the state space equation. For the Kalman filter, the process model and the measurement model for attitude determination are made up by using quaternion. In order to evaluate the proposed algorithm, both of the simulations and the experiments are performed for the simplified scenario of motion. Keywords: attitude determination, IMU, lever arm, quaternion, Kalman filter I. 서론 현대의 많은 선박, 항공기, 그리고 이동형 로봇 등과 같은 운동체는 관성측정장치(IMU: Inertial Measurement Unit)를 이용한 자세결정(attitude determination) 시스템을 구성하고 있다. 관성측정장치는 가속도계(accelerometer)와 각속도계(gyroscope)로 구성되어 있으며, 운동체의 무게중심에 장착되어 값을 계측하는 것으로 가정한다[1]. 따라서 자세결정 시스템은 운동체 무게중심의 가속도와 각속도를 바탕으로 알고리즘을 구성한다. 그러나 몇가지 이유에 의하여 관성측정장치를 무게중심에 장착하기 어려운 상황이 발생한다. 첫째 무게중심의 위치를 정확히 확인하기 어렵거나, 둘째 구조적 및 전자기적 간섭에 의하여 무게중심 위치에 설치가 어려울 수 있다. 무게중심의 위치와 관성측정장치의 위치 사이의 거리를 레버암(lever arm)이라고 할 때, 레버암은 관성측정장치에 추가적인 각가속도를 발생시킨다[2,3]. 그림 1은 운동체의 무게중심에 대한 레버암을 나타내며, 여기서는 단일축에 대한 레버암을 나타낸다. 자세결정 시스템은 운동모델, 가속도계 계측값 그리고 각속도계 계측값을 융합하여 자세를 추정한다[1,4,5]. 레버암에 의한 추가적인 가속도가 가속도 운동모델과 일치하지 않으면 이것은 자세 결정 오차를 증가시킨다. 운동체에 IMU를 장착하기 전에 레버암의 크기 및 방향을 미리 결정하기는 어려우므로 가속도 운동모델은 레버암을 고정된 값으로 포함할 수는 없다. 자세결정을 위한 추정 필터를 구성할 때 상태변수에 레버암을 포함시키면 레버암에 의한 오차를 보상할 수 있을 것으로 예상할 수 있다. 본 연구에서는 레버암을 포함하는 가속도 운동방정식(dynamic equation)을 구성하고 이를 바탕으로 측정방정식(measurement equation) 구성한다. 자세결정을 위한 상태 방정식(state equation)은 쿼터니언(quaternion) 미분방정식을 이용하여 구성한다. 쿼터니언은 회전 운동체의 회전을 표현하는데 사용되며 4차의 벡터로 구성된다. 벡터의 요소는 각각 회전량과 회전축으로 구성되며 전통적인 Euler 각에 의한 표현에 비하여 짐벌락(gimbal lock) 현상을 발생시키지 않는다. 쿼터니언에 대한 자세한 내용은 참조문헌 [6-8]을 참조하기 바란다. 제안한 알고리즘의 검증을 위하여 단순한 회전운동을 구성하고 주어진 각변위에 대한 자세결정 알고리즘을 비교하였다. 자세결정 결과의 비교를 위하여 시뮬레이션과 실험을 각각 시행하였다. 실험에서는 정확한 각변위 재현을 위하여 단일축 레이트 테이블(rate table)을 사용하였다. |