DOI QR코드

DOI QR Code

Ackermann Geometry-based Analysis of NHC Satisfaction of INS for Vehicular Navigation according to IMU Location

  • Received : 2022.02.21
  • Accepted : 2022.03.02
  • Published : 2022.03.15

Abstract

In this paper, we analyze the Non-Holonomic Constraint (NHC) satisfaction of Inertial Navigation System (INS) for vehicular navigation according to Inertial Measurement Unit (IMU) location. In INS-based vehicle navigation, NHC information is widely used to improve INS performance. That is, the error of the INS can be compensated under the condition that the velocity in the body coordinate system of the vehicle occurs only in the forward direction. In this case, the condition that the vehicle's wheels do not slip and the vehicle rotates with the center of the IMU must be satisfied. However, the rotation of the vehicle is rotated by the steering wheel which is controlled based on the Ackermann geometry, where the center of rotation of the vehicle exists outside the vehicle. Due to this, a phenomenon occurs that the NHC is not satisfied depending on the mounting position of the IMU. In this paper, we analyze this problem based on Ackermann geometry and prove the analysis result based on simulation.

Keywords

1. INTRODUCTION

자율주행자동차의 상용화가 현실화됨에 따라 자동차의 항법∙유도∙제어 기술의 정확도와 신뢰성의 요구사항이 점점 더 증가하고 있다. 자동차의 현재 위치에서 목적지까지 주행하기 위한 전역경로는 Dijkstra 알고리즘 등을 정밀지도와 연동하여 생성할 수 있으며, LiDAR, Radar, Vision 등을 통해 검출된 경로주행 장애물체를 회피하기 위한 차선변경 경로는 A* 알고리즘 등을 기반으로 생성할 수 있다 (Roy et al. 2018, Liu et al. 2021). 이렇게 생성된 경로를 자동차가 주행하기 위해 조향장치, 가속기, 브레이크, 등을 제어해야 하며, 이때 정확한 제어를 위해 자동차의 정확한 항법정보가 필요하다.

가장 대표적으로 사용되는 항법장치는 Global Positioning System (GPS)/Global Navigation Satellite System (GNSS) 이다. Network Transport of RTCM via Internet Protocol (NTRIP)이 상용화됨에 따라 실시간 Real-Time Kinematic (RTK) GPS가 가능해져 정확한 항법정보를 획득할 수 있다 (Lim et al. 2021). 그러나 GPS 기반으로는 자동차의 정확한 제어를 위해 필요한 모든 항법정보를 획득할 수 없으며, 터널/도심공간에서 신호 음영지역이 존재한다. 또한 다중경로 신호에 의한 오차와 Jamming/Spoofing에 의한 신호조작은 자율주행자동차의 신뢰성을 떨어뜨리게 된다. 따라서 GPS를 Dead Reckoning (DR) 또는 Inertial Navigation System (INS)와 결합한 복합항법이 필요하며, 차선레벨의 정확도를 제공하기 위해 Vision 및 LiDAR와 결합하는 기법이 계속 연구되고 있다 (Kim et al. 2020, Cho et al. 2021). 본 논문에서는 INS를 자율주행자동차에 적용하는 경우에 Inertial Measurement Unit (IMU)의 장착 위치에 따른 영향을 분석하는 것을 주요 목적으로 한다.

INS를 GPS와 결합하면 INS의 오차를 보정할 수 있다. 그러나 GPS 신호를 사용할 수 없는 경우에는 INS만을 구동해야하며, 이때 오차보정을 위해 Non-Holonomic Constraint (NHC) 정보를 결합필터의 측정치로 사용하는 방법이 사용된다 (Chae & Cho 2021, Cho et al. 2021). 이때 NHC 정보는 차량의 측면방향과 수직축 방향의 속도는 0이라는 것으로 차량바퀴의 미끄러짐 현상이 없는한 항상 만족되는 것으로 알려져 있다. 그러나 항법장치에서 사용되는 속도정보는 차량이 아닌 IMU의 속도정보이며, IMU의 장착 위치에 따라 NHC가 만족되지 않는 경우가 발생한다. 따라서 이 상황에서 INS/NHC 결합을 하는 경우 잘못된 보상이 이루어져 항법정보의 정확도가 떨어지게 된다. 이 논문에서는 차량 바퀴의 Ackermann 기하학을 기반으로 IMU의 위치에 따른 NHC 만족여부를 해석적으로 분석한 다음 시뮬레이션을 통해 해석 결과를 검증하고자 한다.

2. ACKERMAN GEOMETRY-BASED NHC ANALYSIS

