České vysoké učení technické v Praze Fakulta elektrotechnická



Podobné dokumenty
Převodník Ethernet ARINC 429

Počítačová síť. je skupina počítačů (uzlů), popřípadě periferií, které jsou vzájemně propojeny tak, aby mohly mezi sebou komunikovat.

Praktické úlohy- 2.oblast zaměření

TOPOLOGIE DATOVÝCH SÍTÍ

Bitová přenosová rychlost odpovídá podle obr. 1. době trvání jednoho bitu podle vztahu. 1 bit.s ; s

Ethernet Historie Ethernetu Princip

Přednáška 3. Opakovače,směrovače, mosty a síťové brány

Počítačové sítě. Počítačová síť. VYT Počítačové sítě

Sériové komunikace KIV/PD Přenos dat Martin Šimek

6. Transportní vrstva

STANDARDY POČÍTAČOVÝCH SÍTÍ

Identifikátor materiálu: ICT-3-03

ZÁKLADY DATOVÝCH KOMUNIKACÍ

ZÁKLADY DATOVÝCH KOMUNIKACÍ

Identifikátor materiálu: ICT-3-02

Počítačové sítě. Miloš Hrdý. 21. října 2007

RS , , RS 485, USB, GSM/GPRS

UC485P. Převodník RS232 na RS485 nebo RS422. Průmyslové provedení s krytím

Projekt IEEE 802, normy ISO 8802

7. Aplikační vrstva. Aplikační vrstva. Počítačové sítě I. 1 (5) KST/IPS1. Studijní cíl. Představíme si funkci aplikační vrstvy a jednotlivé protokoly.

Vzdálené ovládání po rozvodné síti 230V

Obousměrný modul ECX-4

UC485. Převodník linky RS232 na RS485 nebo RS422 s galvanickým oddělením

Vysílací modul ECT-16

3.17 Využívané síťové protokoly

LETADLOVÉ SBĚRNICE JEDNOSMĚRNÁ SBĚRNICE AVIONICKÝ SYSTÉM S JEDNOSMĚRNOU SBĚRNICÍ

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Přijímací modul ECA-16

Identifikátor materiálu: ICT-3-01

JAK ČÍST TUTO PREZENTACI

M-Bus Master MultiPort 250D DATOVÝ LIST

IPZ laboratoře. Analýza komunikace na sběrnici USB L305. Cvičící: Straka Martin, Šimek Václav, Kaštil Jan. Cvičení 2

Počítačové sítě II. 14. Transportní vrstva: TCP a UDP. Miroslav Spousta, 2005

Telemetrický komunikační protokol JETI

POKUD JSOU PRACOVNÍCI SPOJENI DO SÍTĚ MOHOU SDÍLET: Data Zprávy Grafiku Tiskárny Faxové přístroje Modemy Další hardwarové zdroje

PŘÍSTUPOVÉ METODY KE KOMUNIKAČNÍMU KANÁLU

Přijímací modul ECA-4

EXTRAKT z české technické normy

Lokální počítačové sítě

Komunikační protokol

SPŠ a VOŠ Písek, Písek, K. Čapka 402. Učební texty. Datové sítě I. Vypracovala: Mgr. Radka Pecková

Vrstvy periferních rozhraní

Vestavné systémy BI-VES Přednáška 5

Multiplexory sériových rozhraní na optický kabel ELO E246, ELO E247, ELO E248, ELO E249, ELO E24A, ELO E24B. Uživatelský manuál

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Uživatelský modul. DF1 Ethernet

Protokoly vrstvy datových spojů LAN Specifikace IEEE 802 pokrývá :

Vlastnosti podporované transportním protokolem TCP:

Modemy a síťové karty

Počítačové sítě. Další informace naleznete na :

Uživatelský manuál. KNXgw232

Počítačové sítě Transportní vrstva. Transportní vrstva

Témata profilové maturitní zkoušky

4. Síťová vrstva. Síťová vrstva. Počítačové sítě I. 1 (6) KST/IPS1. Studijní cíl. Představíme si funkci síťové vrstvy a jednotlivé protokoly.

Local Interconnect Network - LIN

Skupina IEEE 802. Institute of Electrical and Electronics Engineers skupina 802 standardy pro lokální sítě. podvrstvy

Obousměrný modul ECX-8

MODELY POČÍTAČOVÝCH SÍTÍ

SEMESTRÁLNÍ PROJEKT Y38PRO

SEP2 Sensor processor. Technická dokumentace

CCNA I. 3. Connecting to the Network. CCNA I.: 3. Connecting to the network

4x vstup pro měření unifikovaného signálu 0 10 V, 0 20 ma, 4 20 ma. komunikace linkami RS232 nebo RS485

Ukázka testu Informatiky pro přijímací zkoušky do navazujícího magisterského studia

AS-Interface. AS-Interface = Jednoduché systémové řešení. Představení technologie AS-Interface

Převodník RS232 na RS485/422 UC485P. průmyslové provedení. galvanické oddělení. 28. února 2005 w w w. p a p o u c h. c o m

Univerzita Jana Evangelisty Purkyně Automatizace Téma: Datová komunikace. Osnova přednášky

Cílem kapitoly je seznámit studenta se síťovými kartami, zapojením síťových karet a jejich charakteristikami.

Převodník sériového rozhraní RS-485 na mnohavidové optické vlákno ELO E171 Uživatelský manuál

4. Co je to modulace, základní typy modulací, co je to vícestavová fázová modulace, použití. Znázorněte modulaci, která využívá 4 amplitud a 4 fází.

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 TECHNICKÉ VYBAVENÍ POČÍTAČŮ

Protokol TELNET. Schéma funkčních modulů komunikace protokolem TELNET. Telnet klient. login shell. Telnet server TCP/IP.

Protokoly: IP, ARP, RARP, ICMP, IGMP, OSPF

AS-Interface. AS-Interface. = Jednoduché systémové řešení

Telekomunikační sítě LAN sítě

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ Fakulta informačních technologií

Komunikační protokol

Laboratorní cvičení z předmětu Elektrická měření 2. ročník KMT

Přenos signálů, výstupy snímačů

Linkové kódy. Podpora kvality výuky informačních a telekomunikačních technologií ITTEL CZ.2.17/3.1.00/36206 PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI

AD4RS. měřící převodník. 4x vstup pro měření unifikovaného signálu 0 10 V, 0 20 ma, 4 20 ma. komunikace linkami RS232 nebo RS485

3. Linková vrstva. Linková (spojová) vrstva. Počítačové sítě I. 1 (5) KST/IPS1. Studijní cíl

AS-Interface. AS-Interface. = Jednoduché systémové řešení

Mikrokontroléry. Doplňující text pro POS K. D. 2001

Kódování signálu. Problémy při návrhu linkové úrovně. Úvod do počítačových sítí. Linková úroveň

Přepínaný Ethernet. Virtuální sítě.

TDS. LED zobrazovače. 4 sedmisegmentový svítící displej Výška znaku 10 nebo 57 mm Komunikace přes RS července 2012 w w w. p a p o u c h.

Software pro vzdálenou laboratoř

Počítačové sítě I. 4. Fyzická vrstva sítí. Miroslav Spousta, 2004

MODUL 3 KANÁLOVÉHO D/A PŘEVODNÍKU 0 25 ma

Sbě b r ě n r i n ce

Počítačové sítě pro V3.x Teoretická průprava II. Ing. František Kovařík

ASYNCHRONNÍ MODEM RS-422(V.11) OPTICKÉ VLÁKNO OPTO422 UŽIVATELSKÝ MANUÁL

íta ové sít baseband narrowband broadband

Ethernet. Značení Verze Typy 10 Mb/s 100 Mb/s 1000 Mb/s. Josef J. Horálek, Soňa Neradová IPS1 - Přednáška č.4

Manuál přípravku FPGA University Board (FUB)

Počítačové sítě internet

Rozšiřující desce s dalšími paralelními porty Rozšiřující desce s motorkem Elektrickém zapojení Principu činnosti Způsobu programování

I/O modul VersaPoint. Analogový výstupní modul, 16 bitový, napětí/proud, 1 kanál IC220ALG320. Specifikace modulu. Spotřeba. Údaje pro objednávku

Skupina IEEE 802. Institute of Electrical and Electronics Engineers skupina 802: standardy pro lokální sítě. podvrstvy

PB169 Operační systémy a sítě

Transkript:

