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

基于C#的AUV控制軟件的設(shè)計(jì)與實(shí)現(xiàn)

2013-08-14 06:06:12黃敬堯楊爽張超趙慧杰郭昊
機(jī)械工程師 2013年5期
關(guān)鍵詞:界面功能

黃敬堯,楊爽,張超,趙慧杰,郭昊

(三峽大學(xué)電氣與新能源學(xué)院,湖北宜昌 443002)

1 引言

水下自主機(jī)器人(AUV)已廣泛應(yīng)用于海洋考察、港口建設(shè)、海底設(shè)施維護(hù)、深水打撈、海軍防務(wù)等諸多領(lǐng)域,現(xiàn)已成為世界各國的研究熱點(diǎn)。由于AUV在水下航行條件惡劣,如何精確控制AUV 并解決其通訊問題就顯得尤為重要,這就迫切需要一種合適的操作軟件,控制AUV的航行并監(jiān)視AUV 航行的狀態(tài)信息。對水下機(jī)器人的控制采用分布式控制,即通過上位機(jī)PC 實(shí)現(xiàn)對下位機(jī)的命令發(fā)送來實(shí)現(xiàn)各種運(yùn)動[1]。岸上的控制主機(jī)發(fā)送數(shù)據(jù)及命令,位于AUV 控制艙的中央控制單元接收到數(shù)據(jù)及命令后,執(zhí)行動作并將數(shù)據(jù)反饋到控制主機(jī)。

C#相對其它編程語言,具有精確、簡單、類型安全的優(yōu)點(diǎn)[2]。由于使用Windows API 編程非常繁瑣、冗長,本系統(tǒng)上位機(jī)軟件采用了C#語言在Visual Studio 2005.NET環(huán)境下編程完成[3]。本文基于C#語言在Visual Studio 2005.NET中的環(huán)境,依據(jù)面向?qū)ο缶幊痰乃枷?,開發(fā)了Windows 平臺下的操控界面,通過控制主機(jī)PC 對AUV進(jìn)行命令發(fā)送來實(shí)現(xiàn)各種運(yùn)動及功能,具有良好的可視性和靈活的可控性。

2 AUV 概述

該AUV 直徑324mm,總長度約3m,總重量約為250kg,采用模塊化設(shè)計(jì),分為五部分,從前往后依次是:頭部(載荷艙),聲通艙,電池艙,控制艙,推進(jìn)艙。頭部裝有CTD(溫鹽深傳感器)、聲通換能器??刂婆搩?nèi)安裝有:中央控制器、多普勒計(jì)程儀、智 能 陀 螺 儀、GPS 系統(tǒng)、釋放機(jī)構(gòu)、深度傳感器和PDL 電臺。推進(jìn)艙內(nèi)安裝有:推進(jìn)電機(jī)、電機(jī)控制盒、航行姿態(tài)控制的水平舵和垂直舵。其中PDL 電臺用于AUV在水面時與岸上控制主機(jī)進(jìn)行通信,實(shí)現(xiàn)航行器運(yùn)行狀態(tài)的實(shí)時監(jiān)控。總體模型如圖1中下方所示。

圖1 控制過程

AUV 控制主機(jī)控制中央控制單元模塊,從而控制電機(jī)、舵機(jī)、聲納艙及釋放機(jī)構(gòu)。電池組經(jīng)過電源分配器之后分別給電機(jī)與中央控制單元供電。AUV在水下航行時,DVL、慣導(dǎo)、深度計(jì)將數(shù)據(jù)反饋到中央控制單元,并將數(shù)據(jù)通過PDL 電臺傳輸?shù)紸UV 控制主機(jī)的顯示界面。具體電氣模塊如圖2 所示。

圖2 電氣模塊框圖

3 控制主機(jī)軟件設(shè)計(jì)

