Запись двоичных данных или сообщения CAN в канал связи
Simulink Desktop Real-Time
Подключение и запись неформатированных двоичных данных на порт, файл или устройство 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.
Блок не поддерживает эту опцию со всеми типами последовательного выхода вывода.
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” port, этот порт видим.
Data Error
- Порт ошибки данных (необязательно)1
| 0
Этот порт сигнализирует 1
если происходит ошибка данных и 0
в противном случае.
Когда вы выбираете Show “Data Error” port, этот порт видим.
Missed Ticks
- Количество пропущенных тактов (необязательно)В норме или режимы Accelerator возвращают количество тактов таймера, которое ваша модель отстает от ядра реального времени. Когда модель отстает более чем на Maximum missed ticks, программное обеспечение сообщает об ошибке, и симуляция останавливается.
Когда вы выбираете Show “Missed Ticks” port, этот порт видим.
Типы данных: 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
(по умолчанию) | целое числоВ норме или режимы Accelerator введите количество тактов таймера, которые ваша модель может отставать от ядра реального времени. Когда модель отстает на это количество или меньше такты таймера, программное обеспечение принимает, что задержка является временной. Это позволяет модели наверстать упущенное, даже если модель пропускает некоторые такты. Когда модель отстает больше, чем это число, программное обеспечение сообщает об ошибке, и симуляция останавливается.
Во режиме external mode программа игнорирует это значение.
Параметры блоков:
MaxMissedTicks
|
Show “Missed Ticks” port
- Отправка количества пропущенных тактов в порт Missed Ticks
'off'
(по умолчанию) | 'on'
В режиме normal или Accelerator установите этот флажок, чтобы отправить количество пропущенных засечек в выходной порт Missed Ticks
.
Во режиме external mode Missed Ticks
порт равен нулю.
Параметры блоков:
ShowMissedTicks
|
Yield CPU when waiting
- Выражение центральный процессор, в то время как ядро ждет оборудования'off'
(по умолчанию) | 'on'
Обычно или режимы Accelerator, установите этот флажок, чтобы предоставить другим программам больше центрального процессора времени, пока ядро ждет ответа от оборудования.
Во режиме external mode программа игнорирует это значение.
Параметры блоков:
YieldWhenWaiting |
Packet identifier
- Идентификатор пакета1
(по умолчанию) | векторВведите идентификатор обрабатываемого пакета. Если ваш протокол не имеет идентификаторов пакетов, этот параметр отключен.
Параметры блоков:
PacketID
|
Extended identifier
- Расширенный идентификатор пакета (только платы CAN)'off'
(по умолчанию) | 'on'
Установите этот флажок, если Packet identifier является расширенным идентификатором.
Параметры блоков:
PacketID
|
Output packet size
- Количество байтов, содержащихся в каждом входном пакете32
(по умолчанию) | целое числоВведите количество байтов, ожидаемое для каждого входного пакета. Это количество должно совпадать с количеством байтов, требуемым спецификациями типов для Выхода типов данных пакетов.
Параметры блоков:
PacketSize
|
Output packet field data types
- Выход и группировка данных в пакете, отправленном на устройство'4*double'
(по умолчанию) | вектор символов | массив ячеек из вектора символовОдин или несколько векторы символов, которые определяют, как данные, предоставляемые приложением, форматируются в пакет. Блок 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
|
Output packet field byte order
- Байтовый порядок посылки пакета на устройствоLittle Endian
(по умолчанию) | Big 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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.