如果您的計算機屬于某個域,則計算機的時鐘可能自動被網絡的域時間服務器同步。如果您的計算機是工作組模式可以利用WINDOWS操作系統自帶的網絡授時協議進行相應的設置,實現時間同步。首先架設一臺服務器與GPS同步,并啟用時間服務功能。網內客戶端用戶只需在本機設置啟用與時間服務器同步功能即可。校時網絡拓撲圖如圖1。
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(年月日)格式
在了解了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機的時間不統一問題,校時用戶設置簡單,效果明顯。