时间同步服务器在中、小型局域网中的应用
北京中新创科技有限公司
2014/11/10 15:28:59>> 进入商铺 GPS时间获取
由于时间服务器不能自动与GPS系统同步,使用VB语言编写了一套自动接收并校准此服务器时间的程序,每秒同步服务器一次,使服务器时间与GPS系统时刻保持一致。程序通过服务器串口可以接收GPS卫星信号。
如图1所示,GPGGA为GPS定位信息,GPGSA是当前卫星信息,GPGSV表示可见卫星信息,GPRMC推荐定位信息。为了方便读取gps时间同时获取日期信息,我们选用GPRMC信息
$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,*hh
<1>UTC时间,hhmmss(时分秒)格式
<2>卫星定位状态
<3>纬度ddmm.mmmm(度分)格式(前面的0也将被传输)
<4>纬度半球E(北半球)或S(南半球)
<5>经度dddmm.mmmm(度分)格式(前面的0也将被传输)
<6>经度半球E(东经)或W(西经)<7>UTC日期,yymmdd(年月日)格式
<6>经度半球E(东经)或W(西经)<7>UTC日期,yymmdd(年月日)格式
在了解了GPS数据格式后,利用VB提供的函数取出我们所需要的时间信息,从GPS
读取的时间是英国格林威治时间,我们需要把它转化成北京时间,也就是对应的时间上加8小时。接收软件每天根据接收到的GPS时间自动校准本地服务器时间,为了确保接收时间数据的准确性,接收到的GPS时间与服务器本地时间进行比较,如果时间差超过设定闻值不校准,进行报警提示。同时记录日志,方便管理人员查看。
时间服务器
1.时间服务器的设置
默认情况下,独立服务器WINDOWSSERVER2003是作为NTP客户端工作的,必须通过修改注册表,以使系统作为NTP服务器运行。工作之前请先备份注册表文件。
2.修改以下选项的键值HKEY_LOCAL_MACHINE\SYSTEM\Current
ControlSet\Servioes\W32Time\TimeProviders\NtpServer内的[Enabled]设定为1,打开NTP服务器功能(默认是不开启NTPServer服务,除非电脑升级成为域控制站)
3.修改以下键值HKEY_LOCAL_MACHINE\SYSTEM\Current
ControlSet\Services\W32Time\Config\AnnounceFlags设定为5。该设定强制主机将它自身宣布为可靠的时间源,从而使用内置的互补金属氧化物半导体(CMOS)时钟。
4.重启win32Time服务,在开始运行中输入netstopW32Time&&netstartW32Time,回车即可重新启动Win32Time服务,完成时间服务器的配置。1.3网内校时用户配置
客户端
客户端用户设置比较简单。具体设置如下。
1.请依次单击“开始”、“控制面板”,然后双击“日期和时间”,选择“Internet时间”。
2.在选中“自动与Internet时间服务器同步”复选框后,将服务器的内容修改为时钟服务器的IP地址,点“立即更新”按钮,点击“确定”。
3.如果启用了同步,您的计算机每周就会和服务器时间服务器进行一次同步。如需每天同步一次,需要在注册表中做相应修改,具体如下。
①点“开始”,“运行”并在打开处输入“regedit”。
②点击“确定”后,打开注册表编辑器选择“HKEY_LOCAL_MACHINE”。
③展开此项,找到“SYSTEM”点选并展开,找到“Services”点选并展开,找到“W32Time”展开,找到“TimeProviders”中的“NtPClient”展开后,在右侧选择“SpecialPollInterval”双击后修改数值数据为“15180”(十六进制)点击确定。
④打开“日期和时间”属性可以看到同步时间,以及下次同步时间已经改为第二天同一时刻。
时间同步服务器系统的架设,解决了我单位局域网内服务器,PC机的时间不统一问题,校时用户设置简单,效果明显。