DOI QR코드

DOI QR Code

A Study on the Design and Implementation of a Position Tracking System using Acceleration-Gyro Sensor Fusion

  • Jin-Gu, Kang (Dept. of Electrical & Electronic Engineering, Yonam Institute of Technology)
  • 투고 : 2022.11.24
  • 심사 : 2022.12.15
  • 발행 : 2023.01.31

초록

GPS(Global Positioning System)는 군사 목적으로 개발되었고, 민간인 신호(GPS L1주파수 C/A 신호)를 개방하면서 많은 발전이 이루어졌다. 현재의 위성은 하루 약 2회 주기로 지구를 공전하며 위치를 측정하는데 위성 신호 3개(초기에는 시각 오차까지 계산하기 위하여 4개)이상을 수신하는데 전파 출발 시간에서부터 수신된 위성 신호의 전파 도달 시간(TOA)까지의 데이터를 삼변측량 방식을 통해 지상 수신기 3차원 위치를 결정한다. 그러나 GPS를 활용한 내비게이션의 경우 보통 5~10m의 위치 오차가 발생하며 아파트와 실내, 터널, 공장지대 및 산악 지대 등, 많은 지역이 GPS의 사각지대 또는 오차 범위 밖의 무력화 지역으로 존재하고 있다. 따라서 GPS 위성 신호의 수신이 불가능한 지역에서 현재의 위치 정보를 획득하기 위해서는 다른 방안이 제시되어야 한다. 본 연구에서는 가속도와 자이로 센서가 결합된 IMU(Inertial Measurement Unit)와 지자기 센서를 이용하여 GPS 신호 수신이 불가능한 지형에서도 위치인식이 가능하도록 시스템을 설계 하였다. 9-DOF IMU와 지자기 센서를 이용한 순간 속도 값을 계산하여 현재의 위치를 추적할 수 있는 방안을 연구 하였으며 제작과 실험을 통해 그 타당성을 검증하였다.

The Global Positioning System (GPS) was developed for military purposes and developed as it is today by opening civilian signals (GPS L1 frequency C/A signals). The current satellite orbits the earth about twice a day to measure the position, and receives more than 3 satellite signals (initially, 4 to calculate even the time error). The three-dimensional position of the ground receiver is determined using the data from the radio wave departure time to the radio wave Time of Arrival(TOA) of the received satellite signal through trilateration. In the case of navigation using GPS in recent years, a location error of 5 to 10 m usually occurs, and quite a lot of areas, such as apartments, indoors, tunnels, factory areas, and mountainous areas, exist as blind spots or neutralized areas outside the error range of GPS. Therefore, in order to acquire one's own location information in an area where GPS satellite signal reception is impossible, another method should be proposed. In this study, IMU(Inertial Measurement Unit) combined with an acceleration and gyro sensor and a geomagnetic sensor were used to design a system to enable location recognition even in terrain where GPS signal reception is impossible. A method to track the current position by calculating the instantaneous velocity value using a 9-DOF IMU and a geomagnetic sensor was studied, and its feasibility was verified through production and experimentation.

키워드

I. Introduction

GPS(Global Positioning System)는 군사 목적으로 개발되었고, 민간인 신호(GPS L1주파수 C/A신호)를 개방하면서 발전을 거듭하고 있다. 최근의 GPS를 활용한 내비게이션의 경우 보통5~10m의 위치 오차가 발생하지만, 아파트와 실내, 터널, 공장 및 산악 지역의 중 일부는 GPS의 사각지대 또는 오차 범위 밖의 무력화 지역으로 존재하고 있다. 이는 대형 재난상황 발생 시 옥내 건물의 경우 콘크리트 벽과 각종 차폐 시설물들로 인해 인명구조 인력의 현장 위치 파악이 힘들며, 산악지형 등의 산불 재난 현장에서도 연기나 바람, 인화성 물질 등으로 인해 진화요원이나 구급대원들의 정확한 위치 파악이 어려울 수 있는 단점을 가진다. 또한 경우에 따라서는 미아방지와 독거노인 관리, 여성을 비롯한 취약계층에 대한 사회적 배려 차원에서도 정확한 위치정보가 필요할 수 있다. 그러나 현재의 GPS 위성 신호만을 이용한 기술로는 정밀도와 위치오차에 의한 사용자의 위치정보에 많은 불확실성이 포함되어 있으며 특히 실내의 경우 위치 정보를 파악하기가 어렵다. 또한 유사시 장시간 작업을 위해 추가 동력이 필요한 경우도 생길 수 있기에 시스템의 설계 시 많은 환경적 요소도 같이 고려되어야 한다. GPS의 가장 큰 단점인 실내 및 수신이 불가능 지역에서의 위치파악을 위해서는 다른 방안의 연구가 필요하다. 본 연구에서는 사용범위를 긴급 재난 소방용 또는 군수용에 중점을 두었으며 최근 해외 연구 동향은 그림 1과 같이 미국 유타대학에서 군수용으로 연구와 개발이 진행되고 있다.