České vysoké učení technické v Praze Fakulta elektrotechnická Bakalářská práce Praha 2009 Tomáš Levora

České vysoké učení technické v Praze Fakulta elektrotechnická Katedra měření Obor: Kybernetika a měření Převodník Ethernet - ARINC 429 Ethernet - ARINC 429 convertor Bakaláøská práce Vypracoval: Tomáš Levora Vedoucí práce: Doc. Ing. Karel Draxler, CSc. Rok: 2009

Prohlášení Prohlašuji, že jsem svou bakalářskou práci vypracoval samostatně a použil jsem pouze podklady (literaturu, projekty, SW atd.) uvedené v přiloženém seznamu. Nemám závažný důvod proti užití tohoto školního díla ve smyslu 60 Zákona č.121/2000 Sb., o právu autorském, o právech souvisejících s právem autorským a o změně některých zákonů (autorský zákon). V Praze dne....................................... Tomáš Levora

Anotace Práce čtenáře seznámí s návrhem převodníku mezi sběrnicemi ARINC 429 a Ethernet. Základ převodníku tvoří mikropočítač spřipojenou komponentou Lantronix XPort a obvody firmy Holt. U převodníku je navržena hardwarová i softwarová část. Součástí je obslužný program pro PC. Převodník je schopen na sběrnici ARINC 429 komunikovat všemi rychlostmi dle specifikace. Napájecí napětí převodníku odpovídá rozsahu hodnot používaných v palubních sítích letadel. Annotation The aim of this work is design of an ARINC 429/Ethernet converter. The basis of the converter is formed by a microcomputer with connected a Lantronix Xport component and integrated circuits of the Holt company. A hardware and software part of the converter was designed. A service routine for a PC was also generated. The converter is able to communicate through the ARINC 429 bus using all speeds according to the specification. The converter supply voltage corresponds to the range of values used in on-board aircraft systems.

Poděkování Děkuji panu Doc. Ing. Karlu Draxlerovi, Csc. za vedení práce. Dále děkuji pánům Ing. Janu Popelkovi, Ing. Pavlu Pačesovi a Ing. Vladimíru Bláhovi za cenné připomínky.

Obsah Úvod 9 1 Protokol ARINC 429 10 1.1. Historie a úvod..................................... 10 1.2. Fyzická vrstva...................................... 10 1.3. Struktura zpráv..................................... 13 1.4. Datové typy........................................ 15 2 Standard Ethernet 18 2.1. Ethernet obecně.................................. 18 2.2. Fyzická vrstva...................................... 18 2.3. Spojová vrstva...................................... 19 2.4. Protokol TCP/IP.................................... 20 2.5. Síťová vrstva IP.................................. 21 2.6. Přenosová vrstva UDP.............................. 22 2.7. Přenosová vrstva TCP.............................. 23 3 Realizace převodníku 25 3.1. Lantronix XPort.................................... 25 3.2. Mikropočítač....................................... 26 3.3. Řadič sběrnice ARINC 429............................. 27 3.4. Návrh oscilátoru.................................... 28 3.5. Obvod reálného času................................. 29 3.6. Napájení.......................................... 30 4 Návrh programového vybavení 33 4.1. Hlavní blok........................................ 33 4.2. Návrh aplikační vrstvy protokolu......................... 33 4.3. Ethernet komunikace................................. 34 4.4. Zpracovávání zpráv Ethernet......................... 36 4.5. Komunikace po sběrnici ARINC 429...................... 37 4.6. Časovač........................................... 37 4.7. Příkazy převodníku.................................. 38 5 Obslužný software 40 5.1. Komunikace........................................ 40 5.2. Hlavní třída programu................................ 40 6 Technické parametry zařízení 43 Závěr 44 Použitá literatura 45 7

Seznam obrázků 46 Seznam tabulek 47 Seznam příloh 48 Příloha A 49 Příloha B 51 8

Úvod Cílem práce je usnadnit uživateli moderního osobního, popř. přenosného počítače komunikaci se zařízeními disponujícími leteckou sběrnicí ARINC 429. Hlavním tématem práce bude provést čtenáře návrhem jednoduchého převodníku mezi sběrnicemi ARINC 429 a Ethernet s ohledem na všechny jeho funční bloky. Zařízení by mělo být napájeno napětím z rozsahu hodnot používaných v letadlových palubních sítích. Pro řešení Ethernetové části převodníku se předpokládá použití komponenty Lantronix XPort. Pro část driverů sběrnice ARINC 429 bude využito hotového integrovaného řešení od firmy Holt. Navrhovaný převodník si klade za cíl nahradit stávající zařízení komunikující po sběrnici RS-232, která postupem času ztrácí svoji pozici a již nenachází místo v nových přenosných počítačích. Využití nalezne převodník především v oblasti testování správnosti funkcí zařízení na straně sběrnice ARINC 429 nebo také jako pomůcka při výuce leteckých sběrnic. Výsledkem práce by měl být návrh hardwarové části převodníku a softwarové výbavy mikropočítače. Pro demonstraci funkčnosti bude sestaven na straně osobního počítače program pro komunikaci s uživatelem. Program bude umožňovat odesílání a příjem zpráv sběrnice ARINC 429. 9

1. Protokol ARINC 429 V této kapitole shrneme základní informace o komunikačním protokolu ARINC 429, přičemž se zaměříme převážně na popis vyšších vrstev protokolu. Popíšeme zde strukturu zpráv pro komunikaci. V úvodu kapitoly se krátce budeme věnovat fyzické vrstvě protokolu. Pokud zde mluvíme o sběrnici ARINC 429, máme na mysli poslední revizi ARINC 429-15 z roku 1995, první revize pochází již z roku 1978, značíme ji ARINC 429-1. Podstatným zdrojem pro tuto kapitolu byla přímo jmenovaná specifikace [1], z volných zdrojů se jako nejlepší ukázal [3][4]. 1.1. Historie a úvod Specifikace ARINC 429 je produktem společnosti Aeronautical Radio, Inc. (zkráceně ARINC), jež figuruje v oboru letectví a vývoje leteckých sytémů, a to jak pro komerční tak i vojenské účely, již od roku 1929. Společnost ARINC je především činná ve vývoji standardů a specifikací pro letecké elektrotechnické systémy. Tyto standardy jsou průmyslově velmi rozšířeny, využívají je velké letecké společnosti jako např. Airbus, Bell Helicopters nebo Boeing [2]. Ve specifikaci sběrnice ARINC 429, také známé pod označením Mark 33 DITS Specification, je definován způsob, jakým spolu zařízení připojená na sběrnici vzájemně komunikují, jakými vodiči jsou zařízení propojena a elektrické charakteristiky sběrnice. Propojení zařízení je založeno na kroucené dvojlince. Datový přenos je navržen nativně jako jednosměrný. Zařízení připojená na sběrnici spolu komunikují prostřednictvím zpráv s pevnou délkou, jejichž součástí je pevná a v daném systému unikátní adresa zařízení. Adresy jednotlivých zařízení, potažmo veličin jsou součástí specifikace ARINC 429. 1.2. Fyzická vrstva Přenosová cesta letadlové sběrnice ARINC 429 je tvořena dvojicí signálových vodičů. Pro přenos informace je využito BPRZ (bipolar return to zero) modulace, tedy bipolární modulace s návratem do nuly [7]. Jedna z výhod této modulace pro přenos dat spočívá v pravidelnosti a rychlosti změny napěťových úrovní na každém z vodičů, díky nimž je možné ušetřit hodinový signál a synchronizaci přijímačů 10

