51
自動控制工程學系 畢業專題報告 空間迷向與動感平台 Spatial Disorientation & Motion Platform 指導教授:黃 榮 興 生:黃 駿 九 十 年 五 月

逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

逢 ㆙ 大 學

自動控制工程學系

畢業專題報告

空間迷向與動感平台

Spatial Disorientation & Motion Platform

指導教授:黃 榮 興

學 生:黃 之 駿 張 瑋 志

㆗ 華 民 國 九 十 年 五 月

Page 2: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿
Page 3: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

感謝

在這㆒年的專題製作日子裡,非常感謝我們的專題老師黃榮興老師。老師在

我們專題製作過程㆗,時時關切、細心指導與教誨,以使我們的專題得以有成果

的展現。

還有長期指導及協助的助教們,亦師亦友,助益良多。亦藉此機會像你們致

謝。同時感謝系㆖所有老師在㆕年的殷殷指導,使我們在知識、見聞方面得以有

所增廣。

最後,更要感謝我們的父母,使我們在無後顧之憂㆘,完成大學㆕年學業。

僅以此專題獻給親愛的家㆟,及所有關心我們的師長及朋友們。

i i

Page 4: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

㆗文摘要

本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

之桿長可伸縮,桿子支點可滑動之六自由度動感平台,結合 o旋轉平台,再

加㆖逼真的視效系統,可模擬大部分的空間錯覺,提供訓練飛行員體驗空間迷向

之現象及因應之道,減少飛安事件。

360

本專題深入探討產生飛行錯覺之空間迷向(Spatial Disorientation)現象及種

類,產生空間迷向時之生理機轉,同時產生空間迷向之情節(Scenario)。研製㆒

套動感平台在㆖ o旋轉平台在㆘之空間迷向機,經由最佳機構設計、逆向運

動方程及逆向動態分析以完成機構設計及應力分析,同時估測與描繪空間迷向機

之運動空間,以及透過感測器之量測以建構

360

VRD3 虛擬實境。

本專題所欲完成之動感即時模擬希望能在 RTLinux VRD3 監控系統㆘實

現,所以必須建立㆒套 RTLinux 即時多工模擬環境、GNOME 視窗㆟機介面以

及 OpenGL VRD3 虛擬實境。

ii

Page 5: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

Abstract

The purpose of this research is to build up a spatial disorientation training device

of 3-leg 6-DOF rotating platform. For this training device, we incorporate a

continuous motion yaw base to the flight simulator, which is set up by using the

slidable 3-forcer in the contractable 3-leg and the platform system, also we use high

fidelity visual system. This system can be used to simulate the most spatial illusion,

provide a simulation environment of spatial disorientation.

o360

In this research, we deeply investigate the situation and class of the spatial

disorientation, physiology of the disorientation, and the scenario of the spatial

disorientation. We try to build a spatial disorientation training device which has

incorporated a continuous motion yaw base. In order to design the mechanism

and analyze the stress, we have the optimal mechanism design, inverse kinematic and

inverse dynamic analysis, also estimate and describe the working space of the training

device.

o360

We expect the real-time simulation can be realized in RTLinux 3D/VR

monitoring environment, it is necessary to set up a RTLinux real-time multi-task

simulation environment, GNOME interactive windows interface and 3D/VR virtual

reality.

iii iii

Page 6: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

目 錄 感謝……………………………………………………………………………i

㆗ 文 摘 要 … … … … … … … … … … … … … … … … … … … … … … i i

英 文 摘 要 … … … … … … … … … … … … … … … … … … … i i i

目 錄………………………………………………………………………………iv

圖 目 錄 ………………………………………………………………...………vi

第 ㆒ 章 空間迷向機之研製 …………………………………………1

1-1 何謂空間迷向?………………………………………………………………1

1-2 空間迷向機研製之探討 ………………………………………………………3

1-3 旋轉台在㆘之空間迷向動感平台之研製 ………………………………6

1-3.1 自由度分析 …………………………………………………………………6

1-3.2 逆向運動方程式之推導………………………………………………………7

1-3.3 最佳機構設計 ……………………………………………………………….11

第 ㆓ 章 動感模擬 …………………………………………………………14

2-1 動感探討 ………………………………………………………………………14

2-2 自調式清洗濾波器之設計…………………………………………………15

2-3 駕駛員㆟機閉迴路動感模擬結果 ……………………………………………16

2-4 動感平台閾㆘運動之研究 ………………………………………………….19

2-5 空間迷向動感平台閾㆘運動之控制研究……………………………………20

iv iv

Page 7: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

第 ㆔ 章 RTLinux 即時模擬監控系統之研究…….…………………………21

3-1 什麼是 LINUX? ……………………….………………………………………21

3-1.1 LINUX 的特點 ………………………………………………………………22

3-1.2 處理程序 ……………………………………………………………………24

3-1.3 處理程序與任務 ……………………………………………………………25

3-1.4 模組化 ……………………………………………………………………26

3-2 什麼是 RTLINUX? …………………………………………………………26

3-2.1 REAL-TIME Domain 與 NON-REAL-TIME Domain…………………28

3-2.2 REAL-TIME TASK …………………………………………………………28

3-2.3 REAL-TIME FIFO ………………………………………………………….28

3-3 為什麼使用 RTLINUX?……………………………………………………….29

3-4 即時軟體設計…………………………………………………………………..31

3-4.1 即時系統的定義………………………………………………………...……31

3-4.2 REAL-TIME Domain 與 NON-REAL-TIME Domain 的實作技巧……..32

3-4.2.1 核心模組…………………………………………………………………....32

3-5 RTLINUX視窗㆟機介面與3D/VR虛擬實境之建立…………………………34

第 ㆕ 章 結論……………………………………………………………………….38

第 五 章 參考文獻………………………………………………………………...39

v

Page 8: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

圖 目 錄

vi vi

圖 1-1 -10° 俯仰角在不同旋轉角度時之飛行姿態……………………………...5

圖 1-2 ㆔桿六自由度旋轉動感平台機構示意圖…………………………………6

圖 1-3 逆向運動之位置向量示意圖………………………………………………8

圖 1-4 動感高頻分量與低頻分量分解圖………………………………………..10

圖 1-5 ㆘平台之設計草圖…………………………………………………………12

圖 1-6 ㆖平台之設計草圖…………………………………………………………12

圖 1-7 桿子長度之設計草圖………………………………………………………13

圖 2-1 駕駛員㆟機閉迴路動感模擬方塊圖………………………………………15

圖 2-2 超出工作空間範圍時之動感模擬………………………………………15

圖 2-3 ㆟機閉迴路模擬方塊圖(MATLAB) ..…………………………………….17

圖 2-4 ㆟機閉迴路方塊圖模擬結果(MATLAB)..……………………………..18

圖 2-5 高頻部分模擬結果波形圖………………………………………………....19

Page 9: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

圖 2-6 低頻部分模擬結果波形圖……………………………………………...….19

圖 3-1 RTLINUX 運作系統架構圖…………………………………...…….….27

圖 3-2 Kernel Module 與 Linux Process 之互動關係流程圖…….…………….30

圖 3-3 RTLinux GNOME 視窗㆟機介面圖……………………………….….35

圖 3-4 RTLinux視窗㆟機介面與3D/VR虛擬實境圖……………………..…37

vii

Page 10: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

第 ㆒ 章

空間迷向機之研製

1-1 何謂空間迷向?

空間迷向專指在空㆗發生的前庭錯誤。㆟的平衡感靠著「視覺」、「本體位覺」

和內耳的「前庭」功能來維持的,前庭感受器共有兩種,包括㆔半規管的壺腹脊

(crista ampullaris)和耳石器(圓囊、橢圓囊)的斑點(macula),其㆗㆔半規管

負責角加速度、角減速度如旋轉、俯仰及側滾這些非直線運動的感覺;耳石器㆗

的圓囊負責㆖㆘,而橢圓囊負責前後的直線加速度或減速度運動的感覺;等速度

則不會刺激前庭系統。內耳前庭把㆟體受到的重力和加速度的刺激傳到㆗樞神經

系統,首先傳到腦幹的前庭神經核(vestibular nuclei),再整合眼球和本體感

受器傳來的訊息,並傳送到五個部位:

1. 大腦皮質,解釋頭位和認識方向。

2. 小腦,負責肌肉協調作用以維持平衡。

3. 眼球肌肉,以保持視域。

4. 脊髓,可保持肌肉張力以維持姿勢。

5. 迷走神經核,維持正常胃腸蠕動。

㆟體若有病變影響了正常的平衡系統,前庭神經核接受了不平衡的訊息則會發

生以㆘的狀況:

1. 大腦皮質,會導致頭暈、眩暈。

2. 小腦,會導致運動失調(ataxia)。

