时间同步技术在分布式姿态基准系统中的实现.doc_第1页
时间同步技术在分布式姿态基准系统中的实现.doc_第2页
时间同步技术在分布式姿态基准系统中的实现.doc_第3页
时间同步技术在分布式姿态基准系统中的实现.doc_第4页
时间同步技术在分布式姿态基准系统中的实现.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

时间同步技术在分布式姿态基准系统中的实现 日期:2005-10-29 人气:0 查看:大字体 中字体 小字体 分布式姿态基准系统中时间同步技术的实现冯海强,徐晓苏(东南大学仪器科学与工程系江苏南京210096)摘要:首先分析比较了两种重要的时间同步技术-网络时间协议(NTP)和直接连接时间传输技术,然后提出了一个基于W indows 2000的高精度的时间同步方案,并给出了该方案的软硬件的实现,且已成功地应用于分布式姿态基准系统。 关键词:时间同步;分布式姿态基准系统;Windows 2000;驱动程序;ISA 随着现代舰载设备的精度和可靠性等要求的不断提高,采用局部基准技术以消除甲板因各种原因产生的变形已得到普遍应用。传统的方法是在每一个需要测量点处安装一台局部基准,当所需提供测量的点数较多时,一方面因局部基准的数量增多,使成本较高;另一方面在同一系统中使用多个局部基准时,各局部基准之间的差异,会造成在不同设备上的测量数值在进行坐标转换时带来较大的误差,影响系统的精度。因此,建立全舰统一基准势在必行。通过建立一个分布式姿态基准系统可以实现这一目标。系统工作时,分布安装在载体各个部位的分布式姿态基准通过网络以一定的频率向中心计算机输出测量的姿态角等数据,在载体动态运动的环境下保证各分布式姿态基准的数据都是对应于绝对时刻的同一个点,由此保证系统进行信息融合处理的同步要求,以达到系统高精度、高可靠性的目的。时间同步技术是该系统的重要关键技术之一。分布在舰艇上的各个分布式姿态基准对其惯性传感器的同步采样才能保证中央计算机进行的信息融合处理的同步要求。1时间同步技术的现状在分布式姿态基准系统中,要想保证每台基准系统的计算机上的晶体以完全相同的频率振荡是不可能的,这就会导致各个单机时钟逐渐不同步,即产生时钟偏移(ClockSkew)。这就必须通过时间同步技术来解决这一问题。目前,有两种重要的时间同步技术,即NTP协议和直接连接时间传输。NTP协议最典型的操作模式是NTPC/S模式。在该模式中,客户机以传统的C/S方式周期性地向服务器请求时间信息,服务器用来同步客户机而不能被客户机同步,对于客户机来说正好相反。NTP协议的精度依赖本地时钟硬件的精确度,因网络延迟的随机性而导致时钟延迟计算的不准确也会影响NTP协议的精确度。在对计算机时间同步的准确度要求较高的场合,可以不通过网络而采用直接连接时间传输技术。但这可能需要在计算机上安装总线级别的定时模块用于接受和维持时间信息(全球定位系统GPS或用户自己的中央定时机构),这些模块可以独立维持时间而不受主机操作的影响。并且,这些模块上的晶体振荡器的精确度可以同时间源匹配。2时间同步方案的设计综合考虑以上各种时间同步技术的特点以及本系统自身的特点,本方案采用直接连接时间传输技术,并建立自己的中央定时机构。系统同步和网络通讯组成的结构框图如图1所示。这样统一的时钟信号由专门的时统部件产生,以差分电平方式向各分布式姿态基准发送100 Hz频率信号,各个分布式姿态基准以此信号作为其惯性传感器的采样同步脉冲,这样所有分布式姿态基准的输出数据均对应于该时统信号的上升沿,由此保证综合信息处理装置所进行的信息融合处理的同步要求。由于本系统要求采用Windows2000操作系统,因此,怎样实现Windows 2000 为此,本设计方案采用硬件扩展板的方式,即经由计算机的扩展槽向CPU发出中断请求,从而执行相应的中断服务程序,实现时间同步的要求。在扩展板设计中,对于时统信号发生卡使用了外部计数器/定时器对扩展板上的晶振频率进行测量,并以差分电平方式向各分布式姿态基准发送100 Hz频率信号;对于各分布式姿态基准上的时统信号接收卡接收到信号发生卡送来的频率信号之后通过设备驱动程序可进行软件中断、捕获I/O端口操作和截取硬件中断,采用定时中断的方式与Windows系统通信,从而实现高精度、高可靠性的时间同步。3同步方案的实现包括硬件和软件的实现。31硬件的实现这里主要包括两块硬件扩展板的设计。一块是时统信号发生卡,他插在局域网中的服务器的ISA槽上,由他来产生统一时钟信号,除了给服务器提供同步信号之外还以差分电平方式向各捷联航姿态基准发送100 Hz频率信号;另一块是时统信号接收卡的设计,插在局域网中的客户机(即各捷联基准)的ISA槽上,用来接收服务器端发来的同步信号,并转化成硬件中断信号。 3 时统信号发生卡的设计时统信号发生卡的原理图如图2所示。这是以Intel8253为核心组成的一个系统定时逻辑。8253含有3个独立的计数器0,1和2,每个计数器包括3个寄存器,分别为:8 b的控制寄存器,16 b的计数寄存器CR和16 b的输出锁存器OL,共同占用一个I/O端口地址。设置定时时,在计数器0的CLK端加上从晶振送来的信号(每个CLK信号使计数器减1),并将工作方式设成3,产生对称的方波。可以通过预置或修改计数寄存器中的计数值来得到所需要的频率。MC3487把8253送的TTL电平转化为422电平输出到各时统信号接收卡。8253的6种工作方式的设置是在初始化时使用输出指令写控制字来实现的。 3 时统信号接收卡的设计时统信号接收卡的原理图如图3所示。其中MC3486将从时统信号发生卡送来的422电平转化为TTL电平以保证信号传输的可靠性,通过D触发器以电平触发的方式向CPU发出中断请求,CPU接收到中断之后通过地址选通电路对D触发器清零。32软件的实现Windows 2000 因此,在这里软件的实现主要是指驱动程序的实现。 3 编程由于时统信号发生卡和接收卡的内核模式驱动程序基本相同,不同的是发生卡多了对8253的初始化,而接收卡多了对D触发器的清零操作,所以在这里将以发生卡为例来说明设备驱动程序的编写。所采用的开发工具是VC60和Windows 2000 DDK,具体实现如下: (1)调用DriverEntry例程作为该驱动程序的入口函数,与在Windows应用程序中定义的WinMain相似。如果DriverEntry例程返回一个失败状态代码,系统将不再调用DriverUnload例程。(2)调用IoCreateDevice函数创建设备对象,并建立一个私有的设备扩展对象。如果IoCreateDevice由于某种原因失败,则他返回一个错误代码,不改变fdo(功能设备对象)中的值。如果IoCreateDevice函数返回成功代码,那么他同时也设置了fdo指针。然后进行到下一步。(3)初始化设备扩展,做与创建新设备对象相关的其他工作。包括通过调用RtlQueryRegistryValues函数从注册表取得有关信号发生卡的中断信息,取得发生卡的端口地址,使用函数IoReportResourceUsage报告资源占用。(4)通过调用RtlInitUnicodeString函数创建一个时间中断通知事件,用来与应用程序通信。(5)使用HalTranslateBusAdress函数来实现端口地址向逻辑地址的转换。(6)调用IoCreateSymbolicLink来创建核心态和用户态之间的设备对象的符号连接。(7)通过以下语句“声明”响应启用特定的I/O函数代码请求(来自用户模式应用程序的请求或者来自其他地方的请求)的Dispatch例程。这里只用一个Time22Dispatch例程处理CREATE(请求一个句柄)、CLOSE(关闭句柄)、DEVICECONTROL(控制操作)3种请求。(8)用以下语句来“声明”Unload例程,然后,每当驱动程序被手动或自动卸载时,I/O管理程序就调用该例程。 DriverObjectDriverUnloadTime22Unload; (9)调用HalGetInterruptVector和IoConnect Interrupt建立并连接到一个中断对象,内核把中断发送到驱动程序的ISR。通过以上的各个步骤构成了整个驱动程序的整体框架。另外,对8253的初始化是在Time22Dispatch例程中通过调用硬件抽象层提供的函数WRITEPORTXXX对端口进行写操作来完成的。 3 驱动程序的载入驱动程序C语言源程序经过编译、链接生成扩展名为SYS的文件,本例为Time22sys,把这个文件拷贝到WINNTsystem32drivers系统目录下,同时手工填加 入以下信息到注册表:要保证Time22子键名与驱动程序文件名一致,其中Type1表示此驱动程序为内核模式驱动程序,Start2表示此驱动程序自动载入,ErrorControl1表示当驱动程序发生错误时,日志纪录错误并显示一个消息框,Time20MsIntNum5表示该设备的中断号为5。这样当Windows重新启动之后,设备驱动程序就驻留内存并在底层开始工作了。 3 调试NuMega公司提供的SoftICE是一种功能十分强大的程序调试工具,他可以运行于DOS,Windows等多种操作系统,是跟踪调试程序的有力工具。对于驱动程序,可以实现单机调试。本驱动程序利用SoftICE调试通过,并已经成功地运行于本系统。4结语本文所介绍的基于Windows 2000 参考文献1董甲东基于局域网时间同步在电力系统中的应用及误差分析J水利水电工程设计,2003

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论