国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

基于VxWorks的無人直升機控制系統(tǒng)設(shè)計

發(fā)布時間:2010-11-21 20:44    發(fā)布者:conniede
關(guān)鍵詞: BSP , VxWorks , 直升機
1 前言

自主飛行無人直升機的研究是現(xiàn)今多學(xué)科交叉研究的熱點與難點。無人直升機在炮兵射擊訓(xùn)練、戰(zhàn)場監(jiān)視、輸電線路巡視,森林火災(zāi)狀況觀測等軍用與民用方面都有著廣泛的作用。自從1917年英國研制出世界上第一架無人機,無人機已經(jīng)經(jīng)歷了無人靶機、預(yù)編程序控制無人偵察機、指令遙控?zé)o人偵察機、復(fù)合控制和自主飛行多用途無人機的發(fā)展過程,現(xiàn)今無人直升機研究在于自主飛行控制。現(xiàn)今無人直升機任務(wù)多樣化和遠(yuǎn)距離作業(yè)需求,對無人直升機遠(yuǎn)距離通信和控制提出了更高要求。

在無人直升機控制系統(tǒng)設(shè)計中采用實時操作系統(tǒng)是現(xiàn)今研究的重點與熱點。VxWorks是專門為實時嵌入式系統(tǒng)設(shè)計開發(fā)的32位操作系統(tǒng),它高性能內(nèi)核和友好用戶開發(fā)界面使得VxWorks成為目前嵌入式系統(tǒng)領(lǐng)域使用最廣泛、市場占有率最高的系統(tǒng)。把VxWorks操作系統(tǒng)應(yīng)用到機載控制計算機中,可以滿足無人直升機信息處理的實時性要求。機載控制計算機需要控制無人直升機上多個設(shè)備,同時還需要與地面基站系統(tǒng)通信,VxWorks操作系統(tǒng)良好的多任務(wù)調(diào)度功能可以滿足多任務(wù)需求。同時VxWorks操作系統(tǒng)具備體積小、可裁減和支持多種CPU的高性能,使得無人直升機控制系統(tǒng)在硬件選取上具備很高的靈活性。

VxWorks操作系統(tǒng)提供了多網(wǎng)口的源代碼驅(qū)動,支持TCP與UDP協(xié)議、遠(yuǎn)程調(diào)用、遠(yuǎn)程文件訪問、文件輸出、遠(yuǎn)程命令執(zhí)行等強大網(wǎng)絡(luò)通信功能,同時它的開發(fā)工具Tornado界面友好,調(diào)試方便。這些特點縮短了控制系統(tǒng)的開發(fā)周期,達到了預(yù)期的效果。

2 系統(tǒng)設(shè)計

2.1 控制系統(tǒng)整體結(jié)構(gòu)

無人直升機控制系統(tǒng)包括以下七個部分:無人直升機、機載控制計算機、機載平衡模塊、機載導(dǎo)航模塊、手動遙控模塊、地面基站與其他機載模塊,其他機載模塊根據(jù)系統(tǒng)擴展的需要進行添加。系統(tǒng)的結(jié)構(gòu)圖見圖一


圖一 無人直升機控制系統(tǒng)結(jié)構(gòu)圖

通過手動遙控使無人直升機起飛,起飛后遙控器觸動多路選擇器,把無人直升機的控制權(quán)交與機載控制計算機。機載控制計算機開始傳輸飛行狀態(tài)數(shù)據(jù)給地面基站。地面基站發(fā)送自主飛行命令給機載控制計算機使得它啟動自主定點飛行任務(wù),控制無人直升機定點飛行,飛行任務(wù)結(jié)束后返回狀態(tài)信息給地面基站。

2.2 控制系統(tǒng)硬件結(jié)構(gòu)

此無人直升機控制系統(tǒng)的控制對象是模型直升機JRVoyager GS R260, 機載導(dǎo)航模塊包括Crescent的GPS與Honeywell HMR3300型號的電子羅盤。機載控制計算機是由三星公司生產(chǎn)的16/32位RISC處理器S3C44B0X搭建的硬件平臺,控制系統(tǒng)硬件結(jié)構(gòu)圖見圖二。


圖二 無人直升機控制系統(tǒng)硬件結(jié)構(gòu)圖

圖二中由于S3C44B0X的UART單元提供了兩個獨立的異步串行I/O端口,每個端口都可以在DMA模式下工作,使得CPU和串行I/O口之間直接進行數(shù)據(jù)傳輸,另外GPS與電子羅盤提供的是標(biāo)準(zhǔn)RS-232接口,這與S3C44B0X系統(tǒng)所定義的高低電平不同,所以需要通過電平轉(zhuǎn)換芯片MAX232C來進行轉(zhuǎn)換。由于S3C44B0X片內(nèi)不帶以太網(wǎng)接口,所以選用RTL8039作為以太網(wǎng)接口芯片與地面基站控制系統(tǒng)進行通信。S3C44B0X根據(jù)內(nèi)部程序輸出5路PWM波控制無人直升機的5個舵機,完成自主定點飛行任務(wù)。

