跳到主要内容

DC — 分布式时钟

DC (Distributed Clock) 用于从站间的高精度时钟同步, 多轴联动场景必不可少。

功能概览

能力说明
DcSyncMode 下拉FreeRun / SmSynchron / DcSynchron / DcSynchron01 四档同步模式选择
ESI 自动判断工具自动从 ESI 描述识别 DC 能力, 支持的从站默认启用 DC
SYNC0/SYNC1 配置分别设置两个同步信号的周期
相位偏移手动设置或自动计算最优偏移
主时钟漂移补偿启用后由主站持续补偿主从时钟漂移
主时钟时间显示64-bit 纳秒数实时刷新
参考时钟从站索引当前被选为参考时钟的从站编号实时显示
同步窗口监测实时查看同步偏差统计
传播延迟查看各端口接收时间

DC 是 标配 — 启用了 DC 的从站会自动在导出代码中包含同步配置, 无需手动勾选。

快速开始

  1. 进入 配置工具的 DC Tab
  2. 通过 DcSyncMode 下拉选择模式 (常用: DcSynchron, SYNC0 单脉冲)
  3. 设置 SYNC0 周期 (如 1 ms = 1000000 ns), 留空相位偏移让工具自动计算
  4. 在右侧面板启用 DriftCompensation (主时钟漂移补偿)
  5. 顶部状态栏观察 参考时钟从站索引 与 主时钟时间, 确认参考时钟已选定
  6. 切换到 SYNC 监测面板, 观察 同步偏差 在容许窗口内

同步模式说明

模式含义
FreeRun自由运行, 不使用 DC
SmSynchronSyncManager 触发, 不使用 DC
DcSynchronDC SYNC0 同步
DcSynchron01DC SYNC0 + SYNC1 双信号同步

自动偏移公式

工具按以下公式自动计算每个从站的相位偏移:

Shift = MaxPropagationDelay - Slave.PropagationDelay

让所有从站的 SYNC 信号在同一物理时刻触发, 抵消传播延迟。

同步窗口监测

DC Tab 右侧面板实时显示每个从站的同步状态:

  • InSync — 是否在同步窗口内 (true/false)
  • DiffNs — 当前偏差 (纳秒)
  • MinDiffNs / MaxDiffNs — 历史最小/最大偏差
  • OutOfSyncCount — 不同步累计次数

如启用了 DC, 切换到 诊断 Tab → DC 子页可查看跨从站的同步窗口汇总。

提示

完整 DC API 请参考: SDK 文档 (其他语言)