Protokol ARINC 429 zajistit přímo z datové linky. 1. vodič 2. vodič +5 V 0 V 5 V +5 V 0 V 5 V +10 V rozdíl 0 V 10 V datové bity 1 0 0 1 0 1 1 0 1 0 Obrázek 1.1 - Ukázka BPRZ modulace Přenos je diferenciální, přijímač tedy vyhodnocuje pouze změny a hodnoty rozdílu potenciálů mezi oběma vodiči. Tento způsob přenosu vede k eliminaci aditivního rušení na vedení. Zmíněná symetrie spočívá v opačné polaritě velikostí napětí na každém z vodičů v každý časový okamžik, o bipolární modulaci mluvíme ve spojení s napěťovými úrovněmi symetrickými podle určité střední hodnoty. Velikosti napětí na každém z obou vodičů (podle [1] označovány v pořadí line A a line B) dosahují relativních hodnot 0 ± 0,25 V, 5 V ± 0,5 V a 5 V ± 0,5 V proti společnému nulovému vodiči. Rozdílové napětí (A B) v tomto důsledku by mělo nabývat hodnot 0 ± 0,5 V, 10 V ± 1 V a 10 V ± 1 V v závislosti na logickém stavu. Přijímaný diferenciální signál nabývá tří stavů podle [1] označovanými jako HI, NULL a LO. První z nich (HI ) je definován jako velikost napětí v rozsahu mezi 6,5 V a 13 V, stav LO je definován jako stejný napěťový rozsah opačné polarity a poslední stav (NULL) pokrývá rozsah od 2,5 V do 2,5 V. Z důvodu možného provozu sběrnice v zarušených prostorách je doporučeno [1] na straně přijímače akceptovat hodnoty napětí z rozsahů uvedených v tabulce 1.1. LO NULL HI spodní mez (V) 13,0 2,5 6,5 horní mez (V) 6,5 2,5 13,0 Tabulka 1.1 - Napěťové úrovně na sběrnici ARINC 429 11

Protokol ARINC 429 Každá dvouvodičová sběrnice ARINC 429 je simplexní, pro implementaci obousměrné komunikace je tedy nezbytné spojit obě zařízení disponující dvěma kanály, jedním pro vysílání a druhým pro příjem, pomocí dvou sběrnic. Každá sběrnice umožňuje připojení až dvaceti přijímačů a jednoho vysílače. Z důvodu snížení elektromagnetického rušení do okolí a z okolí se používají twistované vodiče (kroucená dvojlinka) a jeden vodič stínění, ten je uzemněn na obou stranách sběrnice viz. obrázek 1.2. Specifikace sběrnice [1] dále definuje výstupní odpor vysílače, ten by se měl pohybovat v rozmezí (75 ± 5) Ω. Výstupní odpor by měl být rovnoměrně rozdělený mezi oba vodiče (A a B) po celou dobu přítomnosti zařízení na sběrnici. Zmíněná hodnota odporu byla stanovena na základě měření charakteristických impedancí vedení tak, aby se těmto impedancím co nejvíce přiblížila. Vstupní odpor mezi oběma datovými vodiči diferenciálního vedení by měl být nejméně 12 kω. Sběrnice může být podle [3] rozprostřená až na vzdálenost o málo větší než 90 m (300 ft) [1][3][5][6]. stíněná kroucená dvojlinka vysílač zemnění zemnění přijímač přijímač vodič A vodič B zemnění nejvýše 20 přijímačů přijímač zemnění Obrázek 1.2 - Propojení na sběrnici ARINC 429 Sběrnice disponuje dvěma možnými komunikačnimi rychlostmi, nižší z nich je definována v rozsahu od 12,5 kbps do 14,5 kbps, přičemž některé zdroje uvádí pouze 12,5 kbps, rychlejší komunikace probíhá rychlostí 100 kbps. Pro každou komunikační rychlost je definována jiná strmost náběžných a spádových hran signálu ve tvaru doby trvání těchto hran. Na obrázku 1.3 je znázorněna část časového průběhu napětí mezi oběma vodiči sběrnice ARINC 429, na které jsou vyznačeny některé konkrétní parametry. Parametr a popisuje dobu přenosu podstatné informace včetně její náběžné (spádové) hrany, b je délka náběžné, popř. spádové hrany signálu měřená od svých 10 % do 12

Protokol ARINC 429 90 %. Hodnota c je rovna době přenosu jednoho bitu modulovaného BPRZ modulací. Hodnoty zmíněných parametrů se jsou pro každou přenosovou rychlost jiné, přehled těchto konstant je uveden v tabulce 1.2. HI napětí NULL a b c čas LO Obrázek 1.3 - Časový průběh signálu na sběrnici ARINC 429 f s (kbps) a (µs) b (µs) c (µs) 12,5 14,5 c 2 ± 5 % 10±5 1 f s ± 2,5 % 100±1 % 5±5 % 1,5±0,5 10±2,5 % Tabulka 1.2 - Parametry časových průběhů sběrnice ARINC 429 1.3. Struktura zpráv Nejvyšší komunikační vrstva datové sběrnice ARINC 429 je tvořena základními datovými bloky, tzv. slovy. Vyšší jednotky jsou zprávy, které většinou bývají složeny z jediného datového slova, nejedná se však o podmínku. Každé slovo má pevnou délku 32 bitů a je rozděleno na několik částí logických celků. Základní rámec se nachází v tabulce 1.3. 32313029 1110 9 8 1 P SSM (MSB) data (LSB) SDI label Tabulka 1.3 - Formát slova sběrnice ARINC 429 Slovo je uvozeno 8bitovou položkou zvanou label, která slouží jako identifikátor daného slova. Z labelu je možné, na základě znalosti normované tabulky, vyčíst význam slova, strukturu přenášených dat, periodu jejich změn a periodu vysílání slov. Label jednoznačně (na úrovni sběrnice) identifikuje čtenou, popř. zapisovanou fyzi- 13

Protokol ARINC 429 kální veličinu slouží tedy jako primární adresa zařízení. Label bývá reprezentován číslem zapsaným v osmičkové soustavě (octal base), může nabývat hodnot od 1 do 377 o. Způsob zakódování labelu v bitové posloupnosti je znázorněn v tabulce 1.4. váha bytu pozice bitu váha bitu LSB MSB 8 7 6 5 4 3 2 1 4 2 1 4 2 1 2 1 Tabulka 1.4 - Formát labelu datového slova Dalším informačním celkem je 2bitové pole SDI - source destination information, které využijeme pro adresování zařízení stejného typu (sekundární adresa), tedy v případě kdy se na jedné sběrnici nachází několik zařízení se vstupem stejné veličiny, můžeme pomocí SDI adresovat až 4 taková zařízení. Tato posloupnost bitů bývá určena jednoznačně ve specifikaci [1]. V některých případech je SDI použita pro přenos dat [2][3]. Ve struktuře slova následují uživatelská data, která mohou nabývat několika typů. Standardně rozlišujeme mezi následujícími typy dat. číselná hodnota zapsaná binárně (vhodné pro počítačové zpracování) číselná hodnota zapsaná v BCD kódu (vhodné pro přímé dekadické zobrazení) diskrétní data udžovací a potvrzovací data protokol pro přenos souborů (bitově orientovaný) Po datech následuje dvojice bitů nesoucí informaci o stavu systému, platnosti dat nebo znaménku číselných hodnot. Toto pole označujeme jako SSM (sign/status matrix), jeho význam je závislý na labelu datového slova. Pro data ve formátu BCD je význam SSM následující. Vyjadřuje znaménko nebo směr, popř. indikuje skutečnost, že data nemohla být úspěšně vypočtena, rozlišujeme celkem 4 platné kombinace obou bitů. SSM budeme zapisovat jako dvojici bitů ve dvojkové soustavě s významnějším bitem (31) nalevo a méně významným (30) napravo. První případ, který může nastat je 00, jeho význam je + sever, východ, vpravo, do nebo nad. Konkrétní význam je zřejmý z charakteru přenášených dat, je tedy pevně spojen z daným labelem. SSM rovno 11 nese informaci jih, západ, vlevo, od, pod, 01 nám říká, že systém není 14

Protokol ARINC 429 schopný vrátit platnou hodnotu a 10 míní, že se jedná o test funkce dané periferie. V případě testu adresát odpoví požadovanými daty, která jsou následně na straně odesílatele zkontrolována s refernční hodnotou. V případě dat v binárním kódu je znaménko kódováno a uloženo ve struktuře spolu s daty, v SSM je tedy přenášena pouze informace o stavu zařízení jež je oproti předchozímu případu rozšířená o další dva stavy. Dříve zmíněné stavy 01 (žádná data) a 10 (test funkce) zachovávají svůj význam, dále přibyly stavy 00 chybové hlášení, které značí potencionální nespolehlivost generovaných dat a 11 má význam správné funkce. Diskrétní data jsou doplněna obdobnou SSM strukturou jako data v binárním kódu. Rozdíl spočívá v záměně významu stavů 00 a 11. Správnou funkci tedy indikuje 00 a možná nespolehlivost systému jako chybové chlášení je míněna kombinací 11. Poslední údaj ve slově je jednobitová hodnota paritní bit. Ten zde slouží k detekci chyb vzniklých během přenosu, jedná se o lichou paritu, což znamená, že v případě sudého počtu logických jedniček ve slově je rovna jedné, jinak je parita nula, ( P = a 32 = 1 + 31 i=1 a i ) mod 2, (1.1) kde a i je v pořadí ibit ze slova a funkce mod 2 vyjadřuje zbytek po dělení dvěma. Pro přenos je pořadí bitů odlišné od uvedeného v tabulce 1.3. Nejprve se přenáší label, první je přenesen nejvýznamnější bit, za labelem následuje zbytek datového slova v opačném pořadí, tedy ve směru od nejméně významného bitu po nejvýznamnější paritní bit je tedy přenesen na závěr. Pořadí přenosu jednotlivých bitů je zřejmé z tabulky 1.5. 8 1 9 1011 29303132 label SDI (LSB) data (MSB) SSM P Tabulka 1.5 - Pořadí přenosu bitů slova sběrnice ARINC 429 1.4. Datové typy Prvním zmíněným datovým typem, který je možné přenášet po sběrnici je číslo zapsané v binárním kódu. Nejvýznamnější bit datového pole (bit 29) indikuje po- 15

