999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Visual Studio程序語言的GPS局域網時間同步研究

2018-09-10 00:55:53劉飛鵬許婧王建雄奉延龍
河南科技 2018年20期

劉飛鵬 許婧 王建雄 奉延龍

摘 要:在通常的局域網中,各網絡設備的時鐘都有數秒甚至數分鐘的誤差,采用一種經濟實用高效的方法來提高局域網時間同步的準確性具有十分重要的意義。本文利用計算機獲取GPS時間和自動校核時間的方法,并提出局域網時間同步的解決方案,利用Visual Studio來實現計算機系統時間同步,方法簡捷,適用性強,時間誤差得到顯著修正。

關鍵詞:Visual Studio;局域網;時間同步;GPS時間

中圖分類號:TP391.72 文獻標識碼:A 文章編號:1003-5168(2018)20-0018-03

Research on GPS Local Area Network Time Synchronization

Based on Visual Studio

LIU Feipeng1 XU Jing2,3 WANG Jianxiong2,3 FENG Yanlong4

(1.China Forest Exploration and Design Institute on Kunming,Kunming Yunnan 650216;2. College of Water Conservancy, Yunnan Agricultural University,Kunming Yunnan 650201;3.Research Center of Agricultural Remote Sensing and Precision Agriculture Engineering in Yunnan Universities,Kunming Yunnan 650201; 4. Hepu County Water Conservancy Bureau,Hepu Guangxi 536100)

Abstract: In the usual LAN, the clock of each network device has a few seconds or even a few minutes of error. It is of great significance to adopt an economical, practical and efficient method to improve the accuracy of the time synchronization of the LAN. In this paper, the method of acquiring GPS time and auto-checking time by computer was presented, and the solution of time synchronization in LAN was put forward. The method was simple and applicable, and the time error was significantly corrected by using Visual Studio to realize time synchronization in computer system.

Keywords: Visual Studio;local area network;time synchronization;GPS time

隨著網絡科技的發展,時間同步的重要性逐漸提升。傳統應用程序大多是獨立、自成一體的,具有一定的局限性,修改程序復雜,且傳統程序的建立極為麻煩,維護費用昂貴。相反,用分布式對象建立的應用程序卻可以很自然地包含多個層次結構,從而將需要考慮的不同問題完全分離開來。分布式應用程序的運行需要將不同的應用程序分布在不同的電腦上,然后通過網絡來共同完成一項任務,這就需要時間同步來保證任務準確無誤地完成。另外,E-mail信息、文件創建和訪問時間、數據庫處理時間、通信行業、測繪行業和交通運輸業的時間顯示系統等對時間同步要求都很高。因此,開發一個經濟、準確、高效的軟件來確保局域網時間同步具有重要意義。

1 GPS簡介

利用GPS定位衛星在全球范圍內實時進行定位、導航的系統稱為全球衛星定位系統,簡稱GPS。其特點為:①全球全天候定位;②定位精度高;③觀測時間短;④測站間無須通視;⑤儀器操作簡單;⑥可提供全球統一的三維地心坐標;⑦應用廣泛[1]。

GPS的功能有3個,即導航、測量、授時。完成時間同步需要用到授時功能。GPS由3部分組成:空間部分、地面控制系統和用戶設備。常用的是用戶設備,也就是GPS信號接收機。GPS定位系統由24顆環繞地球的衛星組成,衛星向全球發射可接收的標準授時信號,GPS時鐘設備通過鎖定4~6顆衛星,計算出準確的格林尼治時間,并發出校時信號。GPS時鐘一般包括天線、GPS接收器和守時鐘等部件。當前,較多的局域網采用Windows自帶的時間獲取軟件,但時間準確度難以得到保證,所以采用GPS時鐘設備作為時鐘源進行授時就十分必要。

2 獲取時間的方法

2.1 GPS與電腦取得聯系的方法

GPS和Visual Studio軟件連接的參數主要有兩個。

①串口端口號。安裝好GPS驅動后,在設備管理器硬件列表端口下面的USB GPS Comm Port設備后的括號中找到相應的驅動。對于Windows 8系統,可在驅動程序中找到相應驅動[2]。

進入設備列表的方法是:在桌面“我的電腦”圖標上按鼠標右鍵—選擇屬性菜單—選擇硬件菜單欄—設備管理器—點擊列表里面的端口項—USB GPS Comm Port (COM?),找到問號所代表的GPS端口號[3]。

②波特率,即單片機或計算機在串口通信時的速率。