자동차는 앞 바퀴에 조향장치가 연동되어 주행 방향을 제어한다. 이때 바퀴의 회전은 Fig. 1에서 나타낸 것처럼 Ackermann Steering Geometry를 기반으로 제어된다 (De-Juan et al. 2012). 자동차가 오른쪽으로 회전하는 경우 앞쪽의 두 바퀴가 회전하게 되며, 이때 두 바퀴의 회전하는 각도는 서로 다르다. 그림에서 나타낸 \(O\)는 회전 중심이며, 이 점에서 각 바퀴의 중심으로 연결된 선분과 자동차의 네 바퀴는 각각 직각이 된다. 즉 자동차가 회전하는 경우 회전 중심은 자동차의 무게중심이 아니라 자동차의 두 뒷 바퀴를 연결한 선분 위에 있으며 그 점은 자동차의 바깥에 위치한다. 이 기하학은 차량 제어를 위한 바퀴 구조와 관계된 것으로 항법과는 무관한 정보이다. 그러나 이를 기반으로 자동차의 동체좌표계상의 속도를 분석해 보면 IMU의 위치에 따라 NHC가 항상 만족하는 것이 아닌 것을 알 수 있다.

f1.png 이미지
Fig. 1. Ackermann steering geometry.

f2.png 이미지
Fig. 2. NHC according to the location of the IMU. (a) case-I, (b) case-II

Fig. 2a는 IMU가 뒷 바퀴 축상에 위치한 case-I에서 자동차가 시계방향으로 \(\omega_z\)의 회전각속도로 회전하는 경우이다. 자동차의 전진방향 속력이 \(speed\)인 경우 회전 중심은 IMU의 중심 \(O_I\)로부터 다음의 거리에 위치하게 된다.

\(R_T={Speed \over \omega_z}\)                                                                                                 (1)

여기서 \(speed\)는 동체좌표계 상의 \(x\)축 속도이며, \(\omega_z\)\(z\)축 회전각속도이다. 자동차가 반시계방향으로 회전하는 경우, 즉 \(\omega_z\)의 기호가 (-)인 경우 \(R_T\)의 기호 또한 (-)가 되며 \(y\)축의 음의 위치에 \(O\)가 존재하게 된다.

2D 상에서 IMU의 출력과 IMU 중심에서 동체좌표계상의 속도는 각각 Eq. (2)와 (3)이 된다.

\(\left[\begin{matrix}a_x\\a_y \end{matrix}\right]=\left[\begin{matrix}0\\R_T \omega_z^2 \end{matrix}\right]=\left[\begin{matrix}0\\Speed \cdot \omega_z \end{matrix}\right]\)                                                                     (2)

\(\left[\begin{matrix}v_x^b\\v_y^b \end{matrix}\right]=\left[\begin{matrix}Speed\\0\end{matrix}\right]\)                                                                                         (3)

여기서 \([a_x~~a_y]^T\)는 IMU의 출력이며, \([v_x^s~~v_y^s]^T\)는 IMU의 센서축 상으로 나타낸 속도이다.

이 그림을 기반으로 IMU 상에서 NHC는 만족한다는 것을 알 수 있다. 두 번째, Fig. 2b는 IMU가 뒷 바퀴 축으로부터 차량의 동체좌표계상의 \(x\)축 방향으로 \(L_x^b\)만큼 이동한 곳에 위치한 case-II이다. IMU는 회전 중심으로부터 새로운 회전반경 \(R_T^\prime\) 거리상에 위치하게 되며 \(\overline{OP}\)\(\overline{OO_I}\) 사이각은 \(\alpha\)가 되며 각각 Eq. (4)와 (5)로 계산된다.

\(R_T^\prime =L_x^b/\sin\alpha\)                                                                                         (4)

여기서

\(\alpha=\tan^{-1}⁡( L_x^b/R_T)=\tan^{-1}⁡( L_x^b \omega_z/Speed)\)                                                                   (5)

여기서 \(\omega_z\)의 기호가 (-)인 경우 \(\alpha\)의 기호도 (-)가 되고 그 결과 \(R_T^\prime\)의 기호 또한 (-)가 된다. 따라서 \(R_T^\prime\)\(O\)\(O_I\) 사이의 거리뿐 아니라 방향에 대한 정보도 포함하고 있다.

자동차는 동체좌표계 상의 \(x\)축으로 이동하지만, 회전하는 경우에는 IMU의 중심에서 회전원의 접선방향으로 Eq. (6)과 같이 속력 \(v^t\)로 이동하게 된다.

\(v^t=R_T^\prime \omega_z=L_x^b \omega_z/ \sin⁡\alpha\)                                                                                 (6)