Protokol ARINC 429 laritu (znaménko) čísla, 1 reprezentuje, tedy záporné číslo a 0 číslo kladné. Podle charakteru dané veličiny může 1 též znamenat jih, západ, vlevo, od, pod. Ve druhém případě může 0 reprezentovat sever, východ, vpravo, do nebo nad. Zbylé bity reprezentují číslo zapsané ve dvojkové soustavě, přímý význam je dán aktuálním labelem. První bit v pořadí (28) tedy představuje polovinu rozsahu, bit 27 čtvrtinu, bit 26 osminu a tak dále. Některé letecké systémy disponují schopností detekce chybového stavu projevující se snížením přesnosti přenášených binárních dat. Za tímto účelem je pro takové systémy a případy vyhrazen 11. bit datového slova, který indikuje snížení přesnosti logickou 1, logická 0 znamená standardní přesnost. Tento případ indikace chybového stavu je možný pouze v případě, kdy přenášená data jsou dlouhá nejvýše 17 bitů. V případě této chyby indikuje SSM normální stav. Druhým zákládním datovým typem je číslo zapsané ve formátu BCD kódu. Touto cestou je možné jedním datovým slovem přenést 5ciferné dekadické číslo. První číslice však musí být roven nejvýše 7 (3bitová hodnota), pokud je první číslice větší než sedm, tedy osm nebo devět, jsou bity 27, 28 a 29 vyplněny nulami a první číslice je uložena na druhé pozici. Číslo je v takovém případě pouze 4ciferné. Datový rámec je včetně zvýraznění pozic jednotlivých číslic znázorněn v tabulce 1.6. 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 číslice1 číslice2 číslice3 číslice4 číslice5 Tabulka 1.6 - Formát zápisu BCD číslice v datovém slově Diskrétní veličiny jsou reprezentovány binárními hodnotami, kde jednotlivé bity nebo skupiny bitů indikují určitý stav systému. Tento typ dat může být např. nosičem informace typu zapnuto/vypnuto, splněno/nesplněno apod. Protokol pro přenos souborů (Williamsburg/Buckhorn protocol) je určen pro přenos většího množství dat než pokrývají výše zmíněné datové typy. Tento protokol vyžaduje duplexní komunikaci, tedy použití dvou simplexních kanálů sběrnice ARINC 429. Komunikaci začíná odesílatel žádostí (RTS - request to send) směrem k příjemci, který ji potvrdí odesláním CTS (clear to send) slova včetně, v žádosti obdržených, informací o délce zprávy. Dále již následuje samotný přenos prostředictvím datových slov, ten je ještě uvozen slovem informujícím o začátku přenosu a 16

Protokol ARINC 429 ukončen slovem s informací o konci přenosu. Celý přenos má délku od 3 do 255 slov. Tento rámec je nazýván LDU (link data unit) a zahrnuje v sobě od 1 do 253 slov obsahujících přenášená data. Protokol ještě zabezpečuje přenos kontrolním součtem, o zmíněných uvozujících a ukončujících slovech můžeme ještě poznamenat, že je klasifikujeme jako datové typy a řadíme do skupiny udžovací a potvrzovací data. Do této třídy dále řadíme potvrzující slova, žádosti o přenos a potvrzení těchto žádostí. 17

2. Standard Ethernet Následující text je věnován základním informacím o protokolu IEEE 802, jehož část bude v textu také označována jako Ethernet (IEEE 802.3). Tento protokol (IEEE 802.3) zmíníme pouze okrajově a budeme se věnovat vyšším komunikačním vrstvám a jejich strukturám. Spoustu cenných informací o síti Ethernet, TCP/IP protokolu a přenosu informací vůbec je možné nalézt ve zdroji [10]. 2.1. Ethernet obecně Ethernet je často nasazován v lokálních sítích (LAN - local area network), kde slouží k propojení malého i většího množství nejen osobních počítačů. Popisuje fyzickou vrstvu (IEEE 802.3) a částečně i vrstvu spojovou linkovou (IEEE 802.2 i 802.3). Pojem Ethernet je komerčním názvem komunikačního protokolu vytvořeného společností Xerox. Tento protokol byl dále upraven a standardizován pod označením IEEE 802.3, pro které je veřejně používán název Ethernet ačkoliv v normě tento název vůbec nefiguruje. Norma IEEE 802.3 obsahuje několik dalších oddílů, které definují konkrétní přenosová média a rychlosti, tedy fyzickou vrstvu sítě IEEE 802. 2.2. Fyzická vrstva Fyzická vrstva, jak je definovaná v normě IEEE 802.3, popisuje řadu přenosových médií, z nichž některá zde okrajově zmíníme. Historicky první je přenosová cesta s kódovým označením 10Base5 číslo 10 má význam přenosové rychlosti v Mbps (megabity za sekundu), zkratka Base míní přenos v základním frekvenčním pásmu a 5 znamená maximální délku vedení ve stovkách metrů. Pro tuto verzi se používalo koaxiálního kabelu (φ 1 cm) zpravidla žlutého, kterým byla propojena všechna zařízení na sběrnici tzv. sběrnicová topologie sítě. Kabel byl na svých koncích opatřen odporovými zakončeními s charakteristickou impedancí vedení (terminátor) a odbočky pro jednotlivé koncové stanice se na kabel připojovaly pomocí samořezných konektorů. Nástupcem respektujícím původní sběrnicovou topologii je protokol s označením 10Base2, který nahradil stávající koaxiální kabel za tenčí (φ 0,5 cm) a omezil nejvyšší možnou délku na 185 m. Pro připojení stanic se používají BNC konektory, 18

Standard Ethernet rozbočka je řešena pomocí BNC ve tvaru písmene T. Dále ještě zmíníme jednu z mezních verzí Ethernetu 10BaseT. Přípona T zde má význam stejný jako ve zkratce UTP, tedy zkratce popisující použitou přenosovou cestu. UTP (unshielded twisted pair) znamená nestíněnou kroucenou dvojlinku, konkrétně tedy dvě dvojlinky jednu pro příjem a drouhou pro vysílání. Použití dvojlinky neumožňuje přímé odbočky, používá se tedy opakovačů. Komunikace je potom vždy dvoubodová a umožňuje změnu topologie např. na stromovou nebo hvězdicovou. Pro tuto verzi a novější se používá konektorů RJ-45 (8 pinové širší telefonní konektory). Zmíněné opakovače (repeater) pracují na úrovni fyzické vrstvy, eventuelně a dnes stále častěji jsou opakovače nahrazeny přepínači (switch), které zajišťují směrování na úrovni vrstvy spojové (linkové) a tím přispívají ke snížení zatížení celé sítě. Z pohledu použití dvou párů komunikačních vodičů může být přenos plně duplexní, z důvodu zpětné kompatibility je však zachován poloduplexní režim komunikace. Kolize pak nastane vždy, když probíhá komunikace na obou párech vodičů současně. Možností volby přenosové cesty je velké množství, mezi ty klasické patří např. 1Base5, 10Base2, 10Base5, 10BaseT, 10BaseF (F optická vlákna), novější, tzv. rychlé sítě 100Base-TX, 100Base-FX, 100Base-T4 a gigabitové rychlosti 1000Base- SX, 1000Base-LX, 1000Base-CX, 1000Base-T, existují také definice podporující plně duplexní komunikaci. Pro kódování dat v přenosovém kanálu se používají typy modulací jako např. Manchester nebo NRZI. 2.3. Spojová vrstva Na tomto místě bychom chtěli představit základní rámce zajišťující komunikaci na úrovni spojové vrstvy. Obecně je definováno několik druhů takových rámců, patří mezi ně např. Ethernet II, raw 802.3 nebo 802.2 SNAP, my se zde budeme věnovat pouze jedinému, dnes převážně používanému, rámci Ethernet 802.2 (LLC) vloženému do stávajícího rámce IEEE 802.3 (MAC). Abychom vysvětlili zmíněné termíny, měli bychom říci, že spojová vrstva tak, jak je chápána z pohledu ISO/OSI, byla rozdělena na dvě podvrstvy MAC (media access control) a LLC (logical link control). Nižší z vrstev MAC zajišťuje přístup na sběrnici (v případě Ethernetu metoda CSMA/CD - viz. dále) a LLC řeší problém řízení toku, potvrzování a detekci 19

