?

飛行模擬機運動系統實時管理軟件研究

2018-09-21 11:20安蕾
中國新技術新產品 2018年13期

安蕾

摘 要:運動系統是飛行模擬裝置的重要組成部分,其運動性能的好壞直接影響到模擬機的仿真度。本文研究運動系統的實時管理軟件,對實時管理軟件各模塊進行詳細的分析。

關鍵詞:飛行模擬機;運動系統;實時管理軟件

中圖分類號:TP391.9 文獻標志碼:A

近年來由于科學研究的需求和高新技術的進步,以飛機模擬機為代表的六自由度運動模擬機得到迅速發展。人們利用運動模擬機進行仿真試驗研究,開展培訓活動,成為當今科研、培訓不可或缺的裝備。飛行模擬機是典型的人在回路實時仿真系統和虛擬現實的應用實例,作為飛行模擬機載體的并聯六自由度運動系統是飛行模擬機非常重要的組成部分,其本質是由數字計算機實時控制并能提供俯仰、滾轉、偏航、升降、縱向平移和側向平移的六自由度瞬時過載仿真設備。

計算機將飛行軟件送出的有關飛行參數進行轉換與計算,形成驅動每根作動筒的指令,經D/A轉換后,成為模擬信號,經放大后驅動伺服組件,而作動筒的位移反饋信號經A/D轉換得到,開關量輸入用于狀態檢測,而開關量輸出用來控制運動系統的狀態或顯示有關信息。

計算機系統主要是由Intel 86/330A實時控制計算機、ST732模/數轉換板、JT728數/模轉換板、ISBC519開關量輸入輸出板、CRT顯示器、打印機組成。

運動系統由Intel 86/330A微型計算機實現自動控制,該機配置的RMX86操作系統具有可配置性、可擴展性、系統中斷能力強等特點,是一個實時多任務操作系統。

運動軟件是在RMX 86操作系統環境中運行的,在配置用戶系統時,核心程序是必不可少的,為了提高運行速度,減小所占內存空間,只用到了基本I/O這一層。該套軟件是用PSM-86語言編寫的,并用了作業(IOB)、任務(TASK)、信箱(MAILBOX)、信號量(SEMAPHORE)、元(UNIT)、段(SEGMENT)等目標。

實時管理軟件的重要管理對象——運動軟件以過程的形式出現,由實時控制任務實現調用。這些子過程包括:重心變換與濾波子過程,平動清洗子過程,轉動信號形成子過程,作動筒伸長變換子過程等。

1 實時管理軟件的初始化任務

其中初始化任務的功能就是向根作業報告并生成本用戶作業,然后生成開機自檢、動態自檢、人機對話3個任務。最后刪除自身。

開機自檢任務實現平臺運動學的靜態檢測,從DI讀入系統有關的狀態信息,并加以判斷,如果出現故障,將故障源經DO送至數碼管顯示,并在CRT上顯示、打印。若一切正常,則向SGMAPHORE7發送一元,且向DO送出系統復位、啟動指令,由硬件電路實現平臺升起過程。然后刪除自身。

動態自檢任務在接收到來自于SGMAPHORE7的一個元后,便被激活。升起過程中,對系統進行動態檢測,對發現的故障即使做出處理,待系統一切正常后,便向SGMAPHOPE8送一個元,并向數碼管送出檢測成功的信息。然后自刪。

2 實時管理軟件的人機對話

人機對話任務在接收到SGMAPHORE8中的一個元后,立即投入運行。通過人機對話確定平臺運動模型、顯示打印周期,并生成異常處理、故障處理、時鐘管理、中位調整、實時控制、顯示打印等6個子任務,掛起中位調整任務后自刪。

3 實時管理軟件的故障處理

異常處理任務是對外界異常情況進行處理。當從鍵盤敲入CTR-C后,則SGMAPHOREC中便獲得一個元,等待在SGMAPHOREC中的異常處理任務收到這個元后,便全部關掉運動系統,并在CRT上顯示“SOMETHING EXCEPTIONAL HAPPENED”,之后關閉顯示打印的文件連接,刪除本作業。

