日韩欧美视频一区-日韩欧美三区-日韩欧美群交P内射捆绑-日韩欧美精品有码在线播放免费-成人免费一区二区无码视频-成人免费一级毛片在线播放视频

樹人論文網(wǎng)一個(gè)專業(yè)的學(xué)術(shù)咨詢網(wǎng)站!!!
樹人論文網(wǎng)

VB.Net編寫實(shí)時(shí)通訊程序軟件開發(fā)論文發(fā)表

來源: 樹人論文網(wǎng)發(fā)表時(shí)間:2013-05-21
簡要:摘 要:本文介紹采用Visual Basic.Net開發(fā)南方全站儀實(shí)時(shí)通訊程序的經(jīng)過和方法,實(shí)現(xiàn)了外業(yè)測量數(shù)據(jù)的實(shí)時(shí)同步處理,對(duì)外業(yè)工作及時(shí)的提供分析。

  摘 要:本文介紹采用Visual Basic.Net開發(fā)南方全站儀實(shí)時(shí)通訊程序的經(jīng)過和方法,實(shí)現(xiàn)了外業(yè)測量數(shù)據(jù)的實(shí)時(shí)同步處理,對(duì)外業(yè)工作及時(shí)的提供分析。

  關(guān)鍵詞:全站儀,實(shí)時(shí)通訊

  1 概述

  隨著測繪技術(shù)的發(fā)展,全站儀在工程測量中的使用越來越廣泛。為了快速方便的獲取測量數(shù)據(jù)的分析結(jié)果,及時(shí)的對(duì)工程施工給出指示,那么我們就需要對(duì)測量數(shù)據(jù)進(jìn)行實(shí)時(shí)處理,而處理數(shù)據(jù)的前提是我們能夠動(dòng)態(tài)的獲取全站儀測量的數(shù)據(jù),即全站儀實(shí)時(shí)通訊技術(shù)。我們用Visual Basic.Net編寫了南方全站儀實(shí)時(shí)通訊軟件。通過數(shù)據(jù)線將全站儀與筆記本電腦(或者電子手簿)連接,實(shí)現(xiàn)了全站儀每測量一次數(shù)據(jù),都會(huì)自動(dòng)的傳輸?shù)诫娔X里面,通過后處理軟件,及時(shí)給出我們需要的數(shù)據(jù)分析結(jié)果。本文以南方NTS-360型號(hào)全站儀為例,介紹在測量工程中實(shí)時(shí)通訊技術(shù)的開發(fā)與應(yīng)用。

  2 編程思路

  本程序的的編寫主要是用Microsoft Mscomm控件通過串口連接進(jìn)行數(shù)據(jù)通訊。南方全站儀與計(jì)算機(jī)通訊的信號(hào)響應(yīng)按照以下步驟實(shí)現(xiàn):

  (1)計(jì)算機(jī)向儀器發(fā)送第一類指令(指令“C” ASCII碼:43H 30H 36H 37H 03H 0DH 0AH);

  (2)儀器檢查指令“C”的BCC,若接收的指令正確,則在0.05秒內(nèi)儀器向計(jì)算機(jī)發(fā)送承認(rèn)信號(hào)“ACK”。若接收的指令不正確,則儀器不向計(jì)算機(jī)發(fā)送回答信號(hào)。

  有效指令A(yù)CK ASCII碼:06H 30H 30H 36H 03H 0DH 0AH;

  無效指令NAK ASCII碼:14H 30H 32H 31H 03H 0DH 0AH;

  (3)若計(jì)算機(jī)在0.05秒內(nèi)未接收到來自儀器的承認(rèn)信號(hào)“ACK”,則計(jì)算機(jī)必須再發(fā)送一次指令“C”;

  (4)步驟3最多能重復(fù)10次,此后計(jì)算機(jī)會(huì)中斷通訊并顯示錯(cuò)誤信息;

  (5)儀器接收到指令“C”后,開始測量;測量完畢,自動(dòng)發(fā)送數(shù)據(jù);

  (6)當(dāng)計(jì)算機(jī)正確地接收數(shù)據(jù)并檢查BCC之后,必須在0.3秒之內(nèi)向儀器發(fā)送“ACK”。當(dāng)儀器接收到“ACK”,則通訊完畢;

  (7)若接收的數(shù)據(jù)有通訊錯(cuò)誤,則計(jì)算機(jī)不會(huì)發(fā)送“ACK”。然后,儀器會(huì)再次向計(jì)算機(jī)發(fā)送同樣的數(shù)據(jù);

  (8)步驟7最多能重復(fù)10次,此后計(jì)算機(jī)會(huì)中斷通訊并顯示錯(cuò)誤信息。

  全站儀測量數(shù)據(jù)實(shí)時(shí)傳輸至計(jì)算機(jī)以后,通過后處理軟件對(duì)這些數(shù)據(jù)進(jìn)行處理,就可以得到我們需要的分析結(jié)果了。例如,我們測量的坐標(biāo)數(shù)據(jù)實(shí)時(shí)傳輸至計(jì)算機(jī)以后,可以通過后處理軟件直接比較所測數(shù)據(jù)與設(shè)計(jì)數(shù)據(jù)的偏差,及時(shí)的指導(dǎo)工程施工。

  3編程過程

  3.1建立用戶界面

  (1)運(yùn)行Microsoft Visual Studio 2005,新建項(xiàng)目文件南方NTS-360全站儀測量實(shí)時(shí)通訊,將默認(rèn)窗體名稱改為南方NTS-360全站儀測量實(shí)時(shí)通訊,在其界面下添加AxMSComm1控件,用來實(shí)現(xiàn)全站儀與計(jì)算機(jī)之間的數(shù)據(jù)傳輸。并添加以下各個(gè)控件,來構(gòu)成整個(gè)程序的主界面。

  (2)定義變量協(xié)議的各項(xiàng)參數(shù):

  Dim Out() As Byte '接收全站儀數(shù)據(jù)

  Dim TXDK As Integer '標(biāo)記通訊端口

  Dim BTL、SJW、TZW、JY As String '標(biāo)記波特率、數(shù)據(jù)位、停止位、校驗(yàn)類型

  (3)添加通訊端口、波特率、數(shù)據(jù)位、停止位、校驗(yàn)等幾組單選控件,用來對(duì)通訊協(xié)議參數(shù)的進(jìn)行設(shè)置。

  雙擊COM1、COM2、COM3、COM4、COM5、COM6單選控件,編寫對(duì)應(yīng)的如下代碼:

  TXDK = 1;

  雙擊1200、2400、4800、9600單選控件,編寫對(duì)應(yīng)的如下代碼:

  BTL = 1200;

  雙擊7位、8位單選控件,編寫對(duì)應(yīng)的如下代碼:

  SJW = 7;

  雙擊1位、2位單選控件,編寫對(duì)應(yīng)的如下代碼:

  TZW = 1;

  雙擊無校驗(yàn)(n)、奇校驗(yàn)(o)、偶校驗(yàn)(e)單選控件代碼,編寫對(duì)應(yīng)的如下代碼:JY = n;

  添加一個(gè)文本框控件,用來設(shè)置通訊連接的超時(shí)時(shí)間限制。

  (4)雙擊開始測量按鈕,編寫以下代碼:

  '通訊協(xié)議參數(shù)設(shè)置

  With AxMSComm1

  .CommPort = TXDK '設(shè)置Com1為通信端口

  .Settings = BTL & “,” & JY & “,” & SJW & “,” & TZW

  .InBufferSize = 1024 '設(shè)置緩沖區(qū)接收數(shù)據(jù)為字節(jié)

  .OutBufferSize = 1024 '設(shè)置緩沖區(qū)發(fā)送數(shù)據(jù)為字節(jié)

  .InputLen = 0 '設(shè)置Input一次從接收緩沖讀取字節(jié)數(shù)

  .RThreshold = 1 '設(shè)置接收一個(gè)字節(jié)就產(chǎn)生OnComm事件

  .InputMode = 1 '設(shè)置接收數(shù)據(jù)類型為二進(jìn)制

  End With

  '打開串口

  Try

  If AxMSComm1.PortOpen = False Then

  AxMSComm1.PortOpen = True

  Else

  AxMSComm1.OutBufferCount = 0

  End If

  Catch ex As Exception

  MsgBox(ex.ToString)

  End Try

  '通信開始

  Dim strCmd As String

  '發(fā)送坐標(biāo)測量模式指令

  strCmd = "\0x5a\0x36\0x32\0x30\0x39\0x34\0x03\0x0d\0x0a"

  Try

  AxMSComm1.Output = strCmd

  Catch ex As Exception

  MsgBox(ex.ToString)

  Exit Sub

  End Try

  Thread.Sleep(300)

  '發(fā)送c指令

  strCmd = "\0x43\0x30\0x36\0x37\0x03\0x0d\0x0a"

  Try

  AxMSComm1.Output = strCmd

  Catch ex As Exception

  MsgBox(ex.ToString)

  Exit Sub

  End Try

  '發(fā)送Ack指令

  strCmd = "\0x06\0x30\0x30\0x36\0x03\0x0d\0x0a"

  Try

  AxMSComm1.Output = strCmd

  Catch ex As Exception

  MsgBox(ex.ToString)

  Exit Sub

  End Try

  (5)雙擊AxMSComm1控件,編寫以下代碼:

  Select Case AxMSComm1.CommEvent

  Case 1 'comEvSend發(fā)送數(shù)據(jù)

  Case 2 'comEvReceive讀取數(shù)據(jù)

  Out = AxMSComm1.Input

  Dim buf As String = ASCIIEncoding.GetString(Out) '數(shù)據(jù)類型轉(zhuǎn)換

  TextBox2.Text = TextBox2.Text & buf '顯示數(shù)據(jù)

  Case Else '傳輸事件出錯(cuò)

  AxMSComm1.OutBufferCount = 0

  End Select

  3.2數(shù)據(jù)轉(zhuǎn)換

  在全站儀啟動(dòng)坐標(biāo)測量之后,實(shí)時(shí)傳輸至計(jì)算機(jī)的坐標(biāo)數(shù)據(jù)格式如下:

  我們可以分析得出在坐標(biāo)測量模式下的各項(xiàng)數(shù)據(jù):

  “U” 坐標(biāo)模式標(biāo)識(shí)符

  “+00000002121” N坐標(biāo) 0.175m

  “-00000000485” E坐標(biāo) 0.485m

  “+00000000548” Z坐標(biāo) 0.548m

  “m” 距離單位

  “3470702” 水平角

  “d” 角度單位

  “095” 校驗(yàn)值

  依據(jù)此分析結(jié)果編寫代碼如下:

  Dim Str1,Str2 As String

  Dim N,E,Z As Double

  Str1 = TextBox2.Text

  Dim i As Integer = Str1.IndexOf("U")

  Str1.CopyTo(i + 1, Str2, 0, 12)

  N = Val(Str2)

  Str1.CopyTo(i + 13, Str2, 0, 12)

  E = Val(Str2)

  Str1.CopyTo(i + 25, Str2, 0, 12)

  Z = Val(Str2)

  通過以上步驟,我們實(shí)時(shí)的獲取了我們?cè)跍y量工程作業(yè)中需要 N,E,Z坐標(biāo)。如果需要角度測量、斜距測量等其他模式,只需修改對(duì)應(yīng)的指令代碼和數(shù)據(jù)轉(zhuǎn)換代碼即可。

  4結(jié)論

  本文主要介紹全站儀的實(shí)時(shí)通訊技術(shù)在坐標(biāo)測量模式下的實(shí)現(xiàn)方法,至于我們實(shí)時(shí)獲取了坐標(biāo)數(shù)據(jù)之后,如何做進(jìn)一步的分析處理,則需要根據(jù)各種測量工程的特點(diǎn)編寫對(duì)應(yīng)的后處理軟件,來得到分析結(jié)果,以對(duì)工程施工進(jìn)行指示、校正。

  本程序已經(jīng)使用了2年之久,運(yùn)行穩(wěn)定,結(jié)果可靠,操作簡單,在外業(yè)及時(shí)的自動(dòng)處理數(shù)據(jù),給出分析結(jié)果,大大提高了工作效率。

  參考文獻(xiàn)

  [1] 季斌德,邵自修. 工程測量[M].北京:測繪出版社,2002.01.

  [2] 何保喜.全站儀測量技術(shù)[M].鄭州:黃河水利出版社,2005.08.

  [3] 武大測繪學(xué)院平差學(xué)科組.誤差理論與測量平差基礎(chǔ)[M].武漢:武漢大學(xué)出版社,2003.01

  [4]陳戰(zhàn)林,耿宏運(yùn).Visual Basic.NET高級(jí)編程[M].北京:電子工業(yè)出版1999.05