2.2 從GPS獲取時間到電腦的方法

要用GPS獲取時間和日期,需要對導航型GPS進行數據處理,語句要選用GPRMC,推薦定位信息(GPRMC)[4]。

$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh

<1> UTC時間,hhmmss.sss(時分秒.毫秒)格式;

<2> 定位狀態,A=有效定位,V=無效定位;

<3> 緯度ddmm.mmmm(度分)格式(前面的0也將被傳輸);

<4> 緯度半球N(北半球)或S(南半球);

<5> 經度dddmm.mmmm(度分)格式(前面的0也將被傳輸);

<6> 經度半球E(東經)或W(西經);

<7> 地面速率(000.0~999.9節,前面的0也將被傳輸);

<8> 地面航向(000.0~359.9°,以正北為參考基準,前面的0也將被傳輸)

<9> UTC日期,ddmmyy(日月年)格式;

<10> 磁偏角(000.0~180.0°,前面的0也將被傳輸);

<11> 磁偏角方向,E(東)或W(西);

<12> 模式指示(僅NMEA0183 3.00版本輸出,A=自主定位,D=差分,E=估算,N=數據無效)。

本文研究時間同步,因此選取<1>和<9>。

<1> UTC時間,hhmmss.sss(時分秒.毫秒)格式;

<9> UTC日期,ddmmyy(日月年)格式。

獲取的格式需要轉換為yyyy/mm/dd,hh:mm:ss

北京為東8區,因此要加8h轉為北京時間,C#代碼如下:

private void BasePortUpdateTextBox(string BasePorttext)

{try

{ string[] temp = BasePorttext.Split(',');

if (temp[0] == "$GPRMC") //獲取GPRMC

{if (temp[2] == "A")

{BaseLabel.Text = "有效定位" ;

if (temp[9].Length == 6 && temp[1].Length >= 6)

{temp[1] = (BaseB + 80000).ToString();

string dtString = string.Format("{0}-{1}-{2} {3}:{4}:{5}",

temp[9].Substring(4),

temp[9].Substring(2, 2),

temp[9].Substring(0, 2),

temp[1].Substring(0, 2),

temp[1].Substring(2, 2),

temp[1].Substring(4));

this.UTCDateTime = DateTime.Parse(dtString); }

textBox1.Text = UTCDateTime.ToString(); textBox2.Text = DateTime.Now.ToString();}

else

{BaseLabel.Text = "無效定位"; }}}

catch (Exception ex)

{ MessageBox.Show(ex.Message); }}

3 自動更改系統時間為GPS時間的方法

要設置系統時間,需要調用系統動態鏈接庫kernel32.dll,要求自動更新時間需要用到timer控件,需要設置每隔一段固定的時間運行一次程序來更改系統時間為通過GPS獲取的時間[5]。

相關C#代碼如下:

// 獲取系統時間API

[DllImport("kernel32.dll")]

public extern static void GetSystemTime(ref SystemTime sysTime);

// 設置系統時間API

[DllImport("kernel32.dll")]

public extern static bool SetSystemTime(ref SystemTime sysTime);

private void timer1_Tick(object sender, EventArgs e)

{ timer1.Enabled = false;

timer1.Interval = 15000;//以毫秒為單位

// 設定時間,該結構體內的時間必須為UTC時間

SystemTime updatedTime = new SystemTime();

updatedTime.Year = (ushort)UTCDateTime.Year;

updatedTime.Month = (ushort)UTCDateTime.Month;

updatedTime.Day = (ushort)UTCDateTime.Day;

updatedTime.Hour = (ushort)(UTCDateTime.Hour - 8);

updatedTime.Minute = (ushort)UTCDateTime.Minute;

updatedTime.Second = (ushort)(UTCDateTime.Second + 1);

// 設定時間

SetSystemTime(ref updatedTime); }

4 基于Visual Studio局域網時間同步方案

4.1 服務器時間校核為GPS時間

先用Visual Studio程序語言編寫應用程序,并將服務器時間手動校核一次,使服務器時間更新為GPS時間;由于系統時間每隔一定時間都會有一定的誤差,因此還需點自動校核按鈕,使服務器每隔一定時間自動校核一次,保證服務器時間始終與GPS時間一致。

4.2 客戶機時間校核為服務器時間