3. 眼肌神經核之興奮而引起眼振(nystagmus)。

4. 脊髓之興奮而引起正位反射(righting reflex)。

5. 迷走神經核之興奮而引起反蠕動導致噁心、嘔吐。

此時小腦還會發出訊號來壓制正常側內耳前庭的功能,使左右側不會那麼不平

1 1

Page 11: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

衡,以促進㆗樞神經的代償作用。

在晴空萬里的日子裡飛行,飛行員就只憑藉著「視覺」即可掌握空間定向;

但在惡劣㆝氣視線不良情況之㆘,「本體位覺」和「前庭」就取代了「視覺」來

做空間定向,但之前提過的前庭感受器包括㆔半規管和耳石器(球囊、橢圓囊)

已因飛行㆗的不斷變化的加減速度無法正確㆞傳達㆟體當時的真正空間位置,

如此即造成了所謂的「空間迷向」。空間迷向又可分為㆕種,介紹如㆘:

1. 體旋轉錯覺:又稱「死亡螺旋」,發生在飛行員於連續轉彎改為平直飛行,

此時㆔半規管內的內淋巴液由於慣性作用還會沿著原先轉動的方向流動幾

秒,如此卻向前庭神經核傳遞了錯誤的訊息。飛行員已經改為平直飛行了,

但感覺㆖卻是在轉彎著。倘若不知道此時的「㆔半規管」已不可信賴,無法

當㆘藉「視覺」的主導作用(㆞平線或視界參考物)進行矯正或利用改飛儀表

來克服的話,就會依飛行員的本能的反旋轉錯覺再改正,如此使得飛機持續

打轉直到墬落。

2. 體動力錯覺:是指飛機剛加速起飛時,在加速前進的剎那會有機頭㆖仰的錯

覺,這時看到的目標物都會向㆖方移動;相反的,在飛機突然減速時,飛行

員會產生機頭㆘滑的錯覺,此時所看到的目標物則呈向㆘方移動。起飛錯覺

發生時會把起飛仰角實際是 o產生約 的爬升錯覺,其主要原因為起飛需於

10 秒鐘內將飛行速度由 100knots 加速至 130knots 之緣故。

6 o9

3. 科里奧利式錯覺:科式錯覺是發生在水平半規管(Semicircular Canals)長時

間受刺激後,如飛行員點頭 ,此時垂直半規管會再受刺激,而使得飛行員有

錯覺感受:即感覺向右側方滾轉及偏航(Yawing),又如傾斜錯覺,此為最常見

之前庭錯覺型態,幾乎每個儀飛等級之飛行員,於其飛行生涯㆗都會出現這種

錯覺,因其滾轉速度變量

o90

秒o2< (此為 Cupula 感受閾值),所以會毫不知覺,

例如進入每秒 標準旋轉率之轉彎,維持㆒分鐘,改平飛飛行㆒分鐘,再進入o3

2

Page 12: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

轉彎飛行㆒分鐘,再改平飛飛行㆒分鐘,之後,傾斜錯覺即會發生。

4. 傾斜錯覺:當飛行員向㆒側緩慢傾斜時,剛開始半規管因角加速度還小,並

沒有飛機已經傾斜的感覺。而當從儀表發現機身偏斜,此時突然依儀表指示

快速將飛機改平,飛行員會產生飛機依然反方向傾斜的錯覺,稱為超 G錯覺。

超 G錯覺發生之時機在轉彎飛行合併抬頭向內側時,將有內向傾斜角度不夠

之錯覺,所以會有過度傾斜之錯誤動作產生。

1-2 空間迷向機研製之探討:

由㆖可知,方位姿態之錯覺會導致空間迷向。因為視覺是㆟體定向功能的

最重要器官,所以在傳統的 Stewart 飛行平台㆖執行動感模擬時,為了造出空

間迷向的情節(Scenario),必須籌建㆒座具有真實互動之模擬環境,包括真實

座艙,高解析度幾近真實之視效系統,具有飛行動力學之數學模型,閉迴路飛

行控制之互動模擬環境,使得駕駛員能飛行㆒段飛行操縱情節,以辨識空間迷

向之情況(Situation),改變操縱控制,使能順利㆞解開空間迷向之情境。使

用傳統的 Stewart 飛行平台以為空間迷向之訓練機並不需要修改硬體僅需發展

軟體,經由視覺感受以及儀表資料顯示,可由飛行情節(Scenario Profile)

㆗,包括起飛、爬升、轉彎、目標逼近以及著陸等,造出空間迷向之特殊情境,

此由飛行參數狀態之偏離(Deviation)或眼球囊(Eye Saccadic)移動之劇烈

及較長時間之駐留可評估之,由模擬結果可知,傳統的飛行模擬器對視錯覺

(Visual Illusion)是個相當不錯的空間迷向訓練機,但是,空間迷向除了視

錯覺外,也包括體重力錯覺(Somatogravic Illusion)與體旋轉錯覺

(Somatogyral Illusion),而傳統的模擬器無法達成後兩種錯覺,雖然在導致

空間迷向之情境㆗最重要之感知器官是眼睛,很多飛機失事之原因都是由於視

覺能力有限所引起之錯覺,因此,很多飛行員都在思考㆒個問題:墜入空間迷

向情境前之徵兆及反應為何?如何早期察覺?察覺後如何操縱飛機加以修正?

3

Page 13: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

或者另㆒思考問題:飛行員是否因為前庭系統(Vestibular System)錯誤之方

位資訊或本體感受系統(Proprioceptive System)失衡感受所導致?如是,是

否可經由動感平台直覺快速㆞修正。

是故,空間迷向訓練機提出之主要目的是為了能提供正確的前庭系統動態感受

(Cueing)以造出空間迷向錯覺情境之真實飛行環境,為了有效完成這個任務,

此空間迷向機必須具備㆘列兩個重要特性:1.要能產生與俯仰滾轉動感

(Cueing)同時之連續偏航轉動之動態感受,2.要具有閾㆘(Subthreshold)運

動之控制能耐,即產生動感後受限於平台運動空間㆘動感拉回時能讓半規管或

耳石器感覺不到。傳統的動感平台或許可以達成第 2項之動感能量,但是卻無

法提供連續的偏航轉動以造出體重力與本體系統之錯覺。因此,我們企圖想建

造㆒部空間迷向機,此機乃是動感平台與 度旋轉平台之結合,而旋轉平台

可在動感平台之㆖或之㆘,以㆘我們深入㆞評估其優缺點:

o360

( 1 ) 旋轉平台在㆖之空間迷向機

這種構型無法充當空間迷向機,因為要使俯仰滾轉與連續偏航轉動達到同

動之境界幾乎不可能。為了達到同動,我們必須隨時知道偏航精確的位置,除非

我們使用了逆向動態分析與控制,使得當旋轉台連續轉動時,駕駛員能感受到俯

仰與滾轉瞬時暫態動感(Transient Motion Cueing)而且其感受是㆒體的。實

驗結果顯示僅垂直位移能在連續偏航轉動㆘同時感受其逼真的動感,另㆒方面,

如想得到俯仰與滾轉的動感,則僅能引入暫態之偏航動作。旋轉台與俯仰滾轉不

協調和諧時,當動感平台具有傾斜角時,而輔助旋轉台之旋轉,會造成飛行姿態

之不正常變化,此極端不協調運轉結果如㆘列簡圖(圖 1-1)所示:

4

Page 14: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

ition Right Pos90o ation Right Rot180o

Pitch10o− Pitch10o+ Roll10o−

圖㆒ 俯仰角在不同旋轉角度時之飛行姿態o10−

Home Position

故由㆖述可知,同時具有連續偏航轉動之俯仰與滾轉動感無法達成,所以在

體旋轉錯覺方面,包括科里爾氏(Coriolis)錯覺,死亡螺旋(Graveyard Spin),

死亡盤旋(Graveyard Spiral)與傾斜(Leans)錯覺,以及在體重力錯覺㆗之

超 G(G-Excess)錯覺等都無法在此構型㆗實現,換句話說,屬於前庭系統體旋轉

錯覺㆗亦僅有基本的錯覺可於此構型㆗感受到,所以我們考慮如㆘之構型:

( 2 ) 旋轉台在㆘之空間迷向機

這種構型如果是將電動油壓驅動之六軸動感平台架設在旋轉台㆖則其在實

作㆖會遭遇到困難,因為不管將油壓幫浦(Pump)放在六軸平台㆖或旋轉台外都

相當麻煩,如置於六軸平台㆖,電力部分亦是需要經由滑環(Slip Ring)送㆖

去,且油壓幫浦相當重與吵雜;如置於外部,輸送油至油壓缸致動器相當不易。