Standard Ethernet chyb v komunikaci. Norma IEEE 802.3 popisuje metodu přidělování sběrnice CSMA/CD (Carrier Sense Multiple Access with Collision Detection). Implementace tohoto algoritmu zajišťuje, že žádné zařízení nezačne na sběrnici v tomto případě Ethernet vysílat v době, kdy právě probíhá jiná komunikace. Pokud má dané zařízení data k odeslání na sběrnici a momentálně nedochází k přenosu žádných dat, připravená data na sběrnici odešle. Současně však může začít vysílat několik různých zařízení, v tu chvíli by každé z nich mělo být schopno detekovat kolizi, ihned ukončit započatou komunikaci a odmlčet se na náhodně dlouhou dobu, po které se opět pokusí o navázání komunikace. Pokud se dané zařízení znovu dostane do kolize, zvětší dobu své odmlky na dvojnásobek, stejně tak tomu bude při každé další kolizi. CSMA/CD má svůj původ v Ethernetu se sběrnicovou topologií, dnešní Ethernet tuto topologii z hlediska fyzické vrstvy opouští a namísto ní používá spojení na základě kroucené dvojlinky nebo optického vlákna. Metoda CSMA/CD se však stále používá, novější verze Ethernetu (full duplex Ethernet) s ní však již nepočítají [10]. Již v této vrstvě tedy dochází k adresování a to hlavně z důvodu snížení provozu na sběrnici, nejnižší adresou je tzv. MAC adresa, která je 6 bytů dlouhá a na světě unikátní. 2.4. Protokol TCP/IP TCP/IP Transmission Control Protocol/Internet Protocol vychází ze standardizovaného modelu ISO/OSI a implementuje pouze některé jeho vrstvy. Konkrétně popisuje strukturu vyšších, od hardwaru odproštěných, komunikačních celků. TCP/IP je možné implementovat jako nadřazenou komunikaci k nižším (fyzickým, linkovým) vrstvám, jakými jsou např. RS-232, WiFi (IEEE 802.11) nebo Ethernet (IEEE 802.3). Pro zájemce o podrobnější informace o TCP/IP můžeme odkázat na literaturu [9] nebo [10]. Komunikace v rámci protokolu TCP/IP sestává z několika vrstev síťové, transportní a aplikační. Síťová vrstva má na starost zajištění adresace zařízení v rámci sítě, k čemuž využívá, v závislosti na úrovni komunikace, několika protokolů, z nichž nejvyšší a z našeho pohledu nejzajímavější je protokol IP. Transportní 20

Standard Ethernet vrstva je již poměrně vysokou vrstvou, zabývá se totiž samotným přenosem dat. Pro transportní vrstvu jsou definovány dva používané protokoly, TCP a UDP, možnost volby mezi nimi leží na uživateli. Rozdíl mezi TCP a UDP je popsán dále. Nejvyšší vrstva, aplikační, je již čistě v režii uživatele. Mezi známé protokoly aplikační vrstvy patří např. HTTP, FTP, POP3 nebo DNS. 2.5. Síťová vrstva IP Protokol IP (Internet Protocol) je základním protokolem síťové vrstvy internetové komunikace. Tento protokol existuje v několika číselných verzích, z nichž dnes nejrozšířenější je verze 4 (IPv4), kterou postupně začíná nahrazovat verze 6 (IPv6). Dále se již budeme zmiňovat pouze o dnes používané verzi 4. IP protokol zajišťuje adresování vlastních datagramů na úrovni tzv. IP adres. IP adresa je 32bitové číslo zapisované ve formátu A.B.C.D, kde A, B, C a D jsou 8bitová přirozená čísla představující adresu dané úrovně. IP nezajišťuje spojení mezi oběma komunikujícími stranami, slouží pouze jen k odesílání a přijímání datagramů, nekontroluje správnost jejich přijetí ani skutečnost, zda byly skutečně přijaty. Tuto starost přenechává vyšším vrstvám. V rámci komunikace za použití IP protokolu je postaráno o rozdělení datového rámce IP při odesílání a opětovném sestavení rámce při příjmu. K rozdělování IP datagramů dochází z důvodu omezené kapacity směrovačů, rozdělování je v režii směrovačů samotných, sestavování pak probíhá v cílovém zařízení. Datagram IP je tvořen hlavičkou následovanou daty. Struktura IP datagramu je znázorněna v tabulce 2.1. 0 32 64 96 128 160 verze délka typ služby celková délka identifikace návěsti číslo fragmentu životnost číslo protokolu kontrolní součet zdrojová adresa cílová adresa volitelné možnosti data Tabulka 2.1 - Struktura datagramu IPv4 [9] Pole verze představuje kód verze použitého protokolu. V našem případě bude vždy nabývat hodnoty 4. Následující 4bitová hodnota nese informaci o délce zá- 21

Standard Ethernet hlaví IP datagramu v násobku 32 bitů. Největší možná délka záhlaví datagramu je tedy 60 bytů. Typ služby v podstatě určuje prioritu paketu, celková délka je 16bitová hodnota signalizující délku celého datagramu včetně záhlaví, identifikace jednoznačně určuje datagram pro spojování při fragmentaci, návěstí, stejně jako číslo fragmentu je nositelem dodatečných informací pro fragmentaci datagramů. Pole životnost eliminuje maximální počet směrovačů v síti, svojí hodnotou určuje maximální počet přesměrování. Číslo protokolu popisuje protokol nadřazený IP, tedy protokol obsažený v datové části připojené za záhlaví IP. Hodnota zabezpečení záhlaví obsahuje kontrolní součet k detekci správnosti přenosu. 2.6. Přenosová vrstva UDP UDP (User Datagram Protocol) je protokol určený pro přenos dat v počítačové síti. Jedná se o jednoduchý transportní protokol, jehož základní datovou jednotkou je tzv. datagram. Základní datový rámec protokolu UDP umožňuje přenesení uživatelských dat a připojené hlavičky. Hlavička obsahuje informaci o čísle portu, které zde slouží jako identifikátor komunikujícího procesu na každém z komunikujících zařízení, délce připojených uživatelských dat a kontrolním součtu. Záhlaví datagramu je dlouhé 64 bitů, prvních 16 bitů kóduje číslo lokálního portu a dalších 16 bitů číslo vzdáleného portu. Následuje 16bitová hodnota vyjadřující délku přenášených dat v oktetech, tedy bytech. Posledních 16 bitů hlavičky datagramu nese informaci o kontrolním součtu, který je pro UDP nepovinný (v případě jeho nevyužití je hodnota rovna nule). UDP vzhledem ke své jednoduchosti neposkytuje žádné kontrolní mechanizmy, jako např. kontrolu doručení odeslaného datagramu nebo doručení jednotlivých datagramů v pořadí, ve kterém byly odeslány. Na druhou stranu však tato skutečnost přispívá k rychlejšímu přenosu dat. Použití UDP protokolu se nabízí v aplikacích, kde příliš nezáleží na spolehlivosti přenosu, ale spíše na rychlosti i za cenu ztráty některých datagramů. Využití též nalezne v malých jednoduchých sítích, popř. aplikacích typu dotaz-odpověď, kde informace o doručení zprávy může být získána na základě přijetí/nepřijetí odpovědi. Kontrolu nad řešením nedostatků UDP plně zajišťuje aplikační vrstva. Aplikační protokol musí řešit problémy s pořadím přijatých datagramů, ztrátou, popř. 22