CPTSCQ_2023_v28n1_49_f0001.png 이미지

Fig. 1. Military boots developed at the University of Utah, USA

그림 1은 부츠에 장착된 시스템은 GPS 없이 실내 또는 실외에서 약 5미터의 정확도로 위치를 결정한다. 내비게이션 시스템은 자이로스코프, 자력계 및 가속도계가 포함된 작은 블랙박스인 관성 측정 장치 또는 IMU를 기반으로 구축되었으며 지도와 매칭 하였다[1]. 본 연구에서는 현재 위치를 파악하기 위한 방안으로 가속도 자이로 센서와 지자기 센서를 이용한 순간 속도를 누적하고 방향을 검출하는 방법으로 이동경로와 위치 정보를 획득하는 방안을 연구 하였다. 설계 제작된 시스템은 실험을 통해 그 타당성을 검증하였다.

II. System Configuration

1. Configuration

객체 이동에 대한 벡터 속도의 측정은 가속도, 자이로 센서를 통해 획득되어진 데이터에 상보필터를 적용하여 구현하였다. 그림 2는 속도 추정을 위한 내부 시스템 구성이다. 메인프로세서는 마아크로칩사의 DSP계열의 18F4013을 사용하였으며 3축 가속도센서와 3축의 자이로 센서를 사용하였다.

CPTSCQ_2023_v28n1_49_f0002.png 이미지

Fig. 2. System configuration for speed measurement

객체의 이동에 대한 순간 속도 측정의 정밀성은 전체 시스템의 성능 및 안정성과 직결된다[2]. 이동 경로를 추정하고 예측하기 위해서는 자이로와 가속도계의 분석된 데이터를 이용한 오일러 각과 순간 속도의 검출과 계산이 필요하다. 즉 각도와 속도로부터 이동에 대한 예측 경로, 예측 속도, 예측 거리등이 계산되기 때문이다. 그러나 자이로센서의 경우 저주파 영역에서의 값이 변하는 Drift 현상이 발생하여 정확한 값을 기대하기 어렵고, 가속도계의 경우 고주파의 영역에서 많은 노이즈가 혼입되어 있어서 실제의 정확한 값을 얻기 위해서는 필터링이 필요하다. 원 데이터를 가공하여 안정된 값을 취하는 방안으로 가장 많이 사용되는 방법은 상보필터 또는 칼만 필터가 있다[3]. 본 연구에서는 상보필터를 적용한 오일러 각을 계산하였다[4]. 본 연구에서는 센서 중에서도 높은 정확도와 위치정보를 얻기 위해 자이로-가속도가 결합된 9-DOF IMU와 지자기 센서를 결합으로 이동방향과 순간속도를 획득하는 방안을 연구하였다. 각각의 장단점을 가지는 자이로-가속도 센서의 결합으로 안정된 데이터를 취득하기 위해 상보 필터를 적용하여 객체의 자세정보인 Roll, Pitch, Yaw 각도와 3축(X, Y, Z)의 순간속도를 계산할 수 있었다[5]. 또한 지자기 센서를 추가하므로 자기장 측정데이터와 비교할 수 있으며 이동 객체의 자세와 방향 정보를 약 150m/s 간격으로 중앙 시스템에 전달하였다.

III. Complementary Filter