故障處理任務在接收到SGMAPHORE9中的一個元后,投入運行,首先從A/D、DI中讀入有關信息,然后關掉運動系統。在調用A/D故障查找過程、DI故障查找過程、找出故障源并顯示打印出故障源后,關閉顯示、打印文件連接,刪除本作業。

4 實時管理軟件的時鐘管理

時鐘管理任務就是要對控制軟件進行實時管理,當進入運行后,首先等待由實時控制任務,中經調整任務,顯示打印任務這3個任務向SGMAPHORE10發送的三個元。然后進入主循環過程,即向SGMAPHORE2發送一個元,休眠一個采樣周期后再向SGMAPHORE2發送一個元。此循環只在被其他任務掛起時暫停,其他情況下則無限循環下去。

5 實時管理軟件的中位調整

中位調整任務在做完必要的準備工作后,立即向SGMAPHORE1發送一個元,并掛起自己。一旦被實時控制任務解掛后,即進入主循環過程。中位調整完畢后再次自掛,并由人機對話決定是繼續飛行(向SGMAPHORE A送一個元),還是刪除本作業結束運行。在主循環過程中,若顯示打印周期到,則向SGMAPHORE B送一個元。

6 實時管理軟件的實時控制

實時控制任務在做完必要的準備工作后,向SGMAPHORE1送一個元,然后進入主循環過程。從SGMAPHORE2接收一個元,讀入DI及AD量,并判斷是否有故障發生,若有則向SGMAPHORE9發送一個元,并刪除本任務。若系統正常則調用運動系統全過程,并將控制量經DA送出。若需打印且打印時間到時,向SGMAPHORE B送一個元。當飛行結束后,解掛中位調整任務,待平臺回中后,中位調整任務可由人機對話來決定是繼續飛行,還是結束飛行,若要繼續飛行,向SGMAPHORE A送一個元,此時,等待SGMAPHORE A中的實時控制任務將獲得此元,在重新初始化各參數后,再次進入主循環過程。每循環一次后,都要向SGMAPHORE 2中等待一個元,這樣就可以保證程序的約定采樣周期運行。

顯示打印任務在做完必要的準備工作后,向SGMAPHORE 1送一個元,然后在SGMAPHORE B中等待一個元。接到元后,將待顯示打印的數據送到緩沖單元,并送顯示打印。而后又繼續在SGMAPHORE B等待元。

如上所述的各任務中,初始化任務是首先投入運行的,它由根作業生成。在根作業接收到用戶作業初始化完畢的信息,并進行完BIO等其他作業的初始化后,就將控制權交給用戶作業,初始化任務生成的3個任務:開機自檢任務、動態自檢任務和人機對話任務,所做的均是平臺運行前的準備工作。準備工作完畢,則刪除自身,并不參與實時運行。由人機對話生成的任務中,異常處理任務具有最高優先級,其次是故障處理任務、時鐘管理任務,而實時控制任務與中位調整任務具有相同的優先級。優先級最低的是顯示打印任務。當這些任務的運行條件均得到滿足時,優先級的高低就決定了他們對CPU的占有權的大小。

根據香農采樣定理和計算機實際運行速度的可能,我們采用了50ms采樣周期計算運動驅動軟件,并由DA送出6根作動筒伸長的控制指令,來仿真飛機的俯仰、滾轉、偏航、升降、縱向平移和側向平移。

參考文獻

[1]王志剛.緊耦合多處理機系統在工程飛行仿真中的實時應用[J].計算機工程與應用,2000,36(2):158-161.

[2]彭華.工程飛行仿真實時管理調度模型的研究與實現[J].系統仿真學報,2004,16(7):1437-1440.

[3]劉華偉,何利,黃國榮.飛機大氣數據系統實時模擬器設計與實現[J].計算機工程,2009,35(10):238-239.

91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合