Standard Ethernet duplicitou datagramů, zpožděným doručením a případně i kontrolou integrity datagramů. UDP se také nestará o spojení. Jeho správa, je-li požadována, spadá pod aplikační vrstvu komunikace. UDP datagram není pro přenos v IP datagramu dále dělen, jeho délka tedy nesmí přesáhnout délku datagramu IP, který musí být minimálně 576 bytů dlouhý [9]. V případě použití protokolu IPv4 činí délka hlavičky IP datagramu nejvýše 60 bytů, což v uvedeném případě odpovídá délce UDP datagramu 516 bytů. Hlavička UDP zabírá 8 bytů, na uživatelská data pak připadá prostor 508 bytů. Struktura je znázorněna na obrázku 2.2, první sloupec odpovídá počáteční adrese dané řádky od začátku datagramu. 0 32 64 zdrojový port délka datagramu data cílový port kontrolní součet Tabulka 2.2 - Struktura datagramu UDP [9] V průmyslových aplikacích komunikujících po LAN sítích (např. protokol LXI) bývá UDP využíváno pro časově kritická spojení přístrojů. Komunikace ještě často bývá doplněna o protokoly přesného časování a časové synchronizace a je schopná probíhat za současného provozu časově náročnějších uživatelských přenosů, např. nastavování parametrů nebo čtení stavu zařízení pomocí webového rozhraní (TCP protokol). Protokol UDP využijeme spíše pro komunikaci na kratší vzdálenosti (pro méně uzlů) nebo pro poriodické vyčítání určitého stavu, kdy ztráta několika málo zpráv příliš neovlivní celkově získanou informaci o sledovaném objektu. 2.7. Přenosová vrstva TCP TCP (Transport Control Protocol) patří do stejné skupiny jako výše zmíněný UDP, mluvíme tedy o přenosovém protokolu počítačových sítí. Základní jednotku TCP nazýváme packet, ten je oproti UDP datagramu sofistikovanější, obsahuje více informací, díky kterým je použití tohoto protokolu bezpečnější a uživatelsky příjemnější než v předchozím případě. TCP packet v podstatě rozšiřuje UDP datagram o další údaje, celý protokol potom navíc zajišťuje správnost a pořadí přenesených dat a kontroluje úspěšnost jejich přenosu. V tabulce 2.3 je znázorněna celková struktura záhlaví TCP paketu. Hodnoty 23

Standard Ethernet zdrojový port a cílový port mají stejný význam jako u protokolu UDP. Pořadové číslo určuje pořadí prvního bytu přenášených dat v rámci celého datového souboru. Na základě této informace dochází ke spojování několika paketů v jediný datový blok. Pro tutéž synchronizaci slouží i další pole číslo potvrzení, které informuje o pořadovém čísle následujícího paketu. Hodnota offset nese informaci o délce záhlaví, funkce řízení obsahuje řídící informaci, tedy informaci nesoucí např. žádost o navázání spojení, zrušení spojení nebo představuje prioritu dat. Dále jsou přenášeny, z našeho pohledu, nepříliš významné informace a kontrolní součet. 0 32 64 96 128 160 192 224 zdrojový port cílový port pořadové číslo číslo potvrzení offset rezerv. funkce řízení šířka okna kontrolní součet označení urgentních dat volitelné možnosti volitelné možnosti výplň data Tabulka 2.3 - Struktura packetu TCP [9] Praktické použití tohoto protokolu známe především z každodeního života. Pro uživatelské aplikace komunikující na větší vzdálenosti je mnohem časteji dána přednost TCP před UDP. Aplikace využívající protokoly jako např. HTTP, FTP, SSH, POP3, IMAP, SMTP nebo telnet zpravidla běží nad transportním protokolem TCP, přestože všechny zmíněné mohou využívat i služby UDP. 24

3. Realizace převodníku Pro zvýšení univerzálnosti navrhovaného zařízení byla aplikace převodníku rozdělena na dva moduly. První z nich (modul ARINC) má na starost zajištění komunikace a obsluhu událostí vzniklých na straně sběrnice ARINC 429. Jedná se o modul s jednoduchou logikou samostatně (bez řízení) nepoužitelný. Druhý modul (modul DRIVER) v sobě zahrnuje mikropočítač a hardware rozhraní pro komunikaci s osobním počítačem. Tento modul zajišťuje podporu komunikačního protokolu Ethernet (s TCP/IP), dále komunikaci s periferními obvody a rozhraní pro komunikaci s modulem ARINC. Zmíněné modularity využijeme především při návrhu dalších aplikací pro sběrnici ARINC 429, kdy modul ARINC zachováme a modul DRIVER nahradíme jiným dle požadavků nové aplikace. Můžeme tak první z modulů využít pro aplikace převodníků mezi jinými komunikačními protokoly nebo např. pro nejrůznější analyzátory použité letadlové sběrnice. Také bychom mohli sestavit simulátor určitého zařízení se sběrnicí ARINC 429. +27 V ±(12 15) V,5 V Zdroj Stabilizátor 3,3 V 3,3 V Ethernet PC XPort µp ARINC Převodník RTC Oscilátor Obrázek 3.1 - Blokové schéma aplikace převodníku Blokové schéma převodníku je na obrázku 3.1. Zde se budeme věnovat již pouze jeho elementárním prvkům. Postupně je všechny představíme a podáme krátký výklad pro pochopení jejich funkce. 3.1. Lantronix XPort XPort je obchodní značka modulu převodníku Ethernet - CMOS/TTL firmy Lantronix. Tento převodník disponuje na straně Ethernetu konektorem RJ-45 s podporou protokolů 10Base-T a 100Base-TX. Zařízení je vyráběno ve dvou základních verzích. Pro komunikaci na straně TTL má ve verzi jedné k dipozici UART 25

Realizace převodníku kanál s rychlostí až 230 400 baudů, ve verzi druhé dosahuje maximální komunikační rychlost až 921 600 baudů. Obvod je napájen 3,3 V, k ovládání reset obvodu slouží vyvedený pin, na který je nezbytné přivést 200 ms pulz. Dále je možné využít tří vstupně výstupních linek. Spotřeba převodníku se pohybuje v závislosti na typu připojení mezi 190 ma a 270 ma. Verze převodníku s vyšší komunikační rychlostí na straně UARTu má navíc 5 V tolerantní vstupy. Z hardwarové stránky je XPort opatřen osmi vývody za účelem osazení do DPS. Napájecí napětí je uvnitř převodníku dále filtrováno a pro napájení vnitřního mikroprocesoru je stabilizováno na hodnotu 1,8 V. Zařízení je šířeno se základním softwarovým vybavením, které plně dostačuje pro převod TCP-UART, případně UDP-UART. Pokud bychom měli vyšší nároky na funkce, je možné firmware převodníku upravit. Vnitřní struktura zařízení je uvedena v blokovém schématu 3.2. +3,3 V stabilizátor 1,8 V filtr napětí napájení TX reset UART GPIO1 GPIO2 GPIO3 I/O rozhraní UART GPIO mikroprocesor RX LED Ethernet rozhraní Ethernet reset sériová flash SPI krystal 25 MHz Obrázek 3.2 - Blokové schéma převodníku Lantronix XPort Převodník XPort je zabudován v kovovém pouzdře s rozměry jen o málo většími než je velikost samotného Ethernetového konektoru RJ-45. Jmenovité vnější rozměry zařízení jsou 16,25 mm 13,50 mm 33,90 mm. Nastavení chování převodníku XPort je možné pomocí webového prohlížeče (HTTP), popř. pomocí klienta Telnet. Dále existuje možnost využít utilitu Device- Installer pro operační systém Microsoft Windows s podporou.net. Této možnosti je vhodné využít pro první nastavení IP adresy XPortu. 26

