主要内容

本页采用了机器翻译。点击此处可查看英文原文。

IEEE 1588 Read Parameter

输出时间协议 (PTP) 状态参数值

  • IEEE 1588 Read Parameter block

库:
Simulink Real-Time / PTP

描述

IEEE 1588 Read Parameter 模块读取选定的参数并输出其值。可读取参数的示例包括目标计算机的系统时间、日历时间以及网络延迟。该模块会根据所选参数自动更新其标签。您可以使用此模块读取 Speedgoat® 目标计算机的系统时间,即使此时未运行精密时间协议 (PTP) 进程也是如此。

IEEE 1588 Read Parameter 模块每 1 毫秒更新一次系统时间。该输出与模块的采样时间无关,且模块输出的精度为纳秒级。有关详细信息,请参阅 Linux 手册页 [Debian] 中的 clock_gettime()

示例

端口

输出

全部展开

当前选中参数的读取值。

参数

全部展开

指定要读取的参数。

  • 系统时间(纳秒)——当前 SLRT 系统时间的纳秒数,从当前纪元开始计数,以 uint64 类型表示。

  • 日历时间 (time_t) — 当前 SLRT 日历时间,以 int32 向量形式指定。

  • 客户端偏移量 — 以秒为单位的时间偏移量,指定为双精度浮点数。

  • 客户端到服务器的延迟 — 客户端到服务器的延迟时间(以秒为单位),以双精度浮点数形式指定。

  • 服务器到客户端的延迟 — 服务器到客户端的时间延迟(单位为秒),以双精度浮点数形式指定。

  • 单向延迟 — 以秒为单位的单向时间延迟,指定为双精度浮点数。

注意

对于使用基于 Linux® 的实时操作系统 (RTOS) 的目标计算机,这些参数选项会在模型构建过程中引发错误消息:Client to Server DelayServer to Client DelayOne Way Delay

参数 Calendar time (time_t) 包含以下组件:

  • 分钟后的秒数——0 到 61(C99 之前)和 0 到 60(C99 之后)

  • 整点后的几分钟 - 0 到 59

  • 午夜后的小时数 - 0 至 23

  • 本月日期 - 1 至 31

  • 自一月起算的月份 - 0 至 11

  • 自 1900 年以来的年份

  • 自上周日以来的天数 - 0 至 6

  • 自 1 月 1 日起的天数 - 0 至 365

  • 夏令时 (DST) 标志。该值为正表示夏令时生效,为零表示未生效,为负表示无可用信息

编程用法

若要通过编程方式设置模块参数的值,请使用 set_param 函数。

若要通过编程方式获取模块参数的值,请使用 get_param 函数。

参数: param
值: '1. System time (nanosecond)' (默认) | '2. Calendar time (time_t)' | '3. Offset from Client' | '4. Client to Server Delay' | '5. Server to Client Delay' | '6. One Way Delay'

示例: set_param('modelName/IEEE 1588 Read Parameter','param','2. Calendar time (time_t)')

输入基本采样时间或基本采样时间的倍数。

编程用法

若要通过编程方式设置模块参数的值,请使用 set_param 函数。

若要通过编程方式获取模块参数的值,请使用 get_param 函数。

参数: sample_time
值: '-1' (默认) | numeric

示例: set_param('modelName/IEEE 1588 Read Parameter','sample_time',1)

扩展功能

全部展开

C/C++ 代码生成
使用 Simulink® Coder™ 生成 C 代码和 C++ 代码。

版本历史记录

在 R2020b 中推出

另请参阅

外部网站