創建局域網頁,使網頁中顯示服務器時間和客戶機時間,客戶機時間獲取方法與前文一致,服務器時間需要由應用程序中獲取的GPS時間讀入數據庫,再由數據庫讀入網頁,網頁中設置2個按鈕:一個用于人工校核,一個用于電腦自動校核。最終結果顯示:①點校核按鈕,客戶機局域網頁中客戶機與服務器時間同步;②點自動校核按鈕,讓電腦自動校核,并完成客戶機與服務器時間同步。

5 結語

GPS作為標準時鐘源,運用Visual Studio程序語言,在局域網時間同步中的作用顯著,方法簡捷,適用性強。其不僅能滿足多設備的要求,而且能保證時間需求的高精度、高穩定性。

局域網頁中獲取GPS時間的過程中,先將GPS時間讀入應用程序,再由應用程序進入數據庫,最后再通過數據庫讀入網頁中,在這幾個階段,不斷的讀入過程也需要花費時間,因此最終到達網頁的時間可能與GPS時間存在一定誤差,這個誤差還應該修正。本文較好地實現了GPS時間與單個系統的同步,局域網的同步還需要不斷修正,最終達到更為準確的時間同步。

參考文獻:

[1]肖明,賀鵬,徐守志.基于GPS的局域網時間同步的研究[J].科技信息,2010(5):443.

[2]胡紹波.局域網時間同步系統設計與實現[J].計算機時代,2013(6):45-52.

[3]諶華金,羅雙喜,何佳洲.利用CPU時間戳實現局域網時間同步的新機制[J].計算機應用,2009(11):2920-2924.

[4]諶華金,何佳洲.一種基于數據鏈路層的局域網時間同步新機制[J].計算機應用,2010(5):1183-1187.

[5]劉愛東,黃彬,張永輝.一種基于通用PC的局域網時間同步方法[J].科學技術與工程,2012(28):7434-7438.

主站蜘蛛池模板: 视频国产精品丝袜第一页| 国产激情在线视频| 国产性猛交XXXX免费看| 91青青草视频在线观看的| 四虎影视无码永久免费观看| 国产成人艳妇AA视频在线| 国产美女无遮挡免费视频| 欧美天堂在线| 欧美福利在线播放| 欧美一区二区丝袜高跟鞋| 亚洲男人天堂2020| 澳门av无码| 午夜福利免费视频| julia中文字幕久久亚洲| 沈阳少妇高潮在线| 91小视频在线播放| 国产va在线观看| 久久精品视频一| 国产一级特黄aa级特黄裸毛片| 2020精品极品国产色在线观看| 国产精品男人的天堂| 国产天天射| 日韩一区精品视频一区二区| 香蕉eeww99国产在线观看| 国产精品久久久久久久伊一| 国内99精品激情视频精品| 手机在线免费不卡一区二| 大学生久久香蕉国产线观看| 色综合成人| 成人噜噜噜视频在线观看| 色一情一乱一伦一区二区三区小说| 国产成+人+综合+亚洲欧美| 色网在线视频| 亚洲欧洲国产成人综合不卡| 一区二区日韩国产精久久| 成人久久精品一区二区三区| 国产精品视频导航| 91久久性奴调教国产免费| 国产91丝袜在线播放动漫 | 精品国产毛片| 成人免费黄色小视频| 欧美乱妇高清无乱码免费| 国产在线视频欧美亚综合| 亚洲精品第一页不卡| 99re精彩视频| 亚洲成人在线网| 伊人婷婷色香五月综合缴缴情| 国产 在线视频无码| 日本高清免费不卡视频| 日本午夜精品一本在线观看| 一级看片免费视频| 97青草最新免费精品视频| 精品超清无码视频在线观看| 伊人久综合| 在线一级毛片| 免费一级α片在线观看| 午夜视频www| 无码福利日韩神码福利片| 国产又粗又爽视频| 国产免费网址| 亚洲综合极品香蕉久久网| 日本五区在线不卡精品| 伊人无码视屏| 免费观看欧美性一级| 日韩第一页在线| 日韩欧美色综合| 一级毛片免费高清视频| 国产免费精彩视频| 国产99视频精品免费视频7| 亚洲美女操| 日本在线免费网站| 乱码国产乱码精品精在线播放| 污污网站在线观看| 国产欧美在线观看精品一区污| 自拍偷拍欧美| 亚洲欧美另类中文字幕| 伊人精品视频免费在线| 久久久亚洲色| 99九九成人免费视频精品| 亚洲人成网站18禁动漫无码| 波多野结衣无码视频在线观看| 国产成人精品一区二区|