본 연구에서 자이로-가속도 센서의 원 데이터를 가공하여 안정된 값을 얻기 위해 상보필터를 사용하였다. LPF(Low Pass Filter)는 저주파성분을 더 많이 통과시키는 필터, 즉 설정한 주파수 이하를 통과시키는 필터이며 HPF(High Pass Filter)는 고주파성분을 더 많이 통과시키는 필터, 즉 설정한 주파수 이상을 통과시키는 필터이다. 상보필터는 LPF와 HPF를 결합한 필터라 할 수 있다. 상보필터를 구현하기 위해 선행적으로 Cut Off Frequency를 설정해 주어야한다[6]. 이를 위해서 Sampling time에 따라서 Discrete time상에서 S-domain 에서 Z-domain으로 변환해 주어야 하며 일반적인 3가지 변환 방법 Backward Approximation을 이용해서 상보필터를 Z-domain 에서 표현하면 식 (1), (2)와 같다[7].

A : Accelerometer

B : Gyroscope

XA(s)는 A 센서 신호,

\(\begin{aligned}\widehat{X}_{A}\end{aligned}\)(S)는 A 센서에 LPF를 적용한 신호

XB(s)는 B 센서 신호

\(\begin{aligned}\widehat{X}_{B}\end{aligned}\)(S)는 B 센서에 HPF를 적용한 신호

XC(s) Complementary Filter Output

\(\begin{aligned}\frac{\widehat{X}_{A}(s)}{X_{A}(s)}=\frac{a}{s+a}=\frac{(T \cdot a)}{\left(1-z^{-1}\right)+T \cdot a}=\frac{\widehat{X}_{A}(z)}{X_{A}(z)}\end{aligned}\)       (1)

\(\begin{aligned}\frac{\widehat{X}_{B}(s)}{X_{B}(s)}=\frac{s}{s+a}=\frac{\left(1-z^{-1}\right)}{\left(1-z^{-1}\right)+T \cdot a}=\frac{\widehat{X}_{B}(z)}{X_{B}(z)}\end{aligned}\)       (2)

\(\begin{aligned}X_{C}(z)=\widehat{X_{A}}(z)+\widehat{X_{B}}(z)\end{aligned}\) 로 표현 

상보필터를 프로그램으로 구현하기 위해서는 \(\begin{aligned}\widehat{X}_{A}\end{aligned}\)를 XA에 대해서 Discrete time에서 표현해야 하므로 식을 전개하면 \(\begin{aligned}\widehat{X}_{A}\end{aligned}\)(k)는 식 (3)과 같으며 \(\begin{aligned}\widehat{X}_{B}\end{aligned}\)(k)는 식 (4)와 같다.

\(\begin{aligned}\hat{X}_{A}(k)=\frac{\tau}{\tau+T} . \quad \widehat{X}_{A}(k-1)+\frac{T}{\tau+T} . \quad X_{A}(k)\end{aligned}\)       (3)

\(\begin{aligned}\hat{X}_{B}(k)=\frac{\tau}{\tau+T} \cdot \quad\left[\widehat{X}_{B}(k-1)+X_{B}(k)-X_{B}(k-1)\right]\end{aligned}\)       (4)

최종적으로 상보필터의 출력에 대한 XC(k)을 서술하면 식 5와 같다[8].

\(\begin{aligned}\begin{array}{l}X_{C}(k)=\frac{\tau}{\tau+T} \cdot \widehat{X_{A}}(k-1)+\frac{T}{\tau+T} \cdot X_{A}(k) \\ -\frac{\tau}{\tau+T} \cdot \quad\left[\widehat{X_{A}}(k-1)+X_{B}(k)-X_{B}(k-1)\right]\end{array}\end{aligned}\)       (5)

IV. Experiment and Evaluation

본 연구에서는 시스템의 최소 성능지표 4개를 설정하였으며 그 내용은 다음과 같다.

Table 1. performance indicator

CPTSCQ_2023_v28n1_49_t0001.png 이미지

그림 3-a는 제작된 시스템과 그림 3-b는 회로도를 보여주고 있다. 그림 3-a그림의 A영역은 고속 연산을 위한 칩 구성을 보여주고 있다.

