日韩欧美视频一区-日韩欧美三区-日韩欧美群交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í)同步處理,對外業(yè)工作及時(shí)的提供分析。

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

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

  1 概述

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

  2 編程思路

  本程序的的編寫主要是用Microsoft Mscomm控件通過串口連接進(jìn)行數(shù)據(jù)通訊。南方全站儀與計(jì)算機(jī)通訊的信號響應(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)信號“ACK”。若接收的指令不正確,則儀器不向計(jì)算機(jī)發(fā)送回答信號。

  有效指令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)信號“ACK”,則計(jì)算機(jī)必須再發(fā)送一次指令“C”;

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

  (5)儀器接收到指令“C”后,開始測量;測量完畢,自動發(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ī)不會發(fā)送“ACK”。然后,儀器會再次向計(jì)算機(jī)發(fā)送同樣的數(shù)據(jù);

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

  全站儀測量數(shù)據(jù)實(shí)時(shí)傳輸至計(jì)算機(jī)以后,通過后處理軟件對這些數(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)等幾組單選控件,用來對通訊協(xié)議參數(shù)的進(jìn)行設(shè)置。

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

  TXDK = 1;

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

  BTL = 1200;

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

  SJW = 7;

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

  TZW = 1;

  雙擊無校驗(yàn)(n)、奇校驗(yàn)(o)、偶校驗(yàn)(e)單選控件代碼,編寫對應(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)換

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

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

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

  “+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í)的獲取了我們在測量工程作業(yè)中需要 N,E,Z坐標(biāo)。如果需要角度測量、斜距測量等其他模式,只需修改對應(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)編寫對應(yīng)的后處理軟件,來得到分析結(jié)果,以對工程施工進(jìn)行指示、校正。

  本程序已經(jīng)使用了2年之久,運(yùn)行穩(wěn)定,結(jié)果可靠,操作簡單,在外業(yè)及時(shí)的自動處理數(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高級編程[M].北京:電子工業(yè)出版1999.05

上一篇:沒有了
主站蜘蛛池模板: 国产精品视频国产永久视频 | 国产又爽又黄又不遮挡视频 | 四房播播开心五月 | 亚洲精品视频在线观看免费 | 亚洲色无码播放 | 免费女性裸身照无遮挡网站 | 97人妻在线公开视频在线观看 | 免费伦理片网站 | 一道精品视频一区二区 | 自拍 偷拍 亚洲 经典 | 国产精品免费大片 | 无码乱人伦一区二区亚洲 | 夜里18款禁用的免费B站动漫 | 黄色大片aa | 茎身铃口调教 | 一级做a爰片久久毛片潮喷动漫 | 九九在线精品视频 | 依人在线观看 | 人妻少妇久久久久久97人妻 | 午夜dj影院视频观看 | 囯产精品久久久久久久久免费蜜桃 | 亚洲 欧洲 国产 日产 综合 | 我不卡影院手机在线观看 | 动漫AV纯肉无码AV电影网 | 嫩小幼处在线 | 亚洲欧美色综合影院 | 久久精品日本免费线 | 久久99国产精品无码AV | 亚洲色欲国产AV精品综合 | 亚洲欧美中文日韩v在线 | XXX国产麻豆HD真实乱 | 国产精品久久久久久久久久免费 | 亚洲精品久久久无码一区二区 | 朝鲜黄色录像 | 亚洲刺激视频 | 纯肉高H放荡受BL文库 | 最新国产在线视频在线 | 亚洲蜜桃AV永久无码精品放毛片 | 97免费观看视频 | 精品国产午夜肉伦伦影院 | 久久高清一级毛片 |