Packet Output

Запись двоичных данных или сообщения CAN в канал связи

  • Библиотека:
  • Simulink Desktop Real-Time

  • Packet Output block

Описание

Подключение и запись неформатированных двоичных данных на порт, файл или устройство CAN. После добавления блока Packet Output к модели дважды кликните блок, чтобы задать его параметры.

Этот драйвер должен быть одним из следующих:

  • Standard Devices> File

  • Standard Devices> Serial Port

  • Standard Devices> TCP Protocol

  • Standard Devices> UDP Protocol

  • Kvaser> CAN Device

  • PEAK-System> CAN Device

  • Vector> CAN Device

  • MathWorks > virtual CAN (требует Vehicle Network Toolbox™)

При установке устройства UDP вводите адреса портов в десятичном формате в диалоговом окне протокола UDP стандартных устройств.

Любой последовательный выходной порт может отправлять данные со скоростью дискретизации до 500 Гц. Чтобы включить более высокую частоту дискретизации до 10 кГц для некоторых выходных последовательных портов, нажмите кнопку Install new board, выберите Standard Devices > Serial Port и выберите Direct port access.

Блок не поддерживает эту опцию со всеми типами последовательного выхода вывода.

Порты

Вход

расширить все

Значения данных, которые передаются в канал связи как неформатированные двоичные данные. Для устройств CAN или Virtual CAN этот порт поддерживает:

  • CAN_MESSAGE тип данных

  • CAN_MESSAGE_BUS тип данных

  • CAN_FD_MESSAGE_BUS тип данных в режиме CAN FD

Типы данных: single | double | int8 | uint8 | int16 | uint16 | int32 | uint32

Выход

расширить все

Этот порт сигнализирует 1 если блок готов принять новые данные и 0 в противном случае.

Зависимость

Когда вы выбираете Show “Data Ready” port, этот порт видим.

Этот порт сигнализирует 1 если происходит ошибка данных и 0 в противном случае.

Зависимость

Когда вы выбираете Show “Data Error” port, этот порт видим.

В норме или режимы Accelerator возвращают количество тактов таймера, которое ваша модель отстает от ядра реального времени. Когда модель отстает более чем на Maximum missed ticks, программное обеспечение сообщает об ошибке, и симуляция останавливается.

Зависимость

Когда вы выбираете Show “Missed Ticks” port, этот порт видим.

Типы данных: double

Параметры

расширить все

При нажатии кнопки Install new board программное обеспечение отображает список производителей поддерживаемых плат. При выборе производителя программное обеспечение отображает список плат, доступных от этого производителя. При выборе платы программное обеспечение добавляет плату в список зарегистрированных плат и делает эту плату текущей.

По умолчанию начальный выбор в списке зарегистрированных плат следующий < no board selected >.

Зависимость

При выборе платы в списке зарегистрированных плат доступны кнопки Delete current board и Board setup.

Программное использование

Параметры блоков: DrvName

Чтобы удалить текущую плату, нажмите эту кнопку. Первоначальный выбор списка зарегистрированных плат изменяется на < no board selected >.

Зависимость

Чтобы активировать этот параметр, выберите плату в списке зарегистрированных плат.

При удалении текущей платы кнопки Delete current board и Board setup больше не доступны.

Программное использование

Параметры блоков: DrvName

Для настройки платы нажмите эту кнопку.

Откроется диалоговое окно для настройки платы. Для получения дополнительной информации см. документацию производителя платы.

Зависимость

Чтобы активировать этот параметр, выберите плату в списке зарегистрированных плат.

Чтобы деактивировать этот параметр, нажмите Delete current board.

Программное использование

Параметры блоков: DrvAddress
Параметры блоков: DrvOptions

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

Если вы используете решатель с фиксированным шагом, введите значение, которое вы ввели в качестве Fixed step size параметра конфигурации или целое число, кратное этому значению.

Программное использование

Параметры блоков: SampleTime

