Packet Input

Считайте двоичные данные или сообщение CAN из канала связи

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

  • Packet Input block

Описание

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

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

  • 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 стандартных устройств.

Порты

Выход

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

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

  • CAN_MESSAGE тип данных

  • CAN_MESSAGE_BUS тип данных

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

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

Зависимость

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

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

Зависимость

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

Этот порт показывает временную метку для пакетов сообщений CAN.

Зависимость

Когда вы выбираете Show packet timestamp 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 Input имеет порт выхода, соответствующий каждому вектору символов в Block output data types. Изменение количества векторов символов изменяет количество выходных портов.

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

Предоставляя массив ячеек из таких векторов символов, можно преобразовать вход пакет в требуемые типы, упакованный в векторы. Для примера укажите {'int16','int16','double'} создает три порта. Первый и второй каждый выводит int16 значение, и третий выводит double. Определение {'2*int16','double'} создает два порта: вектор из двух int16 значений и скаляра double.

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

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

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

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

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

  • Big Endian - Отправка многобайтовых значений в формате big-endian.

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

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

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

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

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

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

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

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

При установке этого флажка блок делает видимым выходам порт Timestamp. Этот порт показывает временные метки для пакетов сообщений CAN. Если ваш протокол не имеет временных меток пакета, блок игнорирует это значение.

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

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