Realizace převodníku 3.2. Mikropočítač Mikropočítač jako jádro celého převodníku byl vybírán především s ohledem na dostatečné množství vstupně výstupních linek, žádná jiná kritéria nebyla pro výběr podstatná. Zvolen byl mikropočítač Silicon laboratories C8051F020. Mikropočítač je napájen 3,3 V s TTL 5 V tolerantními vstupy. Díky této skutečnosti je možné mikropočítač přímo propojit jak s obvody společnosti Holt (viz. dále), tak s převodníkem XPort. Vstupní piny mikropočítače nastavíme jako otevřené kolektory (open-drain), piny výstupní opatříme pull-up rezistory. Pro komunikaci s obvody 3,3 V logiky je možno piny opatřit vnitřními pull-up rezistory připojenými k napájecímu napětí mikropočítače. Co se týká 5 V logiky, je zde možnost zapojení vnějšího pull-up rezistoru na 5 V, potom bude vnitřní odpor odpojen. Další možností je připojení vnitřního pull-up také na 3,3 V, požadavky na napěťové úrovně všech logických obvodů budou stále zachovány. Použitý mikropočítač je postaven na jádře Intel 8052, navíc je opatřen řadou periferií, o kterých se zde rozepisovat nebudeme, více informací je možno nalézt v [13]. 3.3. Řadič sběrnice ARINC 429 Pro řízení a přístup na sběrnici ARINC 429 jsou použity produkty firmy Holt. Konkrétně bylo z důvodu dostupnosti a ceny zvoleno integrované řešení tvořené obvody HI-6010, HI-8588 a HI-8585. Integrovaný obvod HI-8585 má funkci vysílače a HI-8588 přijímače. Oba jsou přímo připojeny na sběrnici ARINC 429. Obvod HI-6010 slouží pro řízení obou zmíněných řadičů sběrnice. Tento obvod disponuje 8bitovou paralelní sběrnicí pro komunikaci s mikropočítačem a komunikačním rozhraním pro obvody HI-8585 a HI-8588. Veškeré důležité informace a podrobnosti jsou uvedeny v katalogových listech zmíněných obvodů [15][16][17]. Při komunikaci s obvodem HI-6010 je možno využít jeho stavového a řídícího registru. Oba registry jsou 8bitové, řídící je možné pouze zapisovat a stavový je určen jen ke čtení. Stavový registr indikuje chyby na sběrnici a průběh komunikace po sběrnici ARINC 429. Pomocí změny řídícího bytu je možné nastavit režim komunikace (8 bitů pro přímou komunikaci nebo 32 bitů s využitím bufferu), povolit 27

Realizace převodníku či zakázat funkci přijímače nebo vysílače, případně přepnout obvod do režimu testování bez připojení výstupu na hardwarové piny. V tomto režimu je obvod zapojen do zpětné vazby. Pro odesílání slova sběrnice ARINC 429 je k dispozici několik možných způsobů. První z nich je 8bitový, přenos je iniciován zápisem řídícího registru obvodu HI-6010. Následuje čtveřice po sobě jdoucích bytů slova sběrnice ARINC 429. Byty jsou ihned po zápisu odesílány na sběrnici ARINC 429. Skutečnost, že je sběrnice volná může být zjištěna buď testováním hardwarového pinu rozhraní obvodu HI- 6010 nebo cyklickým vyčítáním stavového registru obvodu. Další způsob zápisu na běrnici je 32bitový, tedy s vyrovnávacím bufferem. Data jsou opět odeslána čtyřmi byty, tentokrát jsou však ukládána do vyrovnávacího bufferu a odeslána následným příkazem. Příkaz pro odeslání dat může být tvořen buď zápisem řídícího registru nebo nastavením hardwarového pinu. Obvod HI-6010 může být dále nastaven do odesílacího režimu s výpočtem paritního bitu, kdy je parita automaticky dopočtena obvodem a 32. bit odesílaných dat je tímto vypočteným nahrazen. Čtení ze sběrnice ARINC 429 probíhá také ve dvou režimech 8bitovém a 32bitovém. Způsob komunikace s obvodem je v tomto případě obdobný jako při zápisu. Přijetí zprávy může být indikováno hardwarově pinem, případně je možné použít způsob softwarového dotazování (polling). Obvod HI-6010 dále disponuje funkcí rozpoznávání labelů. Je možné uložit celkem osm labelů, se kterými je při příjmu slova sběrnice porovnán label právě příchozí. V případě shody je přijat zbytek slova, pokud ke shodě nedojde přijatý label se liší od každého z uložených, přijímané slovo je zahozeno. V realizaci používáme 32bitový režim komunikace, který není z pohledu programového vybavení mikropočítače časově kritický jako režim osmibitový. V rámci naší demonstrační úlohy jsme také nevyužili funkce rozpoznávání labelů, tento režim je vhodný spíše pro zařízení zpracovávající pouze určitou množinu labelů, nikoliv pro převodník využívající celé škály možností poskytované komunikačním protokolem. 3.4. Návrh oscilátoru Výše zmíněné integrované obvody firmy Holt vyžadují na jednom ze svých vstupů externí zdroj obdélníkového TTL signálu s frekvencí čtyřnásobně vyšší než 28

Realizace převodníku je hodnota požadované přenosové rychlosti. Generátor frekvencí f h = 4 100 khz = 400 khz a f l = 4 12,5 khz = 50 khz jsme realizovali hardwarově s možností volby dané frekvence jedním vodičem. Základem zmíněného generátoru je krystalový oscilátor s TTL kompatibilním výstupem. Frekvence oscilátoru byla zvolena jako nejmenší celistvý násobek obou požadovaných frekvencí, vybrán byl oscilátor s frekvencí f osc = 4 MHz. Pro obdržení požadovaných frekvencí již postačuje frekvenci generovaného signálu vydělit 10krát a následně 8krát f h = 1 10 f osc, (3.1) f l = 1 8 f h. (3.2) Na základě těchto vztahů (3.1) a (3.2) byly zvoleny CMOS děliče frekvencí deseti a osmi, jmenovitě 4017 a 4022 (v návrhu jsme zvolili varianty 74HC40xx). Volba, tedy přepínání, frekvence na výstupu navrhovaného generátoru byla vyřešena kombinací logických funkcí NAND. Odvození je popsáno jazykem výrokové logiky s out = (s h a) (s l a), (3.3) kde s out je signál na výstupu generátoru, jedná se tedy o jeden ze vstupních obdélníkových TTL signálů s h a s l. Frekvence signálu s h je právě f h a frekvence s l je f l. Posledním vstupem je logická proměnná a symbolizující volbu signálu, přičemž platí s out = s h pro a = log. 1, (3.4) s out = s l pro a = log. 0. (3.5) Přepišme ještě výraz (3.3) tak, aby bylo možné obvod selekce realizovat pomocí jednoho typu logické funkce, např. námi zvolené funkce NAND s out = ( (s h a) (s l (a a))). (3.6) K tomuto zápisu jsme dospěli aplikací De Morganova zákona na výše uvedené výrazy. Pro fyzickou realizaci logiky selekce jsme zvolili obvod 74HCT00, s výhodou 29

Realizace převodníku využijeme možnosti ovládání jak 5 V, tak 3,3 V logikou. Veškeré CMOS obvody byly vybírány s ohledem na jejich dynamické parametry. 3.5. Obvod reálného času V blokovém schématu 3.1 je umístěn také blok s názvem RTC, tj. Real time clock, tedy hodiny reálného času. Ty sice nebudou v rámci této práce využity, ale uplatnění naleznou v budoucím rozšíření tohoto návrhu. Zmiňme se zde tedy alespoň úvodem o možnosti implementace. Vzhledem k požadovanému rozlišení časového údaje od řádu stovek až desítek milisekund do řádů hodin byl zvolen poměrně malý, levný a nízkospotřebový integrovaný I 2 C obvod PCF8583. Pro udržení vždy aktuálního časového údaje je nezbytné obvod po odpojení napájecího napětí zálohovat z vhodné baterie. Pokud nám příliš nezáleží na udržení absolutní hodnoty času, ale jen o relativní časování intervalů, není přítomnost baterie nezbytná. RTC obvody PCF8583 mohou být na jediné I 2 C sběrnici až dva, adresa každého z nich se nastavuje hardwarově. Tento obvod je možné napájet stejnosměrným napětím v rozmezí od 2,5 V do 6 V, spotřeba obvodu v režimu časování nepřekročí při napájecím napětí 5 V proud 50 µa, typická hodnota je potom 10 µa. Integrovaný obvod je vyráběn v pouzdrech DIP8 a SOIC8. V obvodu je uchováván časový údaj s přesností na setiny sekundy, rozdělený do logických částí jak jsme na ně zvyklí z denního života. Manipulace s údajem tedy může probíhat na úrovni desetin a setin sekundy, sekund, minut, hodin, dnů v týdnu, dnů v měsíci, měsíců a let. Pouze roky jsou zakódovány 2bitovou hodnotou, můžeme tedy bez dodatečných údajů rozlišit pouze každé čtyři po sobě jdoucí roky. Identifikace přestupného roku probíhá na základě dělitelnosti čísla roku čtyřmi. 3.6. Napájení Zadání požaduje, aby navržený převodník splňoval podmínku velikosti napájecího napětí +27 V. Jedná se o hodnotu stejnosměrného napětí z rozsahu používaného v palubní síti letadel. Rozsah zpravidla používaných napětí pokrývá hodnoty od 24 V do 29 V, méně často do 30 V a pro případ nouzového režimu se hranice pohybují od 18 V do 29 V [11]. V návrhu se tedy pokusíme o pokrytí všech těchto oblastí. 30