CPTSCQ_2023_v28n1_49_f0003.png 이미지

Fig. 3-a. Experimental system

CPTSCQ_2023_v28n1_49_f0004.png 이미지

Fig. 3-b. Control Circuit

본 연구에 사용된 프로세서는 마이크로칩사의 DSP계열인 dspPIC30F4013을 사용하였다. B영역은 전원 안정화를 위한 전원 부이며 C영역은 안정된 센서 신호를 입력받기 위한 센서 안정화 영역이며 D영역 또한 지자기 센서와 고도센서 출력신호의 안정화 회로로 구성하였다.

그림 4-a는 제작된 센서 보드이며 그림 4-b는 센서 회로의 구성을 보여주고 있다. 그림 4-a A영역은 고도계와 지자기 센서로 구성하였으며 B영역은 가속도-자이로 센서회로를 구성하였다. 센서 데이터를 통한 속도의 계산은 객체의 움직임에 따라 x, y, z 축에 대한 순간속도를 측정, 필터링 되어야만 안정성 있는 시스템을 구현할 수 있다.

CPTSCQ_2023_v28n1_49_f0005.png 이미지

Fig. 4-a. Sensor system

CPTSCQ_2023_v28n1_49_f0006.png 이미지

Fig. 4-b. Sensor Control Circuit

일반적으로 가속도 센서에서 출력되는 데이터를 적분 과정을 통해 속도를 구할 수 있으나 이러한 경우 감도가 상대적으로 커져서 측정 노이즈의 영향을 최소화하고 가속도 이외의 성분을 제거하기 위해 LPF를 적용하므로 실시간에서 정확한 벡터 속도를 계산할 수 있다[9].

그림 5-A와 센서에서 출력되는 데이터를 통한 순간속도를 계산하고 필터를 적용하기 전의 속도 데이터를 그래프로 나타내었으며 그림 5-B는 알고리즘이 적용된 속도 그래프이다. 두 그래프의 비교를 통해 같은 시간동안 필터가 적용된 그림 5-B의 그래프의 속도가 필터 적용전의 그래프 보다 안정적이며 일정하게 움직이는 것을 볼 수 있다. 제안된 시스템의 자세 및 이동 방향과 경로, 거리, 속도 등의 정보의 성능을 검증하기 위하여 가속도센서, 자이로 센서에 의한 출력을 실험을 통하여 확인 하였다.

CPTSCQ_2023_v28n1_49_f0007.png 이미지

Fig. 5-A. X-axis velocity data before applying filter

CPTSCQ_2023_v28n1_49_f0008.png 이미지

Fig. 5-B. X-axis velocity data after filter application

그림 6-a와 그림 6-b는 초기 수평을 유지하고 있다가 순간적으로 회전을 주었을 경우 자이로와 가속도에서 얻은 데이터를 필터 적용전과 후의 값을 그래프로 나타내었다.

그림 6-A는 필터를 적용하기 전의 노이즈에 의해 불규칙하게 나타나는 것을 볼 수 있으며 그림 6-B는 필터를 적용하여 Cut off Frequence에 의해 노이즈 값이 보정된 안정된 데이터를 볼 수 있다. 샘플링 시간은 0.015s 이며 Cut off Frequence는 0.98과 0.02 상수 값을 적용하였다.

CPTSCQ_2023_v28n1_49_f0009.png 이미지

Fig. 6-A. X-axis velocity data before filter application

CPTSCQ_2023_v28n1_49_f0010.png 이미지

Fig. 6-B. X-axis velocity data after filter application

V. Conclusions