因此,僅能採用馬達驅動之六軸動感平台,驅動馬達之電力或信號傳輸方面,可

由㆘列㆔種方式達成:1.利用滑環 2.利用旋轉台轉軸㆗空圓柱傳輸線 3.利用光

電訊號傳輸(不過電力部分除外)。以㆘即為此機構之空間迷向機之研製包括相

關運動及動態方程之推導。

5

Page 15: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

1-3 旋轉台在㆘之空間迷向動感平台之研製:

1-3.1 自由度分析

我們利用㆒套㆔桿六自由度旋轉動感平台機構設計,其實體示意圖(圖 1-2)

如㆘所示:

圖 1-2 ㆔桿六自由度旋轉動感平台機構示意圖

從㆖圖可知,如果我們使用系統移動有效自由度之計算公式

( ) ∑=

+−−=g

iifgndM

11

其㆗,M:系統移動有效自由度

d:當 d=3 時表平台僅作平面運動

當 d=6 時表平面是在空間運動

n:包括基板之連桿數目

g:系統之節點數目

i :第 個節點之自由度數目 f i

因平台屬於空間運動,所以 ,桿子可伸縮,由伺服馬達及導螺桿驅動,桿6=d

6

Page 16: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

子支點由同步伺服線性馬達驅動,故動子可在滑軌㆖滑動,㆖平台可視為㆔連

桿連結,故 ,㆖平台與桿子連結,㆖桿與㆘桿連結,㆘桿

與動子以及動子與滑軌連結,所以 ,此系統之㆖平台與桿子

的萬向接頭使用球關節,㆖㆘桿使用平移關節,㆘桿與滑軌互相垂直,為迴旋

關節,可以隨意轉動,動子與滑軌亦是屬於平移關節,故

,故 ,由此可

證明此㆔桿平台系統為㆒六自由度之平台。

1113233 =−+×+=n

123333 =+++=g

18313131331

=×+×+×+×=∑=

g

iif ( ) 618112116 =+−−=M

此系統自由度亦可由 Gluebler’s 通式算出,其自由度亦為 6,其通式如㆘

∑+−= iind fdLM

其㆗ M與 d如同㆖式之定義

indL :獨立迴圈之數目

此通式之計算可由㆔桿平台之運動圖(Kinematic Graph)得出,即

( ) 618136 =+−×−=M 。因㆔桿與㆖㆘平台間形成㆔迴圈,但獨立迴圈之數目

213 =−=indL 。

1-3.2 逆向運動方程之推導

A. ㆔桿六自由度動感平台

㆔桿六自由度動感平台是由㆔根桿件伸縮(由伺服馬達驅動)與桿子支點

滑動(由同步伺服線性馬達驅動)而使㆖平台得到姿態與位置變化之機構,我

們定義兩個運動空間:

[ ]T zy x SpaceCartesian ψθφ

[ ]T322212321 B B B S S S SpaceJoint

其㆗ 為㆖平台位置, 為㆖平台姿態角度,[ T zy x ] ][ T ψθφ [ T321 S S S ] 為桿長,

[ T322212 B B B ] 為動子與起點的距離,如圖 1-3 所示。

7

Page 17: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

iS iP vT

BO

1iBiB2iB

3iB

pOi

pP

圖㆔ 逆向運動之位置向量示意圖

逆向運動學乃從 Cartesian Space 映射到 Joint Space,可表示為

[ ] [ ]T322212321T B B B S S S zy x ⇒ψθφ 。

已知㆖平台㆗心位置與姿態方位,可得知㆖平台㆔桿端點,表示在基座座標

之向量 為

{ }B

iP

1,2,3i, PRTP P =+= ivi

v ]v

其㆗ 為㆖平台座標原點相對於基座座標原點之平移向量: ;矩陣 R

為平台座標 轉換至基座座標 之姿態轉換矩陣; i 代表在座標系 ㆗

點之位置向量,所以已知平台之姿態方位,即可求得㆔桿㆖端點表示在基座座

標 之向量。

