728x90

Automotive 39

차량용 소프트웨어 개발 환경 4부

코로나 때문에 독일에서 재택근무를 하며 거의 집에만 있고 가끔 딸아이와 공원 산책만 점심에 하고 있다. 많은 Conference 들이 취소/연기되거나 Virtual로 진행되기도 한다. AGL도 필자 회사에서 하려고 하는 F2F 미팅이 취소되고 하와이에서 하려던 Summit도 취소되었다. 오랜만에 차량용 소프트웨어 개발 환경에 대해 AGL (Automotive Grade Linux)의 사례를 가지고 설명해보고자 한다. 회사 사례를 가지고 벤츠의 소프트웨어 개발 환경에 대해 자세히 설명하면 좋겠지만, 공개해도 될지 애매해 오픈 소스 사례를 가지고 설명해 보고자 한다. 도구들이 약간 다르고 방법론이 살짝 다르지만 전체적으로 지향하는 CI/CD의 목적은 동일하고 볼 수 있다. AGL (Automotive Gra..

Automotive 2023.04.22

차량용 소프트웨어 개발 환경 3부

차량용 소프트웨어 개발 환경 2부에서는 개발환경에 필요한 도구 들과 간단한 프로세스에 대해서 언급했다. 3부에서는 개발 프로세스에서 부터 실제 배포가 이루어지는 과정을 필자의 경험을 토대로 풀어나가고자 한다. 기본적으로 Infortainment 를 리눅스 Yocto 환경을 기반으로 설명할 예정이며, 안드로이드나 다른 RTOS는 그 상황에 맞춰 변경하여 구성하면 된다. 하지만 이것 또한 빌드 시스템에 따라 구성하는 방법이 달라지기 때문에 필자의 글을 바탕으로 각자의 환경에 맞춰 생각해 보면 좋을 것 같다. 각 회사별로 사용하는 내용을 직접 언급하는 것은 문제가 있어 오픈소스 AGL (Automotive Grade Linux), webOS OSE (Open Source Edition) 등을 가지고 간단히 언..

Automotive 2023.04.22

Android Automotive

Android Automotive는 자동차의 Infotainment 의 OS로 사용하려고 Google에서 Android를 확장하여 만든 리눅스 기반의 플랫폼이다. 우선 Android Auto와 Android Automotive에 대한 용어 정의부터 명확하게 하고 시작해야할 것 같다. Android Auto: Android 기반 스마트폰의 Projection 을 지원하기 위한 기존 OS에 설치된 애플리케이션이다. Android Automotive: Android Automotive OS, Native Android OS 등 많은 용어로 불리고 있는 안드로이드 리눅스 커널에서 부터 서비스, 애플리케이션이 모두 올라간 OS 이다. 이 글에서Android Automotive를 이야기한다. 아래 링크에서와 같이 ..

Automotive 2023.04.22

Tesla 차량용 소프트웨어

Tesla 차량의 소프트웨어 개발 방법론에 대해 관심을 가지고 있다가, Tesla 소프트웨어 개발 내용을 듣고 자료를 검색하여 이 글을 쓰게 되었다. 실제와 다를 수 있으니 참고용으로 보면 좋을 것 같다. 개발 조직 / 문화 Tesla는 크게 개발팀이 Infortainment 개발팀 (약 300명), Auto Pilot 개발팀으로 구성되어 있는 것으로 보이고 엄청난 강도로 일을 하는 것 같다. 조직 구조는 기술분야에 맞게 Matrix 구조로 되어 있고, 스크럼으로 운영하는 팀이 있지만 따로 SM, PO가 있지는 않은 것 같다. 차량용 소프트웨어 개발이라 하면 Tesla를 많이 벤치마킹하겠다고 달려들고 있지만, Tesla도 BMW등을 벤치마킹했다고 한다. 중요한건 데이터이고 고객 데이터를 수집하는 클라우드..

Automotive 2023.04.22

차량용 소프트웨어 개발 환경 2부

이 글에서는 차량용 IVI 소프트웨어 개발 환경에 대해서 이야기하고자 한다. ELCE 2019에 필자가 제출했고 리젝되었던 제목과 초록은 아래와 같다. Software development process with CI/CD in embedded linux using Yocto Project Yocto Project uses lots of embedded linux products such as consumer electronics, automotive industries, and others. The software development process is different depended on company. According to the process, speed and product quality ..

Automotive 2023.04.21

차량용 소프트웨어 개발 환경 1부

차량용 IVI 소프트웨어 개발 환경에 대해 간단히 소개하고자 한다. 개발 환경을 알기 위해서는 차량에 들어가는 각각의 기능을 이해하는 것이 좋을 것 같아 우선 간단히 소개하고자 한다. 차량에 기본적으로 Instrument Cluster가 들어가고 추가적으로 Head Unit 등이 들어가게 된다. 각 보드의 구성에 따라서 여러개의 SoC가 하나의 Box에 들어가게 된다. 앞에 글에서도 이야기한 것 처럼 고성능의 SoC와 하이퍼바이저를 사용하여 여러 개를 사용해야할 것을 1-2개로 줄이는 노력을 하고 있다. 여기서는 Instrument Cluster과 Head Unit에 들어가는 각각의 Main 소프트웨어에 대해서만 간단히 이야하고자 한다. Instrument Cluster 계기판이 표시되는 부분으로 Saf..

Automotive 2023.04.21

차량용 IVI 개발 환경

LG TV에 들어가는 webOS에 들어가는 Software Platform을 개발했을 때는 개발 보드 하나면 충분했다. 가끔 LG VS (Vehicle Solution)의 차량용 소프트웨어를 개발하는데 도움을 주려고 개발 환경을 보기도 했다. 항상 차량용 개발시에는 장비가 많이 없는 없는 것이 이해가 안갔다. 하지만 돌아보니 복잡한 차량용 장비 및 계속 바뀌는 HW Tier 1의 영향등이 있는 것으로 보인다. 기본적으로 차량용 IVI에는 하나의 SoC가 아닌 여러 개의 SoC가 탑재 된다. 그리고 고급 모델에는 Rear seat display 와 같은 고급 사양이 더 들어가 추가적인 SoC가 들어가기도 한다. 추가적으로 차량은 IVI만이 아닌 여러 ECU와 통신을 하기 때문에 Telematic 등 여러 ..

Automotive 2023.04.21

자동차 소프트웨어 개발 (Car Software Development)

자동차 소프트웨어 개발에 대한 필자의 견해를 하나하나 글로 적어보기로 했다. 모든 내용은 개인적인 견해이므로 참고하기 바라며, 어떠한 의견도 환영한다. 자동차만큼 소프트웨어가 많이 들어가는 만들어지는 제품도 없을 것이다. 자동차는 소프트웨어 개발 전체의 집약체이다. 차량에 점점 많은 기능과 센서들이 들어가고 그것들이 기능안전을 기본으로 서로 맞물려 돌아가면서 복잡해지고 있으며, 이를 대응하는 소프트웨어 개발이 지속적으로 늘어나고 있다. 과거에는 각 센서단위로 저사양의 ECU(Electronic Control Unit)를 Classic Autosar 같은 소프트웨어의 configuration으로 구성했다면, 앞으로는 아래 그림처럼 ECU가 고성능의 ECU로 통합되고 Adaptive Autosar을 포함한 ..

Automotive 2023.04.21

MBition - Mercedes-Benz Innovation Lab. 소개

MBition - Mercedes-Benz Innovation Lab. https://mbition.io/en/home/은 Daimler 차량에 들어가는 소프트웨어 개발을 하기 위해 독일 베를린에 설립한 회사이다. Daimler은 MBition, https://www.daimler.com/karriere/ueber-uns/standorte/standort-detailseite-240192.htm을 주축으로 Daimler 차량에 들어가는 전체 소프트웨어 개발에 필요한 - 소프트웨어 개발 프로세스 - 소프트웨어 플랫폼 - 차세대 제품 것들을 개발하고 확립해 나가고 있다. 2019년 기준 30-40개 다양한 국적을 가진 약 200명의 임직원이, 2023년 기준 900명 이상이 독일의 수도인 베를린에서 근무하고..

Automotive 2023.04.21
728x90
반응형