ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 자율주행 Software
    카테고리 없음 2020. 3. 8. 09:14

    이번 시간에는 자율주행과 관련된 Software에 대해 알아보겠습니다. 자율 주행 Software layer는 RTOS(Real-Time Operating System), Runtime Framework, Application modules의 3개의 Sub layers로 구성됩니다.RTOS(Real-Time Operating System)는 특정 작업이 주어진 시간 내에 완료됨을 보장한다. Real-time이란 자동차 센서가 외부에서 데이터를 수집한 후 자율주행차의 운영체제가 단시간에 적절한 계산과 분석, 조치를 실행할 수 있는 것을 내용으로 한다. 예를 들어 자율주행 센서가 차 앞으로 움직이는 자율주행을 감지한다면 단시간에 앞의 자율주행이 보행자인지 차인지 다른 물체인지 인식해 향후 이동방향과 속도를 예측하고 속도를 늦출지 정지시킬지를 표결하고 차량은 그 판단을 실행해야 한다. Real-time 성능은 안정적인 시스템과 안전 운전을 보장하기 위한 중요한 요건입니다. 현재 Ubuntu Linux operating system을 많이 사용하는데 real-time operating system은 아닙니다. 이로 인해 많은 회사에서 real-time operating system으로 변형하여 사용한다.


    >


    Runtime Framework는 ROS(Robot Operating System)일 것.ROS는 로봇 산업에서 오랜 역사를 가지고 있으며 현재 Application의 빠른 발전을 위한 3,000개 이상의 기본 라이브러리가 있어 많은 커뮤니티가 계속 업데이트합니다. ROS는 기능에 따라 자율주행 시스템을 다양한 모듈에서 자신감을 갖을 수 있습니다. 각 모듈은 자체 메시지를 reciveing, publishing 및 processing에 책임을 집니다. 모듈은 독립적이며 Runtime Framework을 통해 통신할 수 있기 때문에 모든 단 하나나 모듈을 쉽게 조정할 수 있습니다.


    >


    ROS는 가장 널리 사용되는 Framework으로 최신 가장 많은 발전을 위한 모듈을 포함하고 있습니다. ROS는 한 대씩 통신 시냅치리오를 제공합니다. 예를 들어 만약 point cloud data를 receive한 경우 이 data를 obstacle detection, localization, GUI tools에서 동시에 병렬로 publishing하여 통신을 가속시킵니다.


    >


    ROS에서는 Process를 Node라고 부르지만 ROS에서는 Master Node 이외의 무수한 Node로 구성되어 있으며 각 Node는 고유한 기능을 가지고 있습니다. Master Node는 모든 Node의 정보를 관리하고 통신할 수 있도록 매칭하는 Node이다. 이로써 Master Node에 문재가 발발하면 모든 시스템에 문재가 발발합니다. 이 문재는 Master Node를 제거하고 각 노드에 다른 노드의 정보를 가지고 통신하여 한 노드에 문재가 발발해도 전체적인 시스템에 문재가 발발하지 않는 노하우로 대체하여 사용됩니다.Application modules는 Mapengine, localization, perception, planning, control, end-to-enddrviving 등이 있습니다. 각 모듈의 알고리즘과 모듈 간의 관계는 복잡합니다. module에 대한 연구와 어떻게 연관성이 있는지에 대한 많은 연구가 필요합니다. Application modules에 대해서는 별도로 업데이트 합니다.감사합니다


    댓글

Designed by Tistory.