• Nebyly nalezeny žádné výsledky

VYSOKE´ UCˇ ENI´ TECHNICKE´ V BRNEˇ BRNO UNIVERSITY OF TECHNOLOGY

N/A
N/A
Protected

Academic year: 2022

Podíl "VYSOKE´ UCˇ ENI´ TECHNICKE´ V BRNEˇ BRNO UNIVERSITY OF TECHNOLOGY"

Copied!
47
0
0

Načítání.... (zobrazit plný text nyní)

Fulltext

(1)

VYSOKE ´ UCˇENI´ TECHNICKE´ V BRNEˇ

BRNO UNIVERSITY OF TECHNOLOGY

FAKULTA INFORMAC ˇ NI´CH TECHNOLOGII´

U ´ STAV POCˇI´TACˇOVE´ GRAFIKY A MULTIME´DII´

FACULTY OF INFORMATION TECHNOLOGY

DEPARTMENT OF COMPUTER GRAPHICS AND MULTIMEDIA

AEROWORKS:

GRAFICKE ´ ROZHRANI´ SYSTE´MU AUTOPILOTA

AEROWORKS: GRAPHIC USER INTERFACE FOR AUTOPILOT

BAKALA ´ RˇSKA´ PRA´CE

BACHELOR’S THESIS

AUTOR PRA ´ CE VIKTORIYA DURYAGINA

AUTHOR

VEDOUCI´ PRA ´ CE Ing. PETER CHUDY ´ , Ph.D. MBA

SUPERVISOR

BRNO 2012

(2)

Abstrakt

Tato bakala´rˇska´ pra´ce se zameˇrˇuje na na´vrh graficke´ho uzˇivatelske´ho rozhranı´ pro obsluhu autopilota.

Prvnı´ cˇa´st pra´ce obsahuje kra´tky´ prˇehled teorie automaticky´ch syste´mu˚ pro rˇı´zenı´ letu. Da´le jsou analyzova´ny pozˇadavky na rozhranı´ a prozkouma´ny proble´my komunikace mezi pilotem a syste´mem.

Na´sledneˇ je popsa´n proces na´vrhu a vy´voje nove´ho graficke´ho rozhranı´ syste´mu. Vy´sledne´ rˇesˇenı´ je implementova´no do simula´toru v laboratorˇi SimStar.

Abstract

The objective of the bachelor thesis is to design a graphical user interface for autopilot control system.

The first chapter is dedicated to automatic flight control system theory overview. The next part discusses the user interface requirements and human-computer interaction problems. Subsequently, the design process and the development of new user interface are described. The final solution is implemented in the SimStar simulator.

Klı´cˇova´ slova

autopilot, automaticke´ syste´my rˇı´zenı´ letu, graficke´ rozhranı´, CANaerospace, AW-COM, laboratorˇ SimStar, AeroWorks

Keywords

autopilot, automatic flight control system, graphical user interface, CANaerospace, AW-COM, Sim- Star laboratory, AeroWorks

Citace

Viktoriya Duryagina: Aeroworks: Graficke´ rozhranı´ syste´mu autopilota, bakala´rˇska´ pra´ce, Brno, FIT VUT v Brneˇ, 2012

(3)

Aeroworks: Graficke´ rozhranı´ syste´mu autopilota

Prohla´sˇenı´

Prohlasˇuji, zˇe tato bakala´rˇska´ pra´ce je my´m pu˚vodnı´m autorsky´m dı´lem, ktere´ jsem vypracovala samostatneˇ. Vsˇechny zdroje, prameny a literaturu, ktere´ jsem prˇi vypracova´nı´ pouzˇı´vala nebo z nich cˇerpala, v pra´ci rˇa´dneˇ cituji s uvedenı´m u´plne´ho odkazu na prˇı´slusˇny´ zdroj.

. . . . Viktoriya Duryagina

14. kveˇtna 2012

Podeˇkova´nı´

Na tomto mı´steˇ bych chteˇla podeˇkovat Ing. Peteru Chude´mu, Ph.D. MBA za odborne´ vedenı´ te´to pra´ce a za cenne´ rady a na´meˇty. Da´le bych chteˇla podeˇkovat ty´mu laboratorˇe AeroWorks za pomoc a cˇas, ktery´ mi veˇnovali prˇi zpracova´nı´ te´to bakala´rˇske´ pra´ce.

c

Viktoriya Duryagina, 2012.

Tato pra´ce vznikla jako sˇkolnı´ dı´lo na Vysoke´m ucˇenı´ technicke´m v Brneˇ, Fakulteˇ informacˇnı´ch technologiı´. Pra´ce je chra´neˇna autorsky´m za´konem a jejı´ uzˇitı´ bez udeˇlenı´ opra´vneˇnı´ autorem je neza´konne´, s vy´jimkou za´konem definovany´ch prˇı´padu˚.

(4)

Obsah

1 U´ vod 3

2 Teorie autopilotu˚ 4

2.1 Pohyb v prostoru . . . 4

2.2 Gyroskop . . . 6

2.2.1 Princip gyroskopu . . . 6

2.2.2 Gyroskopicky´ efekt . . . 6

2.2.3 Precese gyroskopu . . . 7

2.3 Prvnı´ autopilot . . . 7

2.4 Modernı´ autopiloty . . . 9

2.5 Za´kladnı´ velicˇiny . . . 9

2.5.1 Rychlost . . . 9

2.5.2 Kurz letu . . . 10

2.5.3 Vy´sˇka . . . 12

2.6 Pozˇadavky na autopilota . . . 12

2.7 Proble´my syste´mu˚ automaticke´ho rˇı´zenı´ letu . . . 13

3 Interakce pilota se syste´mem automaticke´ho pilotova´nı´ 14 3.1 Obecne´ za´sady . . . 15

3.2 Touch screen displej . . . 15

4 Analy´za existujı´cı´ch autopilotu˚ 17 5 Aplikace 19 5.1 Specifikace pozˇadavku˚ . . . 19

5.1.1 Funkcˇnı´ pozˇadavky . . . 19

5.1.2 Jine´ pozˇadavky . . . 21

5.2 Laboratorˇ SimStar . . . 21

5.2.1 Hlavnı´ letovy´ displej . . . 22

(5)

6 Na´vrh aplikace 23

6.1 Na´vrh interakce . . . 23

6.1.1 Diagram prˇı´padu˚ uzˇitı´ . . . 24

6.1.2 Skicova´nı´ . . . 26

6.1.3 Prototypova´nı´ . . . 26

6.1.4 Vizua´lnı´ na´vrh . . . 29

7 Implementace 32 7.1 Pouzˇite´ na´stroje . . . 32

7.1.1 Programovacı´ jazyk C++ . . . 32

7.1.2 Knihovna Qt . . . 32

7.1.3 Qt Style Sheets . . . 32

7.2 Komunikacˇnı´ protokoly . . . 33

7.2.1 Protokol CANaerospace . . . 33

7.2.2 Protokol AW-COM . . . 36

7.3 Nasazenı´ syste´mu˚ . . . 38

8 Testova´nı´ 39

9 Za´veˇr 41

A Obsah prˇilozˇene´ho CD 44

(6)

Kapitola 1

U ´ vod

V dnesˇnı´ dobeˇ jsou modernı´ letadla vybavena velky´m mnozˇstvı´m letecky´ch prˇı´stroju˚ a automatu˚, ktere´ zajisˇt’ujı´ neprˇetrzˇitou kontrolu rezˇimu letu a rˇesˇı´ slozˇite´ u´koly automaticke´ho rˇı´zenı´ a navigace.

Vy´znam teˇchto na´stroju˚ se kazˇdy´m rokem zvysˇuje. Spolu s naru˚stajı´cı´m vy´znamem roste i celkova´

slozˇitost, rozsah a na´rocˇnost na´vrhu a vy´voje teˇchto syste´mu˚. Syste´my do sebe sdruzˇujı´ vı´ce informacı´, pilotu˚m poskytujı´ dalsˇı´ nove´ funkce a na´stroje pro ulehcˇenı´ pra´ce. Cele´ cˇa´sti informacˇnı´ch syste´mu˚ se pak spojujı´ do logicky´ch celku˚, do ktery´ch prˇiby´vajı´ nove´ moduly s novou funkcionalitou. I zkusˇeny´

pilot musı´ prˇed prvnı´ letem s jiny´m letadlem absolvovat dlouha´ sˇkolenı´ a sezna´mit se s obsa´hly´mi manua´ly pro ovla´da´nı´ a chova´nı´ letadla.

Pro tyto du˚vody smeˇrˇuje pozornost vy´voja´rˇu˚ zejme´na k vytva´rˇenı´ jednoduchy´ch, prˇehledny´ch a intuitivnı´ch ovla´dacı´ch rozhranı´ syste´mu˚. Prˇi vy´voji letecke´ho informacˇne´ho syste´mu je potrˇeba kla´st velky´ du˚raz na kvalitu na´vrhu graficke´ho rozhranı´ tak, aby syste´my pilotu˚m poskytovali vsˇechny potrˇebne´ informace jednotny´m zpu˚sobem a v prˇehledne´ podobeˇ.

A pra´veˇ na´vrhem a implementacı´ graficke´ho uzˇivatelske´ho rozhranı´ syste´mu autopilota se zaby´va´

tato bakala´rˇska´ pra´ce. V prvnı´ kapitole pra´ce je uveden kra´tky´ prˇehled historie a teorie automaticky´ch syste´mu˚ rˇı´zenı´ letu. Uvedeny jsou za´kladnı´ fyzika´lnı´ principy, na ktery´ch je zalozˇeno fungova´nı´

autopilotu˚. Pro lepsˇı´ pochopenı´ problematiky pilotnı´ch syste´mu˚ jsou take´ popsa´ny za´klady pohybu letadla v prostoru a vysveˇtleny pojmy s tı´mto souvisejı´cı´. Dalsˇı´ kapitola se veˇnuje obecny´m za´sada´m a proble´mu˚m na´vrhu uzˇivatelsky´ch rozhranı´ pro letecke´ aplikace. Popsa´ny jsou take´ specifikace a pozˇadavky na noveˇ vznikajı´cı´ syste´m.

Hlavnı´ cˇa´st pra´ce je veˇnova´na popisu na´vrhu a vy´voje aplikace, zejme´na designu interakce – procesu komunikace cˇloveˇka se syste´mem. Sledova´n je vy´voj graficke´ho uzˇivatelske´ho rozhranı´, jednotlivy´ch na´vrhovy´ch verzı´ syste´mu˚ a jejich prˇı´nos pro celkovy´ vy´sledek. Vy´sledek na´vrhu je na´sledneˇ implementova´n a nasazen do prostrˇedı´ letecke´ho simula´toru v laboratorˇi SimStar. V poslednı´

kapitole se pak nacha´zı´ shrnutı´ vy´sledku˚ pra´ce a testova´nı´.

(7)

Kapitola 2

Teorie autopilotu ˚

Spolu s prudky´m rozvojem letadel na zacˇa´tku 20. stoletı´ se zacˇı´najı´ objevovat a pouzˇı´vat prvnı´

syste´my automaticke´ kontroly a rˇı´zenı´ letu. Potrˇeba automatizace rˇı´zenı´ letu letadla byla vynucena nedostatecˇnou stabilitou a ovladatelnostı´ letadla – letadla bez automaticky´ch pilotu˚ a syste´mu˚ pro stabilizaci letu byla ve vzduchu ma´lo stabilnı´ a bylo nutne´ neusta´le upravovat spra´vnou pozici letounu, tak aby bylo mozˇne´ zachovat bezpecˇny´ let. Let na letadlech bez automaticke´ho rˇı´zenı´ vyzˇadoval vysokou technickou u´rovenˇ pilotova´nı´, velkou koncentraci vnı´ma´nı´ a soustrˇedeˇnı´ pilota.

Modernı´ konstruova´nı´ letadel se vyznacˇuje sˇiroky´m pouzˇı´va´nı´m syste´mu˚ automaticke´ho letu.

Uplatneˇnı´ automaticky´ch na´stroju˚ je diktova´no vylepsˇenı´m letecky´ch charakteristik letadla, jeho sta- bility a ovladatelnosti. V dany´ moment se syste´my automaticke´ho letu jevı´ jako prostrˇedek poma´hajı´cı´

pilotu ovla´dat letadlo.

Sˇiroka´ automatizace procesu ovla´da´nı´ letadla nevylucˇuje pilota z rˇı´zenı´, ale necha´va´ pro neˇj funkce ovla´da´nı´ ru˚zny´ch rezˇimu˚ autopilota, nastavenı´ autopilota a take´ kontrolu procesu pilotova´nı´ letadla.

Z du˚vodu neprˇetrzˇite´ho technicke´ho pokroku a zlepsˇova´nı´ technicky´ch charakteristik letadel, ktere´

umozˇnˇovaly mnohem delsˇı´ dobu pobytu letadla ve vzduchu, docha´zelo ke sta´le veˇtsˇı´mu zatı´zˇenı´ pilota.

Proto bylo nutne´ podniknout kroky k ulehcˇenı´ pra´ce pilota a posa´dky od unavujı´cı´ch a jednotva´rny´ch u´konu˚ nutny´ch pro stabilizaci a rˇı´zenı´ letadla. A pra´veˇ tyto du˚vody se staly hlavnı´m impulsem pro vznik a rychly´ rozvoj syste´mu˚ automaticke´ho rˇı´zenı´ letadla tzv. autopilotu˚.

2.1 Pohyb v prostoru

Letadlo kona´ v prostoru velmi slozˇity´ pohyb, ktery´ mu˚zˇeme popsat v pravou´hle´ sourˇadnicove´ soustaveˇ jako posuvny´ pohyb se slozˇkami posuvu ve smeˇru vsˇech trˇı´ os a jako ota´cˇivy´ pohyb kolem teˇchto os [1]. Pro popis pohybu letadla v prostoru se pouzˇı´va´ letadlova´ sourˇadnicova´ soustava, ktera´ je pevneˇ spojena´ s letadlem a jejı´zˇ pocˇa´tek lezˇı´ v teˇzˇisˇti letadla (obra´zek 2.1).

Z hlediska pohybu letadla lze rozlisˇit trˇi za´kladnı´ pohyby kolem jeho os.

(8)

Obra´zek 2.1: Letadlova´ sourˇadnicova´ soustava [2]

• Klopenı´ (pitch)– pohyb letadla kolem bocˇnı´ osy, vedoucı´ prˇes letadlo od jednoho krˇı´dla ke druhe´mu. Udrzˇuje pode´lnou stabilitu letu – naklopenı´ nosu letadla ve vertika´lnı´ ose (nahoru, dolu˚).

• Zata´cˇenı´ (yaw)– pohyb letadla kolem kolme´ osy, vedoucı´ letadlem shora dolu˚. Tento parametr ukazuje odchylku letu od zadane´ho kurzu. Pohybem kolem kolme´ osy meˇnı´me vybocˇenı´ nosu letadla doleva nebo doprava.

• Kloneˇnı´ (roll)– pohyb letadla kolem pode´lne´ osy, ktera´ vede od nosu k ocasu letadla. Kloneˇnı´m meˇnı´me orientaci krˇı´del letadla (jedno krˇı´dlo stoupa´ nahoru, druhe´ klesa´ dolu˚). [3].

Pomocı´ teˇchto trˇı´ pohybu˚ mu˚zˇeme popsat polohu letadla ve vzdusˇne´m prostoru. Pro automaticke´

rˇı´zenı´ letadla tedy musı´ existovat jednoduchy´ zpu˚sob zı´ska´va´nı´ teˇchto trˇı´ za´kladnı´ch u´hlu˚. Takovy´

zpu˚sob existuje, je zalozˇeny´ na vlastnostech rychle se ota´cˇejı´cı´ho prˇedmeˇtu – gyroskopu, ktery´

zachova´va´ nemeˇnnou polohu sve´ osy v prostoru.

(9)

2.2 Gyroskop

Gyroskop (obra´zek 2.2) je zarˇı´zenı´, urcˇene´ k navigaci a urcˇova´nı´ smeˇru. Princip gyroskopu je zna´m uzˇ od roku 1817, kdy jej objevil Johann Bohnenberger. Jako konstrukte´r gyroskopu je vsˇak oznacˇova´n azˇ Le´on Foucault, ktery´ na skutecˇne´m modelu prˇedva´deˇl v roce 1852 du˚kaz rotace Zemeˇ kolem sve´

osy [4].

Obra´zek 2.2: Trˇı´osy´ gyroskop [5]

Za´kladnı´m principem gyroskopu je vyuzˇitı´ fyzika´lnı´ch vlastnostı´ rychle se ota´cˇejı´cı´ch prˇedmeˇtu˚.

Nejjednodusˇsˇı´m gyroskopem je zna´ma´ deˇtska´ hracˇka ka´cˇa. Gyroskopy pouzˇı´vane´ v letectvı´ fungujı´

na stejne´m principu, ale majı´ mnohem sofistikovaneˇjsˇı´ tvar.

2.2.1 Princip gyroskopu

Setrvacˇnı´k (rychle rotujı´cı´ prˇedmeˇt) je ulozˇen v tzv. kardanove´m za´veˇsu. Kardanu˚v za´veˇs je soustava trˇı´ v sobeˇ umı´steˇny´ch kovovy´ch prstencu˚, ktere´ jsou spojeny otocˇny´mi cˇepy takovy´m zpu˚sobem, zˇe osy cˇepu˚ sousedı´cı´ch prstencu˚ jsou na sebe navza´jem kolme´. Takovy´ gyroskop mu˚zˇe vykona´vat neza´visly´ pohyb kolem vsˇech trˇı´ os, protı´najı´cı´ch se ve strˇedu za´veˇsu, ktery´ zu˚sta´va´ sta´le nehybny´

vu˚cˇi sve´mu za´kladu.

2.2.2 Gyroskopicky´ efekt

Jednou z vlastnostı´ gyroskopu, kterou mu˚zˇeme vy´hodneˇ vyuzˇı´t pro sestrojenı´ autopilota je gyrosko- picky´ efekt. Gyroskopicky´ efekt vznika´ dı´ky rychle se ota´cˇejı´cı´mu setrvacˇnı´ku v gyroskopu, ktery´

klade odpor proti jake´koliv zmeˇneˇ sve´ rotacˇnı´ osy a bez pu˚sobenı´ jiny´ch vneˇjsˇı´ch sil si jeho osa ota´cˇenı´

(10)

udrzˇuje sta´le stejny´ smeˇr. Velikost sı´ly pu˚sobı´cı´ proti zmeˇneˇ je prˇı´mo u´meˇrna´ velikosti pru˚meˇru se- trvacˇnı´ku a rychlosti jeho ota´cˇek – cˇı´m veˇtsˇı´ je pru˚meˇr setrvacˇnı´ku a rychlost jeho ota´cˇenı´, tı´m veˇtsˇı´

a silneˇjsˇı´ je gyroskopicky´ efekt.

Jestlizˇe naprˇı´klad byla osa setrvacˇnı´ku na zacˇa´tku smeˇrova´na na neˇjakou hveˇzdu, tak prˇi jake´koliv zmeˇneˇ polohy prˇı´stroje (tedy i zmeˇneˇ polohy letounu), bude osa sta´le ukazovat na pu˚vodneˇ zvolenou hveˇzdu, i kdyzˇ se zmeˇnı´ orientace gyroskopu vu˚cˇi zemsky´m osa´m.

Gyroskopicky´ efekt poprve´ objevil francouzsky´ fyzik Jean Bernard Le´on Foucault. V roce 1852 vyuzˇil te´to fyzika´lnı´ vlastnosti pro experimenta´lnı´ du˚kaz ota´cˇenı´ Zemeˇ kolem sve´ osy a sestrojil zna´me´

Foucaultovo kyvadlo. Dı´ky tomuto experimentu vznikl i na´zev slova

”gyroskop“, cozˇ v prˇekladu z rˇecˇtiny znamena´

”pozorovat ota´cˇenı´ “.

2.2.3 Precese gyroskopu

Druhou du˚lezˇitou vlastnost rotujı´cı´ho gyroskopu nejle´pe pozna´me, pokud na neˇj zacˇneme pu˚sobit dalsˇı´ vneˇjsˇı´ silou. Kazˇdou vneˇjsˇı´ sı´lu pu˚sobı´cı´ na rotujı´cı´ prˇedmeˇt mu˚zˇeme rozlozˇit na dvojici sil – sı´lu rovnobeˇzˇnou na osu rotace prˇedmeˇtu a sı´lu kolmou na osu rotace. Sı´la kolma´ s osou rotace rychlost rotace bud’urychluje (pokud sı´la pu˚sobı´ po smeˇru rotace) nebo zpomaluje (pokud sı´la pu˚sobı´

proti smeˇru rotace). Prˇi zpomalova´nı´ rotace gyroskopu nebo vlivem pu˚sobenı´ vneˇjsˇı´ sily na gyroskop se zacˇne odchylovat osa rotace teˇlesa od pocˇa´tecˇnı´ho smeˇru. To prˇiva´dı´ gyroskop k rotaci kolem vertika´lnı´ osy [4].

Tento jev se nazy´va´ precese gyroskopu – pohyb rotujı´cı´ho teˇlesa kolem volne´ osy, ktera´ opisuje tvar kuzˇele. Rychlost precese nejvı´ce ovlivnˇuje rychlost ota´cˇenı´ setrvacˇnı´ku – cˇı´m rychleji se setrvacˇnı´k ota´cˇı´ kolem sve´ osy, tı´m pomalejsˇı´ bude precese. Pokud na setrvacˇnı´k prˇestane pu˚sobit vneˇjsˇı´ sı´la zpu˚sobujı´cı´ precesi, tak dojde k okamzˇite´mu na´vratu setrvacˇnı´ku do pu˚vodnı´ polohy a precese koncˇı´.

Na teˇchto vlastnostech gyroskopu je zalozˇeno neˇkolik na´stroju˚, ktere´ se pouzˇı´vajı´ pro automaticke´

pilotova´nı´ letadla a jeho stabilizaci ve vzdusˇne´m prostoru.

2.3 Prvnı´ autopilot

Prvnı´ automaticky´ stabiliza´tor letu byl vytvorˇen Lawrencem Sperrym v roce 1912. Pro tento syste´m Sperry pouzˇil cˇtyrˇi gyroskopy pro stabilizaci referencˇnı´ roviny. S pomocı´ elektricke´, mechanicke´

a pneumaticke´ slozˇky umozˇnˇoval Sperryho gyrokompas detekovat pozici letadla relativneˇ k referencˇnı´

rovineˇ a prova´deˇt signa´ly pro korekci polohy. Syste´m byl sestaven tak, aby poskytoval prˇiblizˇnou reakci na skokovou zmeˇnu polohy letadla. Speeryho syste´m byl zalozˇen na intuitivnı´m chova´nı´ letadla, nebyl zalozˇen na zˇa´dny´ch teoreticky´ch za´kladech [6].

V le´teˇ roku 1914 se v Parˇı´zˇi konal mezina´rodnı´ pru˚myslovy´ veletrh, na ktere´m Sperry verˇejnosti prˇedvedl prvnı´ syste´m pro stabilizaci letadla. Spolu s mechanikem svu˚j novy´ vyna´lez prezentovali kra´tkou leteckou uka´zkou. Letadlo vzle´tlo a udeˇlalo okruzˇnı´ let nad vy´stavisˇteˇm, beˇhem ktere´ho vysˇel

(11)

Obra´zek 2.3: Autopilot Wileyho Posta [7]

na krˇı´dlo letadla mechanik. Lawrence Sperry, ktery´ rˇı´dil letadlo pustil rˇı´zenı´ a dal ruce nahoru, tak aby na´vsˇteˇvnı´ci veletrhu mohli videˇt, zˇe letadlo letı´ rovneˇ samo i bez pilotova za´sahu do rˇı´zenı´ a ani mechanik, stojı´cı´ na krˇı´dle, nemu˚zˇe ovlivnit jeho rovnova´hu [7].

Francouzska´ arma´da meˇla ihned po skoncˇenı´ zkusˇebnı´ demonstrace velky´ za´jem o vynalezeny´

syste´m. Tento syste´m Sperryho firma da´le rozvı´jela a vylepsˇovala a v 20. letech vytvorˇila jizˇ skutecˇny´

autopilot. Tento autopilot Wiley Post v roce 1933 pouzˇil pro prvnı´ samostatny´ let kolem sveˇta, ktery´

zvla´dl vykonat za me´neˇ nezˇ 8 dnı´. Fotografie tohoto autopilota je na obra´zku 2.3[8].

Uzˇ od poloviny 30. let pouzˇı´valo velke´ mnozˇstvı´ letecky´ch dopravnı´ch spolecˇnostı´ Sperryho syste´m autopilota pro lety na dlouhe´ vzda´lenosti. V ra´mci dalsˇı´ho vy´voje autopilota byli zlepsˇeny algoritmy rˇı´zenı´ a hydraulicke´ servomechanismy. Dı´ky rozsˇı´rˇenı´ autopilota o dalsˇı´ dodatecˇne´ na´stroje, zejme´na o radionavigaci bylo mozˇne´ uskutecˇnˇovat lety i beˇhem noci a ve sˇpatne´m pocˇası´ [9].

Beˇhem 2. sveˇtove´ va´lky se znovu zvy´sˇily pozˇadavky v letectvı´ (zejme´na kvu˚li velky´m bombar- de´ru˚m vykona´vajı´cı´m neˇkolikahodinove´ lety na dlouhe´ vzda´lenosti). To vedlo k nutnosti vypracovat dokonalejsˇı´ autopiloty. Dalsˇı´ zvysˇova´nı´ pozˇadavku˚ na bezpecˇnost a regularitu letu˚ vynucovalo au- tomatizaci dalsˇı´ch letecky´ch cˇinnostı´ a na´rocˇneˇjsˇı´ch cˇa´stı´ letu – jako je prˇı´prava k prˇista´nı´, prˇista´nı´

a vzlet.

(12)

2.4 Modernı´ autopiloty

Modernı´ syste´my autopilota majı´ mnohem slozˇiteˇjsˇı´ konstrukci, kromeˇ stabilizace letadla v prostoru a udrzˇova´nı´ kurzu letu umozˇnˇujı´ realizovat programovane´ ovla´da´nı´ v ru˚zny´ch fa´zı´ch letu: vzlet, stoupa´nı´ do letove´ hladiny, udrzˇova´nı´ letadla v letove´ hladineˇ, klesa´nı´, prˇiblı´zˇenı´ na prˇista´nı´ a prˇista´nı´.

Nejslozˇiteˇjsˇı´ syste´my automaticke´ho ovla´da´nı´ na sebe berou znacˇnou cˇa´st ovla´dacı´ch funkcı´ i v rucˇnı´m rezˇimu a deˇlajı´ ovla´da´nı´ pro pilota jednodusˇsˇı´m – zmı´rnˇujı´ u´cˇinky turbulence, zabranˇujı´ una´sˇenı´

veˇtrem, poma´hajı´ rˇesˇit kriticke´ situace letu a dokonce zakazujı´ nebo ignorujı´ neˇktere´ cˇinnosti pilota.

Stejneˇ jako pro ovla´da´nı´ letadla jsou autopiloti nezbytnı´ v letecke´m pru˚myslu, protozˇe umozˇnˇujı´

snizˇova´nı´ na´kladu˚ letecke´ dopravy a zvysˇova´nı´ jejı´ bezpecˇnosti. Let letadla na autopilot spotrˇebova´va´

vy´razneˇ me´neˇ paliva nezˇ let rˇı´zeny´ pilotem, take´ docha´zı´ k mensˇı´mu zateˇzˇova´nı´ konstrukce letadla beˇhem letu, vzletu i prˇista´nı´. Modernı´ automaticke´ syste´my obsahujı´ komplikovane´ soucˇa´sti, ktere´

jsou schopny rozpoznat a adekva´tneˇ zareagovat na hrozı´cı´ kolizi s jiny´mi objekty, mohou take´ umozˇnit prˇista´t v situacı´ch sˇpatne´ nebo zˇa´dne´ viditelnosti [10].

Soucˇasne´ syste´my pouzˇı´vajı´ pocˇı´tacˇove´ programy pro rˇı´zenı´ letadla. Program cˇte aktua´lnı´ pozici letadla a zı´ska´va´ data z cele´ sı´teˇ senzoru˚ rozmı´steˇny´ch v letadle, na za´kladeˇ teˇchto vstupnı´ch informacı´

potom ovla´da´ zarˇı´zenı´ letadla a syste´m rˇı´zenı´ letu. Kromeˇ klasicke´ letove´ kontroly jsou syste´my take´

schopny ovla´dat rˇı´zenı´ tahu motoru pro optimalizaci rychlosti, da´le prˇesun paliva v na´drzˇı´ch tak, aby dosˇlo k optima´lnı´mu vyva´zˇenı´ letounu ve vzduchu.

Aktua´lnı´ pozice letadla v prostoru, jeho letova´ hladina a dalsˇı´ informace o pohybu letadla zı´ska´va´

autopilot pomocı´ inercia´lniho navigacˇnı´ho syste´mu, ktery´ pouzˇı´va´ gyroskopy a akcelerometry pro meˇrˇenı´ zrychlenı´ ve vsˇech 3 osa´ch. Z teˇchto meˇrˇenı´ se na´sledneˇ vypocˇı´ta´va´ pozice letounu.

2.5 Za´kladnı´ velicˇiny

2.5.1 Rychlost

Spra´vna´ rychlost letu je du˚lezˇita´ pro bezpecˇnost cele´ho letu – let letadla v rychlostech nizˇsˇı´ch nezˇ je dovolena´ minima´lnı´ rychlost prˇiva´dı´ letadlo ke ztra´teˇ stability a ovla´da´nı´. Naopak zvysˇova´nı´ rychlosti letu nad povolenou rychlost je spojeno s nebezpecˇı´m znicˇenı´ letadla [11]. Rozlisˇuje se vzdusˇna´

a trat’ova´ rychlost, ktere´ se meˇrˇı´ v km/h.

• Skutecˇna´ vzdusˇna´ rychlost– rychlost letadla vu˚cˇi okolnı´mu vzdusˇne´mu prostrˇedı´. Tuto rych- lost letadlo zı´ska´va´ vlivem tazˇne´ sı´ly motoru˚. Vzdusˇna´ rychlost za´visı´ na aerodynamicky´ch charakteristika´ch letadla, jeho va´ze a hustoteˇ vzduchu. Vı´tr nema´ vliv na jejı´ hodnotu a smeˇr.

• Trat’ova´ rychlost – rychlost letadla vu˚cˇi povrchu zemeˇ. Jejı´ velikost ovlivnˇuje vı´tr, ktery´

zmensˇuje nebo zveˇtsˇuje rychlost pohybu letounu vu˚cˇi zemske´mu povrchu.

(13)

Skutecˇna´ vzdusˇna´ rychlost, stejneˇ jako trat’ova´ jsou rychlosti v prˇı´me´m fyzika´lnı´m smyslu. Prˇı´stroje pro jejich bezprostrˇednı´ meˇrˇenı´ vsˇak v soucˇasne´ dobeˇ nejsou vytvorˇeny, proto je potrˇeba skutecˇnou vzdusˇnou rychlost vypocˇı´ta´vat neprˇı´my´m zpu˚sobem pomocı´ rychlomeˇru˚.

• Prˇı´strojova´ rychlostnenı´ rychlostı´ pohybu letadla vu˚cˇi jine´mu objektu na zemi, to znamena´ zˇe ve fyzika´lnı´m smyslu toto vu˚bec nenı´ rychlost. Prˇı´strojova´ rychlost je v podstateˇ velicˇina dy- namicke´ho tlaku (tj. tlaku vytvorˇene´m rychlostı´ vzdusˇne´ho proudeˇnı´ okolo letadla), vyja´drˇena´

v rychlostnı´ch jednotka´ch. Prˇı´strojova´ rychlost se meˇrˇı´ pomocı´ Pitotovy nebo Venturiho trubice, ktere´ jsou umı´steˇny v prˇednı´ cˇa´sti letadla nebo na krˇı´dlech tak, aby byly pokud mozˇno v neovliv- neˇne´m proudu vzduchu. Tyto trubice nemeˇrˇı´ rychlost letu prˇı´mo, ale pouze meˇrˇı´ tlak vyvola´vany´

tlakem proudı´cı´ho vzduchu. Na rychlost je tento zmeˇrˇeny´ tlak nutne´ prˇeve´st. Prˇı´strojova´ rych- lost, kterou pilot cˇte z rychlomeˇru, je zatı´zˇena´ neˇkolika chybami - prˇı´strojove´, aerodynamicke´

a metodicke´. Z tohoto du˚vodu ma´ pilot v letadle k dispozici hned neˇkolik ru˚zny´ch rychlostı´.

[1].

• Indikovana´ rychlost letu (IAS) – je to u´daj z rychlomeˇru vestaveˇne´ho v letadle opraveny´

pouze o prˇı´strojovou chybu, zpu˚sobenou konstrukcı´ rychlomeˇru. Tato chyba je vsˇak beˇzˇneˇ zanedbatelneˇ mala´, proto IAS prakticky prˇedstavuje prˇı´strojovou rychlost letu, kterou cˇte pilot z rychlomeˇru.

2.5.2 Kurz letu

Kurz letu ma´ velky´ vy´znam pro navigaci, protozˇe je za´rovenˇ pilota´zˇnı´m a navigacˇnı´m elementem.

Kurz ukazuje, kam smeˇrˇuje pode´lna´ osa letadla. Vı´tr ovlivnˇuje smeˇr letu, proto kurz letadla se shoduje se skutecˇny´m smeˇrem jeho pohybu vu˚cˇi Zemi pouze v bezveˇtrˇı´. Ve veˇtru mu˚zˇe by´t smeˇr pode´lne´ osy letadla jiny´ nezˇ kurz letu [12].

Existujı´ dva zpu˚soby meˇrˇenı´ kurzu – zemeˇpisny´ a magneticky´. Pro pochopenı´ jejich rozdı´lu je nutne´ nedrˇı´ve definovat pojem zemeˇpisny´ a magneticky´ polednı´k.

Zemeˇpisny´ polednı´k

Prolozˇı´me-li rovinu zemskou osou, dostaneme na obvodu zemeˇkoule, kde tato rovina protı´na´ jejı´ po- vrch, mysˇlenou kruzˇnici, kterou nazy´va´me polednı´kova´ kruzˇnice. Polovina te´to kruzˇnice je polednı´k.

Polednı´k je nekratsˇı´m spojem polu˚ na Zemi, a proto urcˇuje zemeˇpisny´ sever a jih. Za´kladnı´ nulty´

polednı´k prochazı´ londy´nskou hveˇzda´rnou v Greenwich.

Magneticky´ polednı´k

Projekce silocˇar geomagneticke´ho pole na povrchu Zemeˇ. Jsou to slozˇite´ krˇivky, shodujı´ se na severnı´m a jizˇnı´m magneticke´m poli Zemeˇ.

(14)

Obra´zek 2.4: Magneticke´ po´ly Zemeˇ [13]

Zemeˇpisny´ kurz

Zemeˇpisny´ kurz je u´hel, ktery´ svı´ra´ smeˇr zemeˇpisne´ho severu dane´ho polednı´kem v mı´steˇ vy´pocˇtu se smeˇrem projekce podelne´ osy letadla na horizontalnı´ plochu. Meˇrˇı´me ho od polednı´ku ve smeˇru pohybu hodinovy´ch rucˇicˇek ve stupnı´ch od 0 do 360. V podstateˇ kurz ukazuje smeˇr nosu letadla vu˚cˇi zemeˇpisne´mu severu. Cˇı´selny´ u´daj musı´ podle pravidel mı´t vzˇdy pra´veˇ trˇi cifry. Kurz 000 ukazuje smeˇr objektu na sever, 090 na vy´chod, 180 na jih, 270 na za´pad.

Magneticky´ kurz

Polohy magneticky´ch po´lu˚ Zemeˇ, ke ktery´m smeˇrˇujı´ strˇelky kompasu˚ urcˇujı´cı´ch magneticky´ kurz, nejsou totozˇne´ s polohami zemeˇpisny´ch po´lu˚ zemeˇkoule. Vzda´lenost zemsky´ch magneticky´ch po´lu˚

od zemeˇpisny´ch po´lu je prˇiblizˇneˇ 2000 km. Poloha magneticky´ch po´lu˚ na zemeˇkouli navı´c nenı´ sta´la´

– meˇnı´ se s cˇasem.

Magneticky´ kurz je u´hel, ktery´ svı´ra´ smeˇr magneticke´ho severu dane´ho magneticky´m polednı´kem v mı´steˇ vy´pocˇtu se smeˇrem projekce pode´lne´ osy letadla na loka´lnı´ horizonta´lnı´ plochu. Meˇrˇı´me od magneticke´ho polednı´ku ve smeˇru pohybu hodinovy´ch rucˇicˇek, ve stupnı´ch od 0do 360. Zemeˇpisne´

smeˇry nelze v za´sadeˇ slucˇovat se smeˇry magneticky´mi, jak ukazuje i obra´zek 2.4.

(15)

2.5.3 Vy´sˇka

Pro jednoznacˇnou definici polohy letadla je nutno kromeˇ zemeˇpisny´ch sourˇadnic zna´t take´ spra´vnou vy´sˇku letu. Vy´sˇkou letu se nazy´va´ horizontalnı´ vzda´lenost letadla od pocˇa´tecˇnı´ u´rovneˇ. Znalost vy´sˇky je nezbytna´ pro udrzˇova´nı´ rezˇimu letu, rˇı´zenı´ letadla a zajisˇteˇnı´ bezpecˇnosti letu. Vy´sˇka letu se meˇrˇı´

v metrech nebo ve stopa´ch (feet).

Obra´zek 2.5: Klasifikace vy´sˇky letu podle pocˇa´tecˇnı´ u´rovneˇ [14]

Klasifikace vysˇky letu podle pocˇatecˇnı´ urovneˇ (obra´zek 2.5):

• skutecˇna´– odpocˇı´ta´vana´ od u´rovneˇ mı´sta, do ktere´ho letı´me,

• relativnı´– odpocˇı´ta´vana´ od neˇjake´ dohodnute´ u´rovneˇ, naprˇı´klad letisˇteˇ,

• vy´sˇka letove´ hladiny– odpocˇı´ta´vana´ od u´rovneˇ s tlakem 1013,25 hPa,

• absolutnı´ vysˇku– odpocˇı´ta´vana´ od u´rovneˇ morˇe.

Podle podmı´nek letu rozlisˇujeme vy´sˇky velmi male´ (do 200 m), male´ (200-1000 m), strˇednı´ (1000- 4000 m), velke´ (4000-12000 m) a stratosfericke´ (vı´ce nezˇ 12000 m).

2.6 Pozˇadavky na autopilota

Hlavnı´ funkcı´ autopilota a jeho hlavnı´ u´lohou prˇi automaticke´m pilotova´nı´ je spra´vne´ udrzˇova´nı´

orientace letadla pohybujı´cı´ho se ve vzdusˇne´m prostoru. Dı´ky stabilizaci polohy letounu ve vzduchu nedocha´zı´ k odchylova´nı´ od zadane´ho kurzu, protozˇe trajektorie letu za´visı´ na spra´vne´ orientaci letadla.

(16)

Autopilot udrzˇuje letadlo v zadane´m rezˇimu letu bez za´sahu pilota. Proto je nutne´, aby parametry, ktere´ charakterizujı´ dany´ rezˇim letu, zu˚sta´valy nemeˇnne´ nebo alesponˇ jejich odchylova´nı´ bylo co nejmensˇı´. Kromeˇ toho je potrˇeba odstranˇovat kmita´nı´ letadla kolem vsˇech jeho trˇı´ os.

Neˇktere´ parametry, charakterizujı´cı´ stav rovnova´hy letadla vu˚cˇi jeho osa´m, se mohou meˇnit beˇhem letu (vyva´zˇenı´, hmotnost, tah motoru), autopilot musı´ bez za´sahu pilota udrzˇovat letadlo v zadane´

poloze i prˇes tyto dynamicke´ zmeˇny probı´hajı´cı´ za letu. Autopilot musı´ vykona´vat vsˇechny za´kladnı´

letecke´ mane´vry – prˇı´my´ let v letove´ hladineˇ, stoupa´nı´ cˇi klesa´nı´ do nove´ letove´ hladiny, prave´ a leve´

zata´cˇky a take´ umeˇt prove´st automaticke´ prˇista´nı´ a vzlet.

Soucˇasna´ stabilizace cˇtyrˇ za´kladnı´ch parametru˚ letu – rychlosti, vy´sˇky, kurzu a na´klonu˚ je mozˇna´

s vyuzˇitı´m cˇtyrˇ za´kladnı´ch ovla´dacı´ch prvku˚ letadla – tahu motoru, vy´sˇkovky, smeˇrovky a krˇide´lek.

Autopilot proto musı´ tyto cˇtyrˇi za´kladnı´ prvky letadla obsluhovat [15].

2.7 Proble´my syste´mu ˚ automaticke´ho rˇı´zenı´ letu

Za´kladnı´m proble´mem prˇi konstruova´nı´ autopilotu˚ a automaticky´ch syste´mu˚ rˇı´zenı´ je bezpecˇnost letu. V jednoduchy´ch autopilotech je prˇedpokla´da´na velka´ kontrola pilotem – v prˇı´padeˇ nestandardnı´

situace musı´ dojı´t k rychle´mu odpojenı´ autopilotnı´ho syste´mu pilotem. Podobneˇ prˇi jake´koliv porusˇe jeho norma´lnı´ho fungova´nı´ je zvolen okamzˇity´ prˇechod na rucˇnı´ ovla´da´nı´ letounu.

U slozˇiteˇjsˇı´ch autopilotu˚ se vsˇak jizˇ od pocˇa´tku˚ vy´voje klade velky´ du˚raz na spolehlivost a za- chova´nı´ funkcˇnosti i v kriticky´ch situacı´ch. Prˇedpokla´dajı´ se opatrˇenı´ pro zvy´sˇenı´ bezpecˇnosti letu.

Syste´my jsou mnohokana´love´, tj. soucˇasneˇ pracujı´ 2, 3 vy´jimecˇneˇ i 4 stejne´ kana´ly rˇı´zenı´. Vy´padek jednoho nebo dvou kana´lu˚ zˇa´dny´m zpu˚sobem neovlivnˇuje funkcˇnost syste´mu jako celku. V prˇı´padeˇ vzniku vy´padku syste´m samostatneˇ rozhoduje o mozˇnostech zachova´nı´ cˇinnosti autopilota, prˇepnutı´

na rezervnı´ kana´l nebo prˇeda´nı´ rˇı´zenı´ pilotu.

Vzhledem v celkove´ slozˇitosti automaticky´ch syste´mu˚ rˇı´zenı´ existuje mozˇnost, zˇe neˇktera´ cˇa´st syste´mu mu˚zˇe selhat. Byly dokonce prˇı´pady, kdy letadlo havarovalo pra´veˇ kvu˚li selha´nı´ syste´mu autopilota. Dlouhodobe´ za´znamy ale ukazujı´, zˇe k hava´rii, ktera´ je zpu˚sobena poruchou autopilota, typicky dosˇlo z du˚vodu, zˇe pilot neodpojil autopilot prˇed pokusem o manua´lnı´ ovla´da´nı´. Veˇtsˇinou se tedy nejedna´ o fata´lnı´ selha´nı´ autopilotnı´ho syste´mu, ale o selha´nı´ komunikace mezi pilotem a tı´mto syste´mem, jeho sˇpatne´ pochopenı´ cˇi nespra´vne´ pouzˇitı´.

(17)

Kapitola 3

Interakce pilota se syste´mem automaticke´ho pilotova´nı´

Pro na´vrh spra´vne´ho graficke´ho rozhranı´ je potrˇeba bra´t v u´vahu typicke´ zpu˚soby interakce mezi programem a jeho uzˇivatelem. Informace poskytovana´ programem a zobrazenı´ te´to informace na displeji musı´ umozˇnˇovat uzˇivateli prova´deˇt svou cˇinnost u´speˇsˇneˇ a spolehliveˇ.

Jizˇ od vzniku prvnı´ch syste´mu˚ pro automaticke´ rˇı´zenı´ letu byli vyna´lezci znepokojeni jejich pro- ble´my a zejme´na proble´my s interakcı´ mezi pilotem a autopilotnı´m syste´mem. Ve zpra´va´ch o letecky´ch nehoda´ch a porucha´ch se neusta´le objevovaly dva faktory, ktere´ byly za tyto nehody zodpoveˇdne´ – rozhranı´ poskytovalo autopilotu nedostatecˇne´ informace o stavu stroje, pilot meˇl nespra´vne´ prˇed- stavy o fungova´nı´ a chova´nı´ stroje. Oba tyto faktory prˇiva´deˇly posa´dku letadla k neocˇeka´vane´mu chova´nı´, zmatku a chyba´m [16]. Nicme´neˇ vinı´ky teˇchto chyb spolupra´ce mezi autopiloty a piloty nelze cˇasto jednoznacˇneˇ oznacˇit. Nelze jednoznacˇneˇ rozhodnout, zda za tyto chyby bylo zodpoveˇdne´

pouze rozhranı´ autopilota a jeho interakce s pilotem nebo zda byla chyba zpu˚sobena lidskou chy- bou, nedostatecˇny´m sˇkolenı´m, sˇpatny´m uveˇdomeˇnı´m si krizove´ situace nebo nespra´vneˇ zvoleny´m postupem.

V interakci mezi pilotem a autopilotem hrajı´ klı´cˇovou roli trˇi prvky. Tyto trˇi prvky spolu zajisˇt’ujı´

korektnı´ a spolehlivou interakci mezi uzˇivatelem a syste´mem:

1. mnozˇina u´konu˚, ktere´ musı´ pilot prove´st pro ovla´da´nı´ na´strojem,

2. uzˇivatelsky´ model chova´nı´ na´stroju˚, ktery´ pilot zna´ a ma´ naucˇeny´ z tre´nova´nı´ na simula´toru a z manua´lu˚,

3. tozhranı´, pomocı´ ktere´ho pilot zı´ska´va´ informace o chovanı´ na´stroju˚.

(18)

3.1 Obecne´ za´sady

Z du˚vodu velke´ho mnozˇstvı´ ru˚zny´ch informacˇnı´ch panelu˚ v kokpitu letadla a jejich slozˇitosti je potrˇeba dodrzˇovat za´sady spra´vne´ho zobrazova´nı´ informacı´ tak, aby se povedlo co nejvı´ce zjednodusˇit a zabezpecˇit interakci pilota s programem. Americke´ veˇdeˇcke´ studie ukazujı´, zˇe dobre´ graficke´ rozhranı´

s leteckou informacı´ mu˚zˇe vy´razneˇ zmensˇit proble´my s chybami a letecky´m incidenty. Vy´sledkem teˇchto studiı´ je neˇkolik obecny´ch za´sad a doporucˇenı´ [17]:

1. zobrazovat letovou informaci co nejjednodusˇsˇı´m a nejprecizneˇjsˇı´m zpu˚sobem,

2. navrhovat ovla´dacı´ na´stroje autopilota tak, aby se minimalizoval pocˇet kroku˚, ktere´ musı´ pilot vykonat pro pozˇadovanou akci,

3. vsˇechny rutinnı´, nekriticke´ informace musı´ by´t u´plneˇ zautomatizovane´ tak, aby zbytecˇneˇ ne- zateˇzˇovaly a nekomplikovaly konfiguraci autopilota,

4. odstranit vsˇechny nepodstatne´ a zbytecˇne´ operace na ovla´dacı´ konzoli autopilota,

5. symboly a zpra´vy musı´ by´t logicky umı´steˇny a musı´ pracovat se souvisejı´cı´mi informacemi, 6. pro zvy´razneˇnı´ informace nepouzˇı´vat pouze zmeˇnu barvy, informace musı´ by´t identifikovatelna´

minima´lneˇ pomocı´ dvou ru˚zny´ch parametru˚ (naprˇı´klad rozmeˇr, tvar, barva, umı´steˇnı´),

7. varovne´ informace se musı´ objevovat na stejne´m mı´steˇ ve ktere´m jsou za norma´lnı´ch okolnostı´

beˇzˇna´ data.

3.2 Touch screen displej

Touch screen technologie se v dnesˇnı´ dobeˇ uplatnˇujı´ v sˇiroke´ sˇka´le ru˚zny´ch informacˇnı´ch syste´mu˚

a aplikacı´. Jejich pouzˇitı´ je zejme´na vhodne´ v syste´mech obsluhy zarˇı´zenı´ – prodejnı´ termina´ly, samoobsluzˇne´ automaty a podobneˇ. Pro autopilota v letadle lze take´ vyuzˇı´t vy´hod dotykovy´ch displeju˚.

Vy´hody

• Prˇı´mocˇarost – na rozdı´l od neprˇı´my´ch zpu˚sobu˚ ovla´da´nı´ (mysˇ, joystik, kla´vesnice) uzˇivatel prˇı´mo komununikuje s objektem, ktery´ jej zajı´ma´. Nenı´ trˇeba vyhleda´vat vstupnı´ zarˇı´zenı´, pomocı´ ktere´ho nejdrˇı´ve vybereme pozˇadovany´ objekt a ztra´cet vizua´lnı´ soustrˇedeˇni na objekt.

Stejneˇ tak uzˇivatel nemusı´ mapovat rucˇnı´ pohyb na pohyb kurzorem, jak to vyzˇaduje klasicke´

ovla´da´nı´ naprˇı´klad pomocı´ mysˇi cˇi joystiku.

• Rychlost – pro mnoho u´kolu˚ je ovla´da´nı´ pomocı´ touch screen rychlejsˇı´, protozˇe uzˇivatel nemusı´

vyhleda´vat vstupnı´ zarˇı´zenı´, mu˚zˇe prˇı´mo vybrat pozˇadovany´ objekt.

(19)

• Jednodusˇsˇı´ ucˇenı´ – rychlejsˇı´ pro pochopenı´. Uzˇivatelska´ rozhranı´ pro dotykove´ displeje mı´vajı´

jednoduchou strukturu a nepozˇadujı´ slozˇite´ ovla´da´nı´ pomocı´ mysˇi.

• Flexibilita – touch screen podporuje mozˇnosti, ktere´ nejsou dosazˇitelne´ pomocı´ kla´vesnice.

Uzˇivatel si mu˚zˇe vybrat, jake´ rozlozˇenı´ kla´vesnice preferuje, preferovana´ kla´vesnice se pote´

zobrazuje na displeji.

• Nepotrˇebuje zˇa´dne´ dodatecˇne´ mı´sto – nenı´ potrˇeba zˇa´dny´ch dalsˇı´ch vstupnı´ch zarˇı´zenı´, postacˇuje pouze displej.

Nevy´hody

• Nenı´ hapticka´ (hmatova´) odezva. Prˇi ovla´da´nı´ klasicky´ch tlacˇı´tek je mozˇne´ cı´tit spoustu infor- macı´ i pomocı´ hmatu – je tak naprˇı´klad mozˇne´ rozeznat zma´cˇknute´ tlacˇı´tko od nezma´cˇknute´ho, poznat konec rozsahu u otocˇny´ch voleb a podobneˇ.

• Prˇi ovla´da´nı´ vertika´lnı´ho displeje musı´ uzˇivatel drzˇet ruku ve vzduchu, proto jsou vertika´lnı´

displeje vhodne´ pouze pro epizodickou pra´ci (naprˇı´klad pro bankomaty). Prˇi dlouhodobeˇjsˇı´m ovla´da´nı´ displeje by hrozila nadmeˇrna´ u´nava uzˇivatele syste´mu.

• Prˇi ovla´da´nı´ horizonta´lnı´ displeje omezujı´ ruce, ktere´ ovla´dajı´ displej, rozhled na zby´vajı´cı´ cˇa´sti displeje. Pokud ovla´da´me prvky v jedne´ cˇa´sti displeje, mu˚zˇeme si za´rovenˇ zastinˇovat informace zobrazovane´ v druhe´ cˇa´sti.

• Paralax – omezuje prˇesnost pozicova´nı´ u´konu˚ uzˇivatele na dipleji bez kurzoru. Pouzˇitı´ kurzoru ale prˇida´va´ dodatecˇnou slozˇitost, ktera´ zmensˇuje u´spornost cele´ho rˇesˇenı´.

(20)

Kapitola 4

Analy´za existujı´cı´ch autopilotu ˚

Pro lepsˇı´ pochopenı´ syste´mu˚ automaticke´ho pilotovanı´ se podı´va´me na autopilot ve skutecˇne´m letadle Boeing 737 (obra´zek 4.1). Zameˇrˇı´me se pouze na hlavnı´ funkce autopilota.

Obra´zek 4.1: Rozhranı´ autopilota Boeing 737

1. Autopilot master switch – zapı´na´ autopilota, udrzˇuje sta´vajı´cı´ klopenı´ a klopenı´. Pokud je autopilot zapnut, nenı´ mozˇne´ rˇı´dit letadlo, pilot mu˚zˇe pouze kontrolovat a monitorovat nastavenı´

autopilota. Jestli jsou spolu se zapnuty´m autopilotem zapnuty rezˇimy Heading mode, Altitude mode nebo Navigation mode, letadlo zacˇne ihned vykona´vat aktivovane´ prˇı´kazy. Proto je dobre´

prˇed zapnutı´m autopilota zkontrolovat jeho nastavenı´, zejme´na aktivaci funkcı´.

2. Heading selection window/bug – umozˇnˇuje nastavit Heading mode. Pro aktivaci rezˇimu je potrˇeba zma´cˇknout tlacˇı´tko HDG SEL, hned potom letadlo prˇijme pozˇadovany´ kurz. Nastaveni HDG ukazuje magneticky´ kurz.

3. Altitude selection window– nastavenı´ letove´ hladiny. Letadlo zacˇne klesat nebo stoupat na nastavenou vy´sˇku.

(21)

4. Altitude hold mode selector button– po zapnutı´ je aktivova´n rezˇim Altitude hold. To znamena´, zˇe autopilot bude udrzˇovat sta´vajı´cı´ vy´sˇku letu.

5. Vertical speed selection window– nastavenı´ vertika´lnı´ rychlosti. Umozˇnˇuje nastavit rychlost, kterou bude letadlo klesat nebo stoupat.

6. Course selection window/knob– umozˇnˇuje nastavit kurz letu, ktery´ odpovı´da´ zemeˇpisne´mu kurzu.

7. Airspeed/Mach selection window– nastavenı´ letove´ rychlosti.

(22)

Kapitola 5

Aplikace

5.1 Specifikace pozˇadavku ˚

V prvnı´ cˇa´sti pra´ce byli prozkouma´ny teoreticke´ za´klady syste´mu˚ pro automaticke´ rˇı´zenı´ letadla, obecne´ pozˇadavky kladene´ na syste´m autopilota, cˇaste´ proble´my spojene´ s obsluhou tradicˇnı´ch roz- hranı´ a take´ za´kladnı´ za´sady pouzˇı´vane´ prˇi navrhova´nı´ graficke´ho rozhranı´ pro zobrazova´nı´ informacı´

a rˇı´zenı´ letadla. Pomocı´ teˇchto informacı´ lze prove´st specifikaci pozˇadavku˚ na noveˇ navrhovane´ gra- ficke´ rozhranı´. Aplikace by meˇla odpovı´dat potrˇeba´m pro prˇehledne´ zobrazenı´ informacı´ a umozˇnˇovat pohodlnou a jednoduchou interakci s uzˇivatelem pomocı´ touch screen displeje. Noveˇ vyvinuta´ aplikace by meˇla by´t postavena na graficke´m rozhranı´ Qt a implementova´na v jazykove´m prostrˇedı´ C++.

Aplikace by meˇla umozˇnˇovat vy´stup a prˇı´jem dat pomocı´ protokolu vyvı´jene´ho v prostrˇedı´

laboratorˇe SimStar a jako rozsˇı´rˇenı´ take´ pomocı´ protokolu CANaerospace, ktery´ je pouzˇı´va´n pro letecke´ aplikace. Vy´sledna´ aplikace bude pouzˇı´va´na v simula´toru v laboratorˇi SimStar.

5.1.1 Funkcˇnı´ pozˇadavky

Musı´ by´t umozˇneˇno prˇepı´na´nı´ jednotek jednotlivy´ch velicˇin mezi metrickou SI soustavou a imperia´lnı´

soustavou. Kazˇda´ zmeˇna hodnoty musı´ by´t v urcˇite´m cˇasove´m intervalu potvrzena, jinak dojde k na´vratu na pu˚vodnı´ hodnotu prˇed zmeˇnou. Autopilot lze zapnout azˇ po potvrzenı´ vsˇech nastaveny´ch hodnot.

Rozhranı´ autopilota umozˇnˇuje ovla´da´nı´ peˇti za´kladnı´ch velicˇin:

• rychlost (IAS)– je zobrazena v jednotka´ch knots nebo v mph. Pilot mu˚zˇe nastavovat rychlost pouze v urcˇite´m intervalu, ktery´ je dany´ aktua´lnı´ polohou klapek, jak ukazuje tabulka 5.1.

• vy´sˇka (ALT)– uva´deˇna´ v jednotka´ch feet nebo metrech. Pilot mu˚zˇe aktivovat funkci udrzˇova´nı´

aktua´lnı´ letove´ vy´sˇky pomoci tlacˇı´tka ALT HOLD.

• vertika´lnı´ rychlost (VS)– uva´deˇna´ v jednotka´ch ft/min nebo m/s.

(23)

• magneticky´ kurz (HDG)– uva´deˇny´ ve stupnı´ch.

• zemeˇpisny´ kurz (TRK)– uva´deˇny´ ve stupnı´ch.

Rozsah nastavova´nı´ rychlosti je za´visly´ na poloze klapek, proto je pro tuto velicˇinu samostatna´

tabulka 5.1.

Velicˇina Zkratka Jednotky Klapky Minimum Maximum

Rychlost IAS

uzly

Zasunuty 37 146

Vysunuty 37 70

km/h

Zasunuty 68 270

Vysunuty 68 130

Tabulka 5.1: Specifikace rychlosti

Zby´vajı´cı´ velicˇiny, rozsahy a jejich jednotky jsou zobrazeny v na´sledujı´cı´ tabulce 5.2.

Velicˇina Zkratka Jednotky Minimum Maximum

Vy´sˇka ALT

feet 0 10000

m 0 3000

Vertika´lnı´ rychlost VS

ft/min -2000 2000

m/s -10 10

Magneticky´ kurz HDG stupneˇ 0 360

Zemeˇpisny´ kurz TRK stupneˇ 0 360

Tabulka 5.2: Specifikace velicˇin autopilota

(24)

5.1.2 Jine´ pozˇadavky

• Jednoduchost a prˇehlednost– navrhovana´ aplikace by meˇla by´t co mozˇna´ nejjednodusˇsˇı´, aby obsluhujı´cı´ piloti mohli rychle najı´t a prove´st akce, ktere´ potrˇebujı´.

• Implementace– syste´m bude implementova´n v jazyce C++, s pomocı´ graficke´ho rozhranı´ Qt

5.2 Laboratorˇ SimStar

Vyvı´jena´ aplikace je soucˇa´stı´ syste´mu v multimedia´lnı´ vy´zkumne´ laboratorˇi SimStar. Laboratorˇ se zaby´va´ vy´zkumem bezpecˇnosti le´ta´nı´ a vyvı´jı´ na´stroje pro vy´cvik a tre´nova´nı´ pilotu˚. Laboratorˇ je vybavena trupem letounu SportStar (obra´zek 5.1) a kompletnı´m hardwarovy´m a softwarovy´m vyba- venı´m pro simulaci letu. V druhe´ cˇa´sti mı´stnosti se nacha´zı´ vy´pocˇetnı´ vybavenı´ a stanovisˇteˇ opera´tora.

Vy´pocˇty a zobrazova´nı´ simulacˇnı´ch dat majı´ na starosti dva pocˇı´tacˇe, jeden pocˇı´tacˇ zajisˇt’uje beˇh si- mulacˇnı´ho ja´dra a jeho vizualizaci na projektor, druhy´ pocˇı´tacˇ ma´ na starosti zobrazova´nı´ informacı´ na displejı´ch, ktere´ se nacha´zejı´ v kabineˇ letounu a na stanovisˇti opera´tora. Sche´ma simula´toru SimStar je zakresleno na obra´zku 5.2.

Obra´zek 5.1: Simula´tor SportStar v laboratorˇi SimStar [18]

Kabina letounu je vybavena dveˇma modernı´mi dotykovy´mi displeji, na ktery´ch se zobrazujı´

informace o pru˚beˇhu letu. Tyto informacˇnı´ prvky jsou oznacˇova´ny jako hlavnı´ letovy´ displej (PFD – Primary Flight Display).

(25)

Obra´zek 5.2: Sche´ma simula´toru SimStar [19]

5.2.1 Hlavnı´ letovy´ displej

Hlavnı´ letovy´ displej je modernı´ letecky´ na´stroj vyhrazeny´ pro zobrazova´nı´ letecky´ch informacı´.

Kombinuje zobrazenı´ sˇesti hlavnı´ letecky´ch u´daju˚ – rychlost letu, ukazatel kurzu, vy´sˇka letu, vertika´lnı´

rychlost, umeˇly´ horizont a zata´cˇkomeˇr na jednom displeji. Dı´ky tomu ma´ pilot vsˇechny du˚lezˇite´

informace prˇehledneˇ a jednodusˇe zobrazeny na jednom mı´steˇ. V prˇı´padeˇ poruchy hlavnı´ho letove´ho displeje vsˇak v kokpitu vzˇdy zu˚sta´vajı´ i mechanicke´ ukazatele.

Letovy´ displej v laboratorˇi SimStar tento koncept da´le rozvı´jı´ a zdokonaluje. Na displeji je tak mozˇne´ kromeˇ sˇesti za´kladnı´ch prˇı´stroju˚ videˇt i provoznı´ informace jako jsou ota´cˇky motoru, vy´kon motoru, mnozˇstvı´ paliva v palivovy´ch na´drzˇı´ch cˇi letovou mini-mapu se sourˇadnicemi aktua´lnı´ polohy.

Umeˇly´ horizont je navı´c zobrazen ve skutecˇne´m tere´nu, nad ktery´m letoun pra´veˇ prole´ta´.

Noveˇ vyvı´jena´ aplikace rozhranı´ autopilota je dalsˇı´m rozsˇı´rˇenı´m hlavnı´ho letove´ho displeje.

(26)

Kapitola 6

Na´vrh aplikace

6.1 Na´vrh interakce

Obra´zek 6.1: Diagram za´vislostı´ designu interakcı´ [20]

Slovo interakce pu˚vodneˇ v latinske´m prˇekladu znamena´ jednat mezi sebou. Interakcı´ v pocˇı´tacˇo- ve´m designu rozumı´me jedna´nı´ mezi uzˇivatelem aplikace a pocˇı´tacˇovy´m syste´mem. Design interakce je oblast odborny´ch znalostı´ zameˇrˇeny´ch na na´vrh chova´nı´ syste´mu˚, se ktery´mi uzˇivatel interaguje.

V na´vrhu interakce na´s zajı´ma´ cely´ proces komunikace, ovla´da´nı´ a rˇı´zenı´ syste´mu, a take´ vza´jemna´

(27)

oboustranna´ aktivita obou interagujı´cı´ch subjektu˚. Na diagramu 6.1 vidı´me vztahy na´vrhu interakcı´

(interaction design) s ostatnı´mi inzˇeny´rsky´mi obory, ktere´ ovlivnˇujı´ na´vrh interakce. Mezi tyto obory patrˇı´ zejme´na – user experience design, pru˚myslovy´ design, informacˇnı´ architektura, inzˇeny´rstvı´ uzˇi- vatelsky´ch rozhranı´ (user interface engineering), interakce pocˇı´tacˇe s cˇloveˇkem (human computer interaction). Tyto inzˇeny´rske´ disciplı´ny majı´ sve´ specificke´ u´zke´ zameˇrˇenı´ na rˇesˇenı´ dı´lcˇı´ch u´kolu˚.

Proces na´vrhu interakce v sobeˇ zahrnuje vsˇechny tyto obory a jejich kombinacı´ umozˇnˇuje vytvorˇit kompletnı´ na´vrh syste´mu.

Na´vrh interakce se skla´da´ z neˇkolika cˇa´stı´, jak ukazuje obra´zek 6.2. Pro komplexnı´, kvalitnı´

a vyva´zˇeny´ na´vrh je du˚lezˇite´ dodrzˇova´nı´ porˇadı´ vy´voje designu aplikace – kazˇda´ etapa vy´voje ma´

svu˚j prˇı´nos pro celkovou kvalitu navrhovane´ho syste´mu a kazˇda´ dalsˇı´ etapa navazuje na tyto prˇı´nosy.

Zejme´na je du˚lezˇite´ nevynecha´vat etapy skicova´nı´ a prototypova´nı´, protozˇe jsou za´kladem procesu na´vrhu interakce.

Obra´zek 6.2: Etapy na´vrhu uzˇivatelske´ho rozhranı´

6.1.1 Diagram prˇı´padu˚ uzˇitı´

Diagram prˇı´padu˚ uzˇitı´ je jeden z diagramu˚, ktery´ pouzˇı´va´ forma´lnı´ modelovacı´ jazyk UML (Unified Modeling Language). Pomocı´ diagramu mu˚zˇeme jednodusˇe popsat vneˇjsˇı´ pohled na modelovany´

(28)

syste´m a nale´zt a vymezit hranici mezi syste´mem a okolı´m – definovat rozsah syste´mu. V na´vrhu interakce na´s na diagramu prˇı´padu uzˇitı´ zajı´majı´ interakce mezi uzˇivatelem a syste´mem.

Uzˇivatele´ syste´mu a dalsˇı´ vneˇjsˇı´ objekty, ktere´ interagujı´ se syste´mem, jsou na diagramu prˇı´- padu uzˇitı´ zobrazeny jako figurky. Modelovany´ syste´m je zobrazen jako velky´ obde´lnı´k, v neˇmzˇ jsou obsazˇeny jednotlive´ prˇı´pady uzˇitı´ syste´mu. Pokud se uzˇivatel u´cˇastnı´ prˇı´padu uzˇitı´, tak je to na dia- gramu zna´zorneˇno cˇa´rou – asociacı´. Asociace neznamena´ provedenı´ primitivnı´ funkce, ale zna´zornˇuje komplexnı´ interakci akte´ra se syste´mem, vedenou k urcˇite´mu cı´li.

Diagram prˇı´padu˚ uzˇitı´ syste´mu autopilota

Se syste´mem autopilota interagujı´ dva externı´ akte´rˇi – pilot a simula´tor. Pilot je uzˇivatel rozhranı´

syste´mu autopilota. Role simula´toru zastupuje externı´ syste´m (letecky´ simula´tor), se ktery´m autopilot komunikuje – prˇebı´ra´ aktua´lnı´ letove´ hodnoty a vracı´ nastavenı´ autopilota. Nejvı´ce pouzˇı´vany´m prˇı´padem uzˇitı´ v syste´mu je nastavenı´ hodnoty, kdy uzˇivatel nejdrˇı´ve musı´ nastavit hodnotu, potvrdit ji a azˇ pote´ se zmeˇneˇna´ hodnota odesˇle do simula´toru.

Obra´zek 6.3: Use case diagram syste´mu autopilota

(29)

Specifikace prˇı´padu uzˇitı´ – nastavova´nı´ hodnoty

Popis: Pilot provede zmeˇnu hodnoty velicˇiny a odesˇle data do simula´toru.

Vstupnı´ podmı´nky: zˇa´dne´

Vy´stupnı´ podmı´nky: Syste´m nastavil novou hodnotu velicˇiny.

Sce´na´rˇ uzˇitı´:

1. OPAKUJ

(a) Pilot s pomocı´ posuvnı´ku a tlacˇı´tek

”+“ a

”-“ nastavı´ novou hodnotu velicˇiny.

2. Syste´m po nastavenı´ nove´ hodnoty ocˇeka´va´ jejı´ potvrzenı´.

3. POKUD pilot v prˇedem definovane´m cˇasove´m intervalu zma´cˇkne tlacˇı´tko

”CONF“.

(a) Dojde k potvrzenı´ nove´ hodnoty a jejı´ho zapamatova´nı´ syste´mem.

(b) Syste´m pilotovi zvy´raznı´ tlacˇı´tko

”CONF“, cˇı´mzˇ signalizuje potvrzenı´ nove´ hodnoty.

(c) POKUD je autopilot aktivnı´ (tlacˇı´tko

”AP“ svı´tı´ zeleneˇ) i. Dojde k odesla´nı´ noveˇ nastavene´ hodnoty do simula´toru.

4. JINAK

(a) Z du˚vodu nepotvrzenı´ nove´ hodnoty syste´m noveˇ nastavenou hodnotu ignoruje a na displej zobrazı´ naposledy potvrzenou hodnotu.

6.1.2 Skicova´nı´

Proces tvorby uzˇivatelske´ho rozhranı´ zacˇı´na´ papı´rovy´m prototypova´nı´m – skicova´nı´m. Vy´hodou te´to metody na´vrhu rozhranı´ je rychlost a jednoduchost tvorby za´kladnı´ho konceptu navrhovane´ho programu. Beˇhem te´to etapy se snazˇı´me definovat potrˇebnou mnozˇinu prvku˚ programu, najı´t jejich nejoptima´lneˇjsˇı´ rozvrzˇenı´ a umı´steˇnı´ v prostoru. Pouzˇitı´ papı´rove´ metody je pro tyto na´vrhy nej- rychlejsˇı´m a nejprˇirozeneˇjsˇı´m zpu˚sobem. Prˇi pouzˇiti digita´lnı´ch na´stroju˚ v te´to etapeˇ vy´voje mu˚zˇe analytikovu pozornost odva´deˇt od konceptu syste´mu k nedu˚lezˇity´m detailu˚m prezentace rˇesˇenı´ (na- prˇı´klad ke graficky´m efektu˚m). Naopak pouzˇitı´ skicova´nı´ od teˇchto detailu˚ oprosˇt’uje a umozˇnˇuje se soustrˇedit na strukturu, logiku a koncept vyvijene´ho programu, nikoliv na jeho grafickou podobu.

6.1.3 Prototypova´nı´

Prototypova´nı´ je proces vytva´rˇenı´ prototypu programu, tj. sˇablony – zkusˇebnı´ verze programu s cı´lem oveˇrˇit pouzˇitelnost navrhovane´ koncepce. Prototyp imituje funkce a chova´nı´ vy´sledne´ho syste´mu s vy´razneˇ nizˇsˇı´mi na´klady na vy´voj nezˇ by meˇla skutecˇna´ implementace programu. Tı´m umozˇnˇuje

(30)

zı´skat zpeˇtnou vazbu od budoucı´ch uzˇivatelu˚ syste´mu drˇı´ve nezˇ dojde k na´kladne´mu vy´voji. Dı´ky nı´zky´m na´kladu˚m na vy´voj prototypu mu˚zˇeme navı´c prova´deˇt iterativnı´ prototypova´nı´ a postupneˇ tak nale´zt optima´lnı´ uzˇivatelske´ rozhranı´.

Vyvı´jena´ aplikace je urcˇena do prostrˇedı´ letecky´ch syste´mu˚, ktere´ spı´sˇe preferujı´ standardizovana´

uzˇivatelska´ rozhranı´ prˇed novy´mi inovativnı´mi. Dalsˇı´m omezenı´m designu interakce prˇedstavuje nasazenı´ aplikace na dotykove´ displeje. Z teˇchto du˚vodu˚ je nutne´ pouzˇı´t rˇadu standardnı´ch ovla´dacich prvku˚ a dodrzˇovat za´sady vy´voje uzˇivatelske´ho rozhranı´ pro dotykove´ displeje:

• dostatecˇna´ velikost ovla´dacı´ch prvku˚ (dotykova´ plocha ovla´dacı´ho prvku nesmı´ by´t mensˇı´ nezˇ prst cˇloveˇka),

• ovla´dacı´ prvky by nemeˇly by´t umı´steˇny prˇı´lisˇ blı´zko u sebe a prˇı´lisˇ blı´zko k okraji obrazovky.

V te´to etapeˇ vy´voje beˇhem hleda´nı´ optima´lnı´ho rozhranı´ bylo vytvorˇeno neˇkolik prototypu˚.

Prvnı´ fa´ze prototypova´nı´

Obra´zek 6.4: Prvnı´ a druhy´ prototyp syste´mu

V prvnı´m prototypu syste´mu (obra´zek 6.4) hleda´m za´kladnı´ orientaci aplikace: vertika´lnı´ nebo horizonta´lnı´m. Tlacˇı´tka+a-jsou pro zmeˇnu velikosti hodnoty velicˇiny, posuvnı´k nastavuje velikost kroku, po ktere´m se meˇnı´ hodnota prˇi stisknutı´ tlacˇı´tek + a -. Tlacˇı´tko s obra´zkem za´mku je pro potvrzenı´ nastavene´ hodnoty. Uka´zalo se, zˇe obeˇ verze jsou nevyhovujı´cı´ – aplikace je prˇı´lisˇ sˇiroka´

nebo prˇı´lisˇ vysoka´ pro zobrazenı´ na displeji.

(31)

Druha´ fa´ze prototypova´nı´

V druhe´ fa´zi prototypova´nı´ (obra´zek 6.4) zkousˇı´m najı´t kompaktneˇjsˇi rozvrzˇenı´ aplikace. Oproti prˇedchozı´mu na´vrhu zveˇtsˇuji velikost tlacˇı´tek pro nastavenı´ hodnot tak, abych dodrzˇela za´sady vy´voje rozhranı´ pro dotykove´ displeje. Po te´to u´praveˇ rozhranı´ sta´le obsahuje prˇı´lisˇ mnoho prvku˚ a tlacˇı´tka pro potvrzenı´ hodnoty nejsou umı´steˇna na spravne´m mı´steˇ – vytva´rˇejı´ vizua´lnı´ sˇum.

Trˇetı´ fa´ze prototypova´nı´

Obra´zek 6.5: Trˇetı´ a cˇtvrty´ prototyp syste´mu

Hleda´m nova´ rˇesˇenı´, ktera´ pomohou rozmı´stit prvky prˇehledneˇ na male´ obrazovce (obra´zek 6.5), a za´rovenˇ se snazˇı´m zmensˇit pocˇet ovla´dacı´ch prvku˚ rozhranı´. Sta´le je ale zobrazeno prˇı´lisˇ mnoho zbytecˇny´ch informacı´, ktere´ bude potrˇeba da´le redukovat.

Poslednı´ fa´ze prototypova´nı´

Vy´sledkem fa´ze prototypova´nı´ (obra´zek 6.6) je konecˇny´ na´vrh uzˇivatelske´ho rozhranı´. Byly od- straneˇny zbytecˇne´ informace: informace o pouzˇı´vany´ch jednotka´ch, nastavova´nı´ kroku. Protozˇe se

(32)

aplikacı´ pouzˇı´va´ vzˇdy pouze jedna z hodnot kurzu – bud’ pouze magneticky´ kurz nebo pouze zemeˇ- pisny´ kurz, tak bylo zvoleno rozmı´steˇnı´ hodnotHDGaTRKna stejne´ mı´sto. Pro prˇepı´na´nı´ mezi nimi je zavedeno nove´ tlacˇı´tkoSEL. Byla optimalizova´na funkcionalita nastavova´nı´ hodnot: posuvnı´k slouzˇı´

pro rychlejsˇı´ zmeˇnu hodnoty ve veˇtsˇı´ch krocı´ch, naopak operacˇnı´ tlacˇı´tka majı´ mensˇı´ krok a slouzˇı´

pro zprˇesnˇova´nı´ hodnoty. Krok nastavovanı´ je pevny´ pro kazˇdou velicˇinu.

Obra´zek 6.6: Fina´lnı´ prototyp syste´mu

6.1.4 Vizua´lnı´ na´vrh

Ve vy´voji graficke´ho rozhranı´ hraje vizua´lnı´ na´vrh za´kladnı´ roli. Komunikace mezi programem a cˇloveˇkem probı´ha´ vizua´lneˇ. Dobry´ graficky´ design programu pu˚sobı´ na cˇloveˇka pozitivneˇ a v prˇı´padeˇ GUI desktopove´ aplikace je zodpoveˇdny´ za celkovy´ dojem z programu. Spra´vneˇ navrzˇeny´ graficky´

design zjednodusˇuje proces interakce mezi programem a cˇloveˇkem a mu˚zˇe vy´razneˇ snı´zˇit pocˇet uzˇivatelsky´ch chyb a u´navu obsluhujı´cı´ho cˇloveˇka. Na´vrh vizua´lnı´ho stylu rozhranı´ by se meˇl rˇı´dit za´kladnı´mi pravidly typografie a graficke´ho designu:

• pouzˇı´vat pouze jeden vizua´lnı´ jazyk– vsˇechny cˇa´sti designu musı´ by´t prova´zane´ mezi sebou,

• omezit pocˇet typu˚ pı´sma– pouzˇı´vat maxima´lneˇ 3 typy,

• musı´ mı´t akcent – soustrˇedit pohled uzˇivatele na jednu hlavnı´ veˇc pomocı´ volby spra´vne´ho kontrastu, barvy cˇi typu pı´sma. Pro kazˇdy´ dalsˇı´ element informace postupneˇ snizˇovat u´rovenˇ zvy´razneˇnı´ od akcentu k obycˇejne´ informaci. To poma´ha´ uzˇivateli se postupneˇ zorientovat v aplikaci,

• barva musı´ vyvola´vat spra´vne´ emoce– prˇedevsˇı´m musı´ by´t vhodne´ pro druh aplikace,

• kontrast a rytmus– seskupovat bloky obsahujı´cı´ prˇı´buzne´ infrormace, rozmı´st’ovat bloky blı´zˇ cˇi da´l od sebe, zmensˇovat nebo zveˇtsˇovat bloky informacı´ a tı´mto zpu˚sobem vytva´rˇet kontrast a rytmus.

(33)

Vizua´lnı´ na´vrh rozhranı´ autopilota

Pro navrhovanou aplikaci bylo rozhodnuto modernizovat klasicky´ vizua´lnı´ styl pouzˇı´vany´ na sta´va- jı´cı´ch rozhranı´ch autopilotu˚. Noveˇ navrhovane´ rozhranı´ v sobeˇ bude sdruzˇovat klasicke´ i modernı´

prvky designu.

Design by v sobeˇ meˇl zohlednˇovat na´sledujı´cı´ klasicke´ elementy:

• neutra´lnı´ paleta sˇedo-modry´ch barev tmavsˇı´ho odstı´nu,

• drzˇet akcent na zobrazovany´ch hodnota´ch,

• zdu˚raznˇovat kontrast pozadı´ a operacˇnı´ch prvku˚,

• sveˇtle´ barvy pro pı´smo.

Modernizovany´m elementem designu je vyhy´ba´nı´ se hranaty´m a plochy´m prvku˚m.

Vzhledem k tomu, zˇe aplikace bude beˇzˇet na dotykovy´ch displejı´ch, ve ktery´ch chybı´ hmatova´

odezva, bylo navı´c jednı´m z u´kolu˚ graficke´ho designu bylo co nejvı´ce simulovat objem ovla´dacı´ch prvku˚ programu. Toho bylo dosa´zˇeno pomocı´ gradientu, sveˇtla a stı´nu a take´ pomocı´ spra´vne´ graficke´

odezvy na stisknutı´ a pusˇteˇnı´ tlacˇı´tek.

Pro zvy´raznˇova´nı´ aktua´lneˇ du˚lezˇity´ch tlacˇı´tek jsou pouzˇite´ barvy: zˇluta´ barva pro stav potvrzova- cı´ch tlacˇı´tek, zelena´ pro aktivacˇnı´ stav tlacˇı´tekHOLDaAP(aktivacˇnı´ tlacˇı´tko autopilota). Tlacˇı´tkoAP je navı´c zvy´razneˇno sveˇtly´m ra´mecˇkem kolem tlacˇı´tka.

Vy´beˇr neutra´lnı´ barvy a celkoveˇ tmave´ palety byl rˇı´zen doporucˇeny´mi vlastnostmi uzˇivatelske´ho rozhranı´ pro letecke´ aplikace. V kabineˇ pilota se nacha´zı´ velke´ mnozˇstvı´ ru˚zny´ch na´stroju˚ zobra- zujı´cı´ch du˚lezˇite´ informace o stavu letadla a take´ velke´ mnozˇstvı´ informacı´ zobrazujı´cı´ch beˇzˇne´

provoznı´ informace. Je du˚lezˇite´ dodrzˇovat pravidla pro tvorbu designu pro letecke´ prostrˇedı´, proto bylo nezˇa´doucı´ neˇjaky´m zpu˚sobem zvy´raznˇovat pomeˇrneˇ nedu˚lezˇitou informaci z rozhranı´ autopilota.

Vy´sledek na´vrhu

Cı´lem na´vrhu bylo realizovat takove´ uzˇivatelske´ rozhranı´, ktere´ by co nejvı´ce zjednodusˇovalo interakci pilota s aplikacı´. Rozhranı´ bylo vyvı´jeno pro mala´ sportovnı´ letadla, ktera´ nepotrˇebuji podporovat velkou mnozˇinu funkcı´, jenzˇ je prˇı´tomna´ u autopilotu˚ velky´ch dopravnı´ch letadel. Z tohoto du˚vodu rozhranı´ obsahuje pouze za´kladnı´ funkcˇnı´ prvky autopilota. Dı´ky jednoduche´mu a minimalisticke´mu designu aplikace neprˇedstavuje jejı´ pouzˇı´va´nı´ ve fa´zi sezna´menı´ uzˇivatele s aplikacı´ ani ve fa´zi jejı´ho pouzˇı´va´nı´ velke´ proble´my.

Pro nastavova´nı´ hodnoty je vyuzˇit posuvnı´k, ktery´ ma´ pevneˇ nastaveny´ krok. Jako doplneˇnı´

posuvnı´ku jsou na obrazovce prˇı´tomna´ tlacˇı´tka pro uprˇesneˇnı´ hodnoty. Vy´znam teˇchto tlacˇı´tek je ve zrychlenı´ procesu nastavova´nı´ prˇesne´ hodnoty. Pouze s pomocı´ posuvnı´ku na dotykove´m displeji

(34)

nenı´ mozˇne´ rychle nastavit u´plneˇ prˇesnou hodnotu. Proto pilot nejdrˇı´ve nastavı´ posunem prˇiblizˇnou hodnotu, kterou na´sledneˇ s pouzˇitı´m tlacˇı´tek+a-uprˇesnı´.

Aplikace byla vyvı´jena pro dotykove´ displeje, proto bylo nutne´ zave´st opatrˇenı´ proti sˇpatne´mu (na- prˇı´klad na´hodne´mu) zada´va´nı´ hodnoty. Implementova´n tak byl mechanismus potvrzova´nı´ nastavene´

hodnoty. K potvrzova´nı´ je urcˇeno tlacˇı´tko CONF, po jeho stisknutı´ dojde k potvrzenı´ a zapamato- va´nı´ nastavene´ hodnoty. Pokud na´sledneˇ potrˇebujeme tuto hodnotu zmeˇnit, je nutne´ nejdrˇı´ve pomocı´

posuvnı´ku a tlacˇı´tek zvolit novou hodnotu a v cˇasove´m intervalu tuto hodnotu potvrdit. Teprve po po- tvrzenı´ zacˇne syste´m autopilota pracovat s noveˇ nastavenou hodnotou. Pokud nenı´ hodnota potvrzena v urcˇene´m cˇasove´m limitu, dojde k na´vratu pu˚vodnı´, naposledy zapamatovane´ hodnoty.

Obra´zek 6.7: Vy´sledek na´vrhu graficke´ho rozhranı´ aplikace

(35)

Kapitola 7

Implementace

7.1 Pouzˇite´ na´stroje

7.1.1 Programovacı´ jazyk C++

Program byl implementova´n v objektoveˇ orientovane´m jazyce C++. V soucˇasne´ dobeˇ se jedna´ o jeden z nejrozsˇı´rˇeneˇjsˇı´ch programovacı´ch jazyku˚. Du˚vodem pro volbu tohoto jazyku byla pra´veˇ jeho velka´

rozsˇı´rˇenost, dostupnost kvalitnı´ch knihoven pro tvorbu graficke´ho rozhranı´ aplikace a jeho vhodnost pro podobny´ typ u´loh.

7.1.2 Knihovna Qt

Knihovna Qt je multiplatformnı´ framework urcˇeny´ pro vy´voj aplikacı´ s graficky´m uzˇivatelsky´m roz- hranı´. Programovacı´ jazyk C++ tento framework nativneˇ pouzˇı´va´, je mozˇne´ jej ale pouzˇı´t i v dalsˇı´ch programovacı´ch jazycı´ch jako jsou C#, Java, Perl, Python. Knihovna nabı´zı´ velke´ mnozˇstvı´ standard- nı´ch ovla´dacı´ch prvku˚ a komponent pro graficky´ design rozhranı´. Poskytuje mozˇnosti programova´nı´

interakcı´ programu s uzˇivatelem. Hlavnı´ charakteristickou vlastnosti Qt knihovny je pouzˇı´va´nı´ signa´lu˚

a slotu˚ pro komunikaci mezi objekty. Slot se vyvola´va´ jako reakce na signa´l, ktery´ je generova´n zmeˇ- nou stavu objektu. Jednı´m slotem lze spojit neˇkolik signa´lu˚, a stejneˇ tak pro jeden signa´l lze definovat neˇkolik ru˚zny´ch slotu˚. Sloty lze pouzˇı´t i jako obycˇejnou metodu objektu a take´ pro vyvola´vanı´ signa´lu˚

[21].

7.1.3 Qt Style Sheets

Pro vytva´rˇenı´ vizua´lnı´ho stylu prvku˚ programu je mozˇne´ v knihovneˇ Qt pouzˇı´va´t Qt Style Sheets (QSS). Tyto styly jsou syntaxı´ i svou filosofiı´ podobne´ kaska´dovy´m stylu˚m CSS pouzˇı´vany´m pro webdesign. QSS umozˇnˇujı´ rychle, jednotneˇ a jednodusˇe nastavovat graficky´ vzhled vsˇech ovla´dacı´ch prvku˚ aplikace. Stejneˇ jako v CSS lze meˇnit tvar objektu, barvu, pru˚hlednost, vizua´lnı´ reakci na uda´lost

(36)

(naprˇ. prˇejetı´ mysˇı´ nad tlacˇı´tkem) a dalsˇı´ graficke´ parametry objektu˚. Objekty, ke ktery´m chceme tı´mto zpu˚sobem definovat styl, lze vybrat pomocı´ specia´lnı´ch selektoru˚. Metodou::setStyleSheet() lze prˇipojit vizua´lnı´ styl k libovolne´mu objektu nebo k cele´ aplikaci [22].

7.2 Komunikacˇnı´ protokoly

Pro komunikaci se simula´torem jsou pouzˇity dva ru˚zne´ komunikacˇnı´ protokoly: CANaerospace a AW- COM. Prˇepı´na´nı´ mezi teˇmito protokoly v programu lze prova´deˇt pomocı´ vstupnı´ch parametru˚ aplikace.

7.2.1 Protokol CANaerospace

Protokol CANaerospace je vı´cevrstvy´ model zalozˇeny´ na se´riove´m komunikacˇnı´m protokolu Con- troller Area Network (CAN), ktery´ zajisˇt’uje vysokou spolehlivost komunikace a zabezpecˇenı´, diky ktere´mu lze tento protokol pouzˇit ve vestaveˇny´ch letecky´ch syste´mech.

CANaerospace je nadstavbou nizˇsˇı´ho protokolu CAN, a proto definuje dalsˇı´ vrstvy modelu ISO/OSI a takovy´m zpu˚sobem umozˇnˇuje adresova´ni uzlu, potrˇebne´ho pro stanovenı´ komunikace Peer to Peer. Protokol je zalozˇen na architekturˇe klient-server [23].

Typy zpra´v

CANaerospace definuje 6 za´kladnı´ch typu˚ zpra´v podle du˚lezˇitosti. Kazˇdy´ druh zpra´v se pouzˇı´va´ pro ru˚zne´ druhy sluzˇeb. Pomoci teˇchto zpra´v probı´ha´ komunikace mezi u´cˇastnı´ky. Kazˇdy´ typ zpra´vy je spojen s identifika´torem CAN-ID, ktery´ definuje prioritu zpra´vy.

Struktura zpra´v

Kazˇda´ zpra´va obsahuje 4 bytovou hlavicˇku obsahujı´cı´ identifikaci zpra´vy. Da´le obsahuje 1 azˇ 4 bytu˚ dat. Pro prezentaci dat jsou definova´ny beˇzˇneˇ pouzˇı´vane´ datove´ typy. Byty ve zpra´va´ch jsou usporˇa´da´ny v ko´dova´nı´ Big Endian.

Forma´t zpra´vy

1. Node-ID– ma´ rozsah 0-255. Definuje stanici, pro kterou je zpra´va urcˇena. Node-ID 0 znamena´, zˇe zpra´va je urcˇena pro vsˇechny stanice,

2. Data type– specifikuje datovy´ typ prˇena´sˇeny´ch dat, 3. Service Code– slouzˇı´ pro specia´lnı´ data,

4. Message Code– cˇı´slo zpra´vy, slouzˇı´ pro monitorova´nı´ vstupnı´ch sekvencı´ dat.

(37)

Obra´zek 7.1: Forma´t zpra´vy protokolu CANaerospace [23]

Implementace protokolu

Pro implementaci komunikace pomocı´ CANaerospace protokolu byla pouzˇita volneˇ dostupna´ C++

knihovna libcanaero 1[24]. Knihovna poskytuje jednoduchy´ a rychly´ prˇı´stup k protokolu na sı´ti.

Pro komunikaci se pouzˇı´va´ UDP multicast komunikaci. Pomocı´ te´to knihovny je mozˇne´ rozhranı´

autopilota propojit s nejrozsˇı´rˇeneˇjsˇı´mi simula´tory – Microsoft Flight Simulator a X-Plane.

Uka´zka pouzˇitı´ knihovny CANaerospace

Pouzˇitı´ knihovny zacˇı´na´ vytvorˇenı´m a inicializacı´ nove´ho objektu SCS::Receiver – hlavnı´

trˇı´da pro vytva´rˇenı´ CANaerospace komunikacı´, zpracova´va´ a rˇı´dı´ sı´t’ove´ prˇipojenı´ protokolu. Trˇı´da Receiverspravuje seznam dostupny´ch CAN datovy´ch promeˇnny´ch (uka´zka 7.1).

SCS::Scscom::Scscom() {

//inicializace SCS::Receiver

const unsigned char required_sw_revision = 2;

my_receiver = new SCS::Receiver(required_sw_revision);

//registrace pozadavku rychlost

my_receiver->requestData(SCS::AP_SPD_M_S::Id(), &apspeed);

//registrace pozadavku vyska

my_receiver->requestData(SCS::AP_ALT_M::Id(), &apalt);

//registrace pozadavku vertikalni rychlost

1Knihovna libcanaero je volneˇ dostupna´ ke stazˇenı´ na adrese http://cross-simulator.com/download.php

(38)

my_receiver->requestData(SCS::AP_VS_M_S::Id(), &apvs);

//registrace pozadavku kurz HDG

my_receiver->requestData(SCS::AP_HDG_DEG::Id(), &aphdg);

//registrace pozadavku pozice kridelek

my_receiver->requestData(SCS::FLAPS_POS_DEG::Id(),

boost::bind(&SCS::Scscom::handle_flaps,this,_1), &flaps);

//registrace pozadavku pozice vyskat

my_receiver->requestData(SCS::TRUE_ALT_M::Id(),

boost::bind(&SCS::Scscom::handle_althold,this,_1), &althold);

//registrace pozadavku rezim autopilota

my_receiver->requestData(SCS::AP_MODE_BITFIELD::Id(), &apon);

}

Zdrojovy´ ko´d 7.1: Uka´zka inicializace SCS::Receiver

Na tomto objektu mu˚zˇeme volat dveˇ za´kladnı´ funkcerequestData()asendData(). Pomocı´

prˇı´kazu requestData propojujeme pozˇadovana´ data v trˇı´deˇ CAN s promeˇnny´mi v nasˇem programu urcˇeny´mi pro jejich ukla´da´nı´ - probı´ha´ registrace odbeˇru dat. Pokud jizˇ ma´me zaregistrovane´ vsˇechny datove´ promeˇnne´, ktere´ chceme zı´ska´vat, mu˚zˇeme zacˇı´t volat metodurun(), ktera´ prova´dı´ aktualizaci dat v nasˇich promeˇnny´ch. Tuto metodu je nejlepsˇı´ volat v nekonecˇne´m cyklu (uka´zka 7.2), ktery´ beˇzˇı´

jako neza´visly´ proces a v zadane´m intervalu prova´dı´ aktualizaci dat. Aktualizaci dat mu˚zˇeme take´

sledovat pomocı´ handle, ktera´ na´s upozornı´ na zmeˇnu dat a provede prˇı´slusˇnou obsluhu.

void running::run() {

while(1){

can->my_receiver->run();

Sleep(1000);

} }

Zdrojovy´ ko´d 7.2: Zı´ska´va´nı´ dat

Pokud chceme naopak data odeslat z programu do simula´toru, mu˚zˇeme pouzˇı´t metodusendData().

Touto metodou nastavı´me hodnotu prˇı´slusˇne´ promeˇnne´ v simula´toru a potvrdı´me jejı´ odesla´nı´ metodou run(). Kra´tka´ uka´zka ko´du 7.3.

(39)

void SCS::Scscom::SendIAS(int IAS){

my_receiver->run();

apspeed = IAS;

my_receiver->sendData(AP_SPD_M_S::Id());

}

Zdrojovy´ ko´d 7.3: Uka´zka odesla´nı´ dat

7.2.2 Protokol AW-COM

Protokol AW-COM byl specia´lneˇ vytvorˇen pro u´cˇely komunikace mezi softwarovy´mi aplikacemi a simula´torem v laboratorˇi SimStar. Protokol je zalozˇen na architekturˇe klient-server a pouzˇı´va´ ko- munikaci pomocı´ TCP/IP. Komunikace probı´ha´ pomocı´ zpra´v [25].

Forma´t zpra´v

Komunikacˇnı´ protokol AW-COM pouzˇı´va´ dva za´kladnı´ typy zpra´v - zpra´va SET a zpra´va GET. Zpra´va SET slouzˇı´ pro odesla´nı´ dat na server, zpra´va SET pro zı´ska´nı´ dat ze serveru. Obeˇ zpra´vy obsahujı´

hlavicˇku, data a ukoncˇovacı´ sekvenci. Datova´ cˇa´st se da´le deˇlı´ na cˇa´st obsahujı´cı´ identifikace velicˇiny a cˇa´st obsahujı´cı´ hodnotu. Forma´t zpra´v 7.1.

Hlavicˇka zpra´vy Data Ukoncˇovacı´ sekvence

Hlavicˇka Obsah Ukoncˇovacı´ sekvence

SET DATA :velicˇina:hodnota :END :END

GET DATA :velicˇina:hodnota :END :END

Tabulka 7.1: Forma´t zpra´v AW-COM protokolu [25]

Uka´zka pouzˇitı´ protokolu AW-COM

Spojenı´ se serverem inicializujeme pomocı´ prˇı´kazuinit(). Parametry spojenı´, server a port nasta- vı´me pomocı´ funkcesetServer()asetPort(). Uka´zka inicializace 7.4.

Aerocom::Aerocom(int port, string server) {

hMutex = CreateMutex( NULL, FALSE, NULL );

(40)

netcom.init();

netcom.setServer(server);

netcom.setPort(port);

netcom.setMutex(hMutex);

simrun = 2;

}

Zdrojovy´ ko´d 7.4: Uka´zka inicializace AW-COM

Pro odesı´la´nı´ dat musı´me nejdrˇı´ve vytvorˇit zpra´vu funkcı´ setQuery(). Na´sledneˇ prˇı´kazem SetData()odesˇleme zpra´vu na server (uka´zka ko´du – odesla´nı´ hodnoty autopilota (vy´sˇky) 7.5).

void Aerocom::SendALT(int ALT){

//nastavime nazev veliciny jenz chceme odeslat string text=”SET:APALT:”;

//pridame hodnotu

text.append(netcom.DToStr(ALT));

//ukoncime format zpravy text.append(”:END:\n”);

//provedeme odeslani netcom.setQuery(text);

netcom.SetData(&simrun);

}

Zdrojovy´ ko´d 7.5: Uka´zka odesla´nı´ dat

Pro zı´ska´va´nı´ dat ze serveru slouzˇı´ funkceGetData(), ktera´ take´ pozˇaduje nejdrˇı´ve sestavenı´

pozˇadavku a odesla´nı´ zpra´vy s pozˇadavkem na server. Funkce GetData() vracı´ data do datove´

strukturyfsx, ze ktere´ potom hodnotu mu˚zˇeme da´le pouzˇı´vat (uka´zka ko´du – prˇijetı´ aktua´lnı´ vy´sˇky 7.6).

int Aerocom::getAltHold(){

//nastavime nazev promenne kterou chceme ziskat string text=”GET:AP:END:\n”;

netcom.setQuery(text);

//ziskame a vratime hodnotu vysky netcom.GetData(&simrun);

Odkazy

Související dokumenty

Keyframe animace je styl založený na klíčových snímcích a postupné interpolaci mezi nimi, proto už nemusíme mít zaznamenané pro jednotlivé kosti pozice a orientaci v

Cílem této práce je prostudovat a shrnout metodiky návrhu uživatelských rozhraní, dále se zaměřit na způsob hodnocení a jeho metrik, navrhnout a, v neposlední řadě,

Vnější úhly jsou vedlejší k úhlům vnitřním, jejich velikost je tedy 180 ◦ mínus příslušný vnitřní úhel. Hodnota vnějšího úhlu při jednom vrcholu je tedy shodná

V návaznosti na shrnuté poznatky o vlast- nostech Petriho sítí, jejich využití při modelování a existujících nástrojích bude v Kapitole 4 shrnut a rozebrán návrh

Uvedeme návrh elementárního procesoru nejprve pro práci s čísly v pevné řádové čárce a následně pak uvedeme i návrh, jež bude pracovat nad čísly reprezentovanými

Scéna je navrhnutá tak, aby s ňou bola umožnená užívateľská in- terakcia, čiže užívateľ môže pridávať alebo odoberať objekty a transforomovať ich, meniť priblíženie

Sudé počty jsou také možné, ale generování i dekódování kódu bude komplikovanější a nevhodným kódováním dojde k rozdělení bajtů tak, že jeho části budou od

Před samotnou implementací základní verze kalkulačky je potřeba provést návrh slovníku, který bude použit rozpoznávačem, objektový návrh aplikace a návrh