上一篇:沒有了
主站蜘蛛池模板: 把手戳进美女尿口里动态图 | 亚洲国产在线观看免费视频 | 强奷乱码中文字幕熟女免费 | A级毛片无码久久精品免费 a级毛片黄免费a级毛片 | 久久青青草原综合伊人 | 色综合欧美色综合七久久 | 美女被强奷到抽搐的动态图 | 岳扒开让我添 | eussse手机电影在线观看 | 国产亚洲精品成人a在线 | 日本 稀土矿| 亚洲人成电影网站 | 2021久久99国产熟女人妻 | 成人a毛片久久免费播放 | 国产亚洲精品久久久999蜜臀 | 亚洲精品福利在线 | 伦理片在线线手机版韩国免费6 | 久久综久久美利坚合众国 | 午夜伦理电影在线观免费 | 午夜理论片YY4399影院 | 无码中文字幕热热久久 | 久青草国产在视频在线观看 | 精品久久久久久久高清 | 2019午夜福利757视频第12集 | 一线高清视频在线播放 | 亚洲综合色在线视频久 | 一个人日本的视频免费完整版 | 理论片午午伦夜理片2021 | 99国产强伦姧在线看RAPE | 好大快用力深一点h视频 | 国产成人拍精品免费视频爱情岛 | 亚洲精品国产一区二区贰佰信息网 | 国产毛片A级久久久不卡精品 | 美娇妻的性奴史1一4 | 掀开奶罩边躁狠狠躁软学生 | 琪琪伦伦影院理论片 | 色戒2小时38分在线观看 | 搞av.com| 日本高清免费在线观看 | 久久麻豆亚洲AV成人无码国产 | 国产成人综合网在线观看 |