В норме или режимы Accelerator введите количество тактов таймера, которые ваша модель может отставать от ядра реального времени. Когда модель отстает на это количество или меньше такты таймера, программное обеспечение принимает, что задержка является временной. Это позволяет модели наверстать упущенное, даже если модель пропускает некоторые такты. Когда модель отстает больше, чем это число, программное обеспечение сообщает об ошибке, и симуляция останавливается.

Во режиме external mode программа игнорирует это значение.

Программное использование

Параметры блоков: MaxMissedTicks

В режиме normal или Accelerator установите этот флажок, чтобы отправить количество пропущенных засечек в выходной порт Missed Ticks.

Во режиме external mode Missed Ticks порт равен нулю.

Программное использование

Параметры блоков: ShowMissedTicks

Обычно или режимы Accelerator, установите этот флажок, чтобы предоставить другим программам больше центрального процессора времени, пока ядро ждет ответа от оборудования.

Во режиме external mode программа игнорирует это значение.

Программное использование

Параметры блоков: YieldWhenWaiting

Введите идентификатор обрабатываемого пакета. Если ваш протокол не имеет идентификаторов пакетов, этот параметр отключен.

Программное использование

Параметры блоков: PacketID

Установите этот флажок, если Packet identifier является расширенным идентификатором.

Программное использование

Параметры блоков: PacketID

Введите количество байтов, ожидаемое для каждого входного пакета. Это количество должно совпадать с количеством байтов, требуемым спецификациями типов для Выхода типов данных пакетов.

Программное использование

Параметры блоков: PacketSize

Один или несколько векторы символов, которые определяют, как данные, предоставляемые приложением, форматируются в пакет. Блок Packet Output имеет порт входа, соответствующий каждому вектору символов в Output packet field data types. Изменение количества векторов символов изменяет количество портов.

Каждый вектор символов имеет формат [n*] datatype. Данные, которые описывает вектор символов, имеют тип, заданный как datatype и ширину, заданную как n. Если n не задан, ширина 1. Для примера, 'double' означает один double значение, и '4*int8' означает вектор четырех int8 значения. Можно также вводить 'CAN_MESSAGE' чтобы задать одну CAN_MESSAGE значение.

Вход для каждого порта блока Packet Output может быть скаляром или вектором типа данных. Вектор символов для каждого порта задает тип, который будет использоваться, когда его сигнал выводится на устройство. Если вектор символов для порта совпадает с типом сигнала, входа этому порту, значение сигналов появляется дословно в выход пакете.

Преобразование типа можно также выполнить при выходе. Для примера примите, что вход является четырехэлементным int16 вектор, и вектор символов '4*int8'. Четыре целых чисел преобразуются в int8 перед записью в пакет. Получившиеся данные занимают 4 байта в выход пакете.

Блок заставляет значение вне области допустимого максимального значения для этого типа данных.

Программное использование

Параметры блоков: DataTypes

В списке выберите:

  • Little Endian (по умолчанию) - Получение многобайтовых значений в маленьком эндовом формате.

  • Big Endian - Получите многобайтовые значения в формате big-endian.

Программное использование

Параметры блоков: ByteOrder

При установке этого флажка блок делает видимым выходам порт Data Ready. Этот выходной порт сигнализирует 1 когда блок готов принять новые данные и другие сигналы 0.

Программное использование

Параметры блоков: ShowReady

При установке этого флажка блок делает видимым выходам порт Data Error. Этот порт сигнализирует 1 когда происходит ошибка данных и 0 в противном случае.

Программное использование

Параметры блоков: ShowError

Необязательно. Введите вектор, которое имеет то же количество элементов, что и сумма ширин входных сигналов во всех портах. Когда симуляция начнется, отправьте указанные данные перед другими данными, которые отправляются во время симуляции.

Программное использование

Параметры блоков: InitialValue

Необязательно. Введите вектор, которое имеет то же количество элементов, что и сумма ширин входных сигналов во всех портах. Когда моделирование закончится, после других данных, которые отправляются во время симуляции, отправьте указанные данные.

Программное использование

Параметры блоков: FinalValue
Введенный в R2007b