T [ Tzy x T =

{ }P { }B Pp { }P iP

{ }B

由於桿子向量為

1,2,3i B-PS iii ==

8

Page 18: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

其㆗ i 為㆖式所算出, , ,式㆗ 與 皆為未知,

共 5個未知數,必須列出 5個約束聯立方程式(Constraint Eq.),顯然㆞,除

了㆖述 3個方程式外,尚須列出 2個額外方程式共同解出桿子與動子位置向量。

P [ ]Tiziyixi SSSS = [ Tiyixi BBB 0 = ] i iS B

因為滑軌之方程式可列出如㆘:

1,2,3i, 13

13

1

1 =−

−=

xixi

yiyi

xiix

yiiy

BBBB

BBBB

xixi

xiyiyixiix

xixi

yiiyiy BB

BBBBB

BBBB

B13

1313

13

13

−+

−=⇒

另外之約束方程可由桿子與滑軌垂直而求出如㆘:

( ) 01 =•− iT

ii SBB

[ ] 011 =

−−

−−iyiy

ixixyiiyxiix BP

BPBBBB

( ) ( ) ( )[ ] ( ) 021 211111

22 =++++−+−+−++⇒ CPBPBBPCBBPABPACBA ixxiiyyiyiiyixyiiyxiixix

where xixi

yiyi

BBBB

A13

13

−=

xixi

xiyiyixi

BBBBBB

C13

1313

−=

( ) ( )[ ]yiiyxiix BPABPACB 112 +−+−=

( ) ( )( )( )12

142

111222

+

+++−+−±−=⇒

A

PBPBBPCCABBB ixxiiyyiyiiy

ix

求出 及 後將期待入㆘個方程式 ixB iyB

=

0iy

ix

iz

iy

ix

iz

iy

ix

BB

P

PP

S

SS

可以得

9

Page 19: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

iziz

1 2

iyiyiy

ixixix

PS

BPSBPS

=

−=−=⇒

B. ㆔桿六自由度旋轉動感平台

與 A.不同處在於動感平台㆘加個 旋轉台,假設已知之㆖平台方位姿態為

,將之分解得

o360

Tzyx ] [ ψθφ

Tzyx ] [ ψθφ = + Tzyx ] [ ψθφ T] 0 0 0 0 0[ ψ

其㆗ 由動感平台來展現,而 由旋轉台來達

成,原則㆖,㆖式之方位姿態都是參考固定基座座標系 ,至於如何將

Tzyx ] [ 1ψθφ T] 0 0 0 0 0[ 2ψ

{ }B′ ψ

1ψ 與 2ψ 呢? 基本㆖, 1ψ 是經由高通濾波器所得之動感高頻分量,由動感

平台展現,剩餘之穩態及低頻部分由旋轉台來完成,其分解程序圖(圖 1-4)如㆘:

Scaleγ

FILTHP

×sT s1

s1

AAγ

sT +−⊗

圖㆕ 動感高頻分量與低頻分量分解圖

ψ

其㆗ 為表示於運動體體軸座標系㆖之角速度, 為運動體體軸之角速

度轉換至尤拉角速率之轉換矩陣, 即為㆓階之高通濾波器,因此角速

度 經衰減器及座標轉換(體軸角速度至尤拉角速率)後,再經由高通濾波器

及積分後算得動感平台之姿態角,而剩餘的穩態及低頻部分由旋轉台來完成。

AAγ ST

FILTHP

AAγ

10

Page 20: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

1-3.3 最佳機構設計

㆔桿六自由度動感平台之最佳機構設計,基本㆖還是使用田口式實驗法來

完成,因為依據以前經驗,如使用田口式實驗法在電油壓驅動飛行平台及線性

馬達驅動平台之機構設計,實體迴路模擬結果誤差皆在 o內。 1

首先選擇控制因素及其位準,於此,我們仍以㆖平台半徑 、㆘平台半徑

、高度及桿長為控因,其訊號與雜訊比仍以最大運動空間來評估,㆘式即為

訊號雜訊比 i

pR

BR

η :

][log10 2max

2

2max

2

2max

2

2max

2

2max

2

2max

2

ψψ

θθ

φφη ψθφ ⋅+⋅+⋅+⋅+⋅+⋅= www

zzw

yyw

xxw zyxi

9~1=i

其㆗ 為全部實驗㆗之最大值 maxmax ~ψx

ψw~ xw 為實驗值之權重因素(Weighting Factor)

將九次實驗㆗每次實驗對應之控因位準代入逆向運動方程,求出每次實驗值

iη ,每次逆向運動方程計算時,使用滑軌長度受限範圍 以及桿子

伸縮受限範圍

maxmin LLL <<

S maxmin << SS ,再由直交陣列所求出之 iη 計算各控因位準時

所得最大運動空間訊號雜訊比η

11

Page 21: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

圖 1-5 ㆘平台之設計草圖

圖 1-6 ㆖平台之設計草圖

12

Page 22: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

圖 1-7 桿子長度之設計草圖

13

Page 23: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

第 ㆓ 章

動感模擬

2-1 動感探討

如圖 2-1 所示,動基平台之動感模擬是模擬的主題,其㆗虛線部分表示硬

體迴路之即時模擬,即數學模式以實體取代。其㆗駕駛員模式,包括駕駛員增

益、動作反應之時間延遲、神經肌相位落後,以及駕駛員均等化的特性參數調

整,視效系統模式僅以時間延遲函數表示。動基平台部分,由於運動空間及動

態響應之受限,我們加了衰減器、受限器及高通濾波器,將信號分為兩部分:

㆒為穩態直流(包括低頻),㆒為暫態交流(高頻部分)。受限器之功能為限制

空間運動,然而為了動態高頻部分在極限處亦能展現出來,故加了衰減器,高

頻部分之取得是使用高通濾波器,同時加了增益調整器來調整,為了忠實反應

運動體高頻部分,此部分直接由運動體座標取得角速度,在將之轉換至尤拉角

速度,經高通濾波後,積分得到尤拉角高頻部分,再將此高頻部分加到受限之

尤拉角部分。如此為了加強動態響應,使得動感更為顯著,則可把增益 加大。 1k

14 14

Page 24: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

Pilot ModelCentral Nervous and

Neuromuscular System

Control and Vehicle Mathematical Model

High-Pass Filter

nnn SSSK

22

21

2 ωωξ ++

•••

ψθφ ,,

S1

Motion ServoDynamics

Inverse Kinematics and

Actuator Current

Generator

Platform Hardware in

the loop

Low-Pass Filter

Visual System Delay

e sxv−

Visual System

ccc ψθφ ,,Pilot -in-the-loop

δ C

ψθφ ,,

+

+mmm

m

SS 22

2

2 ωωξω

++dtd

dtd

dtd ψθφ

ConditionSwitch

aSa+

+-

2K

111 ,, ψθφ

22,2 ,ψθφ

圖 2-1 駕駛員㆟機閉迴路動感模擬方塊圖

2-2 自調式(Auto-tuning)清洗濾波器(Washout Filter)之

設計:

根據平台之工作空間之預估及動態響應極限推算,可得到平台位移、角

度、速度、角速度、加速度及角加速度之極限。在動感模擬㆗,我們不希望飽

和於受限值,而是能將動態感覺表現出來,如圖 2-2 所示。

040036

018016

θ

t

圖 2-2 超出工作空間範圍時之動感模擬

15

Page 25: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

對於平台移動之動感模擬方面,我們使用㆔階段的清洗濾波器,如㆘所示:

( )( )mnnvehicle

filt

sssks

h

hωωξϖ +++

= 22

3

..

..

2

當輸入訊號為㆒步階之加速度,則經㆒段時間後平台之移動距離為

0)(lim =∞→

th filtt

若取 則 ,1,01.0,7.0,1 ====== kjjs nm ωωξω

°∠= 4.11..

..

vehicle

filt

h

h

此結果已接近完美,如能消除穩態加速度所造成座艙之位移量,而相位幾乎不

改變,至於平台轉動之動感模擬方面,假如我們採用㆓階之清洗濾波器,則

22

2

2 nnvehicle

filt

ssks

ωξϖωω

++=

同理,經過㆒段時間滾轉後之最大角度(輸入為單位步階轉速值)為

( ) 0lim =∞→

tt

φ

如取 則 ,1,01.0,7.0,1 ===== kjs nωξω

°∠= 802.01vehicle

filt

ωω

2-3 駕駛員㆟機閉迴路動感模擬結果

由清洗濾波器模擬結果得之,我們只要知道平台受限角度即飛機操縱模式

(Maneuver Mode),即可設定受限器飽和角度,以及調整適當的 , 及 值,1K ξ nω

16

Page 26: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

使得在受限㆘能即時精確㆞將動感部份展現山來。為了能即時適應㆞調整,必須

將飛行操縱模式與動感展現之參數( , 及 )間之關係找出,以便做到即時

適應控制之境界。

1k ξ nω

在得知清洗濾波器方塊圖後,我們再將駕駛員模式(Pilot Model)及視效補

償(Visual System Compensation)加入,如㆘圖(圖 2-3):

圖 2-3 ㆟機閉迴路模擬方塊圖(MATLAB)

17

Page 27: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

圖 2-4 ㆟機閉迴路方塊圖模擬結果(MATLAB)

圖 2-4 為㆟機閉迴路方塊圖由 MATLAB 模擬所得到的波形,我們假設輸入為

20 度的單位步階函數,而平台的限制角度為 18 度。圖 2-4 分㆖㆘兩圖,㆖圖為

經過運動體數學模式(Vehicle Mathematical Model)後輸出的波形,而㆘圖為

經過清洗濾波器、平台延遲及視效補償後所得波形,兩個經過模擬的波形可說

是幾乎重和,這就表示我們所建造的方塊圖在動感重現這方面所得結果可以說

18

Page 28: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

是不錯。而關於高低頻的模擬結果如㆘兩圖(圖 2-5、圖 2-6),低頻部分的受限

角度的確在 18 度以㆘。

圖 2-5 高頻部分模擬結果波形圖

圖 2-6 低頻部分模擬結果波形圖

2-4 動感平台閾㆘運動之研究:

如前所述,主掌定向之器官為前庭系統之半規管及耳石器,半規管內含淋

巴液及塉頂,且㆔個半規管相互約成 之夾角,可偵測俯仰、滾轉、及偏航等

軸向之角加速度變量,但對線性加速度變量不敏感。

°90

19

Page 29: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

所謂半規管之刺激閾,即為要高於刺激閾值,方能感到其角加速度之變量,

據報導,如長時間暴露於角加速度之環境㆗,可能敏感至 2secdeg035.0 之最低閾

值,不同研究單位之數據大約介於 2secdeg0.2~1.0 ,而對偏航之合理閾值為

2secdeg14.0 ,對俯仰及滾轉值約為 2sec

deg50.0 時,當角加速度暴露時間

,則角速度 約為㆒常數,稱為慕德常數(Mulder’s constant),此數值

約為

sec5≤ ω

secdeg0.2 。

而耳石器可偵測直線加速度之變量,其涉及向和量,最低之方向角度約為

1.5deg 之改變,而最低加速度變量多為 ,如角加速度暴露時間

,則速度 v可為㆒常數,此㆒數值約為

g03.0~001.0

sec5≤ sec4.0~3.0 m 。

2-5 空間迷向動感平台閾㆘運動之控制研究:

這裡所談空間迷向的問題可分為如何建構空間迷向機產生空間方位之錯覺

以及為了動感效果在拉回時衍生了不該產生的生理錯覺,這種錯覺是應該避免

的,此即空間迷向迴避,所以除了建構空間迷向機外,亦需考慮在動感拉回時

要讓半規管及耳石器感覺不到,即角加速度與加速度必須低於刺激閾之㆘,此

即為清洗濾波器之主要工作。

除了空間迷向之迴避外,如何判斷駕駛員已經進入空間迷向,也是㆒門學

問。此當然可由動感波形分析預估,也能測量駕駛員在空間迷向時生理反應及

其訊號之記錄分析之,例如量測腦波、心電圖、皮膚阻抗及眼振波形分析判斷

之,同時也可針對不同之駕駛員重複量測其生理訊號而分析出產生空間迷向之

各種情況。換言之,我們可主動造出空間迷向之等級以歸類所有駕駛員對空間

迷向之容忍度,此記錄之資訊與分析結果,對駕駛員之駕駛訓練有其㆒定之輔

助。

20

Page 30: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

第 ㆔ 章

RTLinux 即時模擬監控系統之研究

我們原先想使用 Windows NT4.0 作為作業系統,可是 Windows NT 在於即時

部分,尚無法達到真正的即時反應,因為在 Windows NT 作業系統㆘,其內部機

制是靠(Message)來傳遞,這樣的傳遞結果,造成了控制時間延長與不確定性,

如此便無法達到真正的硬即時(Hard Real Time)需求,為了擺脫 Windows NT

先㆝㆖的束縛,因此考慮採用Linux做為我們的作業系統。接㆘來我們先將LINUX

和 RTLINUX 做詳細的介紹。

3-1 什麼是 Linux?

Linux 是㆒套類似於 Unix 的作業系統,在 1991 年 11 月,由㆒位芬蘭的大

學生 Linus Torvalds 將第㆒版的 Linux 以 GNU General Public Lincese 公開

於網路㆖。目前已經發展到 2.3X 版,這套作業系統現在已經在世界各㆞受到普

遍的歡迎,還被視為是微軟公司大力促銷的系統最大的競爭對手。

GPL 這個版權允許任何㆟以任何形式複製與散佈 Linux 的原始程式,換句話

說,Linux 實際㆖是 Free”免費的”,使用者在網路㆖就可以抓到 Linux 的原始程

式碼,隨心所欲的複製與更改 Linux 的原始程式,在網際網路的日漸盛行以及

Linux 開放自由的版權之㆘,吸引了無數電腦高手投入開發、改善 Linux 的核心

程式,使得 Linux 的功能日漸強大,所以今日我們可以在網路㆖免費㆘載 Linux

使用,或者花很少的㆒點費用就可以取得 Linux 光碟,這都是因為 Linux 是 GPL

版權的緣故。

除了核心程式以外,㆒個作業系統還需要其他的系統程式跟應用程式才有

實用性,Linux 系統㆗常用的系統程式大部分是美國自由軟體基金會(Free

Software Foundation)開發出來的軟體,而且也有不少機構或個㆟為 Linux 開

發應用程式,這些程式㆒樣大多都是自由軟體,任何㆟都可以免費的在網路㆖

21 21

Page 31: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

取得,不過自行去取得這些程式再㆒㆒安裝非常不便,於是有些公司或團體就

會去搜集、整合 Linux ㆖的程式,把”核心-系統程式-應用程式”總合起來構成㆒

個完整的作業系統,讓㆒般使用者可以簡便的安裝完整個系統,這就是所謂的 ”

安裝套件 ” (distribution),我們㆒般講的 Linux 系統便是針對這些安裝套件

而言,同樣是 Linux 系統,卻分成不同公司、機構整合出來的不同安裝套件,

這就是大家常常在網路㆖看到 Linux 有那麼多”種”的原因。

Linux 具有 Unix 系統的程式介面跟操作方式,也繼承了 Unix 穩定有效率的特

點。網路㆖安裝 Linux 的主機連續運作㆒年以㆖而不曾當機、不必關機是稀鬆

平常的事,不過 Linux 卻不像㆒般 Unix 要負擔龐大的版權費用,也不需要在專

屬的昂貴硬體㆖才可以使用;Linux 可以在㆒般的 i386PC ㆖執行,效能又高,

自然而然的接收了過去幾十年來在 Unix ㆖累積的程式資源跟使用者,加㆖ GPL

的版權允許大家自由散佈 Linux 的原始碼,並針對自己的需求修改程式,使得

Linux 再目前已經成為非常受㆟歡迎的㆒個多㆟多工、免費、穩定、效率高、可

以在 i386、Sparc、Alpha、Mips、PPC 等眾多不同電腦系統平台㆖執行的作業

系統。

3-1.1 Linux 的特點

Linux 具備了㆒個現代 UNIX 相容作業系統應有的功能。

1. 多工(multi-tasking)

Linux 支援真正的優先權式多工(prermptive multitasking)。處理程序再執行

時彼此之間是互相獨立的。因此在寫作程式時我們不必考慮要如何把處理器的

時間讓給其他的處理程序。

2. 可供多位使用者存取(multi-user-access)

Linux 允許同㆒時間有數個使用者使用系統。

3. 支援多重處理器(multi-processor)

22

Page 32: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

從 2.0 版起。Linux 也可以在具有多重處理器的平台執行。也就是說 Linux 可以

將應用程式分派給不同的處理器,以真正平行(parallel)的方式來執行。

㆒.依需求載入可執行檔

在執行程式時,系統只把執行時會使用到的部分載入記憶體。當使用 fork()

產生㆒個新的處理程序時,系統不會馬㆖把記憶體分配給新的處理程序,

而是讓父處理程序的記憶區與子處理程序共用。如果稍後子處理程序欲寫

入某部分的記憶區時,系統會把該部分記憶區複製㆒份給子處理程序後再

讓他修改。這種概念稱之為寫入時才複製(copy-on-write)。

㆓.分頁(paging)

雖然 Linux 是盡可能的善用記憶體得每㆒個部分,但也有用盡可用記憶體

的時候。此時 Linux 尋找是否有可釋放出來的記憶頁,其㆗每個記憶頁的

大小是 4K 位元組。被選㆖的記憶頁如果他的內容已經存放在硬碟㆖,該記

憶頁就會被釋放出來;否則核心會把記憶頁的內容複製到硬碟㆖。如果稍

後用到了記憶頁原先的內容,我們必須從硬碟㆗載回記憶頁的內容,這項

程序稱為分頁。它有別於㆒些早期 UNIX 系統所使用的置換(swapping),這

項方法是把㆒個處理程序的所有記憶區的內容全部寫入硬碟,相較之㆘後

者的效率比較差。

3.為硬碟設立動態快取區(dynamic cache)

Linux 會案系統記憶體的使用情況,動態的調整快取記憶區的大小。如果在

某個時候,系統已經沒有可用記憶體時,核心會縮減快取區的大小來釋放可用

的記憶體。當這些記憶體再次被釋放時,核心會把他們加入快取區。

4.共享函式庫(shared libraries)

函式庫是程式在處理資料時所需要的函式的集合。在觀察㆒些標準的函式

庫時我們發現,㆒個函式庫同時會被㆒個以㆖的處理程序使用到。因此,最好

23

Page 33: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

是只載入這些函式庫㆒次,而非每個處理程序在執行時都載入㆒次。而使用共

享函式庫使得這項想法得以實現。由於這些函式庫只在處理程序時載入,因此

他們也被稱為動態聯結函式庫(dynamic link libraries)。

5.記憶體保護模式

Linux 採用處理器㆖的記憶體保護機制來防止㆒個處理器存取已分配給系

統核心或其他處理程序的記憶空間。這對系統安全而言有很大的幫助。因為這

樣㆒來,㆒個錯誤的程式將不會使整個系統當掉。

3-1.2 處理程序(Process)

在作業系統㆗,程序是任務的執行者。程式只是存貯在硬碟裡可執行的機

器指令和資料的集合,因此是被動的實體。程序可以看做事正在運行的電腦程

式。

程序是㆒個動態實體,隨著處理器執行著機器指令而不斷變化。除了程式

㆗的指令和資料之外,程序㆗還包括了程式計數器,CPU 的所有暫存器,堆疊(包

括著像過程參數,返回位址,保存的變數等臨時資料)。目前正在執行的程式,

也就是程序,含有微處理器目前的所有活動。Linux 是㆒個多重處理型的作業系

統(multi-processing,或叫做多工)。

程序各司其職,如果某個程序崩潰,不會導致系統㆗別的程序崩潰。每個

程序在獨立的虛擬位址空間㆗運行,除非通過核心提供的安全的機制之外,不

能和別的程序相互作用。

程序在其生命週期內要使用許多系統資源,它要用 CPU 運行指令,用實體

記憶體存貯指令和資料;它會打開並使用檔案系統㆗的檔案,直接或間接使用

實體設備。Linux 必須了解程序使用資源的情況以便合理㆞管理系統㆗的所有程

序。假如讓某個程序獨占大部分系統實體記憶體或者 CPU,對別的程序就不公平。

系統㆗最重要的資源就是 CPU,通常只有㆒個。作為㆒個多重處理作業系

24

Page 34: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

統,Linux 的目標是讓系統㆗的每個 CPU ㆖面始終有㆒個程序在執行,以充分利

用 CPU。如果程序數多於 CPU 數(通常總是這樣),多餘的程序必須等待有 CPU 空

閒㆘來才能運行。

多重處理的想法很簡單:讓程序㆒直執行直到它必須等待,通常是等待使

用㆒些系統資源;當它可以使用這個資源時,可以再讓它運行。在㆒個單㆒處

理的作業系統(uniprocessing,或叫做單工)㆗,例如 DOS,CPU 在程序等待資

源的時候將無所事事,白白浪費時間。在㆒個多重處理作業系統㆗,記憶體㆗

同時存在許多程序。當每㆒個程序必須等待,作業系統就把 CPU 分配給別的需

要運行的程序。系統㆗專門有㆒個排程器(scheduler)負責選出㆘㆒個要運行的

程序。Linux 使用很多排程策略來保証排程的公平。

3-1.3 處理程序(process)與任務(Task)

以㆒個在 Linux ㆘執行之處理程序的角度來看,核心是㆒個服務的提供者。

處理程序彼此獨立運作,㆒個處理程序無法直接影響其他的處理程序。每個處

理程序有自己的記憶區域,這個區域受到系統的保護,別的處理程序無法修改

它的內容。

然而,從㆒個執行㆗的 Linux 內部來看,則又是完全不同的景象。整台電

腦只執行㆒個程式 —作業系統本身。而這個單㆒程式可以存取所有的資源。不

同的任務(task)以合作常式(co-routines)的形式來執行。每個任務可以自行決

定是否要將控制權移轉給其他任務。如此,核心程式㆗如果有錯誤將使整個系

統停頓。此外每個任務可以使用其他任務的所有資源,並可以加以修改。

㆒個任務㆗,有某些部分在處理器㆗是以較低修先等級的使用者模式(user

mode)來執行,若從核心外往核心內來看,這些部分就是處理程序。若從處理程

序的觀點來看,系統是以多工型態在運作㆗。

25

Page 35: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

3-1.4 模組化(Module)

由於 Linux 是㆒體的作業系統,所有的檔案系統及設備驅動程式都必須放

在核心㆗。這樣㆒來,當要改變系統設定時,核心就必須重新編譯。另㆒方面,

即使利用率很低,驅動程式及檔案系統在核心㆒但載入後會㆒直佔用著記憶

體。而發展新版本核心時,不論程式㆖所做的修改是多麼微不足道,但要使這

些修改生效就必須重新編譯核心,安裝新的核心並重新開機。比如,你想在核

心㆗加㆒個 NCR 810 SCSI 的驅動程式,你必須重新設置,重建核心。這也有另

外㆒個辦法,Linux 允許動態裝載和卸掉模組。Linux 模組是㆒段可以在核心起

動後任意時間被動態連結的物件碼,這些物件碼在整合到已在執行的核心後,

具有與核心同等的權利,也就是說它是在系統模式㆘執行的,但核心㆒體的架

構仍然沒有改變。再不需要時,他們可以被從核心㆗卸掉。大多數 Linux 模組

是設備驅動程式,如網路驅動程式,檔案系統等。

你可以使用 insmod 和 rmmod 命令來裝載和卸掉 Linux 模組,核心自己也可

以掉用核心駐留程式來按需要裝載和卸掉模組。

3-2 什麼是 RTLinux?

RTLinux(Realtime Linux)是 Linux 的㆒個延伸系統,主要是用來處理㆒些

對於時間有緊要性,關鍵性,或危急性的作業。在許多致力於實現硬即時(“hard”

real-time) Linux的團體㆗,最有前途的應屬位於新墨西哥礦業及科技學院(New

Mexico Institute of Mining and Technology)的 Real-TimeLinux(RT-Linux)

計劃。由於 Linux 原本是專為桌㆖型電腦使用者而設計的,其㆗的研究員認為

如果嘗試將 real-time 的機制移植到 Linux ㆖,所得到的即時效果有限。因此

他們設計了㆒個簡單的即時核心(real-time kernel)架在整個 Linux 作業系統

最低層,其㆗ Linux 本身也當成㆒個在核心㆖執行的作業(task),這個 task 擁

有最低的優先權(priority),因此在這個核心㆖的其他 priority 較高 task 都

26

Page 36: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

可以㆗斷 Linux 的 task 來取得系統的執行權。

RTLinux 的設計哲學就是盡量不去更改 Linux 本身,僅提供即時應用發展時

所需要的功能,已減少 Linux 結構的分裂,同時更方便於 RTLinux kernel 未來

的改版。因此,RTLinux 還是仰賴 Linux 支援大部分所需要的服務,RTLinux 本

身則提供㆒些較低層次的服務,如開啟㆒個 real-time task、㆗斷服務程式的

安裝,以及提供 real-time task 與㆗斷或是㆒般的 Linux 處理程序(processes)

之間的溝通管道等。

㆘面的圖例(圖 3-1)說明了 RT-Linux 的系統架構。基本㆖ RT-Linux ㆗的即

時工作(Real-Time Task),其實並不是㆒個 Linux 的行程,而是㆒個 Linux 的

可載入式即時核心模組(Loadable Kernel Module)。

圖 3-1 RTLINUX 運作系統架構圖

27

Page 37: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

3-2.1 Real-Time Domain 與 Non-Real-Time Domain

RTLinux 之所以這樣規劃的另㆒個原因,大部分的 real-time 的應用都可以

分為 real-time domain 與 non-real-time domain 兩面來考慮。假如你的函式

是放在 real-time domain 的範圍,理所當然你的函式可以達到 real-time 的需

求。但是前提是這些函式所提供的必須是㆒些簡單的即時機制,real-time

domain 提供的有限資源無法滿足太複雜的要求。另㆒方面,non-real-time

domain 的應用程式則可以使用 Linux 所提供的全部資源,只是在這個 domain 內

的函式不能達到 real-time 的機制。既然 RTLinux 的應用程式需要分成兩個

domain 來實現,因此在 real-time 與 non-real-time 之間的溝通管道就變得很

重要。而且,在 real-time domain ㆘不能直接呼叫在 non-real-time domain

㆘的函式,假設有㆒個 Linux(non-real-time domain)㆘的驅動程式,並不能在

real-time task (real-time domain)內呼叫,因為這樣會影響 real-time 的效

能。唯㆒的方法就是在 real-time domain ㆘重新時作㆒個相同的驅動程式,如

此才能保證 real-time 的效果。

3-2.2 Real-Time Task

RTLinux提供給real-time task的機制都是很基本的:函式rt_task_init()

用來開啟㆒個新的 task,同時設定 task 的堆疊大小(stack size)及優先權

(priority)。在 RTLinux 之㆗,Linux 本身就是㆒個 real-time task,其優先

權為所有 real-time task 之㆗最低的。函式 rt_task_make_periodic()用來設

定 real-time task 的執行週期與起始時間。函式 rt_task_wait()會停止正在執

行的 real-time task,直到㆘各執行週期的開始。

3-2.3 Real-Time FIFO

28

Page 38: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

Real-time domain 與non-real-time domain之間的溝通,也就是Real-time

task 與 Linux 處理程序(process)之間的溝通,最主要的橋樑就是

FIFO(first-in-first-out)的機制。在 real-time domain 利用函式 rtf_create()

用來開啟㆒個 FIFO 所需的大小,資料由 real-time task 傳入 FIFO 是使用

rtf_put(),如果 FIFO 已經滿了則會回覆㆒個錯誤訊息。同樣的,若要從 FIFO

讀回資料則使用 rtf_get(),如果 FIFO 是空的也會回覆㆒個錯誤訊息。而在

non-real-time domain 則是將 FIFO 當成㆒個檔案的形式,利用 open()、read()、

write()、close()等函式來開啟與關閉相對應的 FIFO,並對其作讀寫的動作。

FIFO 最基本的應用就是作為資料傳輸的管道,例如在㆒個資料擷取的應用

㆗ real-time task 利用 rt_task_init()與 rt_task_make_periodic()來設定取

樣的週期,透過 I/O 介面卡來擷取資料。然後利用 rtf_put()將資料送到 FIFO,

最後在由 Linux process 讀出。Linux process 可能在㆒迴圈當㆗,不斷的利用

read()讀取 FIFO 的資料,同時可以交資料儲存起來,或是經由網路傳送,或是

在 X視窗(X window)將資料顯示出來等。FIFO 就像是㆒個緩衝器(buffer)㆒樣,

因此在 Linux process 的動作可以不受到 real-time 的限制。

3-3 為什麼使用 RTLinux?

為什麼我們的即時作業平台要選擇 RTLinux 呢?而不用 DOS、Microsoft

Windows 或其他專業的即時作業系統呢?Dos,單㆟單工的作業平台,在系統發展

㆖有許多的限制;MS Windows 在處理即時的能力則有些不足;而㆒些專業的即

時作業系統其價格昂貴,且大部分的程式碼不易移植到其他平台㆖。

然而 RTLinux 為㆒個多㆟多工的作業系統,又能同時兼顧即時的機制與伺

服的能力,光就這㆒點,在未來整個控制系統㆖的發展將無遠弗屆。例如,以

㆒個架構在 RTLinux ㆖的控制器來講,如果能夠處理㆒些即時的控制,同時還

29

Page 39: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

能透過使用者介面或網路伺服器與外界溝通,如圖形的顯示,資料庫的傳輸,

影像的監控等,其發展的空間之大,令㆟欣喜。且其為自由軟體,可以輕鬆的

得到其原始檔案,而不用花費昂貴的費用。

即使 RTLinux 在 real-time 的機制㆖還比不㆖㆒些成熟有經驗的即時作業

系統(RTOS)如 QNX,然而在許多的應用㆖,RTLinux 所提供的架構已經足以應付

的了。綜觀以㆖的優點,RTLinux 可以說是結合㆖述㆒些作業系統的優點,而沒

有其缺點,為最適當的作業平台之㆒。㆘圖(圖 3-2)為說明 Kernel Module 與

Linux Process 之互動關係。

圖 3-2 Kernel Module 與 Linux Process 之互動關係流程圖

30

Page 40: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

3-4 即時軟體設計

3-4.1 即時系統的定義

就是必須在㆒段時間範圍內做出正確的回應,否則將會造成系統效能的降

低。若從即時系統與外界所處環境的關係來看,它事實㆖是在做與環境狀態改

變同步的工作,而這些工作可分為㆔大類:

1.時間驅動工作(clock-driven task),這類工作通常是週期性的。最常見

的就是訊號處理㆗的資料採集,其㆗採樣頻率隨環境改變而不同。㆒般週

期性的工作是控制軟體與外界最接近的部份,而這類工作的延誤將可能導

致嚴重的後果。

2.事件驅動工作(event-driven task),通常伴隨著外界事件的發生而動作,

這類工作在緊急狀況㆖的處理尤其重要,因此延誤將造成不可收拾的後果。

3.互動式工作(interactive task),這在㆒般多使用者、時間共的系統㆗最

為常見。㆒般來說,此類工作所需應付的對象是㆟,因此延遲通常不會導

致嚴重的果,只不過會造成使用者的不滿。此類工作以現今流行的使用者

介面為代表。

另外若依時間限制可分為兩類:

1. 硬即時(hard real-time),此類的工作必須在固定的時間內完成且絕

無例外。

2. 軟即時(soft real-time),此類的工作即使有時無法在要求的時間內

完成亦不會造成系統的傷害。

以本論文的模擬器為例,便是屬於硬即時、時間驅動的系統。因為模擬器

的功能是與控連線,測試控制器的效果,所以如果沒辦法在㆒個取樣時間

(sampling time)之內完成計算的話,根本無給出㆒個合理的模擬結果,當

然也失去模擬器的意義了。

31

Page 41: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

3-4.2 Real-Time Domain 與 Non-Real-Time Domain 的實作

技巧

由 3-2 節所介紹的 RTLinux,我們知道要實作㆒個 RTLinux 的應用必需使用

到㆔個主要的結構,Linux process、real-time task、real-time FIFO。以㆘

將介紹㆔個結構之間資料傳輸的方法,以確保 real-time 的機制。

3-4.2.1 核心模組(Kernel Module)

在實際程式的設計㆖,我們將 real-time task 包在㆒個核心模組(kernel

module)裡面。使用模組的㆒個好處就是,我們可以隨意的裝載與卸載模組,且

模組具有與核心同等的權利,因此我們可以在模組內設計 A/D 卡與 D/A 卡的裝

置驅動程式,來完成 real-time 的 A/D 與 D/A 轉換。這個模組的內容大約如㆘:

1.init_module():用來作㆒些模組的初始動作,如開啟㆒個 real-time

task,開啟 real-time FIFO,以及對 A/D 與 D/A 介面卡作㆒些設定的動

作,最後設定 real-time task 的執行週期與開始執行的時間等。

----------------------------------------------------------------

---------------------------------

int init_module(){

……

rc=rt_task_init(&rtp_rt_task, RT_IO,0,40960,10);

/* 開啟㆒個名為 rtp_rt_task 的 real-time task, RT_IO 則是表示

這個 real-time task ㆒開始執行時執行的函式*/

……

rtf_cteate (0/*FIFO 0*/, 12/*size */)﹔

rtf_create (1/*FIFO 1*/, 12/*size */)﹔

32

Page 42: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

/*開啟兩個 real-time fifo,其大小皆為 12bytes,至於為什麼為 12bytes,

稍後將作解釋 */

…………

/*設定 A/D 卡或 D/A 卡的內部暫存器 */

……

rt_task_make_periodic(&rtp_rt_task,rt_get_time()+500,period)﹔

/*用來設定 rtp_rt_task 的執行週期 period 以及開始執行的時間,其㆗週

期時間的單位為㆒百萬分之㆒秒(microsecond)*/

…….

}

----------------------------------------------------------------

-------------------------------

2.RT_IO()就是 real_time task ㆒開始執行實會去執行的㆒段程式碼。其

㆗包含了㆒個無窮迴圈,在這無窮迴圈裡面執行了㆒些 A/D 轉換與 D/A

轉換的副程式,執行完之後會呼叫 rt_task_wait(),這個含是會結束現

在正在執行的 real-time task,直到㆘㆒次週期時間開始。因此,這個

real-time task 會定時的來執行 A/D 與 D/A 轉換的副程式。

Void RT_IO(int dummy_data){

……

while(1){

/* 進入無窮迴圈 */

if(rtf_get(0,&datastart,2)==0);

else if(datastart==0xFFFF)

Daoutput();

Adinput();

33

Page 43: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

/* 先判斷 real-time FIFO 0 內是否有 D/A 輸出的起始旗標,若無,

則不作任何動作,若有,則進行 D/A 輸出與 A/D 輸入的動作 */

rt_task_wait();

/* 結束這個週期的動作,將 rtp_rt_task 的動作暫停,直到㆘㆒次週

期時間,程式會由此繼續執行 */

}

}

----------------------------------------------------------------

---------------------------------

3.Adinput()與 Daoutput()為 rtp_rt_task ㆗負責作 A/D 與 D/A 訊號轉換。

同時,Adinput()會將轉換後的數位資料藉由 rtf_put()存入 real-time

FIFO 1 ㆗。由於有㆕個頻道,因此分㆕次存入,依次存 2bytes,再加㆖

資料起始與資料結束的檢查旗標總共 4bytes,因此共存入了 12bytes。

而 DAoutput()的動作則是藉由 rtf_get()由 real-time FIFO 0 ㆗取出欲

輸出的資料,在經由 D/A 轉換成類比訊號送出。

3-5 RTLinux 視窗㆟機介面及 3D/VR 虛擬實境之建立

在建立完成我們的 Real-Time 作業系統環境後,整個程式設計可分為㆕個

主要部分:1.監控系統之運作程式,2.驅動程式,3.六軸平台數學運算,4.多

媒體展現,包含 OpenGL 動畫及數據顯示。由於 Linux ㆖的 GUI 介面元件產生的

事件(Event)與程式間的連結與 Windows 不同,且 Linux ㆖缺乏整合式的應用程

式開發介面,程式的設計必須先使用文字編輯器編寫程式碼及設定 makefile,

然後再利用編譯工具編譯(Compile),可說是非常沒有效率的工作,這㆒部份

可能需花費㆒段時間來完成,因此初步打算先將監控系統的介面與動畫顯示完

34

Page 44: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

成,再逐步跟硬體結合達成硬品控制。

在 GNOME 桌面環境具有㆒套 GUI 介面的開發環境,軟體名稱為 Glade(如圖

3-3),Glade 可以替我們建構出程式圖形介面的基本架構,但其功能仍相當有

限,並非㆒個整合式的程式開發環境,㆒些需要與事件(Event)相連結的程式

碼還是必須另外開啟文字編輯器來編譯,不過由於程式呼叫 GUI 介面是利用類

似 Windows 的動態連結資料庫,所以其優點是程式碼與 GUI 介面可以完全獨立,

使得我們可以很明確的掌控住程式,清楚我們的程式碼運作,而且即使我們將

所設計的 GUI 介面做些修改,程式也不需要做重新編譯,只要程式碼用到的元

件能夠找得到就可以,而且可以讓多個程式共用我們所設計的介面,若是用於

大型程式則可以大幅的減低程式的體積。

因此我們程式設計的步驟只要將所需的介面預先建立好,然後在程式碼㆗

呼叫附檔名為 glade 的正確檔案,並在 makefile 將 Glade 的程式庫檔(Library

Include)含蓋進來,最後再利用編譯工具 gcc 或 g++ 對程式碼做編譯

(Compile),即可完成㆒個具有 GUI 介面的程式。

35

Page 45: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

圖 3-3 RTLinux GNOME 視窗㆟機介面圖

Glade 雖然可以替我們建構出程式圖形介面的基本架構出來,但是畢竟它仍

是在發展㆗的軟體,所以有部份功能仍受到限制。

因此當我們要將OpenGL從Windows搬到Linux平台㆖展現時就碰到困難了,

第㆒個問題就是 Glade 並未提供 OpenGL 的繪圖區域元件可供我們來使用,其實

重點在於 GTK 根本沒有 OpenGL 的繪圖元件,因為 GTK 沒有預設支援 OpenGL 繪

圖,因此必須先安裝㆒套支援 OpenGL 繪圖的 library,所以我們安裝了㆒套支

援 OpenGL 語法的 Mesa 3D library,Mesa 3D library 支援 OpenGL 的繪圖,其

語法與使用 OpenGL 相同,除了少部分的功能尚未支援,安裝完 Mesa 3D library

後便可以在 Linux ㆖處理大部分的 OpenGL 繪圖,且在 OpenGL ㆖所寫的程式可

以原封不動的直接移至 Linux ㆖而不須加以修改。

但是我們卻又碰到㆒個新的問題,當我們希望將所繪的OpenGL圖形放進GTK

視窗內跟㆒些狀態數據㆒同展現時,因為 GTK 視窗基本㆖並沒有 OpenGL 繪圖區

域之類的元件,因此無法在 GTK 視窗繪製 OpenGL 圖形,為了要達成這項工作,

我們又得再安裝 GtkGLArea 來達成目的,GtkGLArea 提供㆒個 OpenGL 的繪圖區

域元件供我們在 GTK 視窗㆖使用,讓我們能夠將 OpenGL 圖形放入 GTK 視窗內。

然而 GtkGLArea 所提供之 OpenGL 的繪圖區域元件並未整合入 Glade 裡,因

此我們便無法單獨使用 Glade 來建立我們的 GUI 介面了,必須要修改 Glade 所

產生的原始碼加以修改,並加入 GtkGLArea 元件來繪製 OpenGL 圖形,步驟較先

前繁瑣得多,而且使得我們無法使用動態連結方式呼叫 Glade 特有的介面設定

檔,㆒些事件(Event)與程式連結的工作必須要自己來,不若原先只要設定好

欲與事件(Event)相連結的函數(Function)即可,少了原有的便利性。我們

所初步設計出來的程式外觀如圖 3-4 所示。

36

Page 46: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

圖 3-4 RTLinux 視窗㆟機介面與3D/VR 虛擬實境圖

37

Page 47: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

第 ㆕ 章

結 論 與 未 來 展 望

由於㆒開始時對於空間迷向並沒有完整的概念,所以我們花了許多時間在收

集和研讀空間迷向的資料。由於之前學長有作過六桿平台的研究,所以我們按照

其方法去做自由度的推算、逆向運動方程式的推演及最佳機構的設計。最後使用

RT-LINUX 去做即時監控系統。過程㆗我們發現要實際的模擬空間迷向的情境是

需要很大的 working space,而我們所研究的㆔桿六自由度的動桿平台能改善

機構的限制,讓飛行員模擬器能更真實的的模擬飛行的情形。再加㆖即時監控系

統來監視系統的運作情形,相信能使系統更加即時化。

由於時間的關係我們只有做到最佳機構的設計,將來可以進㆒步推演順向運

動方程式,逆向動態方程式及估計系統所需的工作空間。接著做出㆒套㆔桿平台

的即時監控系統,利用 OPEN GL 去畫出我們所需要的平台。然後在跟實際的硬

品結合去做硬品迴路設計與測試。如此㆒套完整的空間迷向機就可以完成了。

38 38

Page 48: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

第 五 章

參 考 文 獻

[1] Cezary Szczepal ski, C.F.W. Skibniewski, ”Standard Fight Simulator as a Spatial

Disorientation Training Device”, Polish Air Force Institute of Aviation Medicine,

AIAA-2000-0160。

[2] K. K. Gillingham and J.W.Wolfe, ”Spatial Orientation in Fight”,2000。

[3] 黃榮興,”六桿電油壓驅動飛行平台之動態分析、控制律設計與即時模

擬”,國防學術合作案,期㆗報告(㆒)(㆓)及期未報告,1998。

[4 ] 許朝凱,黃榮興,’’六桿電油壓驅動飛行平台之動態分析與即時模擬”,

1998,㆗華大學碩士論文

[5 ] 廖本儒,黃榮興,’’㆔桿平台之動態分析與即時模擬驗證”,1997,㆗華大

學碩士論文。

[6 ] 許朝凱,黃榮興,’’六桿電油壓驅動飛行平台之動態分析與即時模擬”,1999,

航太期刊。

[7 ] 許朝凱,黃榮興,’’六桿電油壓驅動飛行平台之動態分析與即時模擬”,

1998,航太研討會

[8 ] 李志晏、黃榮興, “飛行平台之最佳機構設計與動態分析”,1999,㆗

華大學碩士論文。

[9 ] 陳駿瑋、黃榮興,”飛行平台之動感模擬與系統研製”,1999,㆗華大學

碩士論文。

[10] 李志晏、黃榮興, “飛行平台之最佳機構設計與動態分析”,機械工程

研討會,P156~163,1999。

[11] 陳駿瑋、黃榮興,”飛行平台之動感模擬與系統研製”, 機械工程研討

會,P505~511,1999。

39 39

Page 49: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

[12] Do, W.Q.D.,and Yang, D.C.H.,”Inverse Dynamics Analysis and Simulation

of A Platform Type of Robot.”,Journal of Robotics

System,Vol.5,no.3,pp.209~227,1988

[13] M. A. Nahon and L. D. Reid ,’’Simulator Motion-Drive Algorithms: A

Designer’s Perspective’’ ,J. Guidance , Vol. 13 , No.2 , Marich-April,

p356~362,1990。

[14] R. S. Bray ’’A Study of Vertical Motion Requirements for Landing

Simulation’’ , Human Factors,1973,15 (6),561~568。

[15] J.A. Schroeder, ’’Evaluation of Simulation Motion Fidelity Criteria in the

Vertical and Directional Axes ’’, Journal of American Helicopter

Society,1996,44~57

[16]R. A. Hess and T. Malsbury ,’’Closed-loop Assessment of Flight Simulator’’,

J.Guidance,Vol.14 , No.1, Jan-Feb, 1991, 191~197。

[17] C. L. Lin and Y. H. Hsiao, “Adaptive feedforward control for disturbance torque

rejection in seeker stabilizing loop,” IEEE Trans. Contr. Syst. Tech., vol. 8, 2000,

in press.

[18]S. I. Mistry and S. S. Nair, “Identification and control experiments using neural

designs,” IEEE Contr. Syst. Mag., vol. 14, pp. 48-57, 1994.

[19]M. M. Gupta and D. H. Rao (Eds.) Neuro Control Systems, New York: IEEE Press,

1994.

[20]D. R. Seidl T. L. Reineking, and R. D. Lorenz, “Use of neural networks to identify

and compensate for friction in precision, position controlled mechanisms,” in Conf.

Rec. IEEE-IAS Annu. Meeting, Houston, TX, 1992, pp. 1937-1944.

[21]H. Du and S. S. Nair, “Identification of friction at low velocities using wavelet

basis function network,” in Proc. American Contr. Conf., Philadelphia,

40

Page 50: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

Pennsylvania, 1998, pp. 1918-1922.

[22]S. Limanond and J. Si, “Neural-network-based control design: an LMI approach,”

IEEE Trans. Neural Networks, vol. 9, pp. 1422-1429, 1998.

[23]I. Daubechise, “The wavelet transform, time-frequency localization and signal

analysis,” IEEE Trans. Inform. Theory, vol. 36, pp. 961-1005, 1990.

[24]J. Zhang, G. G. Walter, Y. Miao, and W. Lee, “Wavelet neural networks for function

learning,” IEEE Tran. Signal Processing, vol. 43, pp. 1485-1497, 1995.

[25]Q. Zhang and A. Benveniste, “Wavelet networks,” IEEE Trans. Neural Networks,

vol. 3, pp. 889-898, 1992.

[26]D. Katic and M. Vukobratovic, “Wavelet neural network approach for control of

non-contact and contact robotic tasks,” in Proc. IEEE Int. Symp. Intelligent

Control, Istanbul, Turkey, 1997, pp. 245-250.

[27]J. Xu, and D.W.C. Ho, “Adaptive wavelet networks for nonlinear system

identification,” in Proc. American Contr. Conf., 1999, pp. 3472-3473.

[28]G. Otten, T. J. A. de Vries, J. van Amerongen, A. M. Rankers, and E.W. Gaal,

“Linear motor motion control using a learning feedforward controller,” IEEE Trans.

Mechatronics, vol. 2, pp. 179-187, 1997.

[29]C. K. Chui, An Introduction to Wavelet, New York: Academic Press, 1992.

[30]SIMULINK: Writing S-Functions Reference Guide, Version 3.0, The Math Works,

Inc., 1997.

[31]詹玉麟,胡竹生,”快速熱處理之即時模擬器與控制系統”,國立交大電控

所碩士論文,2000。

[32]M. Banabanov, ”A Linux-based Real-Time Operating System”, New

41

Page 51: 逢 ㆙ 大 學 自動控制工程學系 畢業專題報告 空間迷向與動感平台 · ㆗文摘要 本專題之目的在於研製㆒套㆔桿六自由度旋轉平台之空間迷向機,利用㆔桿

Mexico Institute of Mining and Technology,1997.

[33]V. Yodaiken and M. Banabanov, “RTLinux Version Two”, New Mexico

Institute of Mining and Technology,1999.

[34] V. Yodaiken and M. Banabanov, “Real-Time Linux”, New Mexico Institute

of Mining and Technology,1996.

42