Роль блок-диаграмм в разработке автономных систем управления транспортными средствами

Разработка безопасных, надежных и эффективных автономных систем управления транспортными средствами является одной из самых сложных инженерных задач современной эпохи. Эти системы должны интегрировать восприятие, принятие решений, планирование, приведение в действие и отказоустойчивые операции в сплоченную и избыточную архитектуру. Инженерам необходимо четкое, абстрактное представление о том, как все подсистемы взаимодействуют, прежде чем брать на себя обязательство по детальной реализации. Блок-схемы служат именно этой цели - они обеспечивают визуальный язык, который перегоняет растянутую сложность в управляемые, структурированные представления. Используя блоки, сигналы и петли обратной связи, команды разработчиков могут проектировать, анализировать и проверять логику автономных систем управления задолго до того, как будет написан какой-либо код или собрано оборудование.

Что такое блок-диаграммы?

Блок-схема представляет собой схему, в которой каждый блок представляет функциональный компонент или подсистему, а направленные линии (или стрелки) указывают поток информации, управляющих сигналов или физических величин между ними. Этот формализм не ограничивается программным обеспечением или электроникой - он также используется в механических, термических и гидравлических областях. В контексте автономного управления транспортным средством блок-схемы обычно функциональны или ориентированы на управление. Функциональная блок-схема ] делит систему на задачи высокого уровня (например, получение данных датчика, отслеживание объектов, планирование пути), в то время как блок-схема управления ] включает в себя петли обратной связи, функции передачи и усиления для регулирования замкнутого цикла (например, управление рулевым управлением, ответ дроссельной заслонки).

Блок-схемы имеют несколько стандартных обозначений.

  • Диаграммы потоков данных — подчеркивают движение данных, а не управление.
  • Диаграммы причинно-следственных связей — используются для анализа неисправностей в технике безопасности.
  • Диаграммы перехода состояния — часто в сочетании с блоками для моделирования поведения модулей.
  • Графики потока сигналов — более математическая форма, используемая в теории управления.

Что делает блок-схемы, уникально подходящими для автономных систем, так это их способность охватывать несколько уровней абстракции. Один блок на диаграмме верхнего уровня может представлять собой целый стек восприятия, в то время как блок-схема нижнего уровня сверлит процесс синтеза датчика, показывая отдельные алгоритмы фильтрации и вычисления Калмана. Это иерархическое разложение выравнивается непосредственно с многоуровневой архитектурой, распространенной в современных автономных стеках транспортных средств.

Блок-диаграммы в архитектуре автономных транспортных средств

Общество автомобильных инженеров (SAE) определяет шесть уровней автоматизации вождения (SAE J3016), от уровня 0 (без автоматизации) до уровня 5 (полная автономия). По мере повышения уровня автоматизации увеличивается и сложность системы управления. Для уровней 3 и выше система должна обрабатывать широкий спектр операционных сценариев, условий окружающей среды и режимов отказа.

Типичная автономная архитектура транспортного средства может быть разделена на несколько основных блоков: восприятие , локализация и картирование , принятие решений (включая планирование поведения), планирование пути , управление и актуация . Каждый блок далее разлагается на подблоки. Блок-схема становится единственным источником истины о том, как эти блоки соединяются и взаимодействуют, как номинально, так и при условиях неисправности. Диаграмма также уточняет интерфейсы — какие сигналы (например, ограничивающие коробки, точки траектории, команды крутящего момента) проходят между блоками и с какой скоростью.

Поскольку автономные транспортные средства являются системами, критически важными для безопасности, блок-схемы также используются для моделирования избыточности и и разнообразия. Например, система избыточного восприятия может включать в себя два независимых набора датчиков и два алгоритма синтеза. Блок-схема может показать логику голосования, которая сравнивает выходы и арбитражи, которые приводят к доверию. Тот же подход применяется к распределению мощности, вычислительным модулям и коммуникационным шинам.

Система восприятия

Блок восприятия преобразует исходные данные датчика в семантическое понимание окружающей среды. Датчики включают камеры, LiDAR, радар, ультразвуковые и тепловые устройства. Блок-схема для восприятия часто начинается с интерфейсов датчиков, затем переходит к низкоуровневой обработке сигналов (например, денозирование, калибровка), извлечение признаков и, наконец, обнаружение и классификация объектов. Современные системы восприятия также включают слияние датчиков - блок, который объединяет данные из нескольких модальностей для повышения точности и уменьшения слепых пятен. Например, радар обеспечивает надежные оценки скорости, в то время как камеры предлагают богатый визуальный контекст; слияние обоих дает надежные следы объекта.

