Рабочие процессы коммуникации CAN в Simulink

Рабочий процесс передачи сообщений

Этот рабочий процесс представляет наиболее распространенную модель CAN Transmit. Отрегулируйте модель по мере необходимости. Для получения дополнительных примеров рабочего процесса смотрите Build CAN Communication Simulink Models и «Simulink Tutorials» в примерах Vehicle Network Toolbox.

Work flow diagram for CAN message transmission in Simulink

Использование блоков Mux

  • Используйте блок Mux (Simulink), чтобы объединить каждое сообщение от источника, если они передаются с той же скоростью.

  • Используйте один CAN Transmit блок для каждого сконфигурированного блока Mux (Simulink).

Рабочий процесс приема сообщений

Фильтрация сообщений

Настройка фильтров для обработки только соответствующих сообщений. Это обеспечивает оптимальную эффективность симуляции.

Не настраивайте фильтры, если вам нужно проанализировать все коммуникации шины.

Function-Call инициированная обработка сообщений

Настройте блок CAN Unpack:

  • При вызове функции триггируемая подсистема, если вы хотите распаковать каждое сообщение, полученное вашим CAN Receive блоком.

  • Без вызова функции триггируемая подсистема, если вы хотите распаковать только самое последнее сообщение, полученное вашим CAN Receive блоком.
    Настройте эту систему, если блок приема фильтрует одно сообщение.

Обработка в нисходящем направлении

Для любой последующей обработки, используя полученные сообщения, включите блоки:

  • В пределах подсистемы вызова функций, если ваш нисходящий процесс должен ответить на все сообщения, полученные в одном timestep в этой модели.

  • Вне подсистемы вызова функций, если ваш процесс в нисходящем направлении реагирует только на самое последнее сообщение, полученное в установленный временной интервал в этой модели.
    В этом случае блок CAN Unpack не будет отвечать ни на какие другие полученные сообщения, независимо от идентификатора сообщений.