Этот пример показывает целевой компьютер сбора данных, который передает данные о датчике с меткой времени к второму целевому компьютеру. Второй целевой компьютер обрабатывает данные о датчике и отображает данные и различие между данными о датчике и справочными данными. Оба целевых компьютера соединяются с компьютером разработчика. Компьютер разработчика запускает Simulink® и Проводник Simulink Real-Time™, чтобы создать, загрузить и запустить приложения реального времени на каждом целевом компьютере. Приложения реального времени используют блоки Протокола времени точности (PTP), чтобы синхронизировать часы PTP, и ядро отмечает время прихода на работу каждый компьютер.
Приложение сбора данных является ведомым узлом PTP, который получает данные из датчика, который представляет блок Sine Wave. Приложение передает данные о датчике к приложению анализа данных.
Блок инициализации PTP и блоки, которые создают и передают пакет Ethernet, находятся в модели верхнего уровня:
IEEE 1588 Ethernet — Конфигурирует часы сетевой платы PTP как ведомый тактовый генератор.
IEEE 1588 Read Parameter — Показывает, когда часы PTP были выделены как ведомый тактовый генератор (значение 9
). Сконфигурированный как Read Protocol state
.
IEEE 1588 Sync Execution — Выравнивает часы ядра через несколько целевых компьютеров. Блок выход показывает различие между следующими разами:
Время PTP в прерывании в реальном времени
Ближайшее время PTP, которое является кратным основному шагу расчета
Byte Packing — Упаковывает данные о датчике, метку времени и состояние синхронизации в пакет Ethernet.
Create Ethernet Packet — Адресует пакет Ethernet к Мак адресу приложения анализа данных.
Ethernet Tx — Передает пакет Ethernet к целевому компьютеру анализа данных.
Блок Ethernet Tx отправляет пакеты данных посредством того же соединения Ethernet как использование блоков PTP, чтобы отправить сообщения PTP. Чтобы отличить пакеты данных от сообщений PTP, присвоения модели к пакетному Ethernet данных вводят hex2dec('0010')
. Этот тип Ethernet отличается от типа Ethernet по умолчанию пакетов PTP (hex2dec('88F7')
).
Outport — В целях регистрации данных модель верхнего уровня распространяет главные сигналы с блоками Outport.
Для отладки целей модель верхнего уровня включает два блока Scope в реальном времени:
Sensor Data
— Отображает данные о датчике в графическом осциллографе.
Sensor PTP Data
— Отображает время PTP, состояние синхронизации PTP, PTP утверждают, и дельта синхронизации модели сбора данных.
Метка времени PTP должна выровняться максимально тесно с источником данных. Для лучшего выравнивания модель переносит блок данных датчика и блоки PTP низшего уровня в атомарной подсистеме:
Sine Wave — Представляет данные о датчике.
IEEE 1588 Read Parameter — Генерирует метку времени, сконфигурированную как PTP Time (nanosecond)
.
IEEE 1588 Sync Status — Генерирует состояние синхронизации. Когда часы PTP синхронизируются с основными часами PTP, блок выход становится 1
.
Приложение анализа данных является главным узлом PTP, который получает данные о датчике из эмулятора, блока Sine Wave. Приложение получает справочные данные от эмулятора, блока Sine Wave и данных о датчике из блока Ethernet Rx. Приложение вычисляет различие между справочными данными и данными о датчике.
Блок инициализации PTP и блоки, которые получают и обрабатывают данные, находятся в модели верхнего уровня:
IEEE 1588 Ethernet — Конфигурирует часы сетевой платы PTP как основной тактовый генератор.
IEEE 1588 Read Parameter — Показывает, когда часы PTP были выделены как основной тактовый генератор (значение 6
). Сконфигурированный как Read Protocol state
.
IEEE 1588 Sync Execution — Выравнивает часы ядра через несколько целевых компьютеров. Блок выход показывает различие между следующими разами:
Время PTP в прерывании в реальном времени
Ближайшее время PTP, которое является кратным основному шагу расчета
Extract Ethernet Packet — Извлекает пакет Ethernet, который несет данные о датчике.
Byte Unpacking — Распаковывает данные о датчике, метку времени и состояние синхронизации от пакета Ethernet.
Сумма Вычисляет различие между данными о датчике и справочными данными.
Блок Sum обеспечивает входные данные для последующей обработки. Например, можно отобразить на графике данные о датчике, справочные данные и различие против метки времени, чтобы оценить поведение в реальном времени. Можно также питать данные о различии назад через систему управления, чтобы изменить настройки привода на сайте сбора данных.
Outport — В целях регистрации данных модель верхнего уровня распространяет главные сигналы с блоками Outport.
Для отладки целей модель верхнего уровня включает четыре блока Scope в реальном времени:
Ref/Sensor Data
— Отображает справочные данные и данные о датчике вместе в графическом осциллографе.
Delta
— Отображает различие между справочными данными и данными о датчике в графическом осциллографе.
Delta
осциллограф сконфигурирован с длинным шагом расчета. Это получает различия длительного периода между датчиком и справочными данными. Если частота, фаза и амплитудные различия являются постоянными, осциллограф отображает прямоугольную область. Если различия являются периодическими, осциллограф отображает частоту удара.
Ref PTP Data
— Отображает время PTP, состояние синхронизации PTP, PTP утверждают, и дельта синхронизации модели анализа данных.
Sensor PTP Data
— Отображает время PTP, состояние синхронизации PTP и дельту синхронизации модели сбора данных.
Метка времени PTP должна выровняться максимально тесно с получателем Ethernet. Для лучшего выравнивания модель переносит блоки, представляющие источник справочных данных и блоки PTP низшего уровня в атомарной подсистеме:
Sine Wave — Представляет справочные данные.
IEEE 1588 Read Parameter — Генерирует метку времени, сконфигурированную как PTP Time (nanosecond)
.
IEEE 1588 Sync Status — Генерирует состояние синхронизации. Когда часы PTP синхронизируются с основными часами PTP, блок выход становится 1
.
Ethernet Rx — Получает данные о датчике из целевого компьютера приобретения. Сконфигурированный блок отфильтровывает все пакеты кроме пакетов типа Ethernet hex2dec('0010')
. Типом Ethernet по умолчанию пакетов PTP является hex2dec('88F7')
.
IEEE 1588 Ethernet | IEEE 1588 Read Parameter | IEEE 1588 Sync Execution | IEEE 1588 Sync Status | open_system (docpath (fullfile (docroot, 'тулбокс', 'xpc', 'examples', 'ex_ptp_sync_sink'))) | open_system (docpath (fullfile (docroot, 'тулбокс', 'xpc', 'examples', 'ex_ptp_sync_src')))