關 閉

新聞中心

EEPW首頁 > 工控自動化 > 設計應用 > 基于VxWorks的無人直升機控制系統(tǒng)設計

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

作者: 時間:2010-01-11 來源:網(wǎng)絡 收藏

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

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


圖四 地面基站控制效果圖

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


上一頁 1 2 3 4 下一頁

評論


相關推薦

技術專區(qū)

關閉