이때 동체좌표계 상의 속도는 Eq. (7)과 같이 나타난다.

\(\left[\begin{matrix}v_x^b\\v_y^b \end{matrix}\right]=\left[\begin{matrix}v^t \cos⁡\alpha\\v^t \sin⁡\alpha \end{matrix}\right]=\left[\begin{matrix}R_T^\prime \omega_z \cos⁡\alpha\\R_T^\prime \omega_z \sin⁡\alpha \end{matrix}\right]=\left[\begin{matrix}R_T \omega_z\\L_x^b ω_z \end{matrix}\right]=\left[\begin{matrix}Speed\\L_x^b \omega_z \end{matrix}\right] \)                                       (7)

IMU의 위치 이동에 따른 동체좌표계상의 속도를 분석해 보면 \(x\)축은 IMU의 위치와 상관없이 동일하지만 \(y\)축은 0가 되지 않는다는 결론은 Eq. (7)을 통해 확인할 수 있다. 즉 NHC가 만족하지 않게 된다. 측면방향의 속도는 자동차의 뒷 바퀴 축상에 위치한 점 \(P\)를 중심으로 IMU가 \(\omega_z\)의 회전각속도로 회전하는 경우에 발생하는 접선방향의 속도정보가 추가적으로 나타나게 되는 것이다. 즉 점 \(P\)를 중심으로 점 \(O_I\)의 Lever Arm 효과가 발생한다.

\(O_I\)에서 구심가속도는 \(\overline{O_IO}\) 방향으로 Eq. (8)과 같이 발생하며, 이로인해 가속도계 출력은 Eq. (9)와 같이 나타나게 된다.

\(a_c=R_T^\prime \omega_z^2\)                                                                                                 (8)

\(\left[\begin{matrix}a_x\\a_y \end{matrix}\right]=\left[\begin{matrix}-a_c \sin⁡\alpha\\a_c \cos⁡\alpha \end{matrix}\right]=\left[\begin{matrix}-a_c \sin⁡\alpha\\R_T \omega_z^2\end{matrix}\right]\)                                                                     (9)

IMU가 위치 이동을 하더라도 \(y\)축 가속도계 출력에는 영향을 미치지 않는다. 그러나 \(x\)축 가속도계 출력에는 영향을 미치게 된다. 여기에 IMU 오차를 포함하면 Eq. (10)과 같이 나타낼 수 있다.

\(\left[\begin{matrix}\tilde{a}_x\\\tilde{a}_y \end{matrix}\right]=\left[\begin{matrix}-a_c \sin⁡\alpha \\R_T \omega_z^2 \end{matrix}\right]+\left[\begin{matrix}\nabla_x\\\nabla_y \end{matrix}\right]+\left[\begin{matrix}w_x^a\\w_y^a\end{matrix}\right]\)                                                               (10)

여기서 \(\nabla_j\)\(j\)축 가속도계 바이어스이며, \(w_j^a\)\(j\)축 가속도계 잡음으로 0평균 가우시안 분포를 갖는 것으로 가정한다.

자동차의 동체좌표계상의 가속도계와 속도정보를 분석한 결과 IMU의 위치에 따른 \(x\)축 가속도계 출력과 \(y\)축 속도 변화를 야기하게 된다는 것을 확인하였다. 가속도계 출력 변화는 위치추정에 영향을 미치지만 자동차의 위치를 Fig. 1의 \(P\)로 설정하는 경우 \(O_I\)의 위치 변화를 고려하면 크게 문제가 되지 않는다. 그러나 속도 변화에 따른 NHC 정보에 오류가 발생하는 것은 이 정보를 INS/NHC 결합 필터의 측정치로 활용하게 되는 것이 문제가 될 것으로 판단된다.

3. SIMULATION ANALYSIS

제안된 분석 결과의 검증을 위해 시뮬레이션을 수행하였다. Figs. 3a와 4a에서 나타낸 두 개의 궤적을 기반으로 IMU 데이터를 생성하였다. IMU 데이터는 바이어스 및 잡음과 같은 오차를 포함하고 있지 않으며 궤적에 따른 차분을 통해 case-I과 case-II에 맞게 각각 생성하였다. 자동차는 버스를 고려하였으며 \(L_x^b\)를 3 m로 설정하였다. 궤적에 대한 정보는 Table 1에서 정리한 것처럼 처음 10초 동안 정지한 다음 5 m/s2의 가속도로 5초가 가속하여 25 m/s의 속도로 5초간 등속운동을 한다. 그 후 궤적 1에서는 24초 동안 30 deg/s의 각속도로 시계방향으로 회전을 하며, 궤적 2에서는 18 deg/s의 각속도로 5초간 시계방향으로 회전, 5초간 등속, 5초간 반시계방향으로 회전 및 5초간 등속운동을 한다.

