Automotive – одно тех направлений, где мечтает хоть раз поработать большинство разработчиков. В России над технологическими решениями для транспортных средств в практике Luxoft трудятся более 300 человек. В чём особенности этого направления, над чем работают разработчики Automotive и какие технологии привносит в вашу жизнь это направление, даже если вы не водитель, расскажет Александра Власова, наш Senior Project Manager.
C чем у нас ассоциируются автомобили в обычной жизни? Чаще всего это пробки и необходимость ТО. Но если подумать о чем-то менее бытовом — о том, что смогут делать автомобили в будущем и что смогут дать будущим пользователям, то рисуются удивительные перспективы:
-
беспилотные автомобили
-
«умные» города без пробок
-
удалённая диагностика технического состояния машины
-
дополненная реальность с проекцией сообщений на стекло водителя
-
управление жестами.
И всё это только небольшая часть. Если всё это кажется слишком футуристичным, то вот вам пример:
Это 5 уровней автономности – принятая градация для измерения автоматизации, которая обеспечивает беспилотное вождение. На данный момент большая часть автомобилей находится на втором уровне, но лидеры рынка уже сейчас стремятся попасть на 3+, где уже можно наблюдать за тем, что самостоятельно может делать твой автомобиль. Произойдет это примерно через 3-4 года. Кто сможет сделать это первым, тот и выиграет рынок.
Что меня вдохновляет в Automotive
Во-первых, интересно, кто выиграет эту гонку технологий и выйдет на третий уровень автономности первым. Это индустрия высокой конкуренции, и мне нравится уровень задач, которые предстоит решать. Это и про сложность разрабатываемых систем, и про ответственность менеджмента. Во-вторых, я понимаю, что мой проект – реальный результат моей работы, ездит по дорогам, его можно потрогать руками, и это не что-то далекое и абстрактное.
А еще в Automotive можно найти все mainstream направления: ML, IoT, Cloud, big data, блокчейн, 3D-движки, 5G. Популярным становится Golang, никуда не ушли С/C++ для разработки внутренних систем автомобиля и Java, Python, которые поддерживают инфраструктуру разработки и тестирования.
Особенности индустрии для IT
Чем Automotive сейчас интересен техническим специалистам?
Сложность систем. Сложность кода и системы автомобиля в целом становятся настоящим челенджем для любого разработчика, тестировщика и любого технического специалиста, который имеет отношение к коду. Самое главное, что тут стоит знать — у «автомобильного» кода просто очень много строк. Немного статистики. Боевой самолет – это 30 млн. строк кода, Boeing 787 содержит 6,5 млн. кода для управляющих систем, а Мерседес S-класса – 100 млн. строк кода. Впечатляет, не правда ли?
Сейчас при желании автомобиль можно распечатать на 3D принтере, а вот софт для него по-прежнему будет достаточно сложным. Он будет еще сложнее, поэтому со временем разработка будет забирать всё больше стоимости самого автомобиля, что для нас, как для специалистов IT, в общем-то, замечательно.
Высокий уровень качества и высокая цена ошибки. Согласно NASA, в среднем 10 тыс. строк кода содержит 1 дефект. Нетрудно посчитать сколько дефектов в себе может содержать 100 млн. строк кода. Поэтому Automotive – это еще и очень строгие стандарты качества. Отсюда появляется необходимость в дополнительных системах, которые должны поддерживать создание такого софта, обеспечивать валидацию и верификацию на высочайшем уровне.
Важность безопасности. Безопасность — это базовая и жизненно важная опция для автомобиля, от которой в буквальном смысле будут зависеть человеческие жизни. Простейший пример – ремни безопасности, которые спасают жизни каждый год миллионам людей. Но если речь о разработке, то технологии пошли дальше — например, технология active safety — это различные стабилизационные системы, которые берут на себя управление автомобилем в критических ситуациях. Эта предметная область непосредственно влияет на сложность разработки в Automotive.
Использование математики и алгоритмов. Всё базируется на таких устройствах, как радары, лидары (лазерные радары), камеры, ультрасоники. Мы, к примеру, разрабатывали часть алгоритмов для лидара, где для фильтрации шумов в облаке точек применялся фильтр Калмана. Так что математики, C/C++, embedded разработчики, мы вас ждем — без математики тут никуда.
Для ADAS (Advanced driver-assistance systems) также используются датчики навигации, активное построение карт с обнаружением своего местоположения на карте (так называемые SLAM-алгоритмы), и информация от сенсоров в автомобиле.
Массовое производство. Технологическая поддержка самой инфраструктуры для создания автомобиля и линии сборки — отдельная очень интересная область работы в Automotive. К примеру, Luxoft в этой области разработал алгоритмы калибровки лидара на конечных этапах конвейера, где использовались С++ и алгоритмы misalignment.
Что делают Automotive команды в Luxoft?
Так чем мы всё-таки занимаемся в этой области? Да всем. Направление Automotive в Luxoft делится на три основные практики:
Digital Cockpit – это всё, что находится внутри кабины:
-
human-machine интерфейс, приборные панели
-
навигационные системы
-
in-vehicle infotainment
Autonomous Driving – это всё про беспилотное вождение:
-
разработка различных ассистентов, по типу автоматического паркинга
-
embedded development, т.е. всё, что относится к работе микроконтроллеров
-
участие в разработке операционных систем AUTOSAR Classic and Adaptive
-
разработка поддерживающего инструментария — например, платформы менеджмента данных
Connected Mobility – это про взаимодействие автомобилей между собой и с окружающей инфраструктурой:
-
удаленная диагностика технического состояния
-
телематика и инфраструктура (умный город)
-
взаимодействие с облачными сервисами
-
различные мобильные ассистенты
-
платформы IoT
А что по кейсам?
Пример одного из проектов – Robotic Drive – это открытое совместное решение от DXC и Luxoft для компаний-автопроизводителей. Robotic Drive – это платформа менеджмента данных и дополнительного инструментария, который ускоряет процесс разработки, управляет данными, собранными с автомобиля во время тестирования, извлекает информацию из них и дополняет данные воссозданными 3D-сценами, которые используются для валидации.
Технологии, которые мы используем на платформе — это:
-
big data: Hadoop, Jarn, Java и не только
-
Cloud: Azure, AWS
-
ML-алгоритмы для функций автономного вождения, распознавания и извлечения данных
-
движки для 3D-симуляций: Unity, Unreal Engine, и инструменты, которые на них базируются
В проекте на данный момент работает более 40 человек. После слияния DXC и Luxoft, предложение проекта пополнилось новым функционалом, который базируется на опыте Luxoft. Сейчас уже есть совместная разработка новых модулей платформы совместно с одним из tier-1 поставщиков компонентов для автомобиля.
Среди других интересных проектов в практике Automotive в Luxoft:
-
создание расширяемой платформы для автогенерации кода для крупных немецких производителей оборудования
-
разработка платформы на базе операционной системы AUTOSAR Adaptive – это real-time операционная система, применяемая в Automotive
-
создание архитектуры платформы для анализа данных
Если вам стало интересно
Что стоит изучить и о чем почитать, если вы хотите попасть в область автомобилестроения:
-
Жизненный цикл конструирования автомобиля;
-
Валидация и верификация;
-
CI/CD;
-
Специфика работы с микроконтроллерами;
-
Автомобильные сети;
-
Операционные системы;
-
Языки программирования и специальные стандарты;
-
Инструменты в автомобильной промышленности;
-
ASIL – automotive safety integrity levels;
-
A-SPICE методология;
-
Functional Safety ISO 26262.
Уже уверены в своих знаниях в сфере Automotive? Приходите к нам в Luxoft, мы ищем талантливых разработчиков в крутые проекты.
ссылка на оригинал статьи https://habr.com/ru/company/luxoft/blog/549810/
Добавить комментарий