控制主機(jī)軟件數(shù)據(jù)通過無線PDL 電臺進(jìn)行傳輸,控制AUV的航行速度、方向、下潛,并進(jìn)行適當(dāng)?shù)臄?shù)據(jù)處理,完成AUV 狀態(tài)數(shù)據(jù)的實(shí)時存儲、顯示、圖像軌跡繪制等功能。從使用角度看包括兩大功能:(1)人機(jī)交換。操作人員可以通過控制主機(jī)輸入各類指令,包括手動模式、自主模式、預(yù)編程模式,設(shè)定值主要包括航向、GPS、舵角、轉(zhuǎn)速,此外還有一些系統(tǒng)設(shè)置,如系統(tǒng)時間、母船GPS 等。(2)顯示功能??刂浦鳈C(jī)把AUV的姿態(tài)及實(shí)時狀態(tài)顯示出來,包括報(bào)警信號、通訊狀態(tài)、動力電壓電流、推控電流、聲納電流功率、實(shí)際轉(zhuǎn)速、航速、GPS、深度、俯仰角、橫滾角及AUV的航行軌跡,讓操作人員直觀地了解AUV目前的狀況。本控制主機(jī)軟件是在Windows XP 系統(tǒng)下Visual Studio 2005.NET 編程環(huán)境中使用C#語言編程完成,并使用編程環(huán)境中的SerialPort 類實(shí)現(xiàn)無線通信功能。SerialPort 類為應(yīng)用程序提供了通過串口收發(fā)數(shù)據(jù)的簡便方法,具有功能強(qiáng)大、通信快速、實(shí)時性好等特點(diǎn)[4]。

從軟件的實(shí)現(xiàn)功能來看,控制主機(jī)的功能分為串口通訊處理功能和圖形顯示功能。串口通訊功能主要實(shí)現(xiàn)控制主機(jī)與AUV的通訊,把控制指令通過無線PDL 電臺傳給AUV,同時AUV 也將自己的狀態(tài)信息反饋給控制主機(jī)。圖形顯示功能主要實(shí)現(xiàn)動態(tài)AUV的實(shí)時數(shù)據(jù),生成AUV的航行軌跡,從而可以直觀地得到AUV的實(shí)時信息。

3.1 串口通訊功能的實(shí)現(xiàn)

串行口是計(jì)算機(jī)與外圍數(shù)據(jù)源設(shè)備之間進(jìn)行數(shù)據(jù)交換的重要介質(zhì)[5]。串行口數(shù)據(jù)的通訊是系統(tǒng)設(shè)計(jì)中最重要的部分,本文中是采用Visual Studio2005中SerialPort 類設(shè)計(jì)方法進(jìn)行通信設(shè)置。

串口通信必須遵守一定的通信協(xié)議,才可實(shí)現(xiàn)該控制軟件與AUV的正常通信[6]。通信數(shù)據(jù)協(xié)議格式如表1 所示。

表1 通信數(shù)據(jù)協(xié)議格式

協(xié)議一共59個字節(jié),存放在readBuffer 數(shù)組中,當(dāng)控制主機(jī)收到數(shù)組時,將readBuffer 信息處理成相對應(yīng)的含義數(shù)據(jù),分別對應(yīng)GPS 經(jīng)度、緯度、航速、動力電流電壓等一系列參數(shù)。

進(jìn)行串口通信時,首先添加SerialPort 控件,并設(shè)置一些相關(guān)參數(shù),可以通過設(shè)置SerialPort 類的屬性來進(jìn)行。本文中串口屬性主要包括:PortName 串口名稱,BaudRate 波特率,DataBits 數(shù)據(jù)位,StopBits 停止位。

本設(shè)計(jì)中通過serialPortGPS 和serialPortPDL 接收數(shù)據(jù)引發(fā)事件,以serialPortGPS為例,在串口操作線程中用于讀取串口數(shù)據(jù)的主要代碼如下:

serialPortGPS.Read(readBuffer,0,readBuffer.Length)

串口中的數(shù)據(jù)要及時更新,然后把更新后的數(shù)據(jù)重新返回到控件中,但是在重新返回?cái)?shù)據(jù)的時候會報(bào)錯,需要進(jìn)行異常處理,程序代碼如下:

主線程打開串口,進(jìn)行通訊的流程如圖3 所示。

圖3 通訊流程圖

3.2 圖形顯示功能實(shí)現(xiàn)