Каждый подблок представляет собой отдельный алгоритм или компонент: сверточную нейронную сеть для обнаружения изображений, точечную сеть для LiDAR, фильтр Калмана для отслеживания и менеджер слияния, который выравнивает координатные кадры и временные метки. Блок-схема позволяет легко увидеть, где существуют зависимости данных и какие блоки работают параллельно по сравнению с последовательно. Эта видимость имеет решающее значение для соблюдения крайних сроков в реальном времени - сквозная задержка восприятия менее 100 миллисекунд является общей целью для скоростей шоссе.

Принятие решений и планирование

Блок принятия решений потребляет выход восприятия («мировая модель») и создает план поведения транспортного средства. Большинство систем используют многоуровневую иерархию планирования:

  1. Планирование маршрута (FLT:0) — определяет путь высокого уровня от места происхождения до места назначения, часто используя предварительно вычисленные дорожные карты (например, карты OpenStreetMap или HD).
  2. Планирование поведения — решает ходовой маневр: изменение полосы движения, слияние, выход, остановка или следование.В этом блоке используются машины с конечным состоянием или системы на основе правил.
  3. Планирование движения — генерирует осуществимую, свободную от столкновений траекторию (профиль траектории + скорость) на коротком горизонте (например, 5-10 секунд).

Блок-схемы в этой области часто изображают петли обратной связи между планированием и управлением. Например, траектория от планировщика движения передается блоку управления, который отслеживает его с помощью контроллера прогнозирования модели (MPC) или контроллера PID + пересылки. Блок управления может затем возвращать ошибки отслеживания в блок планирования для перепланировки. Эта структура замкнутого цикла элегантно захватывается на блок-схеме, показывая пути сигнала и скорости обновления.

Система привода

Блок приведения в действие переводит управляющие сигналы (угол поворота, педаль ускорения, давление тормоза) в физические действия. В обычном транспортном средстве это включает электронные блоки управления (ECU), которые взаимодействуют с гидравлическими или электрическими приводами. Системы привода по проводам, которые необходимы для автономной работы, сами по себе являются сложными подсистемами со встроенным резервированием (например, два или три независимых канала для рулевого управления).

Блок-схема для приведения в действие может показывать путь запроса от стека принятия решения/управления к интерфейсу транспортного средства, затем расщепление на параллельные каналы, каждый с микроконтроллером, драйвером двигателя и приводом. Диаграмма также включает обратную связь от кодеров и датчиков силы для проверки того, что было достигнуто заданное действие. Критические для безопасности приложения часто требуют блоков мониторинга, которые обнаруживают расхождения между желаемыми и фактическими выходами и запускают безопасное состояние (например, остановка транспортного средства).

Функциональная безопасность и отказоустойчивость

Автономные транспортные средства должны соответствовать стандартам функциональной безопасности, таким как ISO 26262 (для электрических / электронных систем) и возникающим ISO 21448 (Безопасность предполагаемой функциональности). Блок-схемы являются основой для анализа безопасности. Инженеры используют их для выполнения Failure Mode and Effects Analysis (FMEA) и Fault Tree Analysis (FTA). Каждый блок может быть аннотирован с частотой отказов, диагностическим покрытием и механизмами безопасности. Диаграммы помогают идентифицировать отдельные точки отказа и обеспечить достаточную избыточность.

Например, типичная двухкомпьютерная архитектура (первичная и вторичная) может быть смоделирована как два параллельных блока, которые самостоятельно обрабатывают данные датчиков и выдают команды управления. Блок супервайзера контролирует здоровье и выбирает выход. Блок-схема делает стратегию избыточности явной и позволяет инженерам вычислять общую надежность системы и вероятность опасных событий.

Модельный дизайн с использованием блок-диаграмм

Современная разработка автономных транспортных средств в значительной степени зависит от дизайна на основе модели (MBD). В MBD блок-схема - это не просто чертеж - это исполняемая спецификация. Такие инструменты, как MATLAB / Simulink , SCADE и dSPACE TargetLink, позволяют инженерам моделировать поведение всей системы с самых ранних стадий. Блоки могут быть реализованы в графической форме (например, машины состояний, функции передачи) или с помощью фрагментов текстового кода. После проверки модели с помощью моделирования инструмент может автоматически генерировать готовый к производству код C / C++, устраняя ошибки ручного кодирования и ускоряя путь от концепции к транспортному средству.

Simulink, например, поставляется со специализированными библиотеками для автомобильных приложений, включая динамику транспортного средства, модели датчиков и модели привода. Инженеры могут объединять блоки восприятия, планирования и управления в единой среде моделирования и тестировать виртуальный мир (например, используя Unreal Engine или CarSim). Блок-схема всей системы затем представляет как алгоритмическую логику, так и модель установки (физика транспортного средства), что позволяет проверять стабильность замкнутого цикла, производительность и обработку неисправностей до того, как будет построено какое-либо оборудование.

