当前位置:
文档之家› 基于stm32f407的精确时钟同步协议的实现
基于stm32f407的精确时钟同步协议的实现
Vol. 46 No. 3 620
计算机与数字工程 Computer & Digital Engineering
总第 341 期 2018 年第第463 卷期
基 于 stm32f407 的 精 确 时 钟 同 步 协 议 的 实 现 ∗
张端阳 肖 力 付忠敏
(华中科技大学自动化学院 武汉 430074)
Key Words clock synchronization,timestamp,Ethernet,IEEE1588 protocol,embedded Class Number TP393
1 引言
工业现场的数据采集变得越来越模块化,但当 需要测量多个外部的数据时,可能需要多个模块。 将这些由传感器采集的数据通过网络上传的时候, 由于没有时间信息,远程上位机不能很好将采集数 据融合处理,一般只能独立的对采集上来的数据处 理。为了实现对采集数据的时钟同步,需要对数据 采集模块间进行时钟同步。
当 前 几 种 比 较 流 行 的 时 间 同 步 协 议 有 NTP (Network Time Protocol)[1]和 PTP(Precision Time Protocol)[2],两者的原理类似,都是实现主时钟节点 和从时钟节点间的时间同步,其中 PTP 协议是网络 测量和控制系统时钟同步协议(IEEE1588 协议)的 简称,具体的差异如图 1 所示。从图中可以看出, NTP 和 PTP 时间戳的截取的位置不同。NTP 获取 的时间戳的位置是应用层,而 PTP 时间戳的截取的 位置是在物理层。正是由于获取时间戳的位置不
ZHANG Duanyang XIAO Li FU Zhongmin (School of Automation,Huazhong University of Science and Technology,Wuhan 430074)
Abstract In the field of industrial data acquisition,each node is more and more intelligent and networked,so the high-preci⁃ sion time synchronization between multiple nodes becomes more and more urgent. The method of clock synchronization and time stamp are used to collect the data,which brings great convenience to the processing of the later data,especially in the multi-sensor data fusion.“Precision Clock Synchronization Protocol for Networked Measurement and Control Systems”referred to as the IEEE1588 protocol come into being.In this paper,the stm32f407 microcontroller as the core of the development board is used to achieve the IEEE1588 protocol as the slave clock,and the LAN host computer is configured as the master clock to complete the pre⁃ cise clock synchronization between the slave clock and the master clock.In this paper,the master clock is synchronized with the slave clock,and the master clock is synchronized with multiple slave clocks,and the clock accuracy between them is 2us.
关键词 时钟同步;时间戳;以太网;IEEE1588 协议;嵌入式 中图分类号 TP393 DOI:10. 3969/j. issn. 1672-9722. 2018. 03. 043
百度文库
Realization of Accurate Clock Synchronization Protocol Based on Stm32f407
2018 年第 3 期
计算机与数字工程
621
同,这样 PTP 可以有效地去除运行操作系统和 TCP/ IP 协议栈时间抖动对时钟同步的影响。但是由于 PTP 获取时间戳位置的在物理层,所以需要特殊的 硬件支持,即在具体的应用中硬件需要支持 PTP, 这个实际的硬件设计带来了一定的成本,但是 NTP 不需要硬件支持。获取时间戳的位置的差异促使 PTP 的同步时钟精度是 NTP 同步时钟精度的 10000 倍。PTP 的同步时钟精度是亚微秒级(100ns)。在 该精度下可以满足大多数时间同步的精度要求,比 如 PTP 可用于高速铁路地震预警系统采集设备[3]。
摘 要 在工业数据采集的现场,各节点的智能化和网络化程度越来越高,由此产生的多节点间的高精度的时间同步 变得更加的迫切。将采集的数据使用时钟同步方法加上时间戳信息,这给后期数据的处理带来了很大的方便,特别是在多 传感器数据融合上。“网络测量和控制系统的时钟同步协议”简称为 IEEE1588 协议应运而生。论文在以 stm32f407 微控制器 为核心的开发板上实现了 IEEE1588 协议的从时钟,并将局域网内的电脑主机配置为主时钟,完成从时钟与主时钟间精确的 时钟同步。论文实现了主时钟与从时钟间时钟同步,主时钟与多个从时钟间时钟同步,并且两者间的时钟精度都达到 2us。
∗ 收稿日期:2017 年 9 月 13 日,修回日期:2017 年 10 月 21 日 作者简介:张端阳,男,硕士研究生,研究方向:计算机网络、三维点云数据处理、嵌入式。肖力,男,讲师,研究方向:网 络控制系统、机器视觉与图像处理、导航与控制。付忠敏,男,硕士研究生,研究方向:三维数据处理,机器视觉与图像 处理。