f3.png 이미지
Fig. 3. Simulation results 1. (a) trajectory, (b) trajectory enlargement, (c) positioning error, (d) velocity in the body-frame, (e) IMU output

f4.png 이미지
Fig. 4. Simulation results 2. (a) trajectory, (b) trajectory enlargement, (c) positioning error, (d) velocity in the body-frame, (e) IMU output

Table 1. Trajectory information.

Time (sec) Trajecotory 1 Time (sec) Trajectory 2
0 ~ 10
~ 15
~ 20
~ 45
 
 
 
Stop
Acceleration = 5 m/s2
Constant velocity = 25 m/s
Angular velocity = 30 deg/s
 
 
 
0 ~ 10
~ 15
~ 20
~ 25
~ 30
~ 35
~ 40
Stop
Acceleration = 5 m/s2
Constant velocity = 25 m/s
Angular velocity = 18 deg/s
Constant velocity
Angular velocity = -18 deg/s
Constant velocity

 

생성된 IMU 데이터를 사용하여 INS 알고리즘을 구동하였으며 그 결과를 그림에 나타내고 있다. 각 그림에서 (b)는 (a)의 일부를 확대한 것으로 case-I은 궤적을 정확하게 따라가지만 case-II는 궤적에서 벗어나 있는 것을 확인할 수 있다. 여기서 정확한 궤적은 Fig. 1의 \(P\)점의 위치로 한다. Case-II의 항법좌표계 상의 위치오차를 그림 (c)에 나타내었으며 회전에 따라 다르게 나타나고 있으며, 동체좌표계 상으로는 \(x\)축 방향으로 \(L_x^b\) 만큼 오차를 갖는다. 그림 (d)는 동체좌표계 상의 속도를 나타낸 것으로 \(x\)축으로는 case-I과 case-II 모두 정확하게 궤적상의 속도를 따라가지만 \(y\)축으로는 case-II의 경우 궤적상의 속도와 다르게 나타나는 것을 볼 수 있다. Case-I의 경우 NHC를 만족하면서 \(y\)축 속도는 0이 되며, case-II의 경우 Eq. (7)에서 분석한 것과 같은 결과가 나타나는 것을 알 수 있다. 즉, 궤적 1의 회전하는 구간에서 \(L_x^b \omega_z\)에 해당하는 1.57 m/s의 속도가 \(y\)축 방향으로 나타나며, 궤적 2의 시계방향으로 회전하는 구간에서는 0.94 m/s 그리고 반시계방향으로 회전하는 구간에서는 -0.94 m/s의 속도가 \(y\)축 방향으로 나타난다. 따라서 2장에서 분석한 것과 같이 case-II에서는 회전하는 구간에서 NHC가 만족하지 않는 것을 확인할 수 있다. 그림 (e)에서는 IMU 출력을 나타내고 있으며 \(y\)축 가속도계에서는 case-I과 case-II가 동일하게 출력되지만 \(x\)축 가속도계에서는 Eq. (9)에서 분석한 것과 같이 회전방향과 상관없이 \(-a_c \sin⁡ \alpha\) 만큼의 추가 가속도가 출력되는 것을 확인할 수 있다.

f5.png 이미지
Fig. 5. Simulation results with IMU noise added. (a) IMU output, (b) velocity in the body-frame

Fig. 5는 궤적 2에서 IMU의 잡음을 포함한 경우의 결과로 IMU Spec.은 NovAtel사의 OEM-IMU-EG320N을 반영하였다. 가속도계와 자이로의 잡음은 Eq. (11)과 같이 설정된다.

\(\left[\begin{matrix}w^a\\w^g \end{matrix}\right]=\left[\begin{matrix}0.05~m/s/ \sqrt{hr}\\0.1 \deg \sqrt{hr} \end{matrix}\right]\)                                                                           (11)

여기서 \(w^a\)\(w^g\)는 각각 가속도계와 자이로의 잡음으로 Velocity Random Walk과 Angular Random Walk으로로 불린다.

Fig. 5a에서는 잡음 유무에 따른 IMU 정보를 보여주고 있으며, 잡음 유무에 상관없이 2장에서 해석한 것과 같이 자동차가 회전하는 경우에 \(x\)축 가속도계에 영향이 나타나는 것을 확인할 수 있다. 그리고 이에 의한 동체좌표계 상의 \(y\)축 속도 또한 명확하게 나타나는 것을 Fig. 5b에서 확인할 수 있다.

