В автомобильных сетях обмен информацией обычно охватывает несколько электронных блоков управления (ЭБУ). Для сигналов, связанных с безопасностью — скорость автомобиля, положение селектора, режим автомобиля/питания — целостность и достоверность данных критичны. Модуль симуляции AUTOSAR E2E в TSMaster реализует сквозную защиту данных (End-to-End): данные не будут искажены, потеряны или повреждены при передаче. В статье — инструкция по работе с AUTOSAR E2E в TSMaster.

Ключевые слова: TSMaster, AUTOSAR, E2E, CRC, Rolling Counter, внедрение ошибок.

1. Обозначения и символы

Стили и обозначения, используемые в интерфейсе модуля, приведены в таблицах ниже (рис. 1-1, 1-2).

Обозначения E2E
Рис. 1-1. Обозначения и символы (часть 1)
Обозначения E2E
Рис. 1-2. Обозначения и символы (часть 2)

2. Обзор функций

Модуль симуляции AUTOSAR E2E на основе механизма AUTOSAR E2E и заданной пользователем конфигурации выполняет защиту и проверку данных, а через UI показывает, корректны ли E2E-данные на отправке и приёме. Основные функции:

  • отправка E2E-сообщений;
  • проверка E2E-сообщений;
  • внедрение E2E-ошибок (fault injection);
  • прочие функции разработки и тестирования.

В настоящее время модуль AUTOSAR E2E поддерживает CAN, CAN FD и SOME/IP; в дальнейшем планируется поддержка LIN, FlexRay и Ethernet.

3. Окна модуля

Модуль AUTOSAR E2E состоит из двух основных областей: «Состав сети» и «Информация».

3.1. Состав сети

«Состав сети» в виде дерева показывает E2E-информацию из загруженного ARXML-файла: сеть → узел → сообщение → группа сигналов → сигнал (рис. 3-1).

Состав сети
Рис. 3-1. Состав сети

В дереве есть колонки «Сеть — сообщение — группа сигналов — сигнал», «Тип», «Имя конфигурации» и «Тип конфигурации» (рис. 3-2 – 3-5).

Дерево сеть-сообщение-сигнал
Рис. 3-2. Иерархия «сеть — сообщение — группа сигналов — сигнал» и типы
Имя конфигурации
Рис. 3-3. Имя конфигурации
Тип конфигурации
Рис. 3-4. Тип конфигурации

3.2. Информация

В области «Информация» отображаются: данные алгоритма Profile, соответствующего выбранной группе сигналов (SignalGroup), а также сведения о проверке E2E при отправке и приёме (рис. 3-5).

Информация E2E
Рис. 3-5. Область «Информация»

Назначение элементов окна (рис. 3-6):

Описание окна
Рис. 3-6. Пояснения к окну «Информация»

4. Пример: сборка проекта AUTOSAR E2E и проверка

В этом разделе — построение проекта TSMaster AUTOSAR E2E и разбор результатов. В примере используется временная база данных, только для демонстрации реализации и проверки AUTOSAR E2E.

4.1.1. Импорт базы данных

TSMaster поддерживает несколько способов импорта баз данных (dbc / ldf / ARXML / xml):

▲ Перетащите файл базы в окно TSMaster — по умолчанию он загрузится на канал 1 соответствующего типа шины; затем в TSMaster можно переназначить базу на нужный канал (рис. 4-1, 4-2).

Перетаскивание базы
Рис. 4-1. Перетаскивание файла базы данных
Выбор канала и базы
Рис. 4-2. Выбор канала и базы данных

▲ Либо в TSMaster: «Analysis» → «Databases» → выберите нужную шину → правой кнопкой по каналу добавьте базу данных (рис. 4-3). Загрузка базы возможна и через API (рис. 4-4).

Добавление базы
Рис. 4-3. Добавление базы данных
Загрузка базы через API
Рис. 4-4. Загрузка базы данных через API

После этих действий база данных успешно загружена в TSMaster.

4.1.2. Просмотр информации AUTOSAR E2E

В TSMaster откройте «Simulation» → «AUTOSAR E2E» (рис. 4-5).

Просмотрщик AUTOSAR E2E
Рис. 4-5. Просмотрщик AUTOSAR E2E

4.1.3. Включение AUTOSAR E2E

Чтобы включить AUTOSAR E2E, достаточно в RBS-симуляции активировать соответствующий узел — механизм реализации и проверки AUTOSAR E2E включится автоматически: «Simulation» → «CAN RBS Simulation» (рис. 4-6).

Включение AUTOSAR E2E
Рис. 4-6. Включение AUTOSAR E2E в RBS-симуляции

4.1.4. Проверка E2E-информации

После выполнения предыдущих шагов запустите измерение и включите RBS-симуляцию — в окне сообщений шины видны отправляемые кадры (рис. 4-7).

Окно сообщений
Рис. 4-7. Сообщения на шине

В окне сообщений видно, что сигналы CRC и RC (Rolling Counter) меняются в реальном времени, но по этому окну нельзя понять, корректны ли E2E-данные. Вернитесь в просмотрщик AUTOSAR E2E и посмотрите на соответствующую E2E SignalGroup: зелёный — данные корректны, красный — ошибка, чёрный — информация по SignalGroup не обнаружена (рис. 4-8).

Проверка E2E
Рис. 4-8. Проверка E2E

Статусы E2E-проверки (рис. 4-9):

Статусы проверки E2E
Рис. 4-9. Статусы E2E-проверки

5. Внедрение E2E-ошибок

TSMaster предоставляет набор функций внедрения ошибок для тестирования. Доступные типы внедрения:

  • потеря сообщения;
  • фиксация значения сигнала;
  • ошибка CRC;
  • ошибка RC (Rolling Counter).

5.1. Внедрение ошибки CRC

Для внедрения ошибки CRC задайте значение CRC в C-скрипте или Python-скрипте TSMaster. Пример кода на C (рис. 5-1):

Пример кода CRC
Рис. 5-1. Пример C-кода для внедрения ошибки CRC

5.2. Внедрение ошибки RC

Аналогично для RC: значение Rolling Counter задаётся в C-скрипте или Python-скрипте TSMaster — код аналогичен примеру выше, используется событие RC.

6. API

6.1. can_rbs_fault_inject_handle_on_autosar_crc_event

API CRC
Рис. 6-1. Функция внедрения ошибки CRC

6.2. can_rbs_fault_inject_handle_on_autosar_rc_event

API RC
Рис. 6-2. Функция внедрения ошибки RC