본 연구에서는 GPS기반의 항법장치는 GPS신호 교란에 의해 사용이 불가능한 경우의 수가 많이 발생하고 있다. GPS의 가장 큰 단점은 위성 신호를 받지 못하는 장소에서는 위치정보를 제공하지 못하는 한계가 있으며 시스템 동작에 문제점을 가지고 있다. 현재 다른 방안으로 제시되고 있는 IMU와 INS를 결합한 경우 가격이 고가이며 무게, 크기, 배터리의 사용량의 제한으로 개인에게 지급되어 위치 추적을 수행하기에는 방해가 되는 요소들 많다. 그러나 센서 기술의 발전으로 저 전력, 소형화, 지능화 등의 첨단기술이 적용된 RFID, Wi-Fi, IMU등의 다양한 센서가 출시되고 있으며 이를 이용한 위치추적의 연구가 활발히 진행되고 있다. 본 연구에서는 센서 중에서도 높은 정확도의 위치정보를 계산하기 위하여 자이로, 가속도를 융합하고 지자기 센서와 고도계를 결합하므로 위성 신호의 수신이 불가능한 지역에도 이동객체의 자세와 속도 데이터를 획득하기 위한 방안을 연구하였다. 실험을 통하여 상보필터를 적용할 때와 적용하지 않았을 경우의 데이터를 비교해 보았으며 필터의 적용이 비교적 안정된 결과를 얻을 수 있었다. 두 가지 이상의 센서를 융합하고 상보필터 알고리즘을 통하여 이동 객체의 자세정보인 Roll, Pitch, Yaw Angle과 3축(X, Y, Z)의 순간속도와 방향을 이용하여 현재 이동물체의 위치와 방향을 알고 예측할 수 있는 방법을 연구하였으며 향후 과제로 시스템 개선에 대한 연구는 모델링 오차에 강인한 제어알고리즘 개발과 시간지연을 줄일 수 있는 통신과 시간지연에 강인한 제어알고리즘의 연구가 필요하다.

참고문헌

  1. Katherine Bourzac, Accurate Navigation Without GPS, https://spectrum.ieee.org/accurate-navigation-without-gps
  2. Jin Gu Kang, "A Study on Mobile Robot for Posture Control of Flexible Structures Using PI Algorithm," Journal of the Korea Society of Computer and information, Vol. 27, NO. 2, pp. 9~14, 2022. DOI:10.9708/jksci2022.27.02
  3. Haifeng Xing, Zhiyong Chen, Haotian Yang, Chengbin Wang, Zhihui Lin, and Meifeng Guo "Self-Alignment MEMS IMU Method Based on the Rotation Modulation Technique on a Swing Base," Sensors (Basel, Switzerland), Vol. 4, NO 18, pp. 1178-1200, 2018. DOI:10.3390/s18041178
  4. Jin Gu Kang, "A Study on Pose Control for 2 wheel Robot using ARS," Journal of Korea Society of Digital Industry and Information Management, Vol. 9, NO 1, pp. 73-78, 2013.UCI :G704-SER000010259.2013.9.1.004 10259.2013.9.1.004
  5. Soyul Jeon, Heykyung Yeom, Minbum Choi, and Mingu Kim, "Design and Manufacture of a Power Wheelchair by Upper-Body Tilt Estimated by a Complementary Filter," Journal of the institute of control automation and system engineer, Vol. 28, NO. 1, pp. 6~12, 2022.DOI : 10.5302/J.ICROS.2022.21.0155
  6. B. J. Thibodeau, S. W Hart, D. R. Kanruppiah, J. D. Seeney, and O. Block, "Cascaded filter approach to multi-objective control," IEEEICRA, pp. 3877-3882, 2004.DOI: 10.1109/ROBOT.2004.1308872
  7. Dung Duong Quoc, Jinwei Sun, Van Nhu Le, and Lei Luo, "Complementary Filter Performance Enhancement through Filter Gain," International Journal of Signal Processing, Vol. 8, NO. 7, pp. 97~110, 2015.DOI : 10.14257ijsip.2015.8.7.10 https://doi.org/10.14257ijsip.2015.8.7.10
  8. Brzozowski Bartosz, Rochala Zdzislaw, Wojtowicz Konrad, and Wieczorek Piotr, "Measurement data fusion with cascaded Kalman and complementary filter in the flight parameter indicator for hang-glider and paraglider," Measurement, Vol. 123, pp. 94~101, 2018.DOI : 10.1016/j.measurement.2022.111130
  9. Jin Gu Kang, "Pose Control of Mobile Inverted Pendulum using Gyro-Accelerometer," Journal of the Korea Society of Computer and information, Vol. 15, NO. 10, pp. 129~136, 2010.DOI :10.9708/jksci.2010.15.10.129