2장에서 설명한 것과 같이 IMU의 위치 이동에 따라 발생하는 가속도계 출력의 변화는 위치 오차만 발생시키게 되며 이것은 자동차의 궤적을 Fig. 1의 \(P\)점으로 설정함에 따라 발생하는 위치변화로 \(L_x^b\)를 측정한 다음 위치보상을 하면 쉽게 해결할 수 있다. 그러나 동체좌표계 상의 속도 변화는 NHC를 만족하지 않게 되며 이를 무시하고 INS와 NHC를 결합하는 경우 위치뿐 아니라 다른 항법정보에도 영향을 미치게 될 것으로 판단된다.

IMU의 장착 위치에 따른 INS/NHC 복합항법의 성능 분석 및 보상에 대한 연구는 추후 연구 방향으로 남겨둔다.

4. CONCLUSIONS

본 논문에서는 INS 기반 차량 항법에서 IMU의 위치에 따른 NHC 만족 여부를 분석하였다. 일반적으로 바퀴의 미끄러짐이 없는 경우 자동차는 NHC를 만족하므로 이 정보를 필터의 측정치로 활용하여 INS의 오차를 보정하는 기법이 많이 사용되고 있다. 그러나 이 논문에서는 Ackermann Geometry를 기반으로 IMU의 장착 위치에 따라 NHC가 만족되지 않는 경우를 해석적으로 분석하였으며 시뮬레이션을 통해 분석결과를 증명하였다. 즉, IMU가 뒷 바퀴의 축 상에 위치하는 경우에는 항상 NHC가 만족되지만 IMU를 \(x\)축 상으로 위치 이동을 하게되면 뒷 바퀴의 축으로부터의 거리에 회전각속도가 곱한 만큼의 속도가 \(y\)축으로 발생하게 되므로 NHC가 만족하지 않게 된다는 것을 보였다. 따라서 항법을 위한 차의 중심은 무게중심으로 설정하는 것이 아니라 뒷 바퀴의 중심축으로 설정해야 하며, 이를 기반으로 IMU의 위치에 따른 Lever-Arm 효과를 분석해야 한다. 추후 이를 기반으로 INS/NHC 결합필터를 설계함으로써 더 정확한 항법결과를 산출할 수 있을 것으로 기대된다.

ACKNOWLEDGMENTS

This research was financially supported by the Ministry of Trade, Industry, and Energy (MOTIE), Korea, under the “Cooperation program for regional leading industrial complexes”.

AUTHOR CONTRIBUTIONS

Seong Yun Cho contributed to the writing of the manuscript. Myeong Seok Chae contributed to provide information in writing the manuscript. All authors discussed the proposed approach and results.

CONFLICTS OF INTEREST

The authors declare no conflict of interest.

References

  1. Chae, M. S. & Cho, S. Y. 2021, Vehicular integrated navigation system compensating for mounting misalignment of the IMU through CKF-based state extention, JICRS, 27, 1084-1091. https://doi.org/10.5302/J.ICROS.2021.21.0152
  2. Cho, S. Y., Chae, M. S., & Shin, K. H. 2021, Reliability analysis of the integrated navigation system based on real trajectory and calculation of safety margin between trains, IEEE Access, 9, 32986-32996. https://doi.org/10.1109/ACCESS.2021.3061070
  3. De-Juan, A., Sancibrian, R., & Viadero, F. 2012, Optimal synthesis of function generation in steering linkages, IJAT, 13, 1033-1046. https://doi.org/10.1007/s12239-012-0106-4
  4. Kim, Y. J., Jung, J. H., & Park, C. G. 2020, Adaptive keyframe-threshold based visual-inertial odometry, JICRS, 26, 747-753. https://doi.org/10.5302/J.ICROS.2020.20.0075
  5. Lim, C., Lee, Y. Cho, A., & Park, B. 2021, A review on the usage of RTKLIB for precise navigation of unmanned vehicles, JPNT, 10, 243-251. https://doi.org/10.11003/JPNT.2021.10.4.243
  6. Liu, L. S., Lin, J. F., Yao, J. X., He, D. W., Zheng, J. S., et al. 2021, Path planning for smart car based on Dijkstra algorithm and dynamic window approach, Hindawi Wireless Communications and Mobile computing, 2021, 8881684. https://doi.org/10.1155/2021/8881684
  7. Roy, J., Wan, N., Goswami, A., Vahidi, A., Jayakumar, P., et al. 2018, A hierarchical route guidance framework for off-road connected vehicles, Journal of Dynamic Systems, Measurement, and Control, 140, 071011. https://doi.org/10.1115/1.4038905