



全文预览已结束
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于最小二乘法精确时钟 同步算法研 究与实现 沈夏闰 等 基于最小二乘法精确时钟同步算法研究与实现 沈夏 闰 谭南林 张建斌 北京交通大学机械与电子控制5 程学院 北京 1 0 0 0 4 4 摘 要 在深入地研究P T P 时钟 同步机理 的前提下 仔细分析 了时钟偏差产生的原因 并引入 了基于最小二 乘法 的频率补偿算法来校 正相对时钟漂移偏差 在搭建的以太 网精确时钟同步平台基础上 通过实验验证 了该算 法 的可行性 结果表 明 该算法的引人大大地提高了P T P 的同步精度 关键词 时钟 同步 最 小二乘法 以太 网 A R M A b strac t O n the prem i se of tho ro u gh stud y i n g the cl o ck syn chroni z ati on m ech an i sm of PT P th i s p aper c arefu l l y an al yzed th e reaso ns of th e cl o ck off set i ntrodu ce s freq u ency com pe n sati on algori thmbased Oi l l east squ are m eth o d to c orrec tth e rel ati ve cl oc k dri ft o ff set on th e b asi s o f th e E th em et accu rate cl oc k syn chro ni zati o n p l atf orm thro ug h ex pe ri m ent v eri fy th e feas i b i l i ty o f th e alg ori thm T he expe ri m en tal re su l ts sh o w th at thi s al go ri th mgreatl y i m pro ves th e P T P syn chro no us p rec i si on K ey w o rd s C l ock syn chron i z ati on L eas t Squ are M eth od E th ernet A R M 中图分类号 TP393 11 文献标识码 B 文章编号 1 001 9227 201 2 04 01 48 04 0 引言 以太 网以其高速 大容量 远程访 问等的特 点势必在 不久将来取代现有的T C N 国际上包括国内目前正在研 究 基 于以太 网的列车通信 网络 而 以太网在其速度快 容量 大的同时 它实时性的弱 点在列车通信 网络 尤其是控制 信息传输的过程中是不能得到满足 的 IEEE l 588 精确时 钟 同步协议P T P 以其高精度 低成本 方便安装与维护等 优 点 在 许 多 领 域 得 到 了广 泛 应 用 本 文 通 过 分 析 I E EE 1 5 8 8 时钟同步原理 提出时钟同步的最小二乘算法 构 建平台进行 了实验和分析 1 PTP 同步原理及实现 1 1 PT P原理以及同步过程 依照 IEEE 1 588 标准 所有时钟 同步报文 当然也包 括管理报文 的传输都以UDP方式进行 UDP是TCP IP 协议 族 中I P 与上层协议的接 口 在TCP IP 协议 四层模型中属 于传输层协议 IEEE 1 588标准使用UDP 广播时钟同步报 文 从而实现主时钟与多个从时钟之间的时钟 同步 根据TCP IP 协议 时钟同步报文 的传输将在 TCP IP 协 议四层模型中逐层进行 首先 时钟 同步报文在应用层 被应用程序填充后发送 然后 操作系统的网络 协议栈在 传输层上对报文按u D P 格式进行封装 封装好的报文到达 网络层时再一次加入 IP 报头等信息 进行 IP 封装 然后向 链路层投递 最后 当经过 I P 封装 的时钟同步报文到达链 路层时 还要通过 网络接 口卡的处理 将报文 中的数据转 换成适合物理介质传输的电平信号 然后发送到物理传输 介质上 P T P 协议的时钟 同步过程分为两个阶段 偏移测量 阶段和延 时测量阶段 如 图1 所示 收稿 日期 2 0 1 2 0 3 1 5 作者简介 沈夏闰 1 9 8 7一 男 浙江嘉兴人 硕士 主要研究 方 向 为轨 道 交通 控 制 与安 全 1 4 8 r 慵牡 洲敞旺 牲 地避 俺垃牲 T T 时 钟般 汀 D 型 璺 一 T 一 一 肮刊冲撞褂r 图l 时钟同步过程示意图 1 偏移测量阶段 偏移测量 是指测量主时钟 与从时钟之间 的时间偏移 量 并在 从时钟上消除这些偏移 第一步 主 时钟采用多播方式周期性地 默认为 2 s 向网络上发布SY n C 报文 并在报文离开PTP 端 口时 记录 S Yn C 报文的发送时间T 1 从时钟接收S Yn c 报文 记录下 SYnc 报文的接收时间T2 第二步 主时钟向网络以广播形式发布 Fo l l ow Up 报 文 报文中包含主时钟 sYl qC 报文的发送时间戳T 1 的值 从 时钟接收Fol l OW UP 报文 从中得到T1 2 延时测量阶段 延 时测量阶段 用于确定主 从时钟 间帧 传输 中的网 络 延 时 第 一 步 从 时 钟 采 用 单 播 方 式 向 主 时 钟 发 送 D e l a y Req报文 并记录下D e Jay Req报文的发送时间T3 主时钟接收D e l ay Req 报文 并在报文接收过程中记录下 D e 1 a y Re q报文的接收时间T4 第 二 步 主 时 钟 采 用 单 播 方 式 向 从 时 钟 发 送 D e J a y Resp报文 其中包含从时钟刚发来的D ay Req 报 文的接收时间T4 的1直 从时钟接收De1ay Re sp报文 从中 得到T4 的值 学兔兔 w w w x u e t u t u c o m 自动化与仪器仪表 20 12 年第 4 期 总第 162 期 以上所提到 的时 间均 是由位 于时钟节点物理层 附近 的时标生成器在报文进入或离开P T P 端 口时产生 目的是 避免操 作系统协议栈的延迟 如果假设主 从时钟间偏差 恒定 传输 路径对 称 则 D el ay 一 Offset 1 Offset D el ay 2 其中Del ay 表示报文传输的网络延时 0ffSet表示主 从 时钟 的偏差 从而得到 Delay 互 墨 2 2 4 得到 了从时钟 与主时钟 间的偏 差 就可采用适 当 的 调节算法来调节从时钟 最 终使得从 时钟 同步于主时钟 1 2从时钟补偿算法的原理 IEEE 1 588 协议提供了基于以太网的时钟同步方法 但 没提供从时钟 的补偿方法 通常采用 的时钟偏差补偿方式 容易使从时钟 出现较大 的时间波动 而时间的大幅波动会 使 列车 网络 中确定性通信 发生紊 乱 影 响列 车 的安全 稳 定 有必要对时钟补偿方式进行深入探讨 使时钟同步更 加精确 相对 于直接 补偿方式下 的时间突变 改进的思路 就 是采用渐近的时间补偿方式 即从时钟在计算出时间差值 后不直接对 自身时间进行加减运算 而是根据偏差值的大 小逐步 的增加或者减少 自身时间直到与主时钟相同 而从 时钟补偿值的计算需要由偏移值和延时值来计算 而时钟 偏移的测量和传输延时的测量是相互影响的 要经过多次 测量和计算 才会收敛到接近于真实值 从时钟补偿算法 要求对 时钟相对漂移量进行实时估计 下面将引入最小二 乘法 的曲线拟合方法来 求解从时钟与主时钟之 间的相对 漂移量 假设主时钟 Tm f 从时钟为Ts i y 则主从偏差为 A f 一E O 对测得的离散数据 X i i 1 2 II1 取 上基P 拟合多项式 a o lx a2x anX 使得 E2 ao 一 E ao alx 02 anX 一 5 i O f O 在P 上达到极小值 因此 a0 aJ a2 an满足下式 q an E x y j o l 2 6 i 0 l 0 i 0 i O 该n 1 阶线性方程组通过矩阵表示为 m l 0 薯 0 i 0 m f 0 n i 0 Z n f一 0 fz 0 1 0 若令 q 卅 枷 xiY 0 xTy i 0 A 1 1 X2 X 1 x m X 2 f1 x n m a o q a 则式 7 可表示为 A A a A Y 8 式 8 称为多项式拟合的法方程组 从而得到参数 的最佳估计值 fA 14 A Y 9 为防止正规方程 组 由于拟合多项式次数太 高产生病 态的情况和减小计算量的规模 所 以拟合次数一般选定为 n 6 这里将多项式的拟合次数设定为3 次 时钟同步精 度就可 以达 到微秒 级 2 以太网PTP ETHER通信节点设计 2 1 PTP ETHER 通信节点硬件设计 本文采用的MCU 为STM32F107VC 是一款基于Cortex M 3 内核的专用于网络互联的A R i处理器 芯片内部支持 I EEE 1 588 时间戳标记功能 并提供以太网通信及时钟同步 所需的完整固件库 设计 电路时只需在M C u 外增加一个以 太网收发器即可 布线简单且通信节点更可靠 如图2 所示 O 排 a t 舟 鹰访问控糖 醣 井置 Iy 控捌翱 赣式 1 I C孽瞠 机击 寄存曩 寄群嚣 三 嚣 I 挂麓膏存 l 一 一 硼 鬲 J 型 啦 司 MDIo 图2 STM32F l O7VC 以太网模块 PTP ETHER通信节点实现了1 o 1 OOM 以太网通信 支持 IEEE1 588v 1 2002 精确时钟同步协议 扩展有两路串口 C A N 总线接 口 可用于列车级总线 车辆级总线通信节点 同时具有以太网和 C A N 总线之间通信的转换功能 硬件结 构框图如图3 所示 7 图3 PTP ETHER 置信节点硬件结构图 STM32F 107 片内以太网控制器必须外接以太网收发器 才能完成以太网通信 本节点收发器选用N S 的3P 83848 单路低功耗10 100M 以太网收发器 可RMII或者MII方式与 MCU 相连 本文采用RMII方式 精简介质独立接口 仅需要 14 9 学兔兔 w w w x u e t u t u c o m 基于最小二乘法精确时钟 同步算法研究与实现 沈夏 闰 等 8 跟线 这样可 以简化芯片之间的连线 提高板卡的可靠 性 增 强高速通信 过程中 电磁兼容性 2 2操作 系统和协议栈的移植 由于 uCO S II的开源 较好的实时性和较短的开发周 期 使其在嵌入式系统 中得到广泛应用 因此本文选用 COS II作为实时操作系统嵌入到PTP ETHER 通信节点中 在此基础上实现TCP IP 协议 在底层嵌入 自己设计的网络 通信实时调度模块 完成列车 网络通信 的实 时 确定性通 信 1 tCO S II操作系统 的可移植性很强 在不同平 台的 M C u 上步骤基本一致 本文通过 以下步骤实现 了在 P T P E T H E R 平台的移植 P T P E TH E R 通信节点是基于M D K Real Vi ew 编译器完成的 1 定义与编译器相关的数据类型 共有十一种数据 类型需要定义 两类编译器的都使用标准的 c 语言 所 以 数据类 型定义也 完全 相同 2 定义系统处于临界状态时的两个宏来禁止和允许 中 def i ne O S E N T E R CR IT ICAL 0 cpu s r O S C P U S R S ave 0 def i ne OS E X I T CRITICA L 0 O S C P U Restore cpu sr 3 定义栈的增长方式 u C 0s II中用变量0S ST K GROWTH 来指定堆栈的增长方式 为l 时表示堆栈从上往下 增长 为0 时表示堆栈从下往上增长 4 在OS CPU A ASM 中用汇编语言编写 4个与处理器 相关的函数 分别是 0s SStartHi ghl dy 运行优先级 最高的就绪状态任务 0S CtxSw 任务优先级切换函数 0S Ini rexi t 0 中断级的任务切换函数 0S Ti ckISR 0 时钟节拍 中断服务 函数 5 在OS CPU C C 中移植C语言编写的6个操作系统相 关 的 函 数 最 重 要 的 是 进 行 任 务 堆 栈 初 始 化 函 数 0STask Stk In i t 2 3 T P IP和PTP协议栈的移植 本课题设计的列车通信网络仅仅用到了TCP LIDP IP ARP ICMP 这几个协议 但由于协议的复杂性 短时间内完 成移植 比较困难 本文参考了已经运用成熟的TcP IP 协议 栈LwIP1 2 0 剪裁掉无关协议 嵌入到PTP ETttTER两个节 点 中 I E E E l 5 8 8 协议规定时钟节点在某一 时刻处 于 P T P F A U L T Y P T P L I S T E N I N G P T P M A S T E R P T P S L A V E PTP INITIALIZING等九种状态 根据列车通信网络的特 点 实现 列车 网络通信的同步只需要初始化状态 故障状 态 监 听状态 主 时钟状态 从时钟状态五种状态即可 根 据普通时钟模 型 P T P 协议栈的实现主要有 报文发送模 块 设计和报文接 收模块 设计 报文发送模块设计 协议主要完成P T P 报文 的周期性 发送 接 收 相应 的判 断 处理 如发送 的四种报文 函数 如下 VO i d PTP S en d PTP SYNC MESSAGE 发送S ync 报 文 V O i d P TP S end P TP FO LLOW MES SAGE 发送 F ol l ow Up 报文 v o i d P TP S en d D e l a y Req 0 发送Del ay Req报文 v o i d P T P S e n d D e l a y l esp 0 发送Del ay R es 报文 报文接收模块设计 负责所有同步报文的接收 判断 l 5O 报文 C 0 11tr o l 标志位 得出接收到的同步报文类 型 根据 不同的报文类型调用不 同的接收函数 四种 同步报文接收 函数定义如 下 V o i d P T P I EC V SYNC Sync报文接收 V o i d P T P R E C V D E L A Y R EQ 0 De l ay Req报文接收 vo i d P T P R E C V F OLLOWUP 0 Fol l ow Up报文接收 vo i d PT P R E C V DELAYRESP 0 De l ay Resp报文接收 3 测试及实验结果 STM32F107VC 微处理器内置一个PPS 秒脉冲 输出模 块 可以用来测试全部网络 节点直接 的同步效果 连接到 示波器上可以测量 网络节点之间的时钟差别 P P S 输出的 脉冲宽度为 125ms 首先测量 了未进行 同步时网络中各节点 PP S 脉冲输出 情况 如图4 a b 所示 b 图4时钟同步前的通信节点PPS输出 每个通道显示5 个PPS 脉冲 时间轴间隔为500ms 观 察可知三个脉冲节点之间有较大时间差 利用示波器时间 测量功能得到主 从时钟的PPS 上升沿差值约为300ms 三 个节点处于非同步状态 然后 在 网络 中所有通信节 点运 行根据I EEE 1 588 协议开发的PTP 协议栈 整个通信网络上 电运行一小时后 利用泰克示波器捕捉通信节点输出的PPS 当把示波器时间轴间隔调整为 50OmS 时 如图5 a 所 示 观察可得 网络中三个通信节点发 出的秒脉冲基本在同 一 时刻 但仍无法确认 各节 点之间的 同步精度 b 图5时钟同步后的PPS脉冲输出 进一步把示波器时间轴间隔调为250uS 如图3 2 b 所示 观察发现三个脉冲的上升沿基本在 同一时刻 说 明 同步精度 已经达到 了微妙 级 继续调整时间轴 间隔 把示 波器 时间轴间隔调整为2 5 0 rl S 设置好触发条件 捕捉三 个通信节点的P PS 脉冲的上升沿 得到图6 圜 一 a b 图6网络各时钟节点偏差精确测量 由图6 a b 可知 当示波器时间格调整为250nS 时 可清 楚的看 出三个通信节点输出的P P S 脉冲有 明显的偏 差 图中显示的是以Ctt1通道的PPS 脉冲作为触发源且Ctt1 下转第1 5 3 页 学兔兔 w w w x u e t u t u c o m 自动化与仪器仪表 20 12 年第 4 期 总第 l 62 期 G etU serF i 1ter getUsername Fi Iter protected 术 这里 protected 术 表示 针对受保护的系统需要使用到该Fi l t er 从而获取到登录 系统的用户名 这里配置的过滤条件是针对假定的E R P 系 统 只有在条 目下的S y SU S e r 用户能够访问 其他用户则 没有权限使用 这时回到主页 点击E RP 系统 这时先前配 置的F i 1ter 发现KSERNA用户没有使用该系统的权限 弹出 提示用 户没有使用权 限 如果使用JZHANG 用户登录系统 那么按照前面u Ser Permi ssi onFi i ter 的设置 JZHANG用户在SysUser这个规则 下 那么该用户就能够正常登录 E R P 和员工管理系统 4 结 语 本系统中CA S 负责对用户的认证 L DA P 负责对用户库 的管理 目前 单点登录已在E RP 系统上成功部署 对于单 点登录这个概念不仅仅是使用C A S 来实现 目前还有很多 组织也开发 了基 于单点登录的系统 就C A S 来讲 其配置 和使 用还是 比较复杂 基 本使用 该系统作 为单点登录来 讲 用户能够实现所期望的效果 但是 由于该系统使用 了 spri ng进行开发 所以如果对于spri ng 没有了解过的开发 人员来讲还是存在一定的使用困难 对于本文来讲完成了 如下几个研究点 目录服务器 的安装与配置 数字证 书的 配置 CA S 服务端和客户端的配置 基于JavaEE 项 目 参考 文献 1 淡 艳 尹 谦 单点登录系统模型分析 J 成都大学学报 自然 科 学版 2008 27 2 2 周文静 基于CAS 的Web SSO 模型的一种实验性开发 J 上海工 程技术大学学报 2009 23 2 165 169 3 万灿军 李长云 开放网络环境中面向信任的单点登录 J 计算 机工程 2O10 36 3 4 张齐 钟观宝 基于用户映射的CAS 单点登录系统设计与实现 J 信息通信技术 2009 4 5 裘慧奇 统一身份认证和单点登录系统分析 J 电脑知识与技 术 2008 13 6 钟林栖 基于CA S 协议的单点登录系统的研究 D 四川 I大学 2006 7 谭金府 基于SSL 的SSO 系统的研究与实现 D 上海 上海海事 大学 2007 8 薛峰 张佑生 王敏 Tomcat4 中单向SSL 认证的原理及配置 A 全国第十五届计算机科学与技术应用学术会议论文集 C 200 3 年 上接第1 5 0 页 为主 时钟节点 利用示波器偏差测量工具 可得到三个通 信 节点之间的偏差值 分别为 一 l 一270ns 一 2 一140 ns 1 一 2 1 20ns 即从节点1 比主节点约快2 70n s 从节点2 比主时钟约 快140nS 从节点2 比从节点1约慢 12OnS 由此知主从时钟 之间同步精度在亚微秒 符合 I EEE l 588 时钟 同步协议的要 求 为了进一步掌握网络 中主从时钟同步性能 用示波器 进行多次误差测量 将整个网络持续运行 2 4 小时后 每十 分钟测量一次时钟偏差 连续测量五小 时共测 出六十组数 据 将数据绘制成偏差 曲线得到图7 图7各节点时间偏差曲线图 由图可见 通过同步补偿算法 时钟偏差在 3 0 0 n s 范围内波动 即时钟 同步精度在3 O0 n s 之内 上述实验是在IEEE l 588 推荐的同步周期2 S 的基础上 测 的 缩短 同步周期 可得 到更高的同步精度 但 同步周 期缩短 同步数据帧发送次数则会增加 占用带宽量也会 增加 所 以需要根据系统需求选择合适的 同步精度 本文 暂定同步周期为2 S 30 0n s 内的同步精度符合时间触发机 制下的列车 网络通信要求 在各个节点分 时传输时 分配 给各个节点的时间片只要有 3 0 0 n s 以上 的冗余即可 4 总结与展望 本文以IEEE 1 588 为基础 提出了最小二乘法进行时 钟补偿计算 以P TP E THER 通信节点为基础 针对列车通 信 网络的特点对 IEEE 1 588 协议栈进行了裁剪 完成了PTP 协议栈的设计 在基于 A R M 的实验平台上运用软件编程实 现 了时钟 同步 虽 已能够达到精度要求 但 由于晶振 的偏 移对 同步精度有直接 的影响 虽对补偿算法进行 了改 良 但 是依 旧无法完全利
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电网工程会计题库及答案
- 会考模拟考试题库及答案
- 2025年关于大坝的考试题及答案
- 贵州中考试题技巧及答案
- 化学图表分析题专项训练试题
- 化学反应类型辨析专项试题
- 古代画家考试题目及答案
- 矿业岗前培训考试试题及答案
- 2025年春招德语考试试题及答案
- 中职会计教师试卷及答案
- 中国桥梁发展史大众科普
- 联想并购IBM案例分析
- 铸件销售代理合同
- 中国心力衰竭基层诊疗与管理指南(实践版2024)
- 过敏性休克完整版本
- 方位角及坐标计算表格
- MH 5006-2015民用机场水泥混凝土面层施工技术规范
- MOOC 跨文化交际通识通论-扬州大学 中国大学慕课答案
- FZT 62011.2-2016 布艺类产品 第2部分:餐用纺织品
- (正式版)SHT 3078-2024 立式圆筒形料仓工程设计规范
- 收银标准化培训课件
评论
0/150
提交评论