ˇ ´ vysoke ´ uc ˇen´ı technicke ´ v Praze Cesk e ´ Fakulta elektrotechnicka ˇr ˇen´ı Katedra me ˇ´ıdic´ı techniky Katedra r
Zobrazovaˇ c letov´ ych m´ od˚ u autopilotu Diplomov´ a pr´ ace
autor: Jiˇ r´ı Sk´ ala vedouc´ı: Doc. Ing. Zdislav Pech, CSc. term´ın odevzd´ an´ı: Leden 2007
i
ii
iii
Prohl´ aˇ sen´ı Prohlaˇsuji, ˇze jsem svou diplomovou pr´ aci vypracoval samostatnˇe a pouˇzil pouze podklady ( literaturu, projekty, SW atd.) uveden´e v pˇriloˇzen´em seznamu.
V Praze dne podpis
iv
Podˇ ekov´ an´ı Dˇekuji pˇredevˇs´ım vedouc´ımu m´e diplomov´e pr´ ace Doc. Ing. Zdislavu Pechovi CSc. za veden´ı, ˇ ep´ cenn´e rady a vˇenovan´ y ˇcas, d´ale Ing. Stˇ anu Kroupovi za cenn´e pˇripom´ınky a v neposledn´ı ˇradˇe chci podˇekovat sv´emu nejbliˇzˇs´ımu okol´ı za podporu po celou dobu studia.
v
Abstrakt Tato diplomov´ a pr´ ace se zab´ yv´ a n´ avrhem a realizac´ı programu pro simulaci letov´ ych m´od˚ u letounu Airbus A310. Program umoˇzn ˇuje simulaci vˇsech z´akladn´ıch m´od˚ u pro oba kan´ aly autopilotu. Ovl´ ad´ an´ı simul´ atoru je moˇzn´e jak prostˇrednictv´ım ovl´ adac´ı skˇr´ıˇ nky autopilotu FCU, tak aktivac´ı logick´ ych podm´ınek v logick´ ych s´ıt´ıch. O aktivn´ıch m´odech uˇzivatele informuje zobrazovaˇc m´od˚ u FMA. Letov´ a a navigaˇcn´ı situace je zobrazena na displej´ıch EFIS. V teoretick´e ˇc´asti pr´ ace je proveden rozbor syst´em˚ u automatick´eho ˇr´ızen´ı a logick´ ych s´ıt´ı. V praktick´e ˇc´asti je pˇribl´ıˇzen postup ˇreˇsen´ı v jazyce C#.
vi
Abstract The aim of this diploma thesis is to design and implement flight modes simulator of aircraft Airbus A310. Program allows simulation of all basic modes for both autopilots channels. User can actuate simulator by FCU - Flight Control Unit, or by checking logic signals in logic nets. User is informed about active modes by FMA - Flight Mode Anunciator. Flight and navigation situations are displayed on EFIS displays. Theoretical part of thesis involves analysis of flight control systems and logic nets. Consecution of software solution and its implementation in programming language C# is demonstrated in practical part.
OBSAH
vii
Obsah ´ 1 Uvod
1
2 Historie letadla Airbus A310
1
3 Syst´ emy automatick´ eho ˇ r´ızen´ı Airbusu A310 3.1 Automatick´ y syst´em ˇr´ızen´ı . . . . . . . . . . . 3.2 Uspoˇra´d´ an´ı ˇc´ast´ı AFS v pilotn´ı kabinˇe . . . . 3.3 Autopilot Airbusu A310 . . . . . . . . . . . . 3.3.1 Funkce autopilotu . . . . . . . . . . . 3.3.2 Reˇzimy autopilotu . . . . . . . . . . . 3.3.3 Obsluha autopilotu - FCU . . . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
2 2 2 3 3 4 4
4 Letov´ e m´ ody Airbusu A310 4.1 Zobrazovaˇc m´od˚ u . . . . . . . 4.2 F´ aze zapnut´ı zvolen´eho m´odu 4.3 Autopilot v reˇzimu CWS . . . 4.4 Autopilot v reˇzimu CMD . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
5 5 6 6 6
5 M´ ody pouˇ z´ıvan´ e pro pod´ eln´ y kan´ al autopilotu 5.1 V/S m´od . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1.1 Logick´e podm´ınky pro aktivaci V/S m´ odu . . . . 5.2 ALT m´ od . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2.1 Logick´e podm´ınky pro aktivaci ALT m´ odu . . . . 5.3 LVL/CH m´od . . . . . . . . . . . . . . . . . . . . . . . . 5.3.1 Logick´e podm´ınky pro aktivaci LVL/CH m´ odu . 5.4 PROFILE m´ od . . . . . . . . . . . . . . . . . . . . . . . 5.4.1 Logick´e podm´ınky pro aktivaci PROFILE m´ odu
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
7 7 7 9 9 10 11 12 12
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
6 M´ ody pouˇ z´ıvan´ e pro pˇ r´ıˇ cn´ y kan´ al autopilotu 6.1 HDG m´ od . . . . . . . . . . . . . . . . . . . . . . . . . . 6.1.1 Logick´e podm´ınky pro aktivaci HDG m´ odu . . . 6.2 HDG SEL m´ od . . . . . . . . . . . . . . . . . . . . . . . 6.2.1 Logick´e podm´ınky pro aktivaci HDG SEL m´ odu 6.3 NAV m´ od . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3.1 Logick´e podm´ınky pro aktivaci NAV m´ odu . . . 6.4 VOR m´ od . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.1 Logick´e podm´ınky pro aktivaci VOR m´ odu . . . 6.5 LOC m´od . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.1 Logick´e podm´ınky pro aktivaci LOC m´ odu . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
13 13 14 15 15 15 16 16 17 17 18
7 M´ ody pouˇ z´ıvan´ e pro oba kan´ aly autopilotu 7.1 GA m´ od . . . . . . . . . . . . . . . . . . . . . . . 7.1.1 Logick´e podm´ınky pro aktivaci GA m´ odu 7.2 TO m´od . . . . . . . . . . . . . . . . . . . . . . . 7.2.1 Logick´e podm´ınky pro aktivaci TO m´ odu 7.3 LAND m´ od . . . . . . . . . . . . . . . . . . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
19 19 19 20 20 21
. . . . .
. . . . .
. . . . .
. . . . .
OBSAH
viii 7.3.1
Logick´e podm´ınky pro aktivaci LAND m´ odu . . . . . . . . . . . . . . . . . .
22
8 Anal´ yza probl´ emu 23 8.1 Poˇzadavky na aplikaci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 8.2 N´ avrh zp˚ usobu ˇreˇsen´ı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 9 V´ ybˇ er vhodn´ eho software pro realizaci simul´ atoru 9.1 MATLAB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.2 MATLAB a C# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.2.1 Komunikace mezi C# a MATLABEM . . . . . . . . . . . . . . . 9.3 MATLAB WIZARD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.3.1 V´ yhody pouˇzit´ı programu MATLAB WIZARD ve spojen´ı se C# 9.4 Shrnut´ı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
24 24 24 24 25 25 25
10 Realizace simul´ atoru 10.1 Charakteristika objektovˇe orientovan´eho programov´ an´ı 10.2 PFD . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2.1 Double Buffering . . . . . . . . . . . . . . . . . 10.2.2 Struktura tˇr´ıdy PFD . . . . . . . . . . . . . . . 10.3 ND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.4 V´ ysledn´ a podoba EFIS displej˚ u . . . . . . . . . . . . . 10.5 FCU . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.5.1 Realizace vlastn´ıch ovl´ adac´ıch prvk˚ u . . . . . . 10.5.2 N´ avrh prvku Voliˇc . . . . . . . . . . . . . . . . 10.5.3 Tvorba prvku . . . . . . . . . . . . . . . . . . . 10.5.4 Testov´an´ı . . . . . . . . . . . . . . . . . . . . . 10.5.5 N´ avrh ostatn´ıch ovl´ adac´ıch prvk˚ u . . . . . . . 10.6 FMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.7 Simul´ ator logick´ ych s´ıt´ı . . . . . . . . . . . . . . . . . 10.7.1 Diskuze moˇzn´ ych ˇreˇsen´ı . . . . . . . . . . . . . 10.7.2 Pˇr´ıklad n´ avrhu hradla . . . . . . . . . . . . . . 10.7.3 N´ avrh bloku Delay . . . . . . . . . . . . . . . . 10.7.4 N´ avrh vstupn´ıho konektoru . . . . . . . . . . . 10.7.5 Ostatn´ı prvky . . . . . . . . . . . . . . . . . . . 10.7.6 Vyhodnocen´ı logick´e s´ıtˇe . . . . . . . . . . . . . 10.7.7 V´ ysledn´ a podoba logick´e s´ıtˇe . . . . . . . . . . 10.8 Shrnut´ı . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . .
26 26 26 26 27 28 29 30 30 30 30 33 33 34 35 35 35 37 38 39 40 41 41
11 Kinematika 11.1 M´ od V/S . . . . . . . . . . . . . . . . . . . . . . . . 11.2 M´ od ALT . . . . . . . . . . . . . . . . . . . . . . . . 11.3 M´ od HDG/SEL . . . . . . . . . . . . . . . . . . . . . 11.4 M´ od VOR . . . . . . . . . . . . . . . . . . . . . . . . 11.5 M´ od LAND . . . . . . . . . . . . . . . . . . . . . . . 11.6 Implementace kinematiky do prostˇred´ı Visual Studia 11.7 Shrnut´ı . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
42 42 43 45 46 48 50 51
. . . . . . .
´ U ˚ SEZNAM OBRAZK
ix
12 Architektura vytvoˇ ren´ eho programu 12.1 Ovl´ adac´ı panely . . . . . . . . . . . . 12.1.1 Implementace v programu . . 12.2 Logika . . . . . . . . . . . . . . . . . 12.2.1 Implementace v programu . . 12.3 Letadlo . . . . . . . . . . . . . . . . 12.3.1 Implementace v programu . . 12.4 EFIS . . . . . . . . . . . . . . . . . . 12.4.1 Implementace v programu . . 12.5 Ovl´ ad´ an´ı s´ıtˇe . . . . . . . . . . . . . 12.5.1 Implementace v programu . . 12.6 V´ ysledn´ y vzhled aplikace . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
52 52 52 52 53 53 53 53 53 53 53 54
13 Z´ avˇ er 55 ´ eˇsnost zadan´eho u 13.1 Uspˇ ´kolu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 14 N´ avrhy na navazuj´ıc´ı projekty 14.1 Simulace letu podle letov´eho pl´ anu . . . . . . . 14.2 Vyuˇzit´ı jazyku Java v prostˇred´ı Matlab . . . . 14.3 Simulace displej˚ u EFIS pro letoun Boeing B747 14.4 Autopilot pro letoun Boeing B747 . . . . . . . 14.5 Simulace displej˚ u ED letounu Airbus A310 . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
Reference A Pˇ r´ıloha - Ovl´ ad´ an´ı programu A.1 FCU . . . . . . . . . . . . . A.2 EFIS . . . . . . . . . . . . . A.3 NAVIGATION . . . . . . . A.4 EADI . . . . . . . . . . . . A.5 EHSI . . . . . . . . . . . . . A.6 Ovl´ ad´ an´ı s´ıtˇe . . . . . . . . A.7 Menu - Aplication . . . . . A.8 Menu - Logic . . . . . . . . A.9 Menu - Units . . . . . . . . A.10 Menu - Displays . . . . . . A.11 Menu - Help . . . . . . . . . A.12 Pˇr´ıklad simulace . . . . . .
56 56 56 56 56 56 57
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
58 58 58 59 60 60 61 61 61 61 62 62 62
B Pˇ r´ıloha - Instalace programu
63
C Pˇ r´ıloha - Obsah pˇ riloˇ zen´ eho CD
63
Seznam obr´ azk˚ u 1 2
Rozm´ıstˇen´ı ˇc´ast´ı AFS v pilotn´ı kabinˇe . . . . . . . . . . . . . . . . . . . . . . . . . . FCU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 4
´ U ˚ SEZNAM OBRAZK 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
Prim´ arn´ı letov´ y displej . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ’ Logick´ a s´ıt pro m´ od V/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Logick´ a s´ıt’ pro m´ od ALT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Logick´ a s´ıt’ pro m´ od LVL/CH . . . . . . . . . . . . . . . . . . . . . . . . . . . . ’ Logick´ a s´ıt pro m´ od PROFILE . . . . . . . . . . . . . . . . . . . . . . . . . . . Logick´ a s´ıt’ pro m´ od HDG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Logick´ a s´ıt’ pro m´ od HDG SEL . . . . . . . . . . . . . . . . . . . . . . . . . . . Logick´a s´ıt’ pro m´ od NAV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Logick´a s´ıt’ pro m´ od VOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Logick´a s´ıt’ pro m´ od LOC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Logick´a s´ıt’ pro m´ od GA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ’ Logick´a s´ıt pro m´ od To . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Logick´a s´ıt’ pro m´ od LAND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . N´ astin ˇreˇsen´ı v prvn´ım pˇribl´ıˇzen´ı . . . . . . . . . . . . . . . . . . . . . . . . . . Kreslen´ı metodou Double Buffering . . . . . . . . . . . . . . . . . . . . . . . . . V´ ysledn´ a podoba PFD displeje . . . . . . . . . . . . . . . . . . . . . . . . . . . V´ ysledn´a podoba ND displeje . . . . . . . . . . . . . . . . . . . . . . . . . . . . V´ ysledn´ a podoba voliˇce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V´ ysledn´ a podoba FCU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Hradlo OR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Blok Delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Vstupn´ı konektor s popisem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Hradlo And . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Negace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tlaˇc´ıtko . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V´ ystupn´ı konektor s popisem . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nakreslen´ı s´ıtˇe v n´ avrh´ aˇri Visual Studia 2003 . . . . . . . . . . . . . . . . . . . Vzhled s´ıtˇe po spuˇstˇen´ı programu . . . . . . . . . . . . . . . . . . . . . . . . . . Simulinkov´e sch´ema stabilizace vertik´aln´ı rychlosti . . . . . . . . . . . . . . . . Stabilizace vertik´ aln´ı rychlosti - odezva na skok . . . . . . . . . . . . . . . . . . Pr˚ ubˇeh v´ yˇsky pˇri konstantn´ı vertik´ aln´ı rychlosti . . . . . . . . . . . . . . . . . . Simulinkov´e sch´ema stabilizace barometrick´e v´ yˇsky . . . . . . . . . . . . . . . . Stabilizace barometricke vysky . . . . . . . . . . . . . . . . . . . . . . . . . . . Pr˚ ubˇeh vertik´ aln´ı rychlosti pˇri stabilizaci v´ yˇsky . . . . . . . . . . . . . . . . . . Sch´ema koordinovan´eho stranov´eho pohybu . . . . . . . . . . . . . . . . . . . . Pˇrechodov´e charakteristiky v´ ystup˚ u koordinovan´eho stranov´eho pohybu . . . . Simulinkov´e sch´ema letu ˇr´ızen´e u ´hlovou odchylkou od trati . . . . . . . . . . . Pˇrechodov´e charakteristiky pro let v m´odu VOR pro vzd´ alenost letadla 5000 m Pˇrechodov´e charakteristiky pro let v m´odu VOR pro vzd´ alenost letadla 1000 m Let v sestupov´e rovinˇe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Detail podrovn´ an´ı . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pˇrenosov´ a funkce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Konfigurace Real Time Workshop . . . . . . . . . . . . . . . . . . . . . . . . . . Vytv´ aˇren´ı assembly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Zpr´ ava o uspˇeˇsn´em vygenerov´ an´ı .Net assembly . . . . . . . . . . . . . . . . . . V´ ysledn´e blokov´e sch´ema navrˇzen´eho syst´emu . . . . . . . . . . . . . . . . . . . V´ ysledn´ y vzhled aplikace - pˇr´ıklad simulace pˇrepnut´ı m´odu HDG SEL do m´ odu
x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NAV
5 7 9 10 12 13 15 15 16 17 19 20 21 23 27 29 29 33 34 35 38 39 39 39 39 39 41 41 42 43 43 44 44 45 45 46 47 47 48 48 49 50 50 51 51 52 54
´ U ˚ SEZNAM OBRAZK 50 51 52 53 54 55 56
FCU panel . . . . . . . . . . . . EFIS control panel . . . . . . . . VOR/ILS control panel . . . . . Ovl´ ad´ an´ı EADI . . . . . . . . . . Ovl´ ad´ an´ı EHSI . . . . . . . . . . Logick´a s´ıt’ m´odu ALT . . . . . . Simulace letu v m´ odu PROFILE
xi . . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
58 58 59 60 60 61 62
1
1
´ UVOD
1
´ Uvod
V dneˇsn´ıch dopravn´ıch letadlech je snaha plnˇe, nebo alespoˇ n ˇc´asteˇcnˇe automatizovat jejich ˇr´ızen´ı. Pilot uˇz se nespol´eh´ a pouze na sv´e pilotn´ı schopnosti, ale hlavnˇe na techniku, kterou je v kabinˇe letounu obklopen. V nejmodernˇeji vybaven´ ych dopravn´ıch letadlech je pilotova ˇcinnost omezena v podstatˇe na kontrolu a provˇerku ˇr´ıd´ıc´ıch syst´em˚ u, pˇr´ıpadnˇe na drobn´e z´asahy pˇri opravˇe letov´e trasy pomoc´ı kl´ avesnice palubn´ıho poˇc´ıtaˇce. Klasick´ y sloupek ˇr´ızen´ı byl jiˇz nahrazen syst´emem umˇel´eho citu - joystickem. Hlavn´ı slovo pˇri ˇr´ızen´ı letadla m´ a syst´em ˇr´ızen´ı letu - Flight Managment System. Tento syst´em bˇehem letu pˇrij´ım´a data ze vˇsech mˇeˇric´ıch syst´em˚ u, porovn´ av´ a je s daty z´ıskan´ ymi z vlastn´ı datab´ aze yˇskov´e a a na z´akladˇe t´eto anal´ yzy prostˇrednictv´ım autopilotu ˇr´ıd´ı let letadla od startu, pˇres v´ stranov´e man´evry aˇz po pˇriveden´ı letadla do pˇribiˇzovac´ıho prostoru vˇcetnˇe koneˇcn´eho pˇribl´ıˇzen´ı pˇred pˇrist´ an´ım, podrovn´ an´ı, pˇr´ıpadnˇe i dosednut´ı a v´ ybˇehu letadla. Pilot m˚ uˇze do ˇr´ızen´ı zasahovat pomoc´ı sloupku ˇr´ızen´ı, nebo pomoc´ı voliˇc˚ u a tlaˇc´ıtek na ovl´ adac´ı skˇr´ıˇ nce autopilotu - Flight Control Unit. V prvn´ım pˇr´ıpadˇe jsou vyhodnoceny smˇer a s´ıla p˚ usob´ıc´ı na sloupek ˇr´ızen´ı a n´ aslednˇe jsou vygenerov´ any a pˇrivedeny na vstup poˇc´ıtaˇc˚ u autopilotu pˇr´ısluˇsn´e sign´ aly. V pˇr´ıpadˇe druh´em se aktivuj´ı nebo deaktivuj´ı m´ody pro pˇr´ıˇcn´ y a pod´eln´ y kan´ al autopilotu. ych postup˚ u a podl´ehaj´ı Aktivace a deaktivace jednotliv´ ych m´od˚ u se ˇr´ıd´ı podle pravidel - letov´ splnˇen´ı ˇrady logick´ ych podm´ınek. V n´ asleduj´ıc´ım textu diplomov´e pr´ ace popisuji pr´ avˇe tyto logick´e podm´ınky a jejich implementaci do simulaˇcn´ıho programu. Vyvinut´ y simul´ ator by mˇel uˇzivateli pomoci pochopit ˇcinnost autopilotu bez nutnosti studovat mnoˇzstv´ı dalˇs´ı, mnohdy nedostupn´e literatury.
2
Historie letadla Airbus A310
Obchodn´ı ne´ uspˇechy pˇri prodeji mnoh´ ych evropsk´ ych dopravn´ıch typ˚ u letadel v 50. a 60. letech 20.stolet´ı pˇrivedly pˇredn´ı pr˚ umyslov´e z´apadoevropsk´e zemˇe k dohodˇe o zaloˇzen´ı sdruˇzen´ı Airbus Industrie, jeˇz se mˇelo ˇcasem st´at rovnocenn´ ym partnerem americk´ ych v´ yrobc˚ u letadel. Zpoˇc´atku se na jeho ˇcinnsoti pod´ılely pˇredevˇs´ım Francie a SRN, z´ ahy se vˇsak stala rovnocenn´ ym ˇclenem tak´e ˇ Velk´ a Brit´ anie. Sv˚ uj pod´ıl v konsorciu pˇrijalo t´eˇz Spanˇ elsko. Prvn´ı realizovan´ y projekt dostal oznaˇcen´ı A300. Stalo se j´ım dvoumotorov´e dolnokˇr´ıdl´e letadlo tˇr´ıdy aerobus se ˇsirok´ ym trupem a proudov´ ymi pohonn´ ymi jednotkami o velk´em obtokov´em pomˇeru. Rozmˇery A-300 b´ yvaj´ı aˇz na mal´e v´ yjimky 53,32 m (d´elka) a 44,85 m (rozpˇet´ı). Letadlo je schopno dos´ahnout cestovn´ı rychlosti 841 km/h a plnˇe naloˇzeno ul´etne aˇz 6 245 km. Poprv´e vzl´etlo 28.10.1972. Letadlo Airbus A310 bylo odvozeno od sv´eho pˇredch˚ udce A300. Oproti nˇemu m´a vˇsak kratˇs´ı trup (46,66 m) a upraven´e kˇr´ıdlo o menˇs´ım rozpˇet´ı (43,90 m). Mnoho stavebn´ıch d´ıl˚ u je ovˇsem shodn´ ych. To se stalo v´ yhodou z hlediska v´ yroby a tak´e u ´drˇzby letadel u tˇech spoleˇcnost´ı kter´e provozuj´ı oba typy. Dolnoploˇsn´ık se dv´ema proudov´ ymi pohonn´ ymi jednotkami je dod´ av´ an ve dvou z´akladn´ıch poveden´ıch. Verze A310-200 je urˇcena pro stˇredn´ı linky. S pln´ ym n´ akladem m˚ uˇze cestovn´ı rychlost´ı pˇrekonat vzd´ alenost 5 100 km. V´ ykonnˇejˇs´ı varianta A310-300 reprezentuje d´ alkov´ y letoun schopn´ y pˇreletu oce´an˚ u. Dolet tohoto typu s 280ti pasaˇz´ery na palubˇe je 6 950 km. Obvyklejˇs´ı je vˇsak varianta s 218ti m´ısty. Ta zvyˇsuje jak pohodl´ı cestuj´ıc´ıch, tak dolet aˇz na 8 350 km. Vzhledem k tomu, ˇze letadla Airbus A310 jsou dvoumotorov´e stroje a v´ ypadek jednoho z motor˚ u by mohl ohrozit bezpeˇcnost letu, b´ yvaj´ı jejich letov´e trasy upraveny tak, aby nejvˇetˇs´ı vzd´ alenost od z´ aloˇzn´ıho letiˇstˇe nepˇses´ahla 120 minut letu. Airbus A310 poprv´e vzl´etl 3. dubna 1982 z letiˇstˇe v Tolouse.
3
´ ´ ˇ ´IZEN´I AIRBUSU A310 SYSTEMY AUTOMATICKEHO R
3
2
Syst´ emy automatick´ eho ˇ r´ızen´ı Airbusu A310
3.1
Automatick´ y syst´ em ˇ r´ızen´ı
Airbus A310 je vybaven dvˇema digit´ aln´ımi automatick´ ymi syst´emy ˇr´ızen´ı AFS, kter´e ˇr´ıd´ı pohyb letadla kolem pˇr´ıˇcn´e, pod´eln´e a svisl´e osy, d´ale rychlost a tah motor˚ u. Tento syst´em je sloˇzen ze ˇctyˇr podyst´em˚ u. 1. Autopilot - AP, letov´ y direktor - FD Hlavn´ı ˇc´ast´ı tohoto podsyst´emu jsou dva poˇc´ıtaˇce ˇr´ızen´ı letu FCC, obsluha autopilotu a servomotory. 2. Poˇ c´ıtaˇ c pro zv´ yˇ sen´ı bezpeˇ cnosti letu - FAC Tento syst´em obsahuje tlumiˇc boˇcn´ıch kmit˚ u, trimov´ an´ı v´ yˇskovky a stabiliz´ atoru a prostˇredky pro ochranu letov´e ob´ alky pomoc´ı u ´hlu n´ abˇehu. 3. Automat tahu motoru - ATS Z´akladn´ımi ˇcl´anky ATS jsou poˇc´ıtaˇce pro ˇr´ızen´ı tahu motoru TCC. Ty maj´ı za u ´kol na z´ akladˇe zmˇeˇren´e venkovn´ı teploty a poˇzadavk˚ u autopilotu stanovit potˇrebn´ y tah motor˚ u a zobrazovat jejich parametry. 4. Syst´ em pro sledov´ an´ı vˇ sech ˇ c´ ast´ı AFS Slouˇz´ı nejen pro potˇreby u ´drˇzby, ale t´eˇz obsahuje informace o ˇcinnosti AFS.
3.2
Uspoˇ r´ ad´ an´ı ˇ c´ ast´ı AFS v pilotn´ı kabinˇ e
Obr´ azek 1: Rozm´ıstˇen´ı ˇc´ast´ı AFS v pilotn´ı kabinˇe
3
´ ´ ˇ ´IZEN´I AIRBUSU A310 SYSTEMY AUTOMATICKEHO R
3
• FCU - Flight Control Unit Zajiˇst’uje komunikaci mezi pos´adkou a autopilotem za u ´ˇcelem jeho obsluhy. • EFIS control panel Slouˇz´ı pro volbu m´ od˚ u zobrazen´ ych na navigaˇcn´ım displeji ND • EFIS secondary control panel Sekund´ arn´ı panel pro pˇrep´ın´ an´ı VOR/NAV/ILS reˇzim˚ u a pro nastaven´ı jasu na PFD a ND • FAC, Y/D, ATS engage unit Panel vyp´ınaˇc˚ u pro trimov´ an´ı v´ yˇskovky, tlumiˇce boˇcn´ıch kmit˚ u, automat tahu motoru ATS • PFD - Primary Flight Display Zobrazuje umˇel´ y horizont, povelov´ a bˇrevna, m´ ody autopilotu a automatu tahu motoru. • ND - Navigation Display Spad´ a do skupiny navigaˇcn´ıch pˇr´ıstroj˚ u. Z´ aroveˇ n slouˇz´ı pro zobrazen´ı dat palubn´ıho radaru a je t´eˇz grafick´ ym v´ ystupem letov´eho pl´ anu FMS. • Control Wheel Sloupek ˇr´ızen´ı. Na sloupku se t´eˇz nach´azej´ı tlaˇc´ıtko rychl´eho odpojen´ı autopilotu a pˇrep´ınaˇc pro trimov´ an´ı v´ yˇskovky. • GO levers Tyto p´ aˇcky se nach´azej´ı na plynov´ ych p´ ak´ ach. GO je pouˇz´ıv´ ana pro zapnut´ı m´od˚ u TAKE OFF a GO AROUND D´ ale je zde tlaˇc´ıtko rychl´eho odpojen´ı automatu tahu motoru. • VOR/ILS Control panel Panel pro obsluhu navigaˇcn´ıch syst´em˚ u VOR a ILS s voliˇci frekvenc´ı a kursu.
3.3 3.3.1
Autopilot Airbusu A310 Funkce autopilotu
1. Stabilizace letadla kolem centr´ aln´ıho bodu gravitace, ˇr´ızen´ı letadla prostˇrednictv´ım z´akladn´ıch m´od˚ u V/S - Vertical Speed a HDG - Heading. ˇ ızen´ı letadla pomoc´ı dalˇs´ıch m´od˚ 2. R´ u: ALT - Altitude, SPD/MACH - Speed/Mach, P.ALT Profile Altitude, P.CLB - Profile Climb, P.DES - Profile Descent, SRS - Speed Reference System, HDG/S - Heading Selector, NAV - Navigation, VOR, RWY - Runway, GA - Go Around. ˇ ızen´ı letadla ve f´ 3. R´ azi zachycen´ı m´od˚ u. ALT* - Altitude Capture, G/S* - Glide Slope Capture, NAV* - Navigation Capture, VOR* - Vor Capture, LOC* - Loc Capture. 4. Automatick´e pˇrist´ an´ı s v´ yjezdem na pˇrist´ avac´ı dr´ ahu. LOC - Localizer, G/S - Glide Slope, LAND, FLARE, ROLL OUT.
3
´ ´ ˇ ´IZEN´I AIRBUSU A310 SYSTEMY AUTOMATICKEHO R
3.3.2
4
Reˇ zimy autopilotu
Autopilot Airbusu A310 m˚ uˇze pracovat ve tˇrech reˇzimech. 1. FD - Flight Director Tento reˇzim AP dovoluje pilot˚ um ˇr´ıdit letadlo ruˇcnˇe podle povelov´ ych bˇreven zobrazen´ ych na ˇ PFD. Aktivuje se ve chv´ıli, kdy jsou nap´ ajeny poˇc´ıtaˇce autopilotu. R´ıdic´ı sign´ aly pro povelov´ a bˇrevna pˇrich´ azej´ı z poˇc´ıtaˇc˚ u autopilotu. 2. CWS - Control Wheel Stearing V tomto reˇzimu autopilot udrˇzuje polohu sklonu PITCH ATTITUDE a polohu n´ aklonu BANK ANGLE letadla. V z´ avislosti na zvolen´ ych m´odech autopilotu m˚ uˇze pilot tyto referenˇcn´ı hodnoty mˇenit prostˇrednictv´ım sloupku ˇr´ızen´ı. 3. CMD - Command V tomto reˇzimu jsou autopilotem udrˇzov´any hodnoty parametr˚ u zvolen´ ych pos´adkou na FCU v z´avislosti na m´ odech pro oba kan´ aly AP. Hodnoty tˇechto parametr˚ u (napˇr. kurs, vertik´ aln´ı rychlost) jsou vyhodnoceny v poˇc´ıtaˇc´ıch AP a jako analogov´e sign´aly pˇrivedeny na hydraulick´e aln´ı sign´ aly jsou pˇrivedeny na povelov´ a bˇrevna PFD. motory, kter´e ovl´adaj´ı ˇr´ıdic´ı plochy. Digit´ 3.3.3
Obsluha autopilotu - FCU
Obr´ azek 2: FCU • P´ aˇcky zapnut´ı/vypnut´ı ON/OFF: Pˇripojen´ı obsluhy autopilotu, dynamometrick´ ych tyˇc´ı a servomotor˚ u. • Tlaˇc´ıtko volby reˇzimu CWS/CMD: Pˇrep´ın´ an´ı mezi reˇzimem CWS a CMD viz. v´ yˇse. • Voliˇc rychlosti SPD/MACH: Zvolen´ı rychlosti letadla pro m´ od SPD/MACH. • Voliˇc v´ yˇsky ALT SEL: Umoˇznˇ nuje zvolit v´ yˇsku pro m´ ody pod´eln´eho kan´ alu autopilotu. • Voliˇc kursu HDG SEL: Umoˇzn ˇuje zvolit kurs pro m´ ody pˇr´ıˇcn´eho kan´ alu. • Voliˇc vertik´ aln´ı rychlosti V/S: Volba vertik´ aln´ı rychlosti pro m´ od V/S. • Tlaˇc´ıtko A/THR: Pˇripojen´ı/odpojen´ı automatu tahu motoru ATS k autopilotu. • Tlaˇc´ıtko ALT HLD: Aktivace/deaktivace m´odu ALT v pod´eln´em kan´alu. Stabilizace barometrick´e v´ yˇsky.
4
´ MODY ´ LETOVE AIRBUSU A310
5
• Tlaˇc´ıtko LVL/CH: Aktivace/deaktivace m´ odu LVL/CH v pod´eln´em kan´alu. Zmˇena letov´e hladiny. • Tlaˇc´ıtko PROFILE: Aktivace/deaktivace m´odu PROFILE v pod´eln´em kan´alu, pˇripojen´ı autopilotu a automatu tahu motoru k syst´emu ˇr´ızen´ı letu FMS. • Tlaˇc´ıtko HDG/SEL: Aktivace/deaktivace m´ odu HDG SEL pro pˇr´ıˇcn´ y kan´ al, z´ısk´ an´ı a udrˇzen´ı zvolen´eho kursu. • Tlaˇc´ıtko NAV: Aktivace/deaktivace m´odu NAV pro pˇr´ıˇcn´ y kan´ al. Pˇripojen´ı ˇr´ızen´ı automatu tahu motoru a pˇr´ıˇcn´eho kan´ alu autopilotu k FMS. • Tlaˇc´ıtko V/L: Aktivace/deaktivace m´odu VOR nebo LOC pro pˇr´ıˇcn´ y kan´ al. Letadlo je ˇr´ızeno podle paprsk˚ u z maj´ ak˚ u VOR a LOC. odu LAND pro oba kan´ aly autopilotu souˇcasnˇe, au• Tlaˇc´ıtko LAND: Aktivace/deaktivace m´ tomatick´e pˇrist´ an´ı letadla.
4 4.1
Letov´ e m´ ody Airbusu A310 Zobrazovaˇ c m´ od˚ u
Obr´ azek 3: Prim´ arn´ı letov´ y displej Zobrazovaˇc m´od˚ u FMA se nach´ az´ı v horn´ı ˇc´asti prim´ arn´ıho letov´eho displeje. V obr´ azku je vyznaˇcen ˇcervenou barvou. Jeho u ´kolem je informovat pos´ adku o stavu zapnut´ı m´od˚ u. Prostor pro zobrazen´ı je rozdˇelen na pˇet z´on. Kaˇzd´ a z´ona obsahuje dva ´ra´dky. Spodn´ı ˇra´dek zobrazuje modˇre symboly m´ od˚ u kter´e jsou v pˇr´ıpravˇe, vrchn´ı ˇra´dek zobrazuje zelenˇe symboly aktivn´ıch m´od˚ u.
4
´ MODY ´ LETOVE AIRBUSU A310
6
1. Z´ona 1: Symboly m´ od˚ u pro automat tahu motoru ATS. SPD/MACH, P.SPD/MACH, THR/L, RETARD. 2. Z´ ona 2: Symboly m´ od˚ u pro pod´eln´ y kan´ al. V/S, ALT*, ALT, G/S*, G/S, SPD, SRS, P.CLB, P.DES, P.ALT. 3. Z´ ona 3: Symboly m´ od˚ u pro pˇr´ıˇcn´ y kan´ al. HDG, HDG/S, NAV*, NAV, LOC*, LOC, VOR*, VOR, RWY. 4. Z´ ona 2,3: Zobrazen´ı symbol˚ u spoleˇcn´ ych pro oba kan´aly autopilotu. LAND, FLARE, ROLL OUT. 5. Z´ona 4: Symbol zvolen´e kategorie autopilotu - (kategorie I - III). 6. Z´ ona 5: Stav zapnut´ı autopilotu/povelov´eho syst´emu. FD1, FD2, CWS1, CWS2, CMD1, CMD2.
4.2
F´ aze zapnut´ı zvolen´ eho m´ odu
M´ od se zap´ın´ a stisknut´ım pˇr´ısluˇsn´eho tlaˇc´ıtka, nebo vytaˇzen´ım voliˇce na FCU. Zapnut´ı m´odu podl´eh´a splnˇen´ı ˇrady logick´ ych podm´ınek. Aktivn´ı m´od je indikov´ an na FMA rozsv´ıcen´ım pˇr´ısluˇsn´eho symbolu a na FCU rozsv´ıcen´ım kontrolky vestavˇen´e v tlaˇc´ıtku. Aktivace m´ odu se provede aˇz ve tˇrech po sobˇe jdouc´ıch f´ az´ıch. 1. Pˇ r´ıpravn´ a f´ aze - ARM: V t´eto f´ azi prob´ıh´ a kontrola nastaven´ı voliˇc˚ u na FCU a parametr˚ u letu letadla. FMA zobrazuje symbol m´ odu modrou barvou ve druh´e ˇra´dce. 2. F´ aze zachycen´ı - CPT: Vypnut´ı pˇredchoz´ıho aktivn´ıho m´ odu. FMA zobrazuje symbol m´ odu s hvˇezdiˇckou zelenˇe v prvn´ı ˇra´dce. 3. F´ aze veden´ı - TRK: Zvolen´ y m´od je aktivn´ı, symbol m´ odu je na FMA zobrazen zelenˇe ve druh´e ˇra´dce.
4.3
Autopilot v reˇ zimu CWS
V tomto reˇzimu autopilot udrˇzuje aktu´ aln´ı u ´hly n´ aklonu a sklonu letadla. Pilot m˚ uˇze tyto hodnoty mˇenit pomoc´ı sloupku ˇr´ızen´ı. V tomto reˇzimu nen´ı moˇzn´ a ˇcinnost obou autopilot˚ u souˇcasnˇe. Reˇzim CWS se zap´ın´ a automaticky pˇri zapnut´ı jednoho ze dvou autopilot˚ u. Pˇrechod mezi reˇzimy CWS a CMD se prov´ ad´ı stiskem tlaˇc´ıtka CWS/CMD na FCU.
4.4
Autopilot v reˇ zimu CMD
V tomto reˇzimu je letadlo ˇr´ızeno ve tˇrech os´ach (sklon, n´ aklon, zat´ aˇcka). V kan´ alu sklonu PITCH AXIS je letadlo ˇr´ızeno prostˇrednictv´ım m´odu zvolen´eho pro pˇr´ıˇcn´ y kan´ al autopilotu. V kan´ alu n´ aklonu ROLL AXIS podle m´ odu pro pod´eln´ y kan´ al. Zapnut´ı CMD se prov´ ad´ı na zemi - bez spuˇstˇen´ ych motor˚ u, jen pro potˇreby kontroly ˇcinnosti, ve vzduchu - 4 sekundy po odlehˇcen´ı podvozku. V reˇzimu CMD nen´ı moˇzn´ a ˇcinnost obou autopilot˚ u souˇcasnˇe, s v´ yjimkou m´ od˚ u GO AROUND a LAND.
5
´ ˇ´IVANE ´ PRO PODELN ´ Y ´ KANAL ´ AUTOPILOTU MODY POUZ
5
7
M´ ody pouˇ z´ıvan´ e pro pod´ eln´ y kan´ al autopilotu
5.1
V/S m´ od
Je z´akladn´ım m´odem pro pod´eln´ y kan´ al autopilotu a prov´ ad´ı n´ asleduj´ıc´ı ˇcinnosti. • Udrˇzuje zvolenou hodnotu vertik´ aln´ı rychlosti. • Umoˇzn ˇuje zmˇenu vertik´ aln´ı rychlosti • Zap´ın´ a m´od SPD/MACH pro automat tahu motoru.
Obr´ azek 4: Logick´a s´ıt’ pro m´ od V/S
5.1.1
Logick´ e podm´ınky pro aktivaci V/S m´ odu
• 1,3,7 - Podm´ınky pro ˇcinnost jednotliv´ ych m´od˚ u pod´eln´eho kan´ alu AP. Jejich nesplnˇen´ı m´a za n´ asledek pˇrechod do z´akladn´ıho m´ odu V/S. Potvrzen´ı tˇechto podm´ınek zajiˇst’uje FCC.
5
´ ˇ´IVANE ´ PRO PODELN ´ Y ´ KANAL ´ AUTOPILOTU MODY POUZ
8
• 2,4,8 - Logick´e podm´ınky zapnut´ı/vypnut´ı zvolen´ ych m´od˚ u. Prvn´ı stisknut´ı tlaˇc´ıtka znamen´ a zapnut´ı m´odu, druh´e stisknut´ı vypnut´ı pr´ avˇe aktivn´ıho m´ odu. Potvrzen´ı o zapnut´ı/vypnut´ı pˇrich´ az´ı z FCC. • 5 - Zapnut´ı V/S m´ odu vytaˇzen´ım voliˇce V/S na FCU lze prov´est ve vˇsech f´az´ıch letu mimo f´ aze m´odu LAND TRACK. • 6 - Zmˇena letov´e hladiny pˇri aktivn´ım ALT*. Pokud nejsou splnˇeny podm´ınky pro zmˇenu, dojde k zachycen´ı p˚ uvodn´ı v´ yˇsky. • 9 - Zapnuto nap´ ajen´ı FCC a vystavena inerce, spolu s aktivn´ım V/S m´ odem je v pˇr´ıpravˇe ARM nˇekter´ y z m´od˚ u pro pod´eln´ y kan´ al. AFS nen´ı v konfiguraci kdy jsou oba povelov´e syst´emy FD vypnuty nebo oba autopiloty AP v CMD reˇzimu. Nen´ı zvolen m´od TAKE OFF. ale je vypnut m´ od LAND • 10 - Je aktivn´ı m´od zachycen´ı, nebo veden´ı po sestupov´em paprsku, d´ a z´aroveˇ n nen´ı aktivn´ı jin´ y m´od pro ˇr´ızen´ı pod´eln´eho kan´ alu.
5
´ ˇ´IVANE ´ PRO PODELN ´ Y ´ KANAL ´ AUTOPILOTU MODY POUZ
5.2
9
ALT m´ od
• Pro vertik´ aln´ı rychlost V/S = 0 udrˇzuje letovou hladinu, kterou m´ a letadlo pˇri zapnut´ı tohoto m´odu. • Pro vertik´ aln´ı rychlost V/S = 0 nejprve letadlo vyrovn´ a do horizont´ aln´ıho letu a takto dosaˇzenou letovou hladinu udrˇzuje. • Zapnut´ım ALT m´odu AP aktivuje automatick´e zapnut´ı m´odu SPD/MACH pro automat tahu motoru ATS.
Obr´ azek 5: Logick´ a s´ıt’ pro m´ od ALT
5.2.1
Logick´ e podm´ınky pro aktivaci ALT m´ odu
• 1 - Aktivn´ı m´od ALT* a splnˇeny podm´ınky pro zapnut´ı m´odu ALT, automatick´e pˇrepnut´ı do m´odu ALT. • 2 - Nen´ı aktivn´ı m´od ALT, nen´ı aktivn´ı f´ aze pˇrist´ an´ı LAND TRK. • 3 - Je aktivn´ı PROFILE m´ od, vytaˇzen´ım voliˇce rychlosti SPD/MACH na FCU se zap´ın´ a m´od ALT jako doprovodn´ y m´od k m´ odu SPD pro automat tahu motoru ATS. • 4 - Oba povelov´e syst´emy nejsou vypnuty, oba autopiloty nejsou zapnuty v CMD m´ odu.
5
´ ˇ´IVANE ´ PRO PODELN ´ Y ´ KANAL ´ AUTOPILOTU MODY POUZ
5.3
10
LVL/CH m´ od
• Dovoluje prov´est zmˇenu letov´e hladiny s minim´ aln´ım z´asahem pos´adky. • Autopilot zap´ın´ a m´od pro stabilizaci rychlosti, automat tahu motoru zap´ın´ a m´od THR pro udrˇzen´ı a zv´ yˇsen´ı tahov´eho limitu pro stoup´ an´ı, nebo m´ od RETARD pro sn´ıˇzen´ı tahu motoru pˇri kles´ an´ı. • LVL/CH m´od je chr´ anˇen proti pˇrekroˇcen´ı maxim´aln´ı rychlosti pˇri kles´ an´ı a proti minim´ aln´ı rychlosti pˇri stoup´ an´ı. Tato ochrana je taky pouˇzita pro m´ ody PROFILE, SRS a GO AROUND.
Obr´ azek 6: Logick´ a s´ıt’ pro m´ od LVL/CH
5
´ ˇ´IVANE ´ PRO PODELN ´ Y ´ KANAL ´ AUTOPILOTU MODY POUZ
5.3.1
11
Logick´ e podm´ınky pro aktivaci LVL/CH m´ odu
• 1 - Stisknuto tlaˇc´ıtko LVL/CH, nejsou aktivn´ı m´ody SPD/MACH, ALT*, LAND TRK. • 2 - Nen´ı aktivn´ı m´od PROFILE. Na FCU je vytaˇzen´ım voliˇce v´ yˇsky potvrzena nov´ a letov´ a hladina. • 3 - Je aktivn´ı m´od PROFILE pro stoup´ an´ı P.CLB nebo P.DES pro kles´ an´ı. Vytaˇzen voliˇc rychlosti na FCU. • 4 - Splnˇeny podm´ınky pro zapnut´ı ALT* m´odu. Tento m´ od n´ asleduje automaticky po LVL/CH m´odu. Jedn´ a se o pˇrechodovou f´ azi pro dosaˇzen´ı zvolen´e letov´e hladiny. • 5 - Je aktivn´ı m´od V/S a dosaˇzena mezn´ı dopˇredn´ a rychlost letadla, sign´ al proximity detector (sn´ımaˇc stlaˇcen´ı/nestlaˇcen´ı podvozku). • 6 - Oba autopiloty nejsou zapnuty v CMD reˇzimu, oba povelov´e syst´emy nejsou vypnuty. Aktivn´ı m´od GO AROUND a m´ od TAKE OFF.
5
´ ˇ´IVANE ´ PRO PODELN ´ Y ´ KANAL ´ AUTOPILOTU MODY POUZ
5.4
12
PROFILE m´ od
• Dovoluje pˇripojen´ı autopilotu a automatu tahu motoru k FMS. • Autopilot zap´ın´ a ˇr´ızen´ı letadla v pod´eln´em kan´alu. Na z´ akladˇe informac´ı z datab´ aze FMS, m˚ uˇze b´ yt aktivn´ı jeden z tˇechto tˇr´ı subm´ od˚ u: P.ALT, P.CLB, P.DES. Kaˇzd´ y z tˇechto subm´od˚ u m´a f´ azi pˇr´ıpravnou a aktivn´ı. • Displeje zobrazuj´ıc´ı hodnoty SPD a V/S na FCU zobrazuj´ı pouze ˇc´arky (vypnut´ı ˇr´ızen´ı pod´eln´eho kan´ alu prostˇrednictv´ım povel˚ u z FCU). • Automat tahu motoru ATS zap´ın´ a v z´avislosti na aktivn´ım subm´ odu autopilotu pˇr´ısluˇsn´ y m´od pro dosaˇzen´ı tahov´eho limitu.
Obr´ azek 7: Logick´a s´ıt’ pro m´ od PROFILE
5.4.1
Logick´ e podm´ınky pro aktivaci PROFILE m´ odu
• 1 - Stisknut´ı tlaˇc´ıtka PROFILE na FCU, m´ od PROFILE nesm´ı b´ yt aktivn´ı nebo v pˇr´ıpravˇe, nen´ı aktivn´ı m´od LAND TRK, vˇsechny informace z FCC jsou v poˇra´dku. • 2 - Splnˇeny vˇsechny podm´ınky pro aktivaci m´ odu PROFILE. • 3 - Sign´ al z FMC pro stabilizaci v´ yˇsky (altitude) • 4 - Sign´ al z FMC pro stoup´ an´ı (climb) • 5 - Sign´ al z FMC pro kles´ an´ı (descent)
6
´ ˇ´IVANE ´ PRO PR ˇ ´ICN ˇ Y ´ KANAL ´ AUTOPILOTU MODY POUZ
6
13
M´ ody pouˇ z´ıvan´ e pro pˇ r´ıˇ cn´ y kan´ al autopilotu
6.1
HDG m´ od
• Udrˇzuje kurs kter´ ym letadlo let´ı v okamˇziku aktivace m´odu. ano a pot´e udrˇzov´an z´ıskan´ y • Pokud je u ´hel n´ aklonu vˇetˇs´ı neˇz 5◦ , je letadlo nejprve vyrovn´ kurs.
Obr´ azek 8: Logick´ a s´ıt’ pro m´ od HDG
6
´ ˇ´IVANE ´ PRO PR ˇ ´ICN ˇ Y ´ KANAL ´ AUTOPILOTU MODY POUZ
6.1.1
14
Logick´ e podm´ınky pro aktivaci HDG m´ odu
• 1 - Je aktivn´ı f´ aze zachycen´ı, nebo veden´ı kursov´eho paprsku LOC CPT respektive LOC TRK. • 2 - Nen´ı zapnut´ y ˇz´adn´ y z m´od˚ u na vstupu OR hradla, m´ od LAND je v pˇr´ıpravˇe. • 3 - Aktivace m´odu HDG bˇehem poˇc´ateˇcn´ı f´ aze startu (m´ od TAKE OFF - f´ aze ˇr´ızen´ı sklonu), nen´ı aktivn´ı m´od HDG SEL. • 4 - Dalˇs´ı f´ aze startu, m´od NAV v pˇr´ıpravˇe. • 5 - Stisk tlaˇc´ıtka HDG SEL na FCU, ztr´ ata nˇekter´e z logick´ ych podm´ınek pro ˇcinnost HDG SEL m´ odu. • 6 - Zapnut´e nap´ ajen´ı poˇc´ıtaˇc˚ u FCC. • 7 - Obdobn´e podm´ınk´ am 5. azi LOC CPT stisknut´ım tlaˇc´ıtka na FCU. • 8 - Vypnut´ı m´odu LAND ve f´ • 9 - Nen´ı aktivn´ı m´od LAND, v´ ypadek sign´ alu z maj´aku VOR nebo LOC.
6
´ ˇ´IVANE ´ PRO PR ˇ ´ICN ˇ Y ´ KANAL ´ AUTOPILOTU MODY POUZ
6.2
15
HDG SEL m´ od
• Umoˇzn ˇuje volbu a stabilizaci kursu letadla zvolen´eho na FCU.
Obr´ azek 9: Logick´ a s´ıt’ pro m´ od HDG SEL
6.2.1
Logick´ e podm´ınky pro aktivaci HDG SEL m´ odu
• 1 - Nen´ı aktivn´ı m´od HDG SEL, stisknut´ı tlaˇc´ıtka HDG SEL na FCU, nebo vytaˇzen´ı voliˇce HDG SEL na FCU. • 2 - Nen´ı aktivn´ı m´od LAND TRK.
6.3
NAV m´ od
• Umoˇzn ˇuje pˇripojen´ı autopilotu k FMS pro ˇr´ızen´ı letadla v pˇr´ıˇcn´em kan´alu.
Obr´ azek 10: Logick´ a s´ıt’ pro m´ od NAV
6
´ ˇ´IVANE ´ PRO PR ˇ ´ICN ˇ Y ´ KANAL ´ AUTOPILOTU MODY POUZ
6.3.1
16
Logick´ e podm´ınky pro aktivaci NAV m´ odu
• 1 - Stisknuto tlaˇc´ıtko NAV na FCU, nen´ı aktivn´ı m´od LAND TRK. Nen´ı aktivn´ı ˇz´adn´ a f´ aze m´odu NAV. ˇ ıd´ıc´ı sign´ • 2 - R´ aly z FMS jsou bez chyby. • 3 - SGU - Symbol Generator Unit neindikuje z´ avadu. • 4 - Platn´ y ˇr´ıdic´ı sign´ al z FMS. • 5 - Zmˇeˇren´ a v´ yˇska letadla je vˇetˇs´ı neˇz 30 ft, symbol v´ yˇsky na PFD je zobrazen spr´ avnˇe (SGU neindikuje z´ avadu). • 6 - Nepracuje radiov´ yˇskomˇer (nen´ı informace o v´ yˇsce), m´od NAV se zap´ın´ a 5 sekund po odlehˇcen´ı podvozku.
6.4
VOR m´ od
• Umoˇzn ˇuje zachycen´ı a veden´ı letadla podle sign´ al˚ u z pozemn´ıch trat’ov´ ych radiomaj´ ak˚ u VOR.
Obr´ azek 11: Logick´ a s´ıt’ pro m´ od VOR
6
´ ˇ´IVANE ´ PRO PR ˇ ´ICN ˇ Y ´ KANAL ´ AUTOPILOTU MODY POUZ
6.4.1
17
Logick´ e podm´ınky pro aktivaci VOR m´ odu
• 1 - Stisk tlaˇc´ıtka V/L na FCU. • 2 - Pˇrep´ınaˇc VOR/NAV/ILS v poloze VOR. • 3 - SGU neindikuje z´ avadu, sign´ al z pˇrij´ımaˇce VOR je v poˇra´dku. • 4 - Nen´ı aktivn´ı m´od LAND TRK, nebo m´ od TAKE OFF. • 5 - Nen´ı aktivn´ı ˇz´adn´ a f´ aze m´odu VOR nebo LOC. • 6 - Jsou splnˇeny podm´ınky pro zachycen´ı a veden´ı po sign´ alu z radiomaj´ aku VOR (kvalita sign´ alu, spr´ avn´e naladˇen´ı pˇrij´ımaˇce, atd.)
6.5
LOC m´ od
• Dovoluje zachycen´ı a veden´ı letadla podle kursov´eho paprsku z radiomaj´ aku LOC (naz´ avisle na G/S paprsku). • Pouˇz´ıv´ a se v pˇr´ıpadech, kdy vysad´ı maj´ ak pro sestupov´ y paprsek GLIDE SLOPE (G/S), nebo kdyˇz letiˇstˇe nen´ı vybaveno t´ımto radiomaj´ akem. (nen´ı moˇzn´e pouˇz´ıt plnohodnotn´ y LAND m´od, ˇr´ızen´ı letadla pˇri pˇrist´ an´ı pouze v pˇr´ıˇcn´em kan´alu).
Obr´ azek 12: Logick´ a s´ıt’ pro m´ od LOC
6
´ ˇ´IVANE ´ PRO PR ˇ ´ICN ˇ Y ´ KANAL ´ AUTOPILOTU MODY POUZ
6.5.1
18
Logick´ e podm´ınky pro aktivaci LOC m´ odu
• 1 - Stisk tlaˇc´ıtka V/L na FCU. • 2 - Vypoˇcten´a odchylka od kursov´eho maj´ aku LOC, sign´ al z radiomaj´ aku je v poˇra´dku (NCD - Non Computed Data). • 3 - Nejsou aktivn´ı m´ody GO AROUND, LAND TRK, TAKE OFF. • 4 - Nen´ı aktivn´ı ˇz´adn´ a f´ aze m´odu VOR nebo LOC. • 5 - Pˇrep´ınaˇc VOR/NAV/ILS je v poloze ILS. • 6 - LAND m´od je ve f´ azi pˇr´ıpravy. • 7 - Opˇetovn´e potvrzen´ı spr´ avnosti sign´ alu z pˇrij´ımaˇce LOC. • 8 - Splnˇeny podm´ınky pro zachycen´ı a veden´ı po kursov´em paprsku.
7
´ ˇ´IVANE ´ PRO OBA KANALY ´ MODY POUZ AUTOPILOTU
7
M´ ody pouˇ z´ıvan´ e pro oba kan´ aly autopilotu
7.1
GA m´ od
• Dovoluje proveden´ı nov´eho okruhu veden´ım letadla souˇcasnˇe v obou kan´ alech. • Umoˇzn ˇuje automatick´e pˇripojen´ı automatu tahu motoru k autopilotu. • Pro pod´eln´ y kan´ al AP je vyuˇz´ıv´ an subm´ od SRS. • V pˇr´ıˇcn´em kan´alu je letadlo vystˇredˇeno na nulov´ y n´ aklon.
Obr´ azek 13: Logick´a s´ıt’ pro m´ od GA
7.1.1
Logick´ e podm´ınky pro aktivaci GA m´ odu
• 1 - AP1 nebo AP2 nejsou v CMD reˇzimu. • 2 - Podvozek nen´ı zat´ıˇzen, zapnut´ı GA m´ odu 30 sekund po dosednut´ı. • 3 - Sloty jsou vysunuty nejm´enˇe na 15◦ . • 4 - M´ od TAKE OFF nen´ı aktivn´ı. • 5 - Stisknuto tlaˇc´ıtko TO/GA.
19
7
´ ˇ´IVANE ´ PRO OBA KANALY ´ MODY POUZ AUTOPILOTU
7.2
20
TO m´ od
• Zajiˇst’uje veden´ı letadla v poˇc´ateˇcn´ı f´ azi startu. • V pod´eln´em kan´alu je zapnut subm´ od SRS. • V pˇr´ıˇcn´em kan´alu jsou vyuˇz´ıv´ any m´ ody RWY, HDG SEL, HDG.
Obr´ azek 14: Logick´ a s´ıt’ pro m´ od To
7.2.1
Logick´ e podm´ınky pro aktivaci TO m´ odu
• 1 - Nen´ı aktivn´ı GA m´ od. • 2 - Podvozek je zat´ıˇzen, tlaˇc´ıtko TO/GA je stisknuto aˇz 30 sekund od zat´ıˇzen´ı podvozku (logick´ a podm´ınka pro v´ ybˇer mezi m´ody GO AROUND a TAKE OFF). • 3 - Sloty jsou vysunuty nejm´enˇe na 15◦ . • 4 - Zapnut´ı p´ aˇcek GO na plynov´ ych p´ ak´ ach. • 1..4,5 - Splnˇen´ı podm´ınek pro ˇr´ızen´ı letadla v pˇr´ıˇcn´e a pod´eln´e ose. • 6 - Ani jeden z autopilot˚ u nen´ı zapnut v CMD reˇzimu. • 7 - Symboly na PFD jsou zobrazeny bez chyby.
7
´ ˇ´IVANE ´ PRO OBA KANALY ´ MODY POUZ AUTOPILOTU
21
• 8 - Sign´ al z kursov´eho maj´ aku je bez chyby • 9 - Odchylka od skuteˇcn´eho kursu od kursu ud´ avan´eho maj´ akem LOC je v toleranci.
7.3
LAND m´ od
• Dovoluje zachycen´ı a veden´ı letadla po paprsc´ıch maj´ aku ILS aˇz do koneˇcn´e f´ aze pˇrist´ an´ı ROLL OUT.
Obr´ azek 15: Logick´ a s´ıt’ pro m´ od LAND
7
´ ˇ´IVANE ´ PRO OBA KANALY ´ MODY POUZ AUTOPILOTU
7.3.1
22
Logick´ e podm´ınky pro aktivaci LAND m´ odu
• 1 - Je-li pˇri stisknut´ı tlaˇc´ıtka LAND detekov´ ana chyba f´ aze ROLL OUT, nelze LAND m´ od zapnout. • 2,3 - F´aze LAND ARM se m˚ uˇze zapnout pˇri stoj´ıc´ıch motorech na zemi pro potˇreby u ´drˇzby, nebo za letu ve v´ yˇsce QFE = RH vˇetˇs´ı neˇz 400 ft. • 4 - Inerce IRS-1 a IRS-2 jsou vystˇredˇeny a vypoˇc´ıt´ avaj´ı sign´ al kursu. • 5 - Symbol v´ yˇsky je zobrazen na PFD ve spr´ avn´e velikosti. • 6, 7 - Symbol kursov´eho a sestupov´eho paprsku je zobrazen na PFD ve spr´ avn´e velikosti a smˇeru. • 8 - Stisknuto tlaˇc´ıtko LAND na FCU. • 9, 10, 11, 12, 13 - V okamˇziku zapnut´ı LAND m´odu nen´ı ˇz´adn´ y z tˇechto m´od˚ u aktivn´ı. • 14 - Podm´ınka zachycen´ı kursov´eho paprsku je splnˇena v okamˇziku kdy odchylka letadla od paprsku je max. 2/3 teˇcky. • 15 - Podm´ınka veden´ı letadla po kursov´em paprsku je splnˇena, je-li odchylka po dobu 10ti sekund menˇs´ı neˇz 2/3 teˇcky. • 16 - Podm´ınka zachycen´ı sestupov´eho paprsku je splnˇena, je-li odchylka letadla od sestupov´eho paprsku v povolen´em rozmez´ı. • 17 - Na PFD je zobrazen symbol pro odchylku sestupov´eho paprsku. • 18, 19 - Pˇred zapnut´ım f´ aze G/S CPT je nutno, aby byla aktivn´ı f´ aze LOC CPT nebo LOC TRK. Pro standardn´ı pˇribl´ıˇzen´ı se vykon´ av´ a sekvence krok˚ u: LOC CPT, LOC TRK, G/S CPT, G/S TRK. • 20 - Pro zachycen´ı sestupov´eho paprsku je nutno nejdˇr´ıve splnit podm´ınky pro f´ azi LAND ARM a LOC CPT. • 21 - Podm´ınka veden´ı letadla po sestupov´em paprsku je splnˇena, pokud je chyba po dobu 10ti sekund menˇs´ı neˇz povolen´ a aktu´ aln´ı mez. • 22 - Ve v´ yˇsce RH = 400 ft se zap´ın´ a m´od LAND TRK. • 23, 24, 25 - V´ yˇska 50 ft a splnˇen´ı podm´ınek pro f´ azi FLARE. Z d˚ uvod˚ u zv´ yˇsen´e bezpeˇcnosti nesm´ı b´ yt aktivn´ı m´od ROLL OUT. To sam´e plat´ı i pro f´ azi ALIGN. • 26, 27 - Potvrzen´ı, ˇze LAND TRK m´od je st´ ale aktivn´ı spolu s v´ yˇskou RH menˇs´ı neˇz 30 ft aktivuje ALIGN m´ od. ahy a stlaˇcen´ı • 28, 29 - Pro ROLL OUT m´ od je nutn´e potvrzen´ı o vystˇredˇen´ı letadla do osy dr´ prav´e nebo lev´e podvozkov´e nohy. • 30 - Ve v´ yˇsce RH menˇs´ı neˇz 20 ft a je-li letadlo vystˇredˇeno, je zasl´an pˇres funkci A/THR sign´ al z AP do ATS na staˇzen´ı p´ ak pˇr´ıpusti motor˚ u na 5◦ .
8
´ ´ ANALYZA PROBLEMU
8
23
Anal´ yza probl´ emu
8.1
Poˇ zadavky na aplikaci
M´ ym u ´kolem je na z´ akladˇe dokumentace realizovat simulaˇcn´ı program, kter´ y bude umoˇzn ˇovat simulaci letov´ ych m´od˚ u letounu Airbus A310. V souladu se zad´ an´ım a po konzultaci s vedouc´ım m´e pr´ ace, jsem si stanovil na aplikaci n´ asleduj´ıc´ı poˇzadavky. 1. Aktivn´ı m´ody budou indikov´ any zobrazovaˇcem m´od˚ u FMA. 2. Pro kaˇzd´ y m´od bude v maxim´ aln´ı moˇzn´e m´ıˇre zobrazov´ ana letov´ a a navigaˇcn´ı situace na displej´ıch EFIS. 3. Pˇri pˇrechodech mezi m´ody bude uvaˇzov´ana kinematika pohybu letadla v m´ıˇre, kter´ a je nezbytn´ a k pˇrep´ın´ an´ı m´od˚ u. 4. Jednotliv´e m´ody bude moci uˇzivatel ovl´ adat nejen prostˇrednictv´ım FCU, ale t´eˇz aktivac´ı pˇr´ısluˇsn´ ych sign´ al˚ u v logick´e s´ıti. 5. Kaˇzd´ y aktivn´ı vodiˇc v logick´e s´ıti bude barevnˇe zv´ yraznˇen. 6. Program bude navrˇzen tak, aby jej bylo moˇzn´e vyuˇz´ıt pro v´ yuku. y manu´ al. 7. Souˇc´ast´ı programu bude uˇzivatelsk´
8.2
N´ avrh zp˚ usobu ˇ reˇ sen´ı
Obr´ azek 16: N´ astin ˇreˇsen´ı v prvn´ım pˇribl´ıˇzen´ı M´ a prvn´ı pˇredstava o struktuˇre aplikace odpov´ıdala v´ yˇseuveden´emu sch´ematu. Vazba mezi ´ AN ´ ´I S´ITE. ˇ Blok LOGIKA obsyst´emem a uˇzivatelem se uzav´ır´ a pˇres bloky FCU, FMA a OVLAD sahuje logick´e podm´ınky nutn´e pro aktivaci m´ od˚ u a blok LETADLO pˇr´ısluˇsn´e kinematick´e rovnice a dynamick´e parametry letadla.
´ ER ˇ VHODNEHO ´ ´ VYB SOFTWARE PRO REALIZACI SIMULATORU
9
9
24
V´ ybˇ er vhodn´ eho software pro realizaci simul´ atoru
9.1
MATLAB
Prostˇred´ı MATLAB si na akademick´e p˚ udˇe vybudovalo znaˇcnou oblibu. Z p˚ uvodn´ıho pomˇernˇe jednoduch´eho programu pro technick´e v´ ypoˇcty se vyvinul siln´ y n´ astroj vhodn´ y i pro simulaci velice sloˇzit´ ych syst´em˚ u. Uplatnˇen´ı si z´ıskal nejen ve ˇskolstv´ı, ale prakticky ve vˇsech nehumanitn´ıch vˇedn´ıch oborech - napˇr. v elektrotechnice, letectv´ı, biologii, ale i v ekonomii. Stalo se tak d´ıky mnoˇzstv´ı doplˇ nuj´ıc´ıch toolbox˚ u a zvl´ aˇstˇe pak d´ıky integrovan´emu prostˇred´ı SIMULINK. V letectv´ı se Matlab s v´ yhodou pouˇz´ıv´ a napˇr. pro n´ avrh autopilot˚ u. Velkou pˇrednost´ı Matlabu je dosaˇzen´ı kvalitn´ıho v´ ysledku za pomˇernˇe kr´ atk´ y ˇcas. Samozˇrejmˇe toto tvrzen´ı nelze br´ at doslova a plat´ı jen v urˇcit´ ych situac´ıch. V prvn´ıch pokusech jsem se tedy snaˇzil vybudovat j´ adro syst´emu v Matlabu. V Simulinku jsem ale s´ıt’ reprezentuj´ıc´ı logick´e podm´ınky pro aktivaci vytvoˇril model autopilotu stranov´eho pohybu1 , d´ m´odu HDG/SEL. Ovl´ adac´ı panel FCU a zobrazovaˇc FMA jsem realizoval jako S-funkci napsanou v jazyce Matlabu - tzv. mfile. Toto ˇreˇsen´ı bylo sice funkˇcn´ı, ale z´ aroveˇ n se uk´ azalo jako nevyhovuj´ıc´ı. Matlab je sice jedniˇcka na simulace dynamick´ ych syst´em˚ u, ale vytv´ aˇren´ı pˇra´telsk´eho grafick´eho rozhran´ı v nˇem je leckdy infarktov´e. Pokud chci vytvoˇrit v Matlabu sofistikovanˇejˇs´ı GUI, mus´ım vyuˇz´ıt JAVA knihoven. To je na prvn´ı pohled velice elegantn´ı zp˚ usob, kter´ y bohuˇzel rovnˇeˇz ˇcin´ı pot´ıˇze. Prvn´ı z nich je syntaktick´ a, t.j. zp˚ usob z´ apisu programu. Objekty Javy totiˇz nem˚ uˇzu v Matlabu vytv´ aˇret v jazyce Java, ale v jazyce Matlabu. T´ım doch´ az´ı ke zmˇenˇe syntaxe, kter´ a je pak ˇcasto matouc´ı. Dalˇs´ım probl´emem je, ˇze program napsan´ y v Matlabu se nepˇrekl´ ad´ a, ale vykon´ av´ a an´ı programu se pˇr´ıkaz za pˇr´ıkazem. To je u vˇetˇs´ıch projekt˚ u nev´ yhodn´e, protoˇze se tak vykon´av´ znaˇcnˇe zpomal´ı.
9.2
MATLAB a C#
Druhou moˇznost´ı je pouˇz´ıt Matlab, respektive simulink pouze pro bloky LETADLO a LOGIKA viz. obr´ azek16 a pro veˇsker´a grafick´ a rozhran´ı pouˇz´ıt nˇejak´ y vyˇsˇs´ı programovac´ı jazyk. Pˇri v´ ybˇeru jazyka jsem vych´azel ze sv´ ych dosavadn´ıch zkuˇsenost´ı a z moˇznost´ı, kter´e dan´ y jazyk nab´ız´ı. Jeˇ ıdic´ı techniky Programovac´ı jazyky pro ˇr´ızen´ı ve kter´em se likoˇz jsem absolvoval pˇredmˇet katedry R´ vyuˇcuje jazyk C#, a jelikoˇz tento jazyk bohatˇe postaˇcuje m´ ym poˇzadavk˚ um, pouˇzil jsem pro dalˇs´ı experimenty pr´ avˇe C#. 9.2.1
Komunikace mezi C# a MATLABEM
Komunikaci mezi modelem navrˇzen´ ym v Simulinku a aplikac´ı napsanou v C# lze pod operaˇcn´ım syst´emem Windows XP nejjednoduˇseji zaˇr´ıdit uˇzit´ım nˇekter´eho standardn´ıho komunikaˇcn´ıho protokolu. • Protokol TCP: TCP - Transmision Control Protocol. Tento protokol je dnes asi nejpouˇz´ıvanˇejˇs´ı. Jedn´ a se o protokol orientovan´ y na spojen´ı. To znamen´a, ˇze pˇred samotnou komunikac´ı se ana a po skonˇcen´ı vys´ıl´ an´ı je nutn´e sponav´ aˇze spojen´ı. Vˇsechna odeslan´a data jsou potvrzov´ jen´ı ukonˇcit. • Protokol UDP: UDP - User Datagram Protokol. Tento protokol patˇr´ı mezi nespojov´e sluˇzby. Nespojov´e v tom smyslu, ˇze nedoch´az´ı k nav´ az´an´ı spojen´ı a odchoz´ı data nejsou potvrzov´ ana. 1
Veˇsker´e simulinkov´e modely budou uvedeny d´ ale
´ ER ˇ VHODNEHO ´ ´ VYB SOFTWARE PRO REALIZACI SIMULATORU
9
25
Data jsou odesl´ ana na danou IP adresu a dan´ y UDP port a odes´ılatel se nedozv´ı zda doˇsla, nebo zda nebyla nˇejak poˇskozena. UDP protokol je vhodn´e pouˇz´ıt v pˇr´ıpadˇe, kdy by bylo TCP velkou z´ atˇeˇz´ı pro s´ıt’. Vzhledem k tomu, ˇze aplikace je navrhov´ ana pro bˇeh na lok´ aln´ım poˇc´ıtaˇci, a tud´ıˇz nehroz´ı velk´e nebezpeˇc´ı ztr´ aty dat, implementoval jsem komunikaci pˇres UDP. V prostˇred´ı Simulinku jsem vytvoˇril S-funkci pro blok odes´ıl´ an´ı dat, pˇriˇcemˇz program FMA naslouchal na dan´em portu.
9.3
MATLAB WIZARD
V pr˚ ubˇehu studia dan´e problematiky z internetov´ ych zdroj˚ u jsem se sezn´amil s volnˇe dostupn´ ym programem Matlab Wizard2 . Autory programu jsou Jan Maˇsek a Petr Stodulka z 1. L´ekaˇrsk´e fakulty UK. Tento program umoˇzn ˇuje spr´ avnˇe navrˇzen´ y model v prostˇred´ı Simulink pˇrev´est na platformu .Net. Navrhneme-li v Simulinku model, m˚ uˇzeme Matlab Wizardem vygenerovat .Net assembly a toto assembly standardn´ım zp˚ usobem zaˇclenit do naˇs´ı aplikace, kter´ a bude naps´ ana v libovoln´em jazyce rodiny .Net. 9.3.1
V´ yhody pouˇ zit´ı programu MATLAB WIZARD ve spojen´ı se C#
Tato cesta pˇrin´ aˇs´ı mnoho v´ yhod. Pˇri sv´ ych u ´vah´ ach vych´ az´ım z pˇredpokladu, ˇze program m´a slouˇzit pro v´ yuku. Bude-li program z´ avisl´ y na Matlabu, znemoˇzn´ı pouˇz´ıv´ an´ı tˇem uˇzivatel˚ um, kteˇr´ı k Matlabu nemaj´ı pˇr´ıstup. Dalˇs´ım probl´emem je, ˇze nemohu zaruˇcit kompatibilitu se vˇsemi verzemi. A posledn´ım racion´ aln´ım d˚ uvodem je moˇznost pohodln´eho ovl´ ad´ an´ı. Pokud se uˇzivatel mus´ı pˇrep´ınat mezi aplikacemi, ovl´ad´ an´ı syst´emu se pak st´av´ a nepohodln´ ym. Vytvoˇren´ı samostatn´e aplikace je yhodnˇejˇs´ı. tedy jasnˇe nejv´
9.4
Shrnut´ı
Po zv´ aˇzen´ı vˇsech uveden´ ych skuteˇcnost´ı, dosaˇzen´ ych v´ ysledk˚ u a z´ıskan´ ych zkuˇsenost´ı jsem se rozhodl realizovat simul´ ator v jazyce C# jako samostatnou aplikaci, pracuj´ıc´ı na platformˇe .Net.
2
Program vˇcetnˇe dokumentace je na pˇriloˇzen´em CD
´ REALIZACE SIMULATORU
10
10
26
Realizace simul´ atoru
Po anal´ yze probl´emu jsem se rozhodl rozˇclenit v´ yvoj syst´emu do nˇekolika f´ az´ı. Vych´ azel jsem opˇet ze sch´ematu z´akladn´ıho pˇribl´ıˇzen´ı 16. 1. N´ avrh a realizace zobrazovaˇce FMA a displej˚ u EFIS. 2. N´ avrh a realizace ovl´adac´ıho panelu FCU. 3. N´ avrh a implementace matematick´eho modelu. 4. Implementace logick´ ych podm´ınek. 5. N´ avrh a realizace simul´atoru logick´ ych s´ıt´ı. 6. Slouˇcen´ı vˇsech modul˚ u. 7. Vytvoˇren´ı dokumentace.
10.1
Charakteristika objektovˇ e orientovan´ eho programov´ an´ı
Pro realizaci zobrazovaˇce a displej˚ u nebudu vyuˇz´ıvat ˇz´adn´ ych speci´aln´ıch knihoven. K m´emu u ´ˇcelu velmi dobˇre poslouˇz´ı komponenty uˇzivatelsk´eho rozhran´ı WinForms, kter´e je souˇc´ast´ı Microsoft Visual Studia. Jazyk C# je ryze objektov´ y. To znamen´a, ˇze kaˇzd´ y projekt mus´ı obsahovat alespoˇ n jednu tˇr´ıdu. Kaˇzd´ a tˇr´ıda m´ a sv´e vlastnosti, metody a ud´ alosti. Pro lepˇs´ı pˇredstavu poslouˇz´ı analogie s re´aln´ ymi objekty. Kaˇzd´ y ˇclovˇek se s nˇejak´ ymi objekty setk´ av´ a, nebo je vlastn´ı. Mˇejme napˇr´ıklad tˇr´ıdu Auto. Kaˇzd´e auto m´a nˇejakou barvu. Jakou barvu, to reprezentuje vlastnost. Proto i naˇse tˇr´ıda Auto bude m´ıt vlastnost barva. S takovou vlastnot´ı se mohou prov´ adˇet r˚ uzn´e operace. Barvu auta m˚ uˇzeme zmˇenit napˇr´ıklad z ˇcerven´e na modrou. Kaˇzd´e auto pokud je v poˇra´dku po otoˇcen´ı kl´ıˇcku alost Nastartuj. Po seˇsl´apnut´ı plynov´eho ped´ alu se,pokud nastartuje. Pˇriˇrad´ıme tedy naˇs´ı tˇr´ıdˇe ud´ ’ je zaˇrazena rychlost, auto rozjede. Tomu by mohla odpov´ıdat ud´ alost jed , kter´ a by se odstartovala po stisku ped´ alu. Metody tˇr´ıdy by mohly prov´ adˇet v´ ypoˇcty rychlosti, stavu paliva, atd. Pokud vytvoˇr´ıme instanci naˇs´ı tˇr´ıdy Auto, dostaneme objekt Auto, se kter´ ym pak m˚ uˇzeme prov´adˇet dan´e operace. Princip objektov´eho programov´ an´ı tedy pˇripom´ın´ a jakousi stavebnici.
10.2
PFD
Pˇri v´ yvoji prim´ arn´ıho displeje jsem vyˇsel z vlastn´ı podoby displeje na z´ akladˇe dokumentace. Do displeje je zaˇclenˇen FMA, d´ ale umˇel´ y horizont EADI, ukazatel vzduˇsn´e rychlosti, ukazatel v´ yˇsky, ukazatel stranov´e odchylky ILS a ukazatel v´ yˇskov´e odchylky ILS. Kaˇzd´ y zobrazovac´ı prvek displeje je zobrazov´ an na vlastn´ım panelu. Pˇri realizaci displeje jsem musel ˇreˇsit probl´em Flickeringu. Pˇri pˇr´ım´em kreslen´ı na obrazovku obraz blik´ a od postupn´eho vytv´aˇren´ı. Tento efekt je tˇreba odstranit. Metoda kter´ a to umoˇzn ˇuje se naz´ yv´ a Double Buffering 10.2.1
Double Buffering
Tato program´ atorsk´ a metoda spoˇc´ıv´ a v tom, ˇze se tvorba obrazu rozdˇel´ı na vykreslovanou a zobrazovanou ˇc´ast, draw buffer a display buffer - ten b´ yv´ a zpravidla uloˇzen´ y pˇr´ımo v pamˇeti grafick´e ’ karty. Samotn´ y program pak obsahuje jednu pomocnou pamˇet , zpravidla bitmapu. Princip metody nejl´epe pˇribl´ıˇz´ı obr´ azek17.
10
´ REALIZACE SIMULATORU
Obr´ azek 17: Kreslen´ı metodou Double Buffering
10.2.2
Struktura tˇ r´ıdy PFD
public class FormPfd : System.Windows.Forms.Form { Bitmap bmp; //Bitmapa pro eadi } public FormPfd() { InitializeComponent(); } //------------Vlastnosti-------------------//.......................................... //-----------------------------------------public void prekresli() { if (pPlocha==null && pPlocha.Size.Width==0 || pPlocha.Size.Height==0) return; //Je uz vytvoren panel? if (buffering == true) { if (bmp == null)//Vytvorime bitmapu bmp = new Bitmap(pPlocha.Size.Width, pPlocha.Size.Height, PixelFormat.Format24bppRgb); nakresli(Graphics.FromImage(bmp)); //Kreslime do bitmapy Graphics dc = pPlocha.CreateGraphics(); dc.DrawImageUnscaled(bmp,0,0); } else pPlocha.Invalidate();
27
10
´ REALIZACE SIMULATORU
28
} public void nakresli(Graphics g) { //Nakreslime Eadi } private void pPlocha_Paint(object sender, System.Windows.Forms.PaintEventArgs e) { Graphics dc = e.Graphics; if (buffering == true) { dc.DrawImageUnscaled(bmp,0,0); // kop´ ırujeme na obrazovku return; } else { nakresli(dc); } } Uveden´ y fragment k´ odu zn´ azorˇ nuje postup pˇri kreslen´ı PFD displeje. Z´ akladn´ı metodou je metoda nakresli(Graphics g). Tato metoda kresl´ı dan´ y objekt, v naˇsem pˇr´ıpadˇe zobrazen´ı EADI, ˇcili elektronick´e podoby umˇel´eho horizontu. Metoda prekresli() vytvoˇr´ı, v pˇr´ıpadˇe, ˇze jeˇstˇe nen´ı vytvoˇrena, bitmapu, zavol´ a metodu nakresli(Graphics g) a objekt kreslen´ y touto metodu je nakreslen do pamˇeti - bitmapy. Vlastn´ı vykreslov´an´ı na obrazovku je obslouˇzeno metodou Paint(). T´ımto postupem je zajiˇstˇen Double Buffering, popsan´ y na v´ yˇseuveden´em obr´ azku. Stejn´ ym zp˚ usobem jsou vykresleny vˇsechny ostatn´ı prvky displeje jako jsou ukazatel vzduˇsn´e rychlosti, ukazatel v´ yˇsky, indik´ atory odchylek ILS, apod. Takto navrˇzen´e tˇr´ıdˇe jsem pˇriˇradil vlastnoti, prostˇrednictv´ım kter´ ych um pˇristupovat. Napˇr´ıklad: je moˇzno k objekt˚ public int tbRollValue { get { return tb_RollValue;} set { tb_RollValue = value;} } Deklarovan´ a vlastnost umoˇzn ˇuje ovl´ ad´ an´ı pod´eln´eho sklonu. Pro detailnˇejˇs´ı pˇredstavu se na pˇriloˇzen´em CD nach´ az´ı kompletn´ı v´ ypis programu.
10.3
ND
Navigaˇcn´ı displej byl vykreslen stejnou technikou jako prim´ arn´ı displej. Struktura tˇr´ıdy je stejn´ a, jen metody kresl´ı jin´e objekty a vlastnosti tˇr´ıdy jsou jin´e.
10
´ REALIZACE SIMULATORU
10.4
V´ ysledn´ a podoba EFIS displej˚ u
Obr´ azek 18: V´ ysledn´ a podoba PFD displeje
Obr´ azek 19: V´ ysledn´ a podoba ND displeje
29
10
´ REALIZACE SIMULATORU
10.5
30
FCU
Pro n´ avrh FCU jsem zprvu vyuˇzil standardn´ıch komponent uˇzivatelsk´eho rozhran´ı WindowsForms. Tyto komponety bohatˇe postaˇcovaly k vlastn´ı funkˇcnosti simul´ atoru. V pr˚ ubˇehu pr´ ace jsem vˇsak dospˇel k pˇresvˇedˇcen´ı, ˇze bude tˇreba vzhled FCU panelu co nejv´ıce pˇribl´ıˇzit skuteˇcnosti. T´ım bude dojem ze simulace vˇernˇejˇs´ı. Nemluvˇe o dojmu estetick´em. Za t´ımto u ´ˇcelem jsem tedy musel vytvoˇrit vlastn´ı ov´ adac´ı prvky. Jednalo se o pˇrep´ınaˇce autopilot˚ u, voliˇce v´ yˇsky, kursu, vzduˇsn´e a vertik´ aln´ı rychlosti a tlaˇc´ıtka. 10.5.1
Realizace vlastn´ıch ovl´ adac´ıch prvk˚ u
Realizace kaˇzd´eho ovl´ adac´ıho prvku se d´ a rozˇclenit do n´ asleduj´ıc´ıch u ´kon˚ u 1. N´ avrh 2. Tvorba 3. Testov´an´ı 4. Zaˇclenˇen´ı 10.5.2
N´ avrh prvku Voliˇ c
ame, jak´ ym Neˇz zaˇcneme nˇejak´ y uˇzivatelsk´ y prvek vytv´ aˇret, mus´ıme si ujasnit co od prvku oˇcek´av´ zp˚ usobem bude ovl´ ad´ an, jak´ y bude generovat v´ ystup a v neposledn´ı ˇradˇe jak bude graficky reprezentov´ an. Napˇr´ıklad pro voliˇc vzduˇsn´e rychlosti jsem si nadefinoval n´ asleduj´ıc´ı poˇzadavky: 1. Voliˇc bude graficky co nejl´epe odpov´ıdat skuteˇcnosti 2. Voliˇc bude reagovat na ud´ alosti myˇsi. 3. Do prvku bude implementov´ ana moˇznost hrub´eho a jemn´eho nastaven´ı rychlosti. 4. D´ ale bude implementov´ ana moˇznost potvrzen´ı zvolen´e rychlosti. 5. Pˇri najet´ı kurzoru myˇsi se zobraz´ı struˇcn´ a n´ apovˇeda jak s prvkem pracovat. Z tohoto v´ yˇctu je jasnˇe vidˇet co od prvku oˇcek´av´ ame a m˚ uˇzeme pˇristoupit k dalˇs´ımu u ´konu, j´ımˇz je vlastn´ı tvorba. 10.5.3
Tvorba prvku
V tomto bodu jsem postupoval v poˇrad´ı dan´em pˇredchoz´ım v´ yˇctem. Nejprve jsem si vzhled voliˇce nakreslil. V dalˇs´ım kroku jsem ve tˇr´ıdˇe prvku implementoval reakce na ud´ alosti. Pokud m´ a n´ ami budovan´ y prvek alespoˇ n nˇekter´e rysy spoleˇcn´e s prvky WindowsForms, je neadac´ı prvek, odvodit jej z nˇejak´e z´akladn´ı tˇr´ıdy. Fragjjednoduˇsˇs´ı cesta jak vybudovat vlastn´ı ovl´ ment programu, kter´ y zn´ azorˇ nuje kostru prvku Voliˇc, odvozen´eho ze tˇr´ıdy UserControl, je uveden v n´ asleduj´ıc´ım textu.
10
´ REALIZACE SIMULATORU
public class Volic : System.Windows.Forms.UserControl { private int _Value; public int Value //Vlastnost vraci nastavenou hodnotu { get {return _Value;} set {_Value = value;} } private int _Maximum; public int Maximum //Horn´ ı mez pro nastavenou hodnotu { get {return _Maximum;} set {_Maximum = value;} } private int _Minimum; //Doln´ ı mez pro nastavenou hodnotu public int Minimum { get {return _Minimum;} set {_Minimum = value;} } public event EventHandler Scroll; //Deklarace ud´ alosti pro nastaven´ ı hodnoty public event EventHandler Klick; //Deklarace ud´ alosti, kter´ a se odp´ al´ ı //po kliknut´ ı na prvku public Volic() { } System.Timers.Timer t = new System.Timers.Timer(); //Deklarace c ˇasovaˇ ce bool Dn = false; //Promˇ enn´ a signalizuje zda je tlaˇ c´ ıtko myˇ si stisknuto private void DnHrube_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e) { //Tato metoda zajist´ ı nastaven´ ım intervalu c ˇasovaˇ ce na //15ms hrub´ e nastavov´ an´ ı Dn = true; t.Interval = 15; t.Elapsed += new System.Timers.ElapsedEventHandler(t_elapsed); t.Enabled = true; //Spuˇ stˇ en´ ı ˇ casovaˇ ce } private void DnHrube_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e) { //Zde rikame, z ˇe tlaˇ cı ´tko myˇ si nen´ ı stisknuto. //Ukonˇ c´ ıme ud´ alost c ˇasovaˇ ce - nastavov´ an´ ı hodnot. Dn = false; t.Enabled = false; } private void t_elapsed(object sender,
31
10
´ REALIZACE SIMULATORU System.Timers.ElapsedEventArgs e) { //Ud´ alost c ˇasovaˇ ce. Pokud je stisknuto tlaˇ c´ ıtko pro naˇ c´ ıt´ an´ ı //v kladn´ em smˇ eru,st´ avaj´ ıc´ ı hodnota se inkrementuje. //v opaˇ cn´ em pˇ r´ ıpadˇ e dekrementuje, a to v dan´ ych mez´ ıch. if(this.Scroll != null) Scroll(this,EventArgs.Empty); if(Dn && (this.Value > this.Minimum)) this.Value--; else if(!Dn && (this.Value < this.Maximum)) this.Value++; }
private void DnJemne_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e) { Dn = true; t.Interval = 300; t.Elapsed += new System.Timers.ElapsedEventHandler(t_elapsed); t.Enabled = true; } private void DnJemne_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e) { Dn = false; t.Enabled = false; } private void UpHrube_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e) { Dn = false; t.Interval = 15; t.Elapsed += new System.Timers.ElapsedEventHandler(t_elapsed); t.Enabled = true; } private void UpHrube_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e) { Dn = false; t.Enabled = false; } private void UpJemne_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e) { Dn = false; t.Interval = 300; t.Elapsed += new System.Timers.ElapsedEventHandler(t_elapsed);
32
´ REALIZACE SIMULATORU
10
33
t.Enabled = true; } private void UpJemne_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e) { Dn = false; t.Enabled = false; } private void Check_Click(object sender, System.EventArgs e) { //tato ud´ alost slouˇ zı ´ k potvrzen´ ı zvolen´ e hodnoty Voliˇ ce. if(this.Klick != null) Klick(this,EventArgs.Empty); } } } Funkci uveden´eho k´ odu popisuj´ı koment´ aˇre, kter´e jsou jeho souˇc´ast´ı.
Obr´ azek 20: V´ ysledn´ a podoba voliˇce
10.5.4
Testov´ an´ı
Ovl´ adac´ı prvek je tedy navrˇzen. Neˇz ho vˇsak budeme moci pouˇz´ıt v projektu, je tˇreba ho peˇclivˇe otestovat a m´ıt jistotu, ˇze se chov´a pˇresnˇe tak, jak od nˇej oˇcek´av´ ame. Pro testov´an´ı ovl´ adac´ıho prvku jsem musel vytvoˇrit nˇekolik m´ısty jednoduch´ ych, m´ısty n´ aroˇcnˇejˇs´ıch testovac´ıch skript˚ u. Ty zde vˇsak nebudu uv´ adˇet. Vˇsechny jsou souˇc´ast´ı pˇriloˇzen´eho CD. Zm´ınˇen´e testy si vyˇz´adaly nˇekolik nen´ aroˇcn´ ych u ´prav, kter´e jsem provedl. Po odladˇen´ı prvek pracoval bez probl´em˚ u podle poˇzadavk˚ u, kter´e jsem uvedl na zaˇc´atku podkapitoly. Proto bylo moˇzn´e jej zaˇclenit do aplikace. 10.5.5
N´ avrh ostatn´ıch ovl´ adac´ıch prvk˚ u
Pˇri n´ avrhu ostatn´ıch prvk˚ u jsem postupoval obdobnˇe. Na n´ asleduj´ıc´ım obr´ azku je v´ ysledn´ a podoba vytvoˇren´eho FCU.
10
´ REALIZACE SIMULATORU
34
Obr´ azek 21: V´ ysledn´ a podoba FCU
10.6
FMA
FMA je souˇc´ast´ı prim´ arn´ıho letov´eho dipleje, jehoˇz tvorbu jsem uˇz popsal. Vlastn´ı zobrazovaˇc byl vytvoˇren pomoc´ı prvk˚ u label. Na z´akladˇe splnˇen´ı podm´ınek pro zapnut´ı urˇcit´eho m´odu se zmˇen´ı vlastnost text zvolen´eho labelu. Mˇejme napˇr´ıklad prvek label jm´ena lbZona12, kde ˇc´ıslo 12 oznaˇcuje, ˇze se jedn´a o prvn´ı ˇra´dek a druh´ y sloupec. Budeme-li cht´ıt zobrazit na zobrazovaˇci symbol pro m´ od ALT, m˚ uˇzeme tak uˇcinit pˇr´ıkazem lbZona12.Text = "ALT"
10
´ REALIZACE SIMULATORU
10.7
35
Simul´ ator logick´ ych s´ıt´ı
Pˇred samotn´ ym vytv´ aˇren´ım simul´ atoru logick´ ych s´ıt´ı je tˇreba si znovu pˇripomenout a upˇresnit poˇzadavky na simul´ ator. 1. S´ıt’ je kreslena dle normy ASA. 2. Ovl´ ad´ an´ı s´ıtˇe je moˇzno prov´ adˇet dialogovˇe. 3. Aktivn´ı vodiˇce jsou barevnˇe odliˇseny od neaktivn´ıch. 4. Blok˚ um zpoˇzdˇen´ı je moˇzno pˇriˇrazovat hodnotu zpoˇzdˇen´ı v ms. 5. Na z´akladˇe vyhodnocen´ı s´ıtˇe je moˇzno prov´est simulaci konkr´etn´ıho m´ odu. 10.7.1
Diskuze moˇ zn´ ych ˇ reˇ sen´ı
Na z´akladˇe uveden´ ych poˇzadavk˚ u je tˇreba prov´est diskusi moˇzn´ ych ˇreˇsen´ı a vybrat nejvhodnˇejˇs´ı. P˚ uvodnˇe jsem uvaˇzoval nad moˇznost´ı vytvoˇrit kaˇzdou souˇc´astku jako objekt a jednotliv´e objekty a. Kaˇzd´e logick´e - souˇc´astky tak pospojovat jako ve sch´ematu. Tato moˇznost je vˇsak pˇr´ıliˇs n´ aroˇcn´ hradlo pˇredstavuje vlastnˇe miniaturn´ı poˇc´ıtaˇc, kter´ y je tˇreba naprogramovat. Dalˇs´ım probl´emem je vytvoˇren´ı pin˚ u pro pˇripojen´ı vstup˚ u. Protoˇze hradla v m´em sch´ematu maj´ı promˇenn´ y poˇcet vstup˚ u, bylo by nutn´e zajistit voliteln´ y poˇcet vstupn´ıch pin˚ u. Tuto moˇznost jsem tedy opustil. Bylo tˇreba zvolit nejjednoduˇsˇs´ı a pˇritom nejefektivnˇejˇs´ı ˇreˇsen´ı. Proto jsem jednotliv´ a hradla realizoval tak, aby je bylo moˇzno reprezentovat odpov´ıdaj´ıc´ı grafickou znaˇckou, ale jejich vlastn´ı vyhodnocen´ı je prov´ adˇeno metodami samostatn´e tˇr´ıdy. Tento zp˚ usob ˇreˇsen´ı umoˇzn ˇuje na z´ akladˇe vyhodnocen´ı odpov´ıdaj´ıch vstupn´ıch sign´ al˚ u pˇriˇradit hradlu odpov´ıdaj´ıc´ı v´ ystupn´ı hodnotu. Pro lepˇs´ı ilustraci jsou uvedeny pˇr´ıklady. 10.7.2
Pˇ r´ıklad n´ avrhu hradla
Obr´ azek 22: Hradlo OR Jak uˇz jsem uvedl dˇr´ıve, kaˇzd´e hradlo je komponentou, kter´ a vˇsak nen´ı schopna sama vyhodnotit sv´e vstupy. Ty jsou vyhodnoceny pomoc´ı metod jin´ ych tˇr´ıd. Strukturu tˇr´ıdy hradla OR ukazuje n´ asleduj´ıc´ı k´ od. public class Or : System.Windows.Forms.Control { public Or() { } //--------------------Vlastnosti-----------//hodnota
10
´ REALIZACE SIMULATORU
36
private bool rb_Value; public bool mValue { get {return rb_Value;} set {rb_Value = value;} } //popisek private string p_opisek; public string popisek { get {return p_opisek;} set {p_opisek = value;} } //--------------------end Vlastnosti--------private void nakresli(Graphics g) { //Zde nakreslime soucastku System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(Or)); Image image = ((System.Drawing.Image)(resources.GetObject("Or.JPG"))); g.DrawImage(image,x,y); //............................ //............................ if (!mValue) { g.DrawLine(vyp,x0,y0,x1,y1); } else { g.DrawLine(zap,x0,y0,x1,y1); } } public void vyhodnot() { this.Invalidate(true); } protected override void OnPaint(PaintEventArgs pe) { Graphics dc = pe.Graphics; this.nakresli(dc,sirka, vyska); base.OnPaint(pe); } } Z k´ odu je zˇrejm´e, ˇze tˇr´ıda m´ a vlastnosti mValue a popisek. Vlastnost mValue je kl´ıˇcov´a pro cel´e hradlo. Podle toho jestli je nastavena na false, nebo true m´a hradlo odpov´ıdaj´ıc´ı v´ ystupn´ı hodnotu. Vlastnost popisek je typu string a slouˇz´ı k pˇriˇrazen´ı popisu hradla ve sch´ematu, napˇr.
10
´ REALIZACE SIMULATORU
37
Or1. Hlavn´ı metodou, kter´ a vlastn´ı hradlo kresl´ı je metoda nakresli(Graphics g). V jej´ım tˇele doch´ az´ı k vykreslov´ an´ı bitmapy odpov´ıdaj´ıc´ı znaˇcce hradla Or, jeho vstup˚ u a v´ ystup˚ u. Podle toho, zda je vlastnost mValue nastavena na true nebo false, je v´ ystup nakreslen zelenou respektive ˇcernou ˇc´arou. Metoda vyhodnot() je veˇrejn´ a, a proto je ji moˇzno volat i z metod jin´ ych tˇr´ıd. Prov´ ad´ı poˇz´ad´ an´ı o ud´ alost OnPaint(), a tedy okamˇzit´e vykreslen´ı na obrazovku. Celou filosofii pouˇzit´ı hradla opˇet ukazuje pˇr´ıklad. public bool test(bool x, bool y) { Or1.mValue = x || y; Or1.vyhodnot(); return Or1.mValue; } Pro zobrazen´ı logick´ ych sch´emat jsem potˇreboval pouze hradla OR a AND. Hradlo AND je ˇreˇseno u ´plnˇe stejnˇe jako OR. Liˇs´ı se pouze v zobrazen´ı grafick´e znaˇcky. Dalˇs´ımi ˇcleny, kter´e bylo tˇreba navrhnout, byly bloky zpoˇzdˇen´ı a vstupn´ı a v´ ystupn´ı konektory logick´e s´ıtˇe. 10.7.3
N´ avrh bloku Delay
public class Del : System.Windows.Forms.Control { public Del() { InitializeComponent(); } //-----------------Vlastnosti--------------//hodnota private bool rb_Value; public bool mValue { get {return rb_Value;} set {rb_Value = value;} } //popisek private string p_opisek; private string popisek { get {return p_opisek;} set {p_opisek = value;} } //popisek private bool _vystup; public bool vystup { get {return _vystup;} set {_vystup = value;} }
10
´ REALIZACE SIMULATORU
38
//---------------end Vlastnosti-------------public void nakresli(Graphics g,int sirka,int vyska) { //-------Zde nakreslime grafickou znacku bloku Delay } public void vyhodnot() { Thread.Sleep(Convert.ToInt32(this.textBox1.Text)); this.vystup = this.mValue; this.Invalidate(true); } protected override void OnPaint(PaintEventArgs pe) { Graphics dc = pe.Graphics; this.nakresli(dc,this.Size.Width,30); base.OnPaint(pe); } } N´ avrh bloku zpoˇzdˇen´ı Delaye je obdobn´ y jako u hradel. Je zde nav´ıc vlastnost vystup typu bool. Blok obsahuje nav´ıc prvek textBox. Ten slouˇz´ı k nastaven´ı zpoˇzdˇen´ı v ms. Vlastn´ı zpoˇzdˇen´ı je uskuteˇcnˇeno pozastaven´ım vl´ akna na uˇzivatelem stanovenou dobu. Po uplynut´ı t´eto doby se hodnota vlastnosti mValue pˇriˇrad´ı i vlastnosti vystup.
Obr´ azek 23: Blok Delay
10.7.4
N´ avrh vstupn´ıho konektoru
N´ avrh vstupn´ıho konektoru vych´ az´ı z pˇredchoz´ıch pˇr´ıklad˚ u, proto zde jiˇz nebudu uv´ adˇet k´od. Vlastnosti i cel´ a kostra jsou stejn´e jako v pˇr´ıpadˇe hradel. Jedin´ ym rozd´ılem je pˇriˇrazen´ı ud´ alosti a n´ asledovnˇe. Zdroj MouseDown(). Pˇriˇrazen´ı hodnoty vlastnosti mValue prob´ıh´ bool mouseDown = false; private void Zdroj_MouseDown() { mouseDown = !mouseDown; this.mValue = mouseDown; }
10
´ REALIZACE SIMULATORU
39
Obr´ azek 24: Vstupn´ı konektor s popisem 10.7.5
Ostatn´ı prvky
N´ avrh ostatn´ıch prvk˚ u zcela vych´az´ı z uveden´ ych pˇr´ıklad˚ u. Konkr´etnˇe z pˇr´ıkladu n´ avrhu hradel. N´ıˇze uv´ad´ım jejich grafickou podobu.
Obr´ azek 25: Hradlo And
Obr´ azek 26: Negace
Obr´ azek 27: Tlaˇc´ıtko
Obr´ azek 28: V´ ystupn´ı konektor s popisem Mezi uveden´ ymi souˇc´astkami chyb´ı ˇc´ara - respektive vodiˇc. Je to z toho d˚ uvodu, ˇze hradla jsou spolu propojena pouze v´ yvody. Lomen´ a ˇc´ara se v pouˇzit´ ych sch´ematech aˇz na v´ yjiky nevyskytuje. V tˇechto pˇr´ıpadech jsem lomenou ˇc´aru nahradil n´ avˇeˇst´ım.
10
´ REALIZACE SIMULATORU
10.7.6
40
Vyhodnocen´ı logick´ e s´ıtˇ e
V t´eto f´ azi jsem mˇel k dispozici vˇsechny potˇrebn´e prvky. Zb´ yvalo s´ıtˇe nakreslit a naj´ıt vhodn´ y algoritmus pro jejich vyhodnocen´ı. Nakreslen´ı s´ıtˇe jsem uskuteˇcnil standardn´ım zp˚ usobem v n´ avrh´ aˇri Visual Studia 2003. Vyhodnocen´ı s´ıt´ı jsem provedl prost´ ym vyhodnocen´ım s´ıtˇe v jednom okamˇziku. Aˇz na v´ yjimky, kdy bylo tˇreba simulovat zpoˇzdˇen´ı. V tom pˇr´ıpadˇe je s´ıt’ vyhodnocena dvakr´ at. Na zaˇc´atku a po uplynut´ı zpoˇzdˇen´ı. Pro vyhodnocen´ı s´ıtˇe je pro kaˇzd´ y m´od sestavena metoda test(), kter´ a provede vyhodnocen´ı s´ıtˇe po stisknut´ı tlaˇc´ıtka pro emulaci. N´ıˇze uv´ ad´ım pˇr´ıklad vyhodnocen´ı s´ıtˇe pro m´ od HDG/SEL. private bool test(bool HdgSel, bool PbSwHdgSel, bool HdgSelVol, bool LandTrk_m) { Neg1.mValue = !HdgSel; Neg1.vyhodnot(); Sw1.mValue = PbSwHdgSel; Sw1.vyhodnot(); Sw2.mValue = HdgSelVol; Sw2.vyhodnot(); Neg2.mValue = !LandTrk_m; Neg2.vyhodnot(); Or1.mValue = PbSwHdgSel || HdgSelVol; Or1.vyhodnot(); And1.mValue = (PbSwHdgSel || HdgSelVol) && !HdgSel && !LandTrk_m; And1.vyhodnot(); HdgSelOut.mValue = And1.mValue; HdgSelOut.vyhodnot(); return HdgSelOut.mValue; } private void btEmulate_Click(object sender, System.EventArgs e) { bool aktiv = this.test(HdgSe.mValue,PbSwHdgSel.mValue,HdgSelVol.mValue,LandTrkm.mValue); if(aktiv) { //spustime simulaci } }
10
´ REALIZACE SIMULATORU
10.7.7
41
V´ ysledn´ a podoba logick´ e s´ıtˇ e
Obr´ azek 29: Nakreslen´ı s´ıtˇe v n´ avrh´ aˇri Visual Studia 2003
Obr´ azek 30: Vzhled s´ıtˇe po spuˇstˇen´ı programu
10.8
Shrnut´ı
Uveden´ y zp˚ usob implementace simul´ atoru logick´ ych s´ıt´ı je velice jednoduch´ y, avˇsak plnˇe funkˇc´ı a pro u ´ˇcely m´e aplikace postaˇcuj´ıc´ı.
11 KINEMATIKA
11
42
Kinematika
V t´eto f´ azi je tˇreba realizovat blok LETADLO ze z´ akladn´ıho sch´ematu. V dalˇs´ım textu se budu vˇenovat kinematick´ ym rovnic´ım, model˚ um pro jednotliv´e m´ody a jejich zaˇclenˇen´ı do prostˇred´ı Visual Studia. Protoˇze jsem nemˇel k dispozici dynamick´e parametry letounu A310, jsou vˇsechny modely navrˇzeny pro letoun L410.
11.1
M´ od V/S
Jak uˇz bylo zm´ınˇeno, m´od V/S je z´ akladn´ım m´odem pro pod´eln´ y kan´ al autopilotu. Umoˇzn ˇuje volbu vertik´ aln´ı rychlosti a jej´ı stabilizaci. Z´akladn´ı kinematickou rovnici popisuj´ıc´ı vertik´ aln´ı rychlost lze napsat jako: h˙ = V0 (Θ − α) + uZ Integrac´ı pˇredch´ azej´ıc´ı rovnice dost´ av´ ame rovnici pro v´ ypoˇcet barometrick´e v´ yˇsky: h = V0 ((Θ − α) + uZ ) dt
(1)
(2)
Pokud budeme pracovat s konstantn´ı sloˇzkou vertik´ aln´ıho vˇetru, dostaneme vztah pro barometrickou v´ yˇsku ve tvaru: (3) h = V0 (Θ − α) t + uZ t Aby bylo moˇzn´e uveden´e rovnice ˇreˇsit, je tˇreba uvaˇzovat i nˇekter´e dynamick´e parametry letadla. Pro ˇreˇsen´ı tˇechto rovnic jsem vyˇsel z autopilotu pod´eln´eho pohybu. Jeho strukturu ukazuje obr´ azek.
Obr´ azek 31: Simulinkov´e sch´ema stabilizace vertik´aln´ı rychlosti Nastaven´ı autopilotu jsem provedl metodou geometrick´eho m´ısta koˇren˚ u a dospˇel k n´ asleduj´ıc´ım hodnot´ am zes´ılen´ı: KΘ = 1, KΘ˙ = 1, Kh˙ = 0.085
11 KINEMATIKA
43
Obr´ azek 32: Stabilizace vertik´ aln´ı rychlosti - odezva na skok
Obr´ azek 33: Pr˚ ubˇeh v´ yˇsky pˇri konstantn´ı vertik´ aln´ı rychlosti
11.2
M´ od ALT
M´ od ALT udrˇzuje zvolenou letovou hladinu, t.j zajiˇst’ujˇe stabilizaci barometrick´e v´ yˇsky. Sch´ema pro m´od ALT dostaneme jednoduchou u ´pravou sch´ematu 31.
11 KINEMATIKA
44
Obr´ azek 34: Simulinkov´e sch´ema stabilizace barometrick´e v´ yˇsky
Obr´ azek 35: Stabilizace barometricke vysky
11 KINEMATIKA
45
Obr´ azek 36: Pr˚ ubˇeh vertik´ aln´ı rychlosti pˇri stabilizaci v´ yˇsky Pˇri stabilizaci barometrick´e v´ yˇsky nen´ı zapojen automat tahu motoru. Ust´ alen´ı probˇehne sice pomaleji, ale bez pˇrekmitu.
11.3
M´ od HDG/SEL
V pˇredchoz´ıch odstavc´ıch jsem principielnˇe vyˇreˇsil kinematiku nutnou pro pˇrep´ın´ an´ı m´od˚ u v pod´eln´em kan´ alu. Dalˇs´ım u ´kolem je vyˇreˇsit stranov´ y pohyb. Strukturu obvodu koordinovan´eho stranov´eho
Obr´ azek 37: Sch´ema koordinovan´eho stranov´eho pohybu pohybu ukazuje obr´ azek 37. Pˇri n´ avrhu metodou GMK jsem doˇsel k tˇemto hodnot´ am zes´ılen´ı: Kψ˙ = 0.5, Kβ = 1, Kγ = 1.7, Kγ˙ = 2.5 V pˇr´ım´e vˇetvi obvodu je zapojen blok saturace, kter´ y zajiˇst’uje omezen´ı pˇr´ıˇcn´eho n´ aklonu tak, aby nepˇrekroˇcil 30◦ .
11 KINEMATIKA
46
Obr´ azek 38: Pˇrechodov´e charakteristiky v´ ystup˚ u koordinovan´eho stranov´eho pohybu
11.4
M´ od VOR
Kinematiku letu v paprsku radiomaj´ aku popisuj´ı n´ asleduj´ıc´ı vztahy. Letadlo let´ı konstantn´ı rychlost´ı ´hlem setk´an´ı s trat´ı Δψ a je v dosahu sign´ alu V0 a bl´ıˇz´ı se k zadan´emu kursu trati ψT pod u ´hl˚ u vznik´ a u ´hlov´ a odchylka od radiomaj´ aku VOR, kter´ y mˇeˇr´ı jeho azimut ψA . Rozd´ılem tˇechto u trati T . Δψ = ψ − ψ T
(4)
T = ψT − ψA
(5)
Pˇr´ısluˇsn´a kinematick´ a rovnice je d´ ana vztahem: sinT = y/D → T ∼ = y/D
(6)
kde D je pˇr´ım´a promˇenn´ a vzd´ alenost k radiomaj´ aku. Tu m˚ uˇzeme mˇeˇrit d´ alkomˇerem DME Distance Measuring Equipment, kter´ y b´ yv´ a um´ıstˇen spolu s radiomaj´ akem VOR. Nahrazen´ı funkce sinus u ´hlem v rovnici 6 umoˇzn ˇuje skuteˇcnost, ˇze letadlo se pohybuje uvnitˇr line´ arn´ıho p´ asma v odech rozmez´ı T = ±10◦ . Vypoˇcten´a odchylka je u A310 zobrazena na navigaˇcn´ım displeji ND v m´ ROSE, ARC a MAP bˇrevnem pohybuj´ıc´ım se rovnobˇeˇznˇe s ukazatelem kursu trati. Souˇcasnˇe je ˇsipkou indikov´ an i smˇer letu TO/FROM vzhledem k maj´ aku VOR, jej´ıˇz smysl se ˇr´ıd´ı vztahy: T O : |ψ − ψA | 90◦ ◦
F ROM : |ψ − ψA | ≺ 90
(7) (8)
11 KINEMATIKA
47
N´ asleduj´ıc´ı rovnice ukazuje v´ ypoˇcet kolm´e rychlosti y˙ pˇribliˇzov´an´ı k trati. ˙ 0 → y˙ ∼ sinΔψ = y/V = V0 Δψ + u y
(9)
Vypuˇstˇen´ı goniometrick´e funkce je moˇzn´e vzhledem ke konstantn´ı hodnotˇe Δψ ˇ ıd´ıc´ı syst´em pro let po trati dan´ R´ yu ´hlovou odchylkou z´ısk´ ame rozˇs´ıˇren´ım syst´emu pro stranov´ y pohyb o v´ ypoˇcet kinematick´e rovnice.
Obr´ azek 39: Simulinkov´e sch´ema letu ˇr´ızen´e u ´hlovou odchylkou od trati
Obr´ azek 40: Pˇrechodov´e charakteristiky pro let v m´ odu VOR pro vzd´ alenost letadla 5000 m
11 KINEMATIKA
48
Obr´ azek 41: Pˇrechodov´e charakteristiky pro let v m´ odu VOR pro vzd´ alenost letadla 1000 m Z obr´ azk˚ u je patrn´e, ˇze syst´em je navrˇzen tak, ˇze pokud se letadlo nal´ez´a daleko od radi´ alu, zatoˇc´ı a let´ı smˇerem k nˇemu - viz. obr. 40.
11.5
M´ od LAND
K m´odu LAND nebyl z ˇcasov´ ych d˚ uvod˚ u navrˇzen ˇr´ıdic´ı syst´em. Je implementov´ana pouze kinematika, coˇz vˇsak je v souladu se zad´ an´ım.
Obr´ azek 42: Let v sestupov´e rovinˇe
11 KINEMATIKA
49
Obr´ azek 42 naznaˇcuje kinematiku letu v sestupov´e rovinˇe. Pˇredpokl´ ad´ a se let ve stˇredu kursov´e roviny, kter´eho jiˇz bylo dosaˇzeno v u ´seku stˇredn´ıho pˇribl´ıˇzen´ı. Jelikoˇz pro let v sestupov´e rovinˇe (pro u ´ˇcely m´e diplomov´e pr´ ace) mohu pouˇz´ıt autopilot pod´eln´eho pohybu, zab´ yval jsem se ˇreˇsen´ım kinematiky pouze ve f´ azi podrovn´ an´ı. Situace v podrovn´ an´ı je naznaˇcena obr´ azkem.
Obr´ azek 43: Detail podrovn´ an´ı Podrovn´ an´ı lze s v´ yhodou aproximovat exponencielou. Pro generov´ an´ı ˇr´ıd´ıc´ıho sign´ alu plat´ı n´ asleduj´ıc´ı vztahy: −t
h (t) = h (0) · e τ ˙ = −h (0) · 1 · e −t τ h (t) τ
(10) (11)
Z tˇechto vztah˚ u je moˇzno vypoˇc´ıst velikost ˇcasov´e konstanty τ , v´ yˇsku zah´ ajen´ı podrovn´ an´ı h (0) ˙ v okamˇziku zah´ a rychlost kles´an´ı h (0) ajen´ı podrovn´ an´ı. Uvaˇzujeme-li rychlost letadla vi , m˚ uˇzeme ji rozloˇzit na sloˇzky. Pro u ´sek D tak dost´ av´ ame vztah: D = vx · 3τ = vi cosγ · 3τ
(12)
Jelikoˇz u ´hel sestupov´e roviny b´ yv´ a mal´ y, m˚ uˇzeme ps´at, ˇze cosγ = 1 Pˇredpokl´ ad´ ame-li dobu trv´ an´ı podrovn´ avac´ıho man´evru 4τ , plat´ı pro u ´sek L vztah: D = 4τ vi =
h (0) + D = τ vi + D tgγ
(13)
Uveden´e vztahy pˇredstavuj´ı vˇsechny nutn´e rovnice, kter´e byly potˇreba k naprogramov´ an´ı podrovn´ an´ı.
11 KINEMATIKA
11.6
50
Implementace kinematiky do prostˇ red´ı Visual Studia
Do prostˇred´ı Visual Studia lze vˇsechny uvedn´e modely implementovat zaˇclenˇen´ım assembly, kterou vytvoˇr´ıme prostˇrednictv´ım programu Matlab Wizard. Postup vytvoˇren´ı .Net assembly ze simulinkov´eho modelu uk´ aˇzu na pˇr´ıkladu. Pˇredpokl´ adejme, ˇze m´ame sch´ema pˇrenosov´e funkce zn´ azornˇen´e obr´ azkem.
Obr´ azek 44: Pˇrenosov´ a funkce Z´aloˇzku Real Time Workshop ze Simulation Parameters zaˇskrtneme podle obr´ azku:
Obr´ azek 45: Konfigurace Real Time Workshop
11 KINEMATIKA
51
Pot´e stiskneme tlaˇc´ıtko Generate Code. Pokud vˇse probˇehlo v poˇra´dku, vytvoˇr´ı se sloˇzka priklad cs2003 rtw. Spust´ıme Matlab Wizard a zvol´ıme soubor priklad.mk.
Obr´ azek 46: Vytv´aˇren´ı assembly O spr´ avnˇe vygenerovan´e assembly n´as ujist´ı dialogov´e okno.
Obr´ azek 47: Zpr´ ava o uspˇeˇsn´em vygenerov´an´ı .Net assembly
11.7
Shrnut´ı
V t´eto v´ yvojov´e f´ azi jsou pˇripraveny vˇsechny bloky ze z´akladn´ıho sch´ematu 16 a je tedy moˇzn´e pˇristoupit k sestaven´ı programu.
12
ˇ ´ ARCHITEKTURA VYTVOREN EHO PROGRAMU
12
52
Architektura vytvoˇ ren´ eho programu
Obr´ azek 48: V´ ysledn´e blokov´e sch´ema navrˇzen´eho syst´emu Sch´ema 48 ukazuje zapojen´ı jednotliv´ ych blok˚ u v aplikaci. Oproti sch´ematu 16 jsem uˇcinil urˇcit´e ´ ´I PANELY v sobˇe obsahuje nejen FCU, ale t´eˇz EFIS control panel, NAVIzmˇeny. Blok OVLADAC GATION panel, d´ ale panely EADI a EHSI. Funkce FCU a EFIS control panelu byla pops´ ana v u ´vodu pr´ ace. NAVIGATION panel v sobˇe obsahuje VOR/ILS control panel a umoˇzn ˇuje ladˇen´ı VOR/ILS maj´ ak˚ u. Panely EADI a EHSI umoˇzn ˇuj´ı ovl´ ad´ an´ı grafick´ ych symbol˚ u na displej´ıch EFIS za u ´ˇcelem uˇzivatelova sezn´amen´ı se zobrazovan´ ymi symboly. Protoˇze tvorba tˇechto pˇridan´ ych panel˚ u pˇresahuje r´ amec p˚ uvodn´ıho zad´ an´ı, a protoˇze se odv´ıjela od jiˇz uveden´ ych postup˚ u, nebudu zde zp˚ usob jejich programov´ an´ı uv´ adˇet. Snad jen pˇripomenu, ˇze veˇsker´e zdrojov´e k´ody jsou souˇc´ast´ı pˇriloˇzen´eho CD. V n´ asleduj´ıc´ıch odstavc´ıch upˇresn´ım funkci implementovan´ ych blok˚ u.
12.1
Ovl´ adac´ı panely
´ ´I PANELY, d´ Blok OVLADAC ale OP, zajiˇst’uje ovl´ ad´ an´ı aplikace. Komunikuje s blokem LOGIKA a nastavuje parametry simulace v bloc´ıch LETADLO a EFIS. 12.1.1
Implementace v programu
• FormFcu - tˇr´ıda obsahuje metody pro nastaven´ı parametr˚ u simulace. Z´aroveˇ n obsahuje jednoduchou logiku pro pˇr´ıpad, ˇze je prov´ adˇena simulace bez pouˇzit´ı ovl´ ad´ an´ı logick´ ych s´ıt´ı a v neposledn´ı ˇradˇe metody pro vykreslen´ı FCU a panel˚ u EFIS, NAVIGATION, EADI a EHSI.
12.2
Logika
´ AN ´ ´I S´ITE ˇ umoˇzn Na z´akladˇe pˇrijat´ ych informac´ı z blok˚ u OP, LETADLO a OVLAD ˇuje simulaci konkr´etn´ıho m´ odu a pˇrechody mezi m´ody.
12
ˇ ´ ARCHITEKTURA VYTVOREN EHO PROGRAMU
12.2.1
53
Implementace v programu
´ AN ´ ´I S´ITE. ˇ O funkci tohoto bloku se dˇel´ı metody tˇr´ıd implementovan´ ych v bloc´ıch OP a OVLAD
12.3
Letadlo
Blok obsahuje uveden´e autopiloty, dynamiku a kinematiku letadla, zas´ıl´ a bloku LOGIKA vypoˇcten´e parametry a ten na jejich z´ akladˇe pˇrepne do urˇcit´eho m´odu, nebo v nˇem setrv´a. D´ ale zas´ıl´ a vypoˇcten´e hodnoty bloku EFIS. 12.3.1
Implementace v programu
• Knihovna Hradla - Obsahuje vytvoˇren´ a logick´ a hradla a metody pro pr´ aci s nimi. • Knihovna pPohyb - obsahuje model pod´eln´eho pohybu letadla. • Knihovna StranovyPohyb - Obsahuje model stranov´eho pohybu letadla. • Knihovna VorLoc - Obsahuje model letu letadla v paprsku radiomaj´ aku VOR/LOC.
12.4
EFIS
Tento blok obsahuje PFD a ND displeje. Na z´ akladˇe informac´ı pˇrijat´ ych z blok˚ u OP, LOGIKA a LETADLO zobrazuje na EFIS displej´ıch letovou a navigaˇcn´ı situaci. 12.4.1
Implementace v programu
• FormEadi - tˇr´ıda, obsahuj´ıc´ı metody pro kreslen´ı PFD. • FormEhsi - tˇr´ıda, obsahuj´ıc´ı metody pro kreslen´ı ND.
12.5
Ovl´ ad´ an´ı s´ıtˇ e
Blok slouˇz´ı k aktivaci a vysl´ an´ı sign´ al˚ u z logick´ ych s´ıt´ı do bloku LOGIKA, kter´ y je vyhodnot´ı a na jejich z´akladˇe umoˇzn´ı simulaci konkr´etn´ıho m´ odu. 12.5.1
Implementace v programu
• FormAltMod - kresl´ı sch´ema logick´e s´ıtˇe ALT m´odu a obsahuje metody pro jej´ı vyhodnocen´ı. • FormGaMod - kresl´ı sch´ema logick´e s´ıtˇe GA m´odu a obsahuje metody pro jej´ı vyhodnocen´ı. • FormHdgMod - kresl´ı sch´ema logick´e s´ıtˇe HDG m´odu a obsahuje metody pro jej´ı vyhodnocen´ı. • FormHdgSelMod - kresl´ı sch´ema logick´e s´ıtˇe HDG SEL m´ odu a obsahuje metody pro jej´ı vyhodnocen´ı. • FormLandMod - kresl´ı sch´ema logick´e s´ıtˇe LAND m´odu a obsahuje metody pro jej´ı vyhodnocen´ı. • FormLocMod - kresl´ı sch´ema logick´e s´ıtˇe LOC m´odu a obsahuje metody pro jej´ı vyhodnocen´ı. • FormLvlChMod - kresl´ı sch´ema logick´e s´ıtˇe LVL/CH m´odu a obsahuje metody pro jej´ı vyhodnocen´ı.
12
ˇ ´ ARCHITEKTURA VYTVOREN EHO PROGRAMU
54
• FormNavMod - kresl´ı sch´ema logick´e s´ıtˇe NAV m´odu a obsahuje metody pro jej´ı vyhodnocen´ı. • FormProfileMod - kresl´ı sch´ema logick´e s´ıtˇe PROFILE m´ odu a obsahuje metody pro jej´ı vyhodnocen´ı. • FormToMod - kresl´ı sch´ema logick´e s´ıtˇe TO m´odu a obsahuje metody pro jej´ı vyhodnocen´ı. • FormVorMod - kresl´ı sch´ema logick´e s´ıtˇe VOR m´odu a obsahuje metody pro jej´ı vyhodnocen´ı. • FormVsMod - kresl´ı sch´ema logick´e s´ıtˇe V/S m´odu a obsahuje metody pro jej´ı vyhodnocen´ı.
12.6
V´ ysledn´ y vzhled aplikace
Obr´ azek 49: V´ ysledn´ y vzhled aplikace - pˇr´ıklad simulace pˇrepnut´ı m´odu HDG SEL do m´ odu NAV
´ ER ˇ ZAV
13
13
55
Z´ avˇ er
Ve sv´e diplomov´e pr´ aci jsem navrhl a realizoval program pro simulaci letov´ ych m´od˚ u letounu Airbus A310. Podaˇrilo se mi vytvoˇrit funkˇcn´ı simul´ ator pouˇziteln´ y nejen pro vlastn´ı simulaci letov´ ych m´od˚ u, ale d´ıky implementovan´emu simul´atoru logick´ ych s´ıt´ı i pro jejich v´ yuku z hlediska logick´ ych podm´ınek. Souˇc´ast´ı programu je i demo, kter´e demonstruje simulaci vˇsech d˚ uleˇzit´ ych m´od˚ u pouˇzit´ ych od startu letadla aˇz po jeho automatick´e pˇrist´ an´ı v kategorii IIIb. Jelikoˇz simulace displej˚ u EFIS, kter´ a je v pr´ aci rovnˇeˇz pouˇzita, je nad r´ amec p˚ uvodn´ıho zad´ an´ı, nen´ı implementov´ ano zobrazen´ı varovn´ ych symbol˚ u. Toto rozˇs´ıˇren´ı spolu s uvaˇzov´an´ım logick´ ych podm´ınek pro zobrazov´ an´ı varovn´ ych symbol˚ u a mezn´ıch stav˚ u, m˚ uˇze b´ yt t´ematem dalˇs´ıch prac´ı.
13.1
´ eˇ Uspˇ snost zadan´ eho u ´ kolu
1. Vytvoˇrte zobrazovaˇc m´ od˚ u ˇcinnosti syst´emu automatick´eho ˇr´ızen´ı letu vˇcetnˇe pˇr´ısluˇsn´e ˇca ´sti prim´ arn´ıho letov´eho displeje. Symboly m´ od˚ u jsou bˇehem simulace zobrazov´any na zobrazovaˇci m´od˚ u FMA a letov´ a a navigaˇcn´ı situace jsou zobrazov´ any na displej´ıch EFIS. 2. Sestavte logickou s´ıt’ a jej´ı ovl´ ad´ an´ı dialogov´ym zp˚ usobem, umoˇzn ˇuj´ıc´ı aktivov´ an´ı pˇr´ısluˇsn´ych m´ od˚ u ˇcinnosti autopilotu, pˇrechody mezi jeho m´ ody s odpov´ıdaj´ıc´ım zobrazen´ım na zobrazovaˇci m´ od˚ u Vytvoˇren´ y simul´ ator umoˇzn ˇuje aktivovat sign´ aly v logick´e s´ıti a rovnˇeˇz indikovat aktivn´ı vodiˇce ve sch´ematu zmˇenou jeho barvy. Aktivac´ı sign´ al˚ u a spuˇstˇen´ım emulace se z´aroveˇ n spust´ı simulace konkr´etn´ıho m´ odu. 3. Pˇri pˇrechodech mezi m´ ody uvaˇzujte kinematiku pohybu letadla Je uvaˇzov´ana kinematika, vˇcetnˇe dynamick´ ych parametr˚ u. To umoˇzn ˇuje pozorovat na displej´ıch EFIS letovou a navigaˇcn´ı situaci. 4. Ovˇeˇrte ˇcinnost navrˇzen´eho syst´emu Program spolehlivˇe bˇeˇz´ı na vˇsech poˇc´ıtaˇc´ıch s procesorem nad 600 MHz a pamˇet´ı 256 MB. Z uveden´ ych m´od˚ u nen´ı implementov´ an pouze m´ od GA. Vˇsechny ostatn´ı m´ody se mi podaˇrilo oˇzivit.
14
´ NAVRHY NA NAVAZUJ´IC´I PROJEKTY
14
56
N´ avrhy na navazuj´ıc´ı projekty
Bˇehem tvorby m´e diplomov´e pr´ ace jsem ˇreˇsil r˚ uzn´e probl´emy, kter´e by mohly poslouˇzit jako n´ amˇety pro dalˇs´ı diplomov´e pr´ ace.
14.1
Simulace letu podle letov´ eho pl´ anu
´ Ukolem pr´ ace by bylo navrhnout a realizovat syst´em pro simulaci letu letadla podle letov´eho pl´ anu. V pr´ aci by byl realizov´ an Flight Managment System do kter´eho by uˇzivatel mohl zadat celou trat’ letu a spustit simulaci. Poloha letadla by byla zn´ azornˇena na mapˇe. Syst´em by byl realizov´ an v prostˇred´ı Matlab. V pˇr´ıpadˇe, ˇze by na t´ematu pracoval jeden student, byl by pro vizualizaci pouˇzit simul´ ator Flight Gear. V pˇr´ıpadˇe spolupr´ ace dvou student˚ u by jeden student navrhl matematick´ y model a druh´ y vytvoˇril grafick´e rozhran´ı, napˇr´ıklad pouˇzit´ım OpenGL, nebo DiretX, pˇr´ıpadnˇe vyuˇzit´ım Virtual Reality Toolboxu.
14.2
Vyuˇ zit´ı jazyku Java v prostˇ red´ı Matlab
Programov´ y bal´ık Matlab od sv´e verze 6 umoˇzn ˇuje u ´plnou integraci s jazykem Java. Pro tento u ´ˇcel ´ vˇsak neexistuje ˇz´adn´ a uspokojiv´ a publikace. Ukolem pr´ace by bylo sezn´ amit se s moˇznostmi vyuˇzit´ı jazyku Java v Matlabu, prov´est porovn´ an´ı s moˇznostmi Matlab scriptu. D´ ale by student sestavil mnoˇzstv´ı motivaˇcn´ıch pˇr´ıklad˚ u. V´ ystupem pr´ ace by byla vyˇcerp´ avaj´ıc´ı studie na toto t´ema.
14.3
Simulace displej˚ u EFIS pro letoun Boeing B747
Dosavadn´ı diplomov´e pr´ ace na dan´e t´ema se zab´ yvaly pouze letouny A310 a L139. V´ ystupem pr´ ace by byl detailn´ı popis diplej˚ u B747, vˇcetnˇe simulaˇcn´ıho programu. Souˇc´ast´ı programov´e ˇc´asti by byl t´eˇz n´ avrh a realizace interface pro komunikaci s prostˇred´ım Matlab.
14.4
Autopilot pro letoun Boeing B747
´ Knihovna Airlib pro Matlab obsahuje dynamick´e parametry nˇekolika letoun˚ u vˇcetnˇe B747. Ukolem by bylo navrhnout autopilot tohoto letadla. Po propojen´ı se simul´atorem Flight Gear a programem na simulaci displej˚ u pro B747, coˇz by bylo u ´kolem jin´e diplomov´e pr´ ace, by vznikl kompletn´ı simul´ ator na z´ akladˇe matematick´eho modelu.
14.5
Simulace displej˚ u ED letounu Airbus A310
´ Ukolem pr´ ace by bylo sestavit studii na dan´e t´ema, t.j displeje pro sledov´ an´ı parametr˚ u motoru, a vytvoˇrit poˇc´ıtaˇcov´ y program pro simulaci tˇechto displej˚ u. Ovl´ ad´ an´ı programu a zobrazov´ an´ı by bylo navrˇzeno tak, aby bylo moˇzn´e program pouˇz´ıt pro v´ yuku.
REFERENCE
57
Reference Literatura [1] Sells, Ch. (2005). C# a WinForms Zonner Press. ˇ sen´e pˇr´ıklady v C# aneb C# skuteˇcnˇe prakticky Kopp. [2] Pirkl, J. (2005). Reˇ ˇ ´nyi, M. (1995). Letov´e a palubn´ı postupy Airbusu A310 - diplomov´ [3] Beza a pr´ ace FEL CVUT, Praha. ˇ (2002). Simulace letov´eho a navigaˇcn´ıho displeje na PC - diplomov´ [4] Kroupa, S. a pr´ ace FEL ˇ CVUT, Praha. ˇ ˇk, V. (2005). Syst´emy ˇr´ızen´ı letu Vydavatelstv´ı CVUT, [5] Pech, Z., Ve Praha. ˇar, B., Zaplat´ılek, K. (2005). Matlab – tvorba uˇzivatelsk´ych aplikac´ı Nakladatelstv´ı [6] Don BEN – Technick´a literatura. [7] Aibus Industry (1990). A310 – Aircraft Maintenance Manual Aibus Industry
Internetov´ e zdroje ˇ [8] Susta, R.; Programovac´ı jazyky pro ˇr´ızen´ı [online]. http://dce.felk.cvut.cz/pjr/. ˇ Syst´emy ˇr´ızen´ı letu [online]. http://dce.felk.cvut.cz/srl1/. [9] Kroupa, S.; [10] Maˇ sek, J.; Str´ anky projektu Matlab Wizard [online]. http://patf-biokyb.lf1.cuni.cz/projects/matlab-wizards/wizards.htm. [11] The Mathworks, Inc.; Matlab [online]. http://www.mathworks.com/products/matlab. [12] The Mathworks, Inc.; Matlab Central [online]. http://www.mathworks.com/matlabcentral/. [13] The Code Project; The Code Project [online]. http://www.codeproject.com/. [14] Aibus Industry; Airbus [online]. http://www.airbus.com/en/.
Pouˇ zit´ y software [15] Microsoft, Inc.; Windows XP, Home Edition [16] Microsoft, Inc.; Visual Studio .Net 2003 [17] The Mathworks, Inc.; Matlab 6.5 [18] Maˇ sek, J., Stodulka P.; Matlab Wizard
A
ˇ ´ILOHA - OVLAD ´ AN ´ ´I PROGRAMU PR
A
58
Pˇ r´ıloha - Ovl´ ad´ an´ı programu
Ovl´ ad´ an´ı programu se prov´ ad´ı prostˇrednictv´ım ovl´ adac´ıho formul´ aˇre. Ten obsahuje z´ aloˇzky s pˇr´ısluˇsn´ ymi ovl´ adac´ımi panely.
A.1
FCU
Obr´ azek 50: FCU panel Zvolen´ım z´aloˇzky FCU se otevˇre ovl´ adac´ı panel autopilotu. Jeho ovl´ ad´ an´ı je obdobn´e jako v re´aln´em letadle. Potvrzen´ı hodnoty zvolen´e voliˇcem se provede kliknut´ım na voliˇc. Voliˇc umoˇzn ˇuje jemn´e a hrub´e nastavov´ an´ı hodnot, podle toho do kter´e jeho ˇc´asti je um´ıstˇen kurzor.
A.2
EFIS
Obr´ azek 51: EFIS control panel
A
ˇ ´ILOHA - OVLAD ´ AN ´ ´I PROGRAMU PR
59
• ND modes - Slouˇz´ı k v´ ybˇeru zobrazovac´ıch m´od˚ u navigaˇcn´ıho displeje ND. • Range - Slouˇz´ı k pˇrep´ın´ an´ı rozsah˚ u na navigaˇcn´ım displeji v m´ odu MAP a PLAN. • MAP - Pokud je pro ND zapnut m´ od MAP, nebo PLAN, umoˇzn ˇuje zobrazen´ı trat’ov´ ych ’ bod˚ u, maj´ ak˚ u, letiˇst . • VOR/NAV/ILS - Pˇrep´ın´ an´ı mezi m´ody VOR, NAV a ILS. Pokud je zvolen m´ od VOR nebo ILS, je moˇzno na FCU tlaˇc´ıtkem V/L aktivovat m´ od VOR respektive LOC. V pˇr´ıpadˇe volby NAV, na FCU stiskem pˇr´ısluˇsn´eho tlaˇc´ıtka aktivujeme m´od NAV. • FD - Zap´ın´ a nebo vyp´ın´ a letov´ y direktor.
A.3
NAVIGATION
Na t´eto z´aloˇzce se nach´az´ı VOR/ILS control panel. Naladˇen´ı maj´ aku se provede stiskem tlaˇc´ıtka TUNE. Po stisku tlaˇc´ıtka X se na dispeji CRS uk´ aˇze kurs k maj´aku. Tento kurs nastav´ıme posuvn´ıkem OBS. Simulace letu se spust´ı pˇrepnut´ım pˇrep´ınaˇce VOR/NAV/ILS do pˇr´ısluˇsn´e polohy a n´ asledn´ ym stiskem pˇr´ısluˇsn´eho tlaˇc´ıtka na FCU.
Obr´ azek 52: VOR/ILS control panel
A
ˇ ´ILOHA - OVLAD ´ AN ´ ´I PROGRAMU PR
A.4
60
EADI
Tento panel slouˇz´ı pouze pro sezn´ amen´ı se s grafick´ ymi symboly na PFD. Nem´ a vliv na simulaci m´od˚ u.
Obr´ azek 53: Ovl´ ad´ an´ı EADI
A.5
EHSI
Obr´ azek 54: Ovl´ ad´ an´ı EHSI Tento panel slouˇz´ı pouze pro sezn´ amen´ı se s grafick´ ymi symboly na ND. Nem´ a vliv na simulaci m´od˚ u.
A
ˇ ´ILOHA - OVLAD ´ AN ´ ´I PROGRAMU PR
A.6
61
Ovl´ ad´ an´ı s´ıtˇ e
Simulaci m´ od˚ u je moˇzno prov´ adˇet nejen prostˇrednictv´ım FCU, ale tak´e pˇr´ımou volbou logick´ ych podm´ınek v logick´e s´ıti. Po zvolen´ı poˇzadovan´ ych parametr˚ u na FCU a zvolen´ım platn´ ych logick´ ych podm´ınek, se tlaˇc´ıtkem EMULATE spust´ı simulace letu v poˇzadovan´em m´odu. Na obr´ azku je pˇr´ıklad logick´e s´ıtˇe m´odu ALT.
Obr´ azek 55: Logick´ a s´ıt’ m´odu ALT
A.7
Menu - Aplication
• Reset - Volba t´eto poloˇzky otevˇre dialogov´e okno pro vyresetov´ an´ı programu. Programu se nastav´ı parametry kter´e mˇel pˇri spuˇstˇen´ı. • Demo - Volba t´eto poloˇzky otevˇre dialogov´e okno pro spuˇstˇen´ı dema. Demo simuluje let letadla ve vˇsech z´akladn´ıch m´odech. • Exit - Ukonˇcen´ı aplikace.
A.8
Menu - Logic
Umoˇzn ˇuje otevˇr´ıt sch´emata uveden´ ych logick´ ych funkc´ı a jejich pouˇzit´ı pro simulaci uveden´ ym zp˚ usobem.
A.9
Menu - Units
Poloˇzka Transformations otevˇre dialogov´e okno pro pˇrevod jednotek.
A
ˇ ´ILOHA - OVLAD ´ AN ´ ´I PROGRAMU PR
A.10
Menu - Displays
• Primary Flight Display - Volba poloˇzky otevˇre PFD displej, pokud nen´ı otevˇren. • Navigation Display - Volba poloˇzky otevˇre ND displej, pokud nen´ı otevˇren.
A.11
Menu - Help
Volbou poloˇzky Tutorial otevˇreme manual k programu.
A.12
Pˇ r´ıklad simulace
Obr´ azek 56: Simulace letu v m´odu PROFILE
62
ˇ ´ILOHA - INSTALACE PROGRAMU B PR
B
63
Pˇ r´ıloha - Instalace programu
Pro u ´spˇeˇsn´ y bˇeh programu je tˇreba m´ıt nainstalov´ an operaˇcn´ı syst´em Windows 2000, nebo vyˇsˇs´ı a .Net Framework verzi 1.1, nebo vyˇsˇs´ı. Verze 1.1 je souˇc´ast´ı pˇriloˇzen´eho CD. Po u ´spˇeˇsn´em nainstalov´ an´ı .Net Framework pˇrekop´ırujeme do zvolen´eho adres´ aˇre sloˇzku Aplication. Vˇsechny soubory v t´eto sloˇzce jsou d˚ uleˇzit´e pro bˇeh programu a musej´ı tedy z˚ ustat jej´ı souˇc´ast´ı. Program spust´ıme zvolen´ım a spuˇstˇen´ım souboru FMA.EXE ze sloˇzky Aplication.
C
Pˇ r´ıloha - Obsah pˇ riloˇ zen´ eho CD • Source - Zdrojov´e k´ ody programu. • Matlab - Veˇsker´e vytvoˇren´e simulinkov´e modely pouˇzit´e v programu. • Aplication - Program FMA simulator. • MatlabWizard - Instalace programu Matlab Wizard pouˇzit´eho pro export sch´emat z programu Simulink. • FrameWork - .Net framework SDK verze 1.1., nutn´ a pro bˇeh vytvoˇren´e aplikace. • LaTex - Zdrojov´ y k´ od t´eto diplomov´e pr´ ace vytvoˇren´e v s´azec´ım programu LaTex.