Важным преимуществом модельных блок-схем является прослеживаемость. Каждый блок может быть связан с требованиями, тестовыми случаями и отчетами об инспекциях. Эта прослеживаемость требуется сертификацией безопасности (ISO 26262, ASIL-D). Аудиторы могут проверить иерархию блок-схем, чтобы подтвердить, что каждое требование безопасности реализовано и протестировано. Интеграция блок-схем с инструментами управления требованиями (например, IBM DOORS, Polarion) создает бесшовный рабочий процесс от архитектуры до валидации.

Преимущества автономного развития транспортных средств

Использование блок-схем обеспечивает конкретные, измеримые преимущества на протяжении всего жизненного цикла разработки:

  • Ясность архитектуры — команды могут визуализировать, как разлагается система управления, какие блоки статичны против государственных, и какие существуют зависимости. Это предотвращает «большой шар грязи» архитектур, которые невозможно отладить или сертифицировать.
  • Ранняя валидация — перед тем, как какое-либо оборудование будет построено, блок-схемы могут быть смоделированы для выявления несоответствий во времени, несоответствия данных или логических ошибок.
  • Командная связь — инженеры по восприятию, инженеры по планированию и инженеры по управлению имеют свои собственные диаграммы, но блок-схема верхнего уровня служит общим языком.
  • Поддержка анализа безопасности — FMEA, FTA, анализ рисков и оценка рисков (HARA) все блок-схемы рычагов. Механизмы безопасности (например, проверки правдоподобности, таймеры сторожевых собак) могут быть нарисованы в виде явных блоков, что делает архитектуру безопасности поддающейся проверке.
  • Конфигурируемая для разных платформ — одна и та же блок-схема может быть адаптирована для разных платформ транспортных средств путем замены конкретных блоков (например, различных моделей привода или конфигураций датчиков).
  • Автоматическое генерирование и тестирование кода — блок-схемы, которые являются исполняемыми, могут генерировать готовый к ECU код и тестовые ремни, уменьшая возможность человеческой ошибки в переводе.

Реальные примеры и принятие промышленности

Ведущие разработчики автономных транспортных средств полагаются на блок-схемы и дизайн на основе моделей. Waymo опубликовал статьи, описывающие модульную архитектуру с четкими интерфейсами между восприятием, прогнозированием и планированием. Их системные блок-схемы подчеркивают избыточность и отказоустойчивость проектирования. NVIDIA DRIVE Платформа обеспечивает моделирование и блок-диаграммы-подобные инструменты для создания сквозных автономных стеков вождения. DRIVE Sim включает в себя блок-редактор для конфигурации датчика и определения сценария.

Другим заметным примером является проект с открытым исходным кодом Apollo (от Baidu). Документация Apollo включает подробные блок-схемы модулей восприятия, управления и планирования. На блок-схеме управления, например, показан каскадный PID-контроллер с передовыми условиями для рулевого управления и дросселя, смоделированный точно так, как если бы его рисовали на доске. Эти диаграммы используются тысячами разработчиков по всему миру для понимания и внесения вклада в систему.

Что касается аэрокосмической и роботизированной систем, то роботизированная операционная система (ROS 2) и ее визуализация узлового графика предлагают вид блок-диаграммы во время выполнения. Хотя принцип не совсем совпадает с блок-схемами управления, он идентичен — узлы являются блоками, темы являются сигналами. График ROS 2 можно проверить вживую, чтобы отладить поведение автономного транспортного средства.

В стандартах безопасности ISO 26262 предписывает использование схем «функционального разложения» и «системного архитектурного проектирования». Многие OEM-производители и поставщики уровня 1, такие как Bosch и ZF, производят блок-схемы в рамках своей документации по безопасности. Они часто объединяют блок-схемы управления с аппаратными архитектурными диаграммами, чтобы показать поток от датчиков к вычислениям к исполнительным устройствам, включая отказоустойчивые пути.

Заключение

Блок-схемы — это не просто инструмент презентации — они являются основой современной разработки автономных систем управления транспортными средствами. От раннего исследования концепции до окончательной сертификации эти диаграммы позволяют инженерам проектировать, моделировать, проверять и сообщать о огромной сложности автономной системы вождения. Интегрируя блок-схемы в рабочий процесс проектирования на основе модели, команды могут рано улавливать конструктивные недостатки, автоматически генерировать производственный код и строить глубокое понимание, необходимое для того, чтобы сделать безопасные, надежные автономные транспортные средства реальностью. По мере того, как технология продолжает развиваться в направлении более высоких уровней автономии, роль блок-схем станет только более центральной, преодолевая разрыв между абстрактными алгоритмами и стальной и кремниевой реальностью транспортного средства.