控制主機(jī)的圖形顯示主要就是為了把AUV的航行軌跡直觀地顯示出來,讓操作人員能夠方便地看到AUV的航行路徑。根據(jù)AUV實(shí)時上傳的GPS 與INS的數(shù)據(jù),為確保將數(shù)據(jù)點(diǎn)更新到屏幕上,這就需要用到C#提供的GDI 繪制技術(shù)。

在C#中進(jìn)行繪圖,主要方法是定義一個窗體的Paint()事件函數(shù),在這個函數(shù)中實(shí)現(xiàn)繪圖,該函數(shù)在窗體需要重新繪制的時候被調(diào)用[7]。如圖5 所示的主界面,打開窗體時需要加載軌跡圖顯示區(qū)域,即實(shí)例化一個Graphics 繪圖類調(diào)用函數(shù)TranslateTransform()函數(shù),將原點(diǎn)位置設(shè)在軌跡圖顯示區(qū)域的中心,代碼如下:

繪制GPS 軌跡時,取原點(diǎn)經(jīng)度、緯度坐標(biāo)(x,y),AUV所在位置點(diǎn)的經(jīng)度、緯度坐標(biāo)為(x1,y1),要想得AUV的運(yùn)動軌跡,可以根據(jù)以下公式

其中,L為地球一分的長度,即111120m。代碼實(shí)現(xiàn)過程如下:

根據(jù)GPS 實(shí)時上傳的數(shù)據(jù),最終可完成AUV 航行軌跡的繪制。

4 運(yùn)行效果及主要界面

本軟件經(jīng)過長期運(yùn)行,能有效控制AUV在水面的航行狀態(tài)和在水下的航行過程,達(dá)到了預(yù)期的設(shè)計(jì)效果。其主要運(yùn)行界面如圖4 示,分為四個區(qū)域。

圖4 主界面

圖5 自主航行功能參數(shù)設(shè)置窗口

界面左上角為軌跡圖顯示區(qū),顯示水下航行器GPS軌跡(紅色)、INS軌跡圖(綠色),母船GPS 軌跡圖(藍(lán)色)。右下角區(qū)域?yàn)檐壽E圖的局部放大圖。

界面左下角為AUV 狀態(tài)顯示區(qū)域,包括潛航體的航向角、俯仰角、橫滾角、離地高度、深度及潛航體GPS 經(jīng)緯度、INS 經(jīng)緯度、潛航體航行模式、母船GPS經(jīng)緯度等。

界面右上角分5個部分:信號顯示區(qū)域、電池狀態(tài)區(qū)域、電機(jī)狀態(tài)顯示、舵機(jī)狀態(tài)顯示、舵機(jī)控制區(qū)域。

自主航行模式主要是通過設(shè)定多個點(diǎn)的經(jīng)緯度、深度及轉(zhuǎn)速,使AUV 按照設(shè)定的軌跡進(jìn)行航行。自主航行模式功能參數(shù)設(shè)置窗口如圖5。

預(yù)編程航行模式是通過設(shè)定AUV 轉(zhuǎn)速、航向、深度及航行時間,使AUV 按照預(yù)定參數(shù)進(jìn)行航行。預(yù)編程航行參數(shù)設(shè)置窗口如圖6。

圖6 預(yù)編程參數(shù)設(shè)置窗口

AUV 試驗(yàn)效果如圖7 所示。

圖7 AUV 湖試

5 結(jié)語

經(jīng)過湖上測試,AUV 試驗(yàn)效果良好,該控制軟件可以穩(wěn)定地操作并控制AUV的航行,順利地進(jìn)行下潛。軟件以良好的性能、友好的界面和簡單的操作方法滿足了對AUV的操作。

[1]翟宇毅,張瑞勇.基于VC++的超小型水下機(jī)器人上位機(jī)人機(jī)交互界面設(shè)計(jì)[J].自動化與儀器儀表,2011(5):66-68.

[2]郭琳,汪蘇.基于C#的開放式機(jī)器人控制系統(tǒng)軟件實(shí)現(xiàn)[J].機(jī)械工程師,2008(11):49-51.

[3]韓中華,趙貞麗,丁志文.基于C#串行類的PC 機(jī)與IC 卡讀寫器串行通信的實(shí)現(xiàn)[J].科技廣場,2007(3):79-81.

