Запись двоичных данных или сообщения CAN в канал связи
Настольный компьютер Simulink в реальном времени
Подключение и запись неформатированных двоичных данных в порт, файл или устройство CAN. После добавления блока пакетного вывода в модель дважды щелкните блок, чтобы задать его параметры.
Драйвер должен быть одним из следующих:
Стандартные устройства > Файл
Стандартные устройства > Последовательный порт
Стандартные устройства > Протокол TCP
Стандартные устройства > Протокол UDP
Квазер > Устройство CAN
PEAK-System > Устройство CAN
Вектор > CAN-устройство
MathWorks > Виртуальный CAN (требуется Toolbox™ автомобильной сети)
При установке устройства UDP введите адреса портов в десятичном формате в диалоговом окне «Стандартный протокол UDP устройств».
Любой последовательный выходной порт может передавать данные с частотой дискретизации до 500 Гц. Чтобы включить более высокую частоту дискретизации до 10 кГц для некоторых выходных последовательных портов, нажмите Установить новую плату, выберите Стандартные устройства > Последовательный порт и выберите Прямой доступ к порту.
Блок не поддерживает эту опцию для всех типов аппаратных средств последовательного вывода.
Input Data - Данные для записи в канал связиЗначения данных, которые передаются в канал связи как неформатированные двоичные данные. Для устройств CAN или Virtual CAN этот порт поддерживает:
CAN_MESSAGE тип данных
CAN_MESSAGE_BUS тип данных
CAN_FD_MESSAGE_BUS тип данных в режиме CAN FD
Типы данных: single | double | int8 | uint8 | int16 | uint16 | int32 | uint32
Data Ready - Порт готовности данных (необязательно)1 | 0Этот порт сигнализирует 1 если блок готов принять новые данные и 0 в противном случае.
При выборе команды Show «Data Ready» (показать порт готовности данных) этот порт отображается.
Data Error - Порт ошибки данных (необязательно)1 | 0Этот порт сигнализирует 1 при возникновении ошибки данных и 0 в противном случае.
При выборе команды Show «Data Error» (Показать порт ошибки данных) этот порт отображается.
Missed Ticks - Количество пропущенных галочек (необязательно)В обычном режиме или режиме ускорения возвращает количество таймерных засечек, которые ваша модель отстает от ядра реального времени. Когда модель отстает более чем на максимум пропущенных засечек, программа сообщает об ошибке и моделирование останавливается.
При выборе параметра Show «Missed Ticks» (Показать пропущенные засечки) этот порт становится видимым.
Типы данных: double
Install new board - Регистрация платы< no board selected > (по умолчанию)При нажатии кнопки Install new board отображается список производителей поддерживаемых плат. При выборе производителя программа отображает список плат, доступных у этого производителя. При выборе платы программное обеспечение добавляет плату в список зарегистрированных плат и делает ее текущей платой.
По умолчанию начальный выбор в списке зарегистрированных плат: < no board selected >.
При выборе платы в списке зарегистрированных плат доступны кнопки Delete current board и Board setup.
Параметр блока:
DrvName |
Delete current board - Удаление текущей платыДля удаления текущей платы нажмите эту кнопку. Первоначальный выбор списка зарегистрированных плат изменяется на < no board selected >.
Для активизации этого параметра выберите плату в списке зарегистрированных плат.
При удалении текущей платы кнопки Delete current board и Board setup становятся недоступными.
Параметр блока:
DrvName |
Board setup - Настройка платыДля установки платы нажмите эту кнопку.
Откроется диалоговое окно для настройки платы. Для получения дополнительной информации см. документацию производителя платы.
Для активизации этого параметра выберите плату в списке зарегистрированных плат.
Для деактивации этого параметра нажмите Delete current board.
Параметр блока:
DrvAddress |
Параметр блока:
DrvOptions |
Sample time - Время выборки блока0.1 (по умолчанию) | doubleВведите значение в секундах, представляющее частоту выполнения блока и взаимодействия с аппаратным обеспечением ввода-вывода. Блок синхронизирует модель с часами реального времени с такой частотой дискретизации.
При использовании решателя с фиксированным шагом введите значение, введенное в качестве параметра конфигурации Фиксированный размер шага (Fixed step size), или целое число, кратное этому значению.
Параметр блока:
SampleTime |
Maximum missed ticks - Количество отметок таймера, по которым модель может отслеживать ядро10 (по умолчанию) | целое числоВ обычном режиме или режиме ускорителя введите количество таймерных делений, которые модель может отставать от ядра реального времени. Когда модель отстает на это число или меньше отметок таймера, программное обеспечение предполагает, что отставание является временным. Это позволяет модели наверстывать упущенное, даже если модель пропускает некоторые засечки. Когда модель задерживается более чем на это число, программа сообщает об ошибке и моделирование прекращается.
Во внешнем режиме программное обеспечение игнорирует это значение.
Параметр блока:
MaxMissedTicks |
Show “Missed Ticks” port - Отправка количества пропущенных засечек в порт Missed Ticks'off' (по умолчанию) | 'on'В обычном режиме или режиме ускорителя установите этот флажок, чтобы отправить количество пропущенных засечек на выходной порт Missed Ticks.
Во внешнем режиме Missed Ticks порт равен нулю.
Параметр блока:
ShowMissedTicks |
Yield CPU when waiting - Выход ЦП при ожидании аппаратного обеспечения ядром'off' (по умолчанию) | 'on'В обычном режиме или режиме ускорения установите этот флажок, чтобы предоставить другим программам больше времени ЦП, пока ядро ожидает ответа от оборудования.
Во внешнем режиме программное обеспечение игнорирует это значение.
Параметр блока:
YieldWhenWaiting |
Packet identifier - идентификатор пакета;1 (по умолчанию) | векторВведите идентификатор обрабатываемого пакета. Если протокол не имеет идентификаторов пакетов, этот параметр отключен.
Параметр блока:
PacketID |
Extended identifier - Расширенный идентификатор пакета (только для плат CAN)'off' (по умолчанию) | 'on'Установите этот флажок, если идентификатор пакета является расширенным идентификатором.
Параметр блока:
PacketID |
Output packet size - количество байтов, содержащихся в каждом входном пакете;32 (по умолчанию) | целое числоВведите ожидаемое количество байт в каждом входном пакете. Это число должно соответствовать количеству байтов, требуемому спецификациями типа в выходных типах пакетных данных.
Параметр блока:
PacketSize |
Output packet field data types - тип вывода и группировка данных в пакете, отправляемом на устройство;'4*double' (по умолчанию) | символьный вектор | массив ячеек символьного вектораОдин или несколько символьных векторов, которые определяют, как данные, предоставляемые приложением, форматируются в пакет. Блок пакетного вывода имеет входной порт, соответствующий каждому символьному вектору в типах данных выходного пакетного поля. Изменение количества символьных векторов приводит к изменению количества портов.
Каждый вектор символов имеет формат [n*]datatype. Данные, которые описывает символьный вектор, имеют тип, указанный datatype и ширина, указанная n. Если n не указан, ширина равна 1. Например, 'double' означает одно double значение, и '4*int8' означает вектор из четырех int8 значения. Также можно ввести 'CAN_MESSAGE' для указания одного CAN_MESSAGE значение.
Сигнал, вводимый в каждый порт блока пакетного вывода, может быть скаляром или вектором данного типа данных. Символьный вектор для каждого порта определяет тип, который будет использоваться при выводе сигнала на устройство. Если символьный вектор для порта соответствует типу сигнала, вводимого в этот порт, значение сигнала в выходном пакете отображается дословно.
При выводе также можно выполнить преобразование типа. Например, предположим, что вход является четырехэлементным int16 вектор и символьный вектор '4*int8'. Четыре целые числа преобразуются в int8 перед записью в пакет. Результирующие данные занимают 4 байта в выходном пакете.
Блок приводит значение вне диапазона к максимальному значению для этого типа данных.
Параметр блока:
DataTypes |
Output packet field byte order - Порядок байтов пакета, отправляемого на устройствоLittle Endian (по умолчанию) | Big EndianВ списке выберите:
Little Endian (по умолчанию) - получение многобайтовых значений в формате little-endian.
Big Endian - Получать многобайтовые значения в формате big-endian.
Параметр блока:
ByteOrder |
Show “Data Ready” port - Добавить порт Data Ready что сигнализирует 1 когда блок может принимать новые данные'off' (по умолчанию) | 'on'При установке этого флажка блок делает видимым выходной порт Data Ready. Сигналы выходного порта 1 когда блок готов принять новые данные и другие сигналы 0.
Параметр блока:
ShowReady |
Show “Data Error” port - Добавить порт Data Error что сигнализирует 1 при возникновении ошибки'off' (по умолчанию) | 'on'При установке этого флажка блок делает видимым выходной порт Data Error. Этот порт сигнализирует 1 при возникновении ошибки данных и 0 в противном случае.
Параметр блока:
ShowError |
Initial value - Данные для отправки при начале моделированияНеобязательно. Введите вектор, имеющий то же количество элементов, что и сумма значений ширины входных сигналов по всем портам. После начала моделирования отправьте указанные данные перед другими данными, которые будут отправлены во время моделирования.
Параметр блока:
InitialValue |
Final value - Данные для отправки по окончании моделированияНеобязательно. Введите вектор, имеющий то же количество элементов, что и сумма значений ширины входных сигналов по всем портам. По окончании моделирования, после передачи других данных во время моделирования, отправьте указанные данные.
Параметр блока:
FinalValue |
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.