74LS128芯片作為多路選擇器,切換手動遙控模式與自主定點飛行模式。另外還擴展大容量的外部寄存器,其中8MB的HY57V641620作為SDRAM存儲器存儲程序運行中的中間數(shù)據(jù),2MB的SST39VF1601存儲器作為FLASH存儲源程序。

2.3 控制系統(tǒng)軟件設(shè)計

無人直升機控制系統(tǒng)的軟件包含四大部分:一是根據(jù)S3C44B0X重新配置VxWorks系統(tǒng)的BSP。二是基于優(yōu)先級的消息隊列實現(xiàn),消息隊列中包含飛行狀態(tài)信息與自主定點飛行信息。三是基于看門狗與信號量的多任務(wù)調(diào)度,實現(xiàn)自主定點飛行與實時飛行狀態(tài)信息傳輸?shù)墓δ堋K氖腔究刂栖浖脑O(shè)計。系統(tǒng)上電后初始化socket套接字,網(wǎng)絡(luò)聯(lián)通后采用UDP協(xié)議通信。下面將著重介紹基于優(yōu)先級的消息隊列與基于信號量與看門狗的多任務(wù)調(diào)度。

2.3.1 基于優(yōu)先級的消息隊列

在控制系統(tǒng)中,不能因為執(zhí)行機載設(shè)備的數(shù)據(jù)傳輸命令而拒絕執(zhí)行地面基站的自主飛行命令。為解決這一問題,本控制系統(tǒng)建立了基于優(yōu)先級的消息隊列機制。系統(tǒng)在RAM中開辟一個區(qū)域用于建立消息隊列,隊列中指針指向的是各個信息的內(nèi)存塊地址。各個任務(wù)將根據(jù)這些指針指向的數(shù)據(jù)來進行實際操作。

(1)基于優(yōu)先級的消息隊列方法。首先信息接收任務(wù)接收信息后根據(jù)信息頭地址內(nèi)容判斷信息優(yōu)先級,地面基站的自主飛行命令優(yōu)先級為最高,把它插入到消息隊列的隊列頭,而機載電子羅盤與GPS發(fā)送的數(shù)據(jù)信息優(yōu)先級低,按照時間順序排列在消息隊列的隊列尾。信息解釋任務(wù)從消息隊列頭逐一取出信息然后進行處理。

(2)消息隊列的實現(xiàn)。通過單向鏈表來實現(xiàn)消息隊列的添加與刪除。每個鏈表元素是一個結(jié)構(gòu)體struct messageChain,結(jié)構(gòu)體包含頭指針pBuff與指向下一個元素的指針pNext。同時使用兩個全局變量直接表示鏈表頭與鏈表尾,一個全局變量表示鏈表長度,這樣可以直接處理鏈表頭或者鏈表尾的內(nèi)容以簡化查找過程。

2.3.2 基于看門狗的多任務(wù)調(diào)度

VxWorks系統(tǒng)可以為每個任務(wù)設(shè)定特定的任務(wù)名與任務(wù)優(yōu)先級,系統(tǒng)支持256個優(yōu)先級。為了調(diào)試的方便,在本控制系統(tǒng)中設(shè)定的任務(wù)優(yōu)先級在60到100之間,這是因為由程序發(fā)起的任務(wù)優(yōu)先級要高于Tornado開發(fā)環(huán)境中shell發(fā)起sp的任務(wù)優(yōu)先級即小于100,同時也要低于系統(tǒng)任務(wù)的優(yōu)先級即大于60。控制系統(tǒng)包含了信息接收任務(wù),信息解釋任務(wù),信息發(fā)送任務(wù),網(wǎng)絡(luò)監(jiān)測任務(wù),定時輪詢?nèi)蝿?wù),自主飛行任務(wù)等多任務(wù)。流程圖見圖三。


圖三 任務(wù)調(diào)度流程圖

任務(wù)的操作使用的是VxWorks系統(tǒng)中的taskLib()與taskInfo()庫函數(shù)。看門狗時鐘精確定時用到函數(shù)wdCreate(),wdStart()等,任務(wù)間的同步調(diào)度使用的是信號量,包括有二進制信號量與計數(shù)信號量。信息接收任務(wù)把網(wǎng)絡(luò)中傳輸?shù)男畔凑崭叩蛢?yōu)先級在消息隊列中添加元素,并存放信息到特定的內(nèi)存塊中,然后啟動計數(shù)型的信號量,信號量的值對應(yīng)于當(dāng)前消息隊列中還沒有被執(zhí)行命令的個數(shù),每增加一個消息命令后,計數(shù)型信號量就釋放,消息解釋任務(wù)獲得釋放的信號量后從消息隊列頭獲得最應(yīng)被優(yōu)先執(zhí)行的命令,根據(jù)內(nèi)存中的首地址信息,調(diào)用相應(yīng)的執(zhí)行函數(shù)。如果判斷是無人直升機飛行狀態(tài)信息,調(diào)用信息發(fā)送任務(wù)把實時信息傳送給地面基站。如判斷是無人直升機自主飛行命令,則調(diào)用自主飛行任務(wù),在此任務(wù)中要定時查詢無人直升機飛行狀態(tài)信息并與命令中信息做比較,控制舵機動作以完成自主定點飛行任務(wù)。在定時查詢機載設(shè)備信息以確定飛行狀態(tài)時,用taskDelay()函數(shù)不能滿足精確定時的要求。VxWorks系統(tǒng)提供得看門狗它可以保證嚴(yán)格的定時,在調(diào)用自主飛行任務(wù)時創(chuàng)建看門狗。經(jīng)過1s的時間延時后運行查詢無人直升機飛行狀態(tài)信息的函數(shù),比較信息后控制舵機動作,直到完成無人直升機的自主定點飛行任務(wù)后取消看門狗。切換到信息發(fā)送任務(wù),發(fā)送飛行狀態(tài)信息到地面基站監(jiān)控系統(tǒng)。

2.3.3 地面基站控制效果圖

軟件界面可以直觀的顯示控制系統(tǒng)效果,同時便于調(diào)試與觀察直升機的實際飛行狀況。基站控制軟件應(yīng)用VC++編譯器的套節(jié)字socket與基于信號量的多線程技術(shù)通過C++語言進行編譯。控制效果圖中顯示無人直升機自主定點飛行時的實時狀態(tài)信息:當(dāng)前高度、設(shè)定高度、東西距離、南北距離、方位角、俯仰角、測滾角等。實現(xiàn)了良好的人機交互功能,是控制系統(tǒng)開發(fā)的必備平臺。地面基站控制效果圖見圖四


圖四 地面基站控制效果圖

3 結(jié)束語

本文對無人直升機控制系統(tǒng)從硬件與軟件兩個方面進行了闡述,并應(yīng)用了先進與高性能的實時操作系統(tǒng)VxWorks,通過VxWorks多任務(wù)調(diào)度時的快速切換響應(yīng)實現(xiàn)無人直升機的自主飛行。并且通過實際的多次實驗飛行與調(diào)試,實現(xiàn)了無人模型直升機自主飛行的任務(wù),取得了預(yù)期的效果。
本文地址:http://m.qingdxww.cn/thread-40803-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • Dev Tool Bits——使用MPLAB® Discover瀏覽資源
  • Dev Tool Bits——使用條件軟件斷點宏來節(jié)省時間和空間
  • Dev Tool Bits——使用DVRT協(xié)議查看項目中的數(shù)據(jù)
  • Dev Tool Bits——使用MPLAB® Data Visualizer進行功率監(jiān)視
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 极品福利视频 | 在线视频 二区 | 五月天激情啪啪 | 亚洲成人综合网站 | 久久国产精品成人免费 | 玖玖中文 | 成年人黄色免费网站 | 曰本人一级毛片免费完整视频 | 国产欧美日韩综合一区二区三区 | 国产1024在线永久免费观看 | 国产手机在线小视频免费观看 | 猛乳3p市来美保天国在线观看 | 香蕉福利 | 亚洲国产精选 | 精品国产综合成人亚洲区 | 日本a级三级三级三级久久 日本a级精品一区二区三区 | 日本精品视频四虎在线观看 | 精品一区二区三区四区五区六区 | 亚洲第一香蕉视频 | 精品国产高清不卡毛片 | 亚洲精品另类 | 韩国妈妈的朋友在线播放 | 在线视频一区二区三区三区不卡 | 欧美日韩视频在线第一区 | 欧美香蕉视频 | 东方伊人免费在线观看 | 国产精品1024在线永久免费 | 国产啪爱视频精品免视 | 永久天堂| 日韩在线无 | 无圣光私拍一区二区三区 | 四虎影视最新网站在线播放 | 九九热精品视频在线播放 | 玖玖国产| 国产aaaaaaa毛片| 亚洲欧洲精品国产二码 | 日本欧美精品 | 欧美亚洲视频一区 | 欧美一区精品 | 国产在线欧美精品 | 色视频国产 |