ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [AI] 자율주행차의 소프트웨어 시스템은 어떻게 구성되과인? ~처럼
    카테고리 없음 2020. 2. 26. 03:04

    [자율주행차는 어떻게 주변의 귀추를 인지할까?] 우체통으로 자율주행차에 장착되다 각종 센서에 대해 알아보았습니다. 모든 센서로부터 수집된 데이터는 자율주행차에 탑재된 컴퓨터의 소프트웨어가 통합·분석해, 자동차의 주행 자결로 연결됩니다.자율주행자동차의 전부 시스템에 대해서는 구조, 본인의 구성요소에 대한 용어가 통하지 않고 자율주행차의 두뇌 역할을 하는 핵심 component들에 대해 아래 그림을 참조해 설명해 보고 싶다.(https://www.researchgate.net/publication/32032개 749_Comparison_of_two_non-linear_model-based_control_strategies_for_autonomous_vehicles/figures?lo=하나)​


    >


    localization component에서는 자동차의 "Where AmI(나는 아주 최근에 어디 있니)"에 대한 대답을 하는 역할을 합니다. GPS(global positioning system), inertial(관성) sensor 및 odometry sensor로부터 전달받은 데이터와 digital map을 사용하여 자동차의 현재 위치뿐만 아니라 자동차의 방향(orientation)까지 파악합니다. GPS 사용이 어려운 곳에서는 디지털 맵을 사용하세요. digital map은 cloud에서 제공됩니다. ​ GPS는 뚜렷하고 위치 update속도가 한 00 ms에 느리다는 단점이 있다, inertial sensor는 update의 속도가 5 ms에서 이르지만, error가 누적되고 있어 정확도가 떨어졌어요. Kalman filter를 사용하여 두 가지 기술의 장점을 살렸습니다.perception component에서는 자동차 주변에 있는 오브젝트를 구분하고 오브젝트의 위치이동을 추적합니다. 이를 하기 때문에 camera, radar, lidar, ultrasonic sensor등으로 수집된 데이터로 주변의 상세한 3D지도(사진)을 만듭니다.이 사진을 분석하여 자동차 주변에 있는 객체를 구분합니다. 객체에는 다른 자동차, 자전거, 보행자, 동물, 레인표시, 도로표시, 신호등이 있습니다. 이러한 객체 구분(classification)에 machine learning(deep learning) 기술을 사용합니다.위의 그림은 perception component에 prediction component도 포함한 것 같습니다. prediction component에서는 perception component에서 골라낸 주변 객체가 향후 2-3초 후에 어떤 행동을 할지 예측하는 역할을 합니다. 보행자가 길을 건너는지, 자동차가 좌회전을 할지, 레인을 바꿀지 등을 예측해야 합니다. lidar(laserradar)에서 수집한 데이터에서 사람이 어디를 가는지도 인지할 것 같아요. ​ planner component는 navigation component이라고도 부르는데 다음과 같이 4개의 module에 크송뎁니다.


    global path planner는 현재 사용되고 있는 navigator입니다.출발지점과 도착지점 사이의 주행경로를 판정하여 지속적으로 update 하되 중간에 경로를 변경할 수도 있습니다. local path planner는 global path를 따르는 중에 레인 레벨 판정을 하는 역할을 합니다. waypoint position decision module은 global path와 local path 사이에 길이가 바뀌는 지점에 대한 판정을 합니다.behavior module 또는 driving policy module에서는 perception component와 prediction component의 정보를 바탕으로 자동차의 방향을 바꾸는지, 감속하는지, 정지하는지, 가속하는지 등의 판정을 해야 합니다. 이 모듈에서 내리는 판정으로 obstacle(장애물)과 collision(충돌/추돌)을 피할 수 있습니다.motion control module은 behavior module의 판정에 따라 자동차의 가속기, 브레이크, 운전대 등을 작동하는 역할을 합니다.아래 그림은 소프트웨어 컴포넌트 간의 데이터 흐름을 나타냅니다. 그림에서 사선은 센서 input 데이터를 자기 표시하고 실선은 소프트웨어 component로 가공된 데이터를 자기표시합니다. "trajectory planning"은 위에서 말한 local path planner이고, "command & control"은 위에서 말한 driving policy 및 motion control에 해당됩니다.​


    >


    이 3년 자율 주행 자동차 운전자와 보행자가 사망하는 사고가 몇건 있옷슴니다. 전체 perception component가 오브젝트를 제때 인지하지 못했기 때문에 발발한 것입니다.다음 포스트에서 자율주행차 인신사고에 대해 알아보겠습니다.


    댓글

Designed by Tistory.