當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]基于VxWorks的無人直升機(jī)控制系統(tǒng)設(shè)計(jì)

   摘  要:    組建了一種基于嵌入式實(shí)時(shí)操作系統(tǒng)VxWorks平臺(tái)的無人直升機(jī)控制系統(tǒng),實(shí)現(xiàn)遠(yuǎn)距離無人直升機(jī)飛行狀態(tài)信息傳輸,接收地面基站命令后完成自主定點(diǎn)飛行任務(wù)。主要利用基于優(yōu)先級(jí)的消息隊(duì)列方法和嵌入式操作系統(tǒng)VxWorks的信號(hào)量與看門狗定時(shí)功能實(shí)現(xiàn)多任務(wù)間調(diào)度,獲得飛行狀態(tài)數(shù)據(jù)向地面基站傳輸與自主定點(diǎn)飛行的同步。通過實(shí)驗(yàn)飛行,該系統(tǒng)的正確性與可靠性得到了驗(yàn)證。
關(guān)鍵詞:    無人直升機(jī),VxWorks,任務(wù),消息隊(duì)列

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

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

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

系統(tǒng)設(shè)計(jì)

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


圖一 無人直升機(jī)控制系統(tǒng)結(jié)構(gòu)圖[!--empirenews.page--]

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

飛行任務(wù)結(jié)束后返回狀態(tài)信息給地面基站。

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


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

圖二中由于S3C44B0X的UART單元提供了兩個(gè)獨(dú)立的異步串行I/O端口,每個(gè)端口都可以在DMA模式下工作,使得CPU和串行I/O口之間直接進(jìn)行數(shù)據(jù)傳輸,另外GPS與電子羅盤提供的是標(biāo)準(zhǔn)RS-232接口,這與S3C44B0X系統(tǒng)所定義的高低電平不同,所以需要通過電平轉(zhuǎn)換芯片MAX232C來進(jìn)行轉(zhuǎn)換。由于S3C44B0X片內(nèi)不帶以太網(wǎng)接口,所以選用RTL8039作為以太網(wǎng)接口芯片與地面基站控制系統(tǒng)進(jìn)行通信。S3C44B0X根據(jù)內(nèi)部程序輸出5路PWM波控制無人直升機(jī)的5個(gè)舵機(jī),完成自主定點(diǎn)飛行任務(wù)。74LS128芯片作為多路選擇器,切換手動(dòng)遙控模式與自主定點(diǎn)飛行模式。另外還擴(kuò)展大容量的外部寄存器,其中8MB的HY57V641620作為SDRAM存儲(chǔ)器存儲(chǔ)程序運(yùn)行中的中間數(shù)據(jù),2MB的SST39VF1601存儲(chǔ)器作為FLASH存儲(chǔ)源程序。[!--empirenews.page--]

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

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

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

(2)消息隊(duì)列的實(shí)現(xiàn)。通過單向鏈表來實(shí)現(xiàn)消息隊(duì)列的添加與刪除。每個(gè)鏈表元素是一個(gè)結(jié)構(gòu)體struct messageChain,結(jié)構(gòu)體包含頭指針pBuff與指向下一個(gè)元素的指針pNext。同時(shí)使用兩個(gè)全局變量直接表示鏈表頭與鏈表尾,一個(gè)全局變量表示鏈表長度,這

樣可以直接處理鏈表頭或者鏈表尾的內(nèi)容以簡化查找過程。

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


圖三 任務(wù)調(diào)度流程圖[!--empirenews.page--]

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

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


圖四 地面基站控制效果圖

2     結(jié)束語
本文對無人直升機(jī)控制系統(tǒng)從硬件與軟件兩個(gè)方面進(jìn)行了闡述,并應(yīng)用了先進(jìn)與高性能的實(shí)時(shí)操作系統(tǒng)VxWorks,通過VxWorks多任務(wù)調(diào)度時(shí)的快速切換響應(yīng)實(shí)現(xiàn)無人直升機(jī)的自主飛行。并且通過實(shí)際的多次實(shí)驗(yàn)飛行與調(diào)試,實(shí)現(xiàn)了無人模型直升機(jī)自主飛行的任務(wù),取得了預(yù)期的效果。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