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.

主站蜘蛛池模板: 久久精品这里只有精99品| 白浆免费视频国产精品视频| 亚洲黄色激情网站| 午夜小视频在线| 99ri精品视频在线观看播放| 国产第八页| 秘书高跟黑色丝袜国产91在线| 广东一级毛片| 日韩av无码DVD| 久久国产黑丝袜视频| 伊人久久大香线蕉综合影视| 亚洲日本中文综合在线| 久久精品aⅴ无码中文字幕 | 亚洲综合18p| 日本三级黄在线观看| 亚洲精品国产精品乱码不卞| 久一在线视频| 97色伦色在线综合视频| 99久久国产综合精品女同 | 中文字幕亚洲精品2页| 91国内在线视频| 国产精品网址在线观看你懂的| 人妻精品全国免费视频| 97精品国产高清久久久久蜜芽 | 第九色区aⅴ天堂久久香| 亚洲国产亚综合在线区| 午夜老司机永久免费看片| 免费无遮挡AV| 亚洲国产精品久久久久秋霞影院| 曰韩免费无码AV一区二区| 青青青国产视频| h视频在线观看网站| 精品久久久久久久久久久| 亚洲黄网在线| 婷婷色中文网| 国产男女免费完整版视频| 欧美激情网址| 丁香婷婷激情综合激情| 最新国产成人剧情在线播放| 国产成在线观看免费视频| 国产青榴视频| 3p叠罗汉国产精品久久| 欧美成人国产| 久996视频精品免费观看| 91精品国产91久无码网站| 婷婷亚洲最大| 国产毛片久久国产| 国产日韩精品欧美一区喷| 亚欧成人无码AV在线播放| 久久一本精品久久久ー99| 中文字幕日韩久久综合影院| 国产情侣一区二区三区| 欧美精品高清| 高清亚洲欧美在线看| 久久亚洲国产一区二区| 国产精品99r8在线观看| 激情影院内射美女| 日韩二区三区| 一级毛片基地| 国产高清在线观看| 欧美在线视频不卡第一页| 欧美精品另类| 在线看国产精品| 久久综合五月| 自拍偷拍欧美日韩| 中文纯内无码H| 国产福利免费视频| 国产欧美日韩免费| 福利国产微拍广场一区视频在线| 青青青国产在线播放| 99re66精品视频在线观看| 一级毛片在线免费视频| 性做久久久久久久免费看| 日本高清免费一本在线观看 | 亚洲精选高清无码| 日韩中文字幕免费在线观看 | 久久窝窝国产精品午夜看片| 欧美日韩国产在线播放| 国产精品专区第一页在线观看| 国产无码高清视频不卡| 亚洲开心婷婷中文字幕| 免费看一级毛片波多结衣|