Воспроизведение записанных сообщений CAN
Vehicle Network Toolbox: CAN Communication
Блок CAN Replay воспроизводит записанные сообщения от .mat
файл в сеть CAN или в Simulink®. Вам нужен CAN Configuration блок для воспроизведения в сеть.
Для воспроизведения сообщений, записанных в MATLAB® Командное окно в модели Simulink, преобразуйте их в совместимый формат с помощью vntslgate
и сохраните его в отдельный файл. Дополнительные сведения см. в разделах Журнал и воспроизведение сообщений CAN.
Примечание
Чтобы использовать этот блок, вам нужна лицензия как на Vehicle Network Toolbox™, так и на программное обеспечение Simulink.
Когда вы воспроизводите записанные сообщения, Simulink использует исходные временные метки в сообщениях. Когда вы воспроизводите в сеть, метки времени коррелируют с реальным временем, и когда вы воспроизводите на входной порт Simulink, это коррелирует со временем симуляции. Если метки времени в сообщениях все 0
все сообщения воспроизводятся, как только начинается симуляция, потому что время симуляции и реальное время будут опережать временные метки в воспроизведенных сообщениях.
Блок CAN Replay поддерживает использование режима Simulink Accelerator™ Rapid Accelerator. Используя эту функцию, можно ускорить выполнение моделей Simulink.
Для получения дополнительной информации об этой функции см. документацию Simulink.
Блок CAN Replay поддерживает использование генерации кода наряду с функцией packNGo для группировки необходимого исходного кода и зависимых общих библиотек. Для получения дополнительной информации смотрите Генерация кода.
Блоки Vehicle Network Toolbox Simulink позволяют вам генерировать код, позволяя моделям, содержащим эти блоки, запускаться в режимах Accelerator, Rapid Accelerator, External и Deployed.
Можно использовать Vehicle Network Toolbox, Simulink Coder™ и Embedded Coder® программное обеспечение вместе, чтобы сгенерировать код на конце хоста, который вы можете использовать для реализации вашей модели. Для получения дополнительной информации о генерации кода смотрите Build Process (Simulink Coder).
Блок генерирует код с ограниченной переносимостью. Блок использует предварительно скомпилированные общие библиотеки, такие как DLL, для поддержки ввода-вывода для определенных типов устройств. С помощью этого блока можно использовать packNGo
функция, поддерживаемая Simulink Coder, для настройки и управления информацией о сборке для ваших моделей. packNGo
(Simulink Coder) функция позволяет вам упаковать код модели и зависимые общие библиотеки в zip-файл для развертывания. Вам не нужен MATLAB, установленный на целевой системе, но целевая система должна быть поддержана MATLAB.
Как настроить packNGo
:
set_param(gcs,'PostCodeGenCommand','packNGo(buildInfo)');
В этом примере gcs
- текущая модель, которую вы хотите создать. Создание модель создает zip- файла с таким же именем, как и имя модели. Можно переместить этот zip-файл на другую машину и там создать исходный код в zip-файле, чтобы создать исполняемый файл, который может запускаться независимо от MATLAB и Simulink. Сгенерированный код компилируется как с C, так и С++ компиляторами. Для получения дополнительной информации смотрите Настройка процесса сборки (Simulink Coder).
Примечание
На Linux® платформы, необходимо добавить папку, в которой вы разархивируете библиотеки, в переменную окружения LD_LIBRARY_PATH
.
Совет
Сконфигурируйте блок CAN Configuration перед конфигурированием параметров CAN Receive block.
Укажите имя и путь к файлу, содержащему зарегистрированные сообщения CAN, которые можно воспроизвести. Можно кликнуть Browse, чтобы перейти в расположение файла и выбрать файл.
Укажите переменную, сохраненную в MAT-файле, содержащем информацию о сообщении CAN.
Укажите количество попыток воспроизведения сообщения в модели. Можно задать любое положительное целое число, включая Inf
. Определение Inf
постоянно воспроизводит сообщения, пока симуляция не остановится.
Укажите, воспроизводит ли модель сообщения в сеть CAN или порт выхода. Выберите устройство для воспроизведения в сеть CAN.
Выберите устройство в сети CAN для воспроизведения сообщений. Этот файл недоступен, если вы выбираете Input port
для Replay message to опции.
Задайте время дискретизации блока во время симуляции, которое является временем симуляции, как описано в документации Simulink. Это значение определяет частоту, с которой блок CAN Replay запускается во время симуляции. Если блок находится внутри триггируемой подсистемы или чтобы наследовать шаг расчета, можно задать -1 в качестве шага расчета. Можно также задать переменный MATLAB для шага расчета. Значение по умолчанию является 0,01 (в секундах).
Выберите эту опцию для блока, чтобы выводить сообщения CAN в качестве сигнала шины Simulink. Для получения дополнительной информации об объектах шины Simulink, см. «Составные сигналы (Simulink)».