[4]馬斌,等.C#串行類在PC 機(jī)與IC 卡讀寫器串行通信中的作用[J].沈陽建筑大學(xué)學(xué)報(bào)(自然科學(xué)版),2008,24(3):508-511.

[5]姜拓,張劍平.基于C#的數(shù)據(jù)采集系統(tǒng)上位機(jī)軟件設(shè)計(jì)與實(shí)現(xiàn)[J].電子測試,2009(9):58-61.

[6]韋統(tǒng)安,董升亮,耿丙群,袁題訓(xùn).20kg 級自主水下機(jī)器人控制軟件設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2011(11):11-13.

[7]吳正順,陳孝威.C sharp 繪制三維圖形的方法的研究[J].貴州大學(xué)學(xué)報(bào)(自然科學(xué)版),2009(6):53-56.

猜你喜歡
界面功能
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
國企黨委前置研究的“四個界面”
基于FANUC PICTURE的虛擬軸坐標(biāo)顯示界面開發(fā)方法研究
關(guān)于非首都功能疏解的幾點(diǎn)思考
空間界面
金秋(2017年4期)2017-06-07 08:22:16
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡直”和“幾乎”的表達(dá)功能
電子顯微打開材料界面世界之門
人機(jī)交互界面發(fā)展趨勢研究
手機(jī)界面中圖形符號的發(fā)展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
主站蜘蛛池模板: 国产18在线| 尤物视频一区| 美女无遮挡拍拍拍免费视频| 国产自在线拍| 婷婷六月激情综合一区| 国产极品美女在线播放| 国产91视频免费| 亚洲国产成人久久精品软件| 久久国产乱子| 欧美黄网在线| 国产成人精品男人的天堂下载| 亚洲AV免费一区二区三区| 亚洲精品国产自在现线最新| 九九香蕉视频| 免费高清毛片| 亚国产欧美在线人成| 亚洲爱婷婷色69堂| a网站在线观看| 久久久久亚洲AV成人网站软件| 国产高清在线观看| 人妻丰满熟妇AV无码区| 国产91丝袜在线观看| 久久影院一区二区h| 国产青榴视频在线观看网站| 一区二区日韩国产精久久| 久久综合一个色综合网| 国产99视频精品免费视频7| 国产专区综合另类日韩一区| 91亚瑟视频| 日本AⅤ精品一区二区三区日| 婷婷综合在线观看丁香| 爱色欧美亚洲综合图区| 久久精品亚洲热综合一区二区| 欧美一级在线看| 日本91在线| 亚洲天堂网视频| 91精品国产丝袜| 91精品aⅴ无码中文字字幕蜜桃| 国产成人精品综合| 国产va在线| 一本大道东京热无码av| 国产精品一区二区在线播放| 久久久黄色片| 一区二区欧美日韩高清免费 | 一级毛片免费观看不卡视频| 五月激情婷婷综合| 国产精品极品美女自在线看免费一区二区| 国产精品999在线| 免费全部高H视频无码无遮掩| 91久久青青草原精品国产| 国产午夜在线观看视频| 久久人搡人人玩人妻精品一| 欧美a√在线| 色综合天天综合中文网| 国产精品成人AⅤ在线一二三四| 国产精欧美一区二区三区| 国产精品亚洲片在线va| 免费啪啪网址| 国产美女91呻吟求| 91网红精品在线观看| 一区二区日韩国产精久久| 欧美在线三级| 一级黄色片网| 国产激情无码一区二区免费| 在线免费不卡视频| 久久成人免费| 亚洲精品第一在线观看视频| 久久亚洲中文字幕精品一区| 爱爱影院18禁免费| 亚洲精品午夜天堂网页| 中文字幕久久波多野结衣| 精品综合久久久久久97超人| 九色最新网址| 亚洲免费福利视频| 国产真实乱子伦精品视手机观看| 国产精品嫩草影院av| 亚洲区欧美区| 91免费片| www.狠狠| 久久无码高潮喷水| 97精品国产高清久久久久蜜芽| 欧美国产精品不卡在线观看|