Realizace převodníku Použité obvody činí nárok na konkrétní hodnoty velikostí napájecích napětí. Požadovány jsou hodnoty 3,3 V, 5 V a ±(12 15) V. Z důvodu přítomnosti poměrně velkých rozdílů mezi vstupním a výstupními napětími stabilizátorů by bylo obtížné použít lineární stabilizátory. Na těchto prvcích by se nacházel velký úbytek napětí, který by i při menším proudovém odběru vedl k nezanedbatelným tepelným ztrátám. Nabízí se tedy možnost použití spínaných zdrojů se stabilizací napětí, jedním takovým je polovodičový step-down regulátor LM2574 o maximálním vstupním napětí 40 V. Regulátor LM2574 je vyráběn ve variantách stabilizujících 3,3 V, 5 V, 12 V, 15 V a v nastavitelné (adjustable) verzi. Některé verze obyčejně nebývají v obchodech k dispozici, je tedy možné je nahradit nastavitelnou (adjustable) variantou. V předchozích odstavcích byly bez jakéhokoliv komentáře představeny hodnoty napětí požadované použitými obvody, zmiňme zde tedy alespoň jednou větou několik podrobnějších informací. Když jsme mluvili o symetrickém napájecím napětí, měli jsme na mysli napájení vysílací části modulu ARINC obvodu HI- 8585. Spotřeba tohoto obvodu je z pohledu každé symetrické napájecí větve v absolutní hodnotě nejvýše 14 ma. Velikost napětí ve zmíněném rozmezí bychom mohli pevně zvolit jako libovolnou hodnotu z povoleného rozsahu. Elegantnějším řešením však bude použití nastavitelné verze stabilizátoru doplněné o nastavovací trimr. Tímto způsobem dostaneme napětí kladné větve. Záporné napětí získáme podobným způsobem, odvodíme jej však z již stabilizovaného kladného napětí z rozsahu 12 V 15 V. Důvod pro použití takového kaskádového zapojení je prostý a spočívá v omezení velikosti nejvyššího napětí na vstupu zdroje LM2574. Toto maximimální napětí U max musí být větší nebo alespoň rovno vstupnímu napětí U in stabilizátoru zmenšeného o hodnotu požadovaného výstupního napětí U out U in U out U max, (3.7) v našem případě je požadovaným vstupním napětím, jak jsme jej deklarovali v úvodu této kapitoly, alespoň U in = 30 V. Výstupní napětí volíme raději o něco menší než U out = 12 V, pro tyto hodnoty není podmínka (3.7) splněna, kaskádní zapojení je tedy na místě. V takovém případě i pro limitní hodnoty U in = 15 V a U out = 15 V nerovnost (3.7) platí a je možné používat vstupní napětí až U in = 31

Realizace převodníku 40 V. Proudové zatížení obou větví (kladná bude zatížena ještě zápornou) je v porovnání s mezními hodnotami stabilizátoru a použité tlumivky takřka zanedbatelné, případnému chlazení tedy nemusíme věnovat větší pozornost. Napětí o velikosti 5 V využijeme pro obvody HI-8588 a HI-6010, tedy zbylé obvody modulu Arinc a jim příslušející frekvenční generátor. Poslední zmíněnou hodnotou je 3,3 V, jež poslouží pro kompletní napájení modulu Driver, tedy napájení mikropočítače a samotného modulu převodníku XPort. 32

4. Návrh programového vybavení Předchozí kapitola byla věnována návrhu hardwarové části převodníku. Na rozdíl od ní se zde zaměříme na část programového vybavení mikropočítače převodníku. V několika odstavcích si představíme jednotlivé části programu, jejich strukturu a funkci. V tomto odstavci bude popsána struktura řešení, programátorská dokumentace k softwarovému vybavení je z důvodu svého rozsahu umístěna pouze na přiloženém CD. 4.1. Hlavní blok Pod pojmem hlavní blok programu si představme základní strukturu nejvyššího prvku programu. Ta je v našem případě tvořena blokem inicializace následovaným nekonečnou smyčkou vyhodnocující výsledné hodnoty běhu sporadických úloh. Sporadické úlohy jsou pouze obsluhy nastalých přerušení. Všechny funkce obsluhy přerušení mají stejnou prioritu, jsou tedy vzájemně nepřerušitelné. Použité zdroje přerušení jsou od obvodu příjmu zpráv ze sběrnice Ethernet a od časovače. Podrobnější informace o použitých periferiích jsou uvedeny dále. Na indikaci přijetí zprávy po sběrnici Ethernet program zareaguje zavoláním podprogramu pro její zpracování. Výsledek zpracování zprávy je posléze odeslán zpět do nadřazeného systému (PC). Zpráva přijatá ze sběrnice ARINC 429 je zabalena do struktury aplikační vrstvy komunikačního protokolu a okamžitě (po uplynutí timeoutu od předchozího vysílání) poslána na sběrnici Ethernet. 4.2. Návrh aplikační vrstvy protokolu Pro komunikaci osobního počítače (PC) s převodníkem (MCU) je vhodné navrhnout protokol, který bude zajišťovat detekci správnosti doručení dat. Veškerá komunikace po sběrnici Ethernet probíhá za přítomnosti IP paketů, které nám již zajišťují adresování. Mezi zmíněnou síťovou vrstvou (IP) a aplikační se nachází ještě vrstva transportní (UDP nebo TCP). V aplikaci převodníku na volbě jednoho ze zmíněných protokolů v podstatě nezáleží, pro UDP je výhodou jeho jednoduchost a rychlost komunikace. Za nevýhodu jeho nasazení můžeme oproti TCP považovat absenci kontroly správnosti příjmu přenášeného datagramu. Nicméně je vhodné ur- 33

Návrh programového vybavení čitý stupeň ověření implementovat v obou případech. Ověření správnosti doručení kompletní a neporušené zprávy probíhá za pomoci kontrolního součtu připojeného na konec každé ze zpráv. Aplikační vrstva protokolu slouží k přenosu uživatelských dat. Za předpokladu komunikace nad transportními protokoly můžeme z aplikační vrstvy protokolu zcela vypustit adresování a věnovat se zde přenosu pouze uživatelských dat. Zcela jistě nezbytnou součástí navrhovaného protokolu by měla být alespoň elementární kontrola validity přenesených dat, kterou zajistíme pomocí 16bitového kontrolního součtu CRC. Každá zpráva, jako jednotka aplikačního protokolu, je uvozena 8bitovým identifikátorem s významem kódu příkazu. Následuje 8bitová hodnota určující délku parametru, tedy počet bytů, které následují. Celá zpráva je zakončena 2bytovým CRC kódem. Polynom CRC je ve tvaru x 16 + x 12 + x 5 + 1 (CRC-16-CCITT). V programu je kódován konstantou volenou při překladu, takže není problém jej změnit. Délka celé zprávy je omezena na 32 bytů. Struktura zprávy je pro názornost umístěna v tabulce 4.1. 1 2 n-1 n kód délka data CRC Tabulka 4.1 - Struktura zprávy aplikačního protokolu V datové oblasti navrženého protokolu jsou přenášena např. slova sběrnice ARINC 429. Dále jsou implementovány systémové a ladící zprávy. 4.3. Ethernet komunikace Na Ethernetu byla volba mezi nastavením převodníku jako serveru (čeká na příchozí spojení) a klienta (zahajuje spojení se serverem). Bylo zvoleno pasivní čekání převodníku na spojení. Převodník na síti tedy figuruje jako server. Příjem zpráv ze sběrnice Ethernet je řešen pomocí převodníku XPort, který transformuje data přenášená v datagramech UDP na UART kanál. V mikropočítači je tedy implementována komunikace po UARTu za využití obsluhy přerušení. Jednotlivé přijímané byty jsou postupně ukládány do vstupního bufferu. Na přijímaných datech je ihned po jejich přijetí prováděna kontrola. Této kontrole, kvůli své časové náročnosti, nepodléhá kontrolní součet. Ten je spočten až později, před samotným zpracováním přijaté zprávy. Příjem zprávy má ještě parametr maximální 34