irda

background image

Wykład – Mikrosystemy Elektroniczne

1

IrDA (Infrared Data Association)

1. Opis ogólny standardu IrDA

IrDA jest protokołem transmisji cyfrowych w podczerwieni, zawdzięczającym swoje

powstanie procesom normalizacyjnym dotyczącym pilotów sterujących odbiornikami TV i
magnetowidami. Dzisiaj Forum IrDA specyfikuje trzy standardy komunikacji za
pośrednictwem wspomnianych fal podczerwonych: IrDA-Data, IrDA-Control oraz nowy -
AIr (Advanced Infrared). Na razie IrDA zapewnia transmisję typu punkt-punkt na odległość
do 1 m w zakresie falowym 850-900 nm. Osiągane przepływności dochodzą do 16 Mb/s, a kąt
transmisji nie przekracza 30°. Po obniżeniu szybkości transmisji do 75 kb/s można
komunikować się na odległość ponad 5 m. W przyszłości protokół AIr zapewni przesyłanie
danych w konfiguracji wielopunkt-wielopunkt. Teraz oferuje przepływność 4 Mb/s na
odległości 4 m lub 250 kb/s po podwojeniu tego dystansu.

Do stowarzyszenia IrDA należą: Acer, Ascom, Agilent Technologies, Apple Computer,

Compaq, Ericsson, Hewlett-Packard, Intel, Linux-IrDA, Matsushita, Microsoft, Motorola,
National Semiconductor, Nokia, Philips, Seiko Instruments, Sony, Toshiba, ZiLOG i wiele
innych.

Rys. 1. Podzespoły wykorzystywane przez interfejs IrDA

2. Stos protokołów

Protokoły komunikacyjne są w IrDA podzielone na warstwy i spełniają wiele funkcji. Stos

protokołów wynika z architektury pokazanej na rys. 2. Warstwy w stosie są zwyczajowo
podzielone na dwie podgrupy:
- protokoły implementowane obowiązkowo,
- protokoły opcjonalne.

background image

Wykład – Mikrosystemy Elektroniczne

2

Rys.2. Stos protokołów IrDA

W skład pierwszej wchodzą:

Warstwa fizyczna (Physical Layer), która specyfikuje charakterystyki optyczne,
kodowanie danych oraz synchronizowanie ramek.

IrLAP (Link Access Protocol), odpowiadająca za niezawodność połączenia.

IrLMP (Link Management Protocol) - protokół multipleksowania usług i aplikacji.

IAS (Intention Access Service), czyli dostęp do informacji.

Zastosowanie protokołów opcjonalnych zależy od konkretnej aplikacji. Do grupy tej należą:

TinyTP (Tiny Transport Protocol), zapewniający sterowanie strumieniem w kanale. Jest to
bardzo ważna funkcja i z tej racji często rekomendowana dla wielu aplikacji.

IrOBEX (Object Exchange Protocol), ułatwiający transfer plików oraz innych obiektów
danych.

IrCOMM, którego głównym zadaniem jest emulowanie portów szeregowego i
równoległego, opartych na 4 typach usług: 3-Wire Raw, 3-Wire, 9-Wire i Centronics.

IrLAN (Local Area Network), zapewniający dostęp urządzeniom, np. notebookom, do
sieci lokalnej za pośrednictwem podczerwieni.

background image

Wykład – Mikrosystemy Elektroniczne

3

Rys. 3. System z interfejsem IrDA

3. Warstwa fizyczna - IrPHy

Warstwa fizyczna zawiera optyczny układ nadawczo-odbiorczy. Dokonuje on konwersji

(kodowania, ramkowania, itd.) sygnału elektrycznego na sygnał optyczny w obu kierunkach
(rys. 4)

Rys. 4. Blok konwertera

background image

Wykład – Mikrosystemy Elektroniczne

4

Do pierwszego bloku Encoder/Decoder jest podawany sygnał będący szeregowym

strumieniem danych [1]. W bloku tym jest on kodowany i ramkowany (patrz tabela 2), po
czym podawany jest on [2] na blok IR Transducer Module, który zamienia sygnały
elektryczne na optyczne.

Uwaga. Interfejs IrDA jest interfejsem szeregowym pracującym w trybie half-duplex.
W zależności od częstotliwości pracy blok Encoder/Decoder koduje dane za pomocą

różnych algorytmów. W tabeli 2 przyporządkowano algorytmy kodowania (modulowania) do
odpowiednich prędkości transmisji oraz podano inne istotne parametry sygnałów optycznych.

Tabela 2. Zestawienie prędkości transmisji i algorytmów kodowania.

W modulacji RZI (Return-to-Zero-Inverted) „0” jest reprezentowane przez impuls

świetlny, którego czas trwania dla częstotliwości do 115,2 kbit/s wynosi 3/16 czasu trwania
danego bita. Dla prędkości 0,576 Mbit/s i 1,152 Mbit/s czas trwania impulsu świetlnego jest
równy 1/4 czasu trwania nadawanego bita.

Rys. 5. Przykład modulacji RZI

Dla 4Mbit/s używane jest kodowanie 4PPM (Four Pulse Position Modulation), gdzie „0”

jest reprezentowane przez impuls świetlny. Dla 16Mbit/s stosuje się kodowanie HHH(1,13).

background image

Wykład – Mikrosystemy Elektroniczne

5

Dla częstotliwości transmisji powyżej 0,576Mbit/s stosuje się ramkowanie danych oraz do

przesyłanych danych wprowadza się sumę kontrolną CRC.

Rys. 6. format ramki dla prędkości transmisji 0,576 Mbit/s i 1,152 Mbit/s

gdzie:

STA: Flaga początkowa, 01111110 binarnie,
ADDR: 8-bitowy adres,
DATA: 8-bitowe pole kontrolne plus do 2045 = (2048 - 3) bajtów pola danych,
FCS: CCITT 16- bitowa CRC
STO: Flaga końcowa, 01111110 binarnie.

Warstwa fizyczna musi być przynajmniej częściowo zaimplementowana sprzętowo, a w

niektórych przypadkach jest implementowana sprzętowo całkowicie.

Rys. 7. Implementacja interfejsu UART w standardzie IrDA

Rys. 8. Interfejs optyczny

Na rys. 8 pokazano interfejs optyczny – połączenie dwóch urządzeń (węzłów). Każdy z

węzłów można zdefiniować następującymi parametrami optycznymi, wyróżnionymi na rys. 8.

background image

Wykład – Mikrosystemy Elektroniczne

6

Rys. 8. Opis pojedynczego węzła w standardzie IrDA

Węzły (nadajnik/odbiornik) mogą być dwojakiego rodzaju:

standardowe – połączenie optyczne od 0 do 1m,

niskiej mocy – połączenie optyczne krótsze od poprzedniego.
Zatem można wyróżnić trzy typy połączeń optycznych, które przedstawiono w tabeli 1.

Tabela 1. Typy i parametry połączeń optycznych w standardzie IrDA

Żeby odseparować resztę stosu od warstwy sprzętowej, stworzono pewnego rodzaju

warstwę programową, nazywaną framer. Jej najważniejszym zadaniem jest przyjmowanie
przybywających z warstwy sprzętowej ramek i prezentowanie ich w IrLAP.

4. Dostęp do łącza – IrLAP

Bezpośrednio nad warstwą framer znajduje się warstwa IrLAP, znana jako protokół

dostępu do łącza. Jak już wspomniano, należy ona do obowiązkowych implementacji, a w
modelu OSI odpowiada warstwie drugiej. Opiera się na SDLC (Synchronous Data Link
Control) i HDLC (High Level Data Link Control) z rozszerzeniami dla niektórych
charakterystyk komunikacji w podczerwieni.

W swoich założeniach IrLAP ma zapewnić niezawodny transfer danych przy użyciu

mechanizmów, takich jak: retransmisja, sterowanie strumieniem i detekcja błędów.
Sterowanie strumieniem w IrLAP jest niskopoziomowe (low-level), w TinyTP natomiast
wysokopoziomowe (high-level); praktycznie we wszystkich sytuacjach te dwie metody
powinny być stosowane zamiennie (alternatywnie).

Jak już wspomniano, o niezawodność transferu danych dba warstwa niska. Kiedy strumień

światła podczerwonego zostanie przerwany w chwili ustawienia jakiejś przeszkody, np.
książki, IrLAP może powiadomić o zaistniałym problemie wyższe warstwy, które zajmą się
jego rozwiązaniem. W konsekwencji użytkownik zostanie powiadomiony o kłopotach w taki
sposób, aby mógł przedsięwziąć odpowiednie środki - w tym przypadku przesunąć lub zabrać
książkę. Wszystko to odbywa się bez przerwania połączenia i utraty transmitowanych danych.

Właściwości związane z z warstwą IrLAP:

Łącze punkt-punkt. Wszystkie połączenia należą do typu "jeden do jednego", np. komputer
osobisty z drukarką. Typowa odległość wynosi 1 m, chociaż dostępne są już wersje
zapewniające 10 m i więcej. Nie jest to protokół typowo stosowany w sieciach lokalnych,
gdzie wielu nadawców transmituje do kilku odbiorców.

background image

Wykład – Mikrosystemy Elektroniczne

7

Półdupleks. W określonym czasie światło podczerwone, a więc i dane, transmituje się w
jednym kierunku. Jednak w sytuacjach, w których czas transmisji nie jest czynnikiem
kluczowym, może się zdarzyć "symulowanie" transmisji dupleksowej.

Kąt transmisji jest dosyć wąski - 15° w stosunku do osi symetrii. W ten sposób
minimalizuje się interferencje z innymi urządzeniami.

Interferencje. IrLAP musi uporać się z zakłóceniami, których źródłem mogą być
jarzeniówki, promienie słoneczne, a także inne urządzenia transmitujące na falach
podczerwonych.

Brak detekcji kolizji. Twórcy technologii nie uwzględnili wykrywania kolizji. W takiej
sytuacji oprogramowanie musi radzić sobie z przypadkami, w których błędy,
spowodowane kolizją, powodują utratę danych.

Rys. 9. Zadania warstwy IrLAP

Połączenie LAP łączy trochę przestarzała relacja master-slave z różnym poziomem

odpowiedzialności. Urządzeniami nadrzędnymi (master) mogą być komputery osobiste lub
PDA, podrzędnymi (slave) urządzenia peryferyjne. Jednak w połączeniu, gdy jedno
urządzenie jest nadrzędne, a drugie podrzędne, to drugie może mieć stos protokołów dla
urządzenia zarówno podrzędnego, jak i nadrzędnego - wiele urządzeń nadrzędnych może
pełnić funkcje urządzenia podrzędnego.

Każde urządzenie IrDA dysponuje tablicą usług i protokołów dostępnych w danej chwili.

Norma przewiduje dwa podstawowe stany funkcjonowania IrLAP: NDM (Normal Disconnect
Mode) i NRM (Normal Response Mode).

NDM

NDM jest domyślnym stanem rozłączonego urządzenia. Urządzenia w tym stanie badają

zajętość medium przed transmisją. Jeśli nie została wykryta żadna aktywność innego
urządzenia przez okres dłuższy niż 500 ms, to wtedy medium jest postrzegane jako zdolne do
ustanowienia połączenia. Ważnym aspektem NDM są jego reguły komunikacji. Klasyczny
problem do rozwiązania polega na takim skonfigurowaniu połączenia, żeby obydwie strony
miały takie same parametry komunikacyjne. Może on się okazać szczególnie trudny, kiedy
urządzeniu brakuje interfejsu użytkownika, niezbędnego przy ustawianiu lub przeglądaniu
parametrów komunikacyjnych. Wspomniane kłopoty nie występują w systemach IrDA, gdzie
cała NDM używa konkretnych parametrów łącza. Podczas procesów łączenia dwie strony
wymieniają informacje i szukają parametrów najlepszych dla każdej z nich.

background image

Wykład – Mikrosystemy Elektroniczne

8

NRM

NRM jest trybem funkcjonowania połączonych urządzeń. Kiedy obydwie strony prowadzą

dialog, opierając się na wynegocjowanych w trakcie stanu NDM parametrów
komunikacyjnych, wyższe warstwy stosu używają normalnych ramek poleceń i odpowiedzi
do wymieniania informacji.

Urządzenia nie potrzebują wszystkich usług zdefiniowanych w specyfikacji IrLAP.

Dlatego określono pewne minimalne wymagania. Do najważniejszych należą: detekcja
urządzenia, negocjowanie najlepszych parametrów komunikacyjnych dla obydwu stron i
dokonanie połączenia, wysyłanie danych i wreszcie rozłączanie - zamykanie sesji i powrót do
stanu NDM, oznaczającego gotowość do nowego połączenia.

Wszystkie dane przesyłane przez IrLAP są zorganizowane w postaci ramek. Format ten

pozwala na kontrolę przesyłania danych pomiędzy nadajnikiem a odbiornikiem. Pozwala
odbiornikowi na określenie:

gdzie ramka zaczyna się i kończy,

gdzie jest jej przeznaczenie,

co ma być zrobione z odebraną daną,

potwierdzenie odbioru danych nadajnikowi,

detekcję zaistniałych błędów transmisji w odebranej ramce.

Każda ramka posiada następujący format:

adres (A) – pole identyfikujące adres dla drugiej stacji (odbiornika/nadajnika w innnej
warstwie),

kontrola (C) – pole, które określa funkcję danej ramki,

opcjonalna informacja (I) – pole zawierające dane.

Każde z tych pół zawiera 8 bitów lub wielokrotność 8-bitów. Wszystkie pola A, C i I są
określane mianem payload data.

Rys. 10. Ramka dla warstwy IrLAP

Rys. 11. Pole adresu

C/R – identyfikator kierunku danych: 1 – ramka komendy (od podstawowej stacji), 0 – ramka

odpowiedzi (wysyłana przez podrzędną stację).

background image

Wykład – Mikrosystemy Elektroniczne

9

5. Zarządzanie łączem – IrLMP

Warstwa IrLMP, na której spoczywa odpowiedzialność za nadzorowanie łącza, zapewnia

następujące funkcje:

Multipleksowanie (LM-MUX): LMP umożliwia funkcjonowanie w jednym łączu IrLAP
wielu klientów IrLMP.

Detekcję, którą cechuje rozwiązywanie konfliktów adresów. Stosuje się ją wtedy, gdy np.
dwa urządzenia mają ten sam adres IrLAP. LMP arbitralnie nakazuje zmianę adresów i
wygenerowanie nowych.

Rys. 12. Architektura warstwy IrLMP

Dostęp do informacji LM-IAS

Wszystkie usługi lub aplikacje muszą mieć kontakt z IAS (Information Access Service).

IAS może być zapytany o dodatkowe informacje na temat usługi.

Na pełną implementację IAS składają się komponenty klienta i serwera. Klient jest

składnikiem generującym zapytania o usługi w innym urządzeniu. Używa do tego celu IAP
(Information Access Protocol), który jest stosowany tylko z IAS. Natomiast serwer jest
składnikiem, który potrafi odpowiadać na zapytania klienta IAS. Urządzenia, które nie
inicjują połączeń LMP, mogą zawierać jedynie serwer IAS.

Baza informacji IAS (IAS Information Base) jest zbiorem obiektów, które są dostępne dla

danego połączenia. Jest używana przez serwer IAS do udzielania odpowiedzi na pojawiające
się zapytania IAS. Baza obiektów składa się z nazwy kategorii i jednego lub więcej
atrybutów. Posługując się analogiami z telekomunikacji, nazwa kategorii odpowiada nazwie
firmy w książce telefonicznej. Klienci będą zasięgali informacji o usłudze używając tej
nazwy. Atrybuty stanowią informację analogiczną do numeru telefonu, adresu i pozostałych
danych biznesowych. Głównym atrybutem jest LSAP-SEL, który jest wymagany do
utworzenia połączenia LMP z usługą.

Warstwa ta kontroluje zawartością pola DeviceInfo w ramce przesyłanej przez IrLAP (pole

information w ramce IrLAP).

Postać pola DeviceInfo pokazano na rys. 13.

background image

Wykład – Mikrosystemy Elektroniczne

10

Rys. 13. Format pola DeviceInfo

Dwa pierwsze bajty pola DeviceInfo stanowią informację o typie urządzenia – pole Service

Hints. W poniższej tabeli pokazano znaczenie poszczególnych bitów pola Service Hints. „0”
na danej pozycji oznacza brak danego urządzenia.

Pole Device Nickname składa się z dwóch elementów (rys. 14):

Rys. 14. Format pola Device Nickname

Wszystkie ramki protokołu LMP (LM-PDU) są wysyłane jako dane dla protokołu IrLAP

(w polu Information na rys. 10). LMP wysyła ramkę składającą się najpierw z nagłówka
składającego się z dwóch bajtów, po którym następują dane (rys. 15).

Rys. 15. Nagłówek ramki LM-PDU

Bit C jest bitem kontrolnym. Gdy C=1 – to ramka jest komendą, gdy C=0 – to ramka zawiera
dane. Bit r jest zarezerwowany i musi być równy 0.

Rys. 16. Ramka LM-PDU z danymi

Rys. 17. Ramka comend LM-PDU kontrolujących połączenie

background image

Wykład – Mikrosystemy Elektroniczne

11

6. Tiny Transport Protocol - Tiny TP

Była już mowa o tym, że warstwa fizyczna określa wymagania sprzętowe i

niskopoziomowe ramkowanie danych. Wiadomo też, że IrLAP zapewnia niezawodną,
sekwencyjną transmisję danych, a IrLMP daje multipleksowanie LAP oraz wspomniane
usługi IAS.

TinyTP jest wprawdzie opcjonalną warstwą IrDA, ale jest tak ważny, że właściwie

powinien być postrzegany jako obowiązkowy. TinyTP spełnia dwie funkcje. Po pierwsze
steruje strumieniem w kanale w połączeniu LMP, po drugie dokonuje segmentowania i
powtórnego składania danych - SAR (Segmentation and Reasembly). Do każdego pakietu
IrLMP TinyTP dodaje jeden bajt informacji.

Najważniejszą funkcją TinyTP jest sterowanie strumieniem w kanale. Właściwie IrLAP

steruje strumieniem i równocześnie bada, czy jest potrzebny inny mechanizm sterowania.
Główna korzyść ze stosowania TinyTP polega na tym, że w trakcie połączenia LMP jedna
strona może przerwać nadawanie informacji bez negatywnego wpływu na drugą. Jest to
nieosiągalne przy zastosowaniu "zwykłego" sterowania strumieniem LAP, gdy przerwa w
transmisji odbija się niekorzystnie na pracy drugiej strony.

Drugą funkcją TinyTP jest SAR, czyli segmentacja i powtórne składanie danych.

Zasadniczą ideą przyświecającą jej tworzeniu była chęć umożliwienia TinyTP dzielenia
danych o dużej objętości na mniejsze części i składania ich po drugiej stronie (w urządzeniu
odbierającym). Taki fragment podzielonej całości został nazwany SDU (Service Data Unit).
Jego maksymalny rozmiar jest negocjowany w chwili inicjowania pierwszego połączenia
TinyTP/LMP.

7. Protokól IrCOMM

IrCOMM zapewnia emulowanie portów szeregowych standardu RS-232 i równoległych

typu Centronics.

Rys. 18. Umiejscowienie warstwy IrCOMM w typowym systemie

background image

Wykład – Mikrosystemy Elektroniczne

12

Rys. 19. Model przedstawiający emulację portów przez IrCOMM

Warstwa IrCOMM dostarcza cztery typy usług:

3-żyłowy surowy (3-Wire row),

3-żyłowy z kontrolą przepływu (3-Wire),

9-żyłowy (9-Wire),

Centronics.

Połączenie 3-Wire row jest najprostsze. Gdy jest aktywne, wszystkie inne połączenia muszą
być zamknięte. Kontrolą przepływu zajmuje się protokół IrLAP. Wszystkie pakiety IrCOMM
są bezpośrednio przesyłane w ramkach IrLMP.

3-Wire korzysta z protokoły Tiny TP. Dostarcza kontroli przepływu danych.

Centronics emuluje port równoległy komputera PC. Korzysta z protokołu Tiny TP. Używa
identycznych mechanizmów kontroli co 3-Wire.

8. Pozostałe protokoły opcjonalne

IrOBEX został stworzony po to, by umożliwić systemom wszystkich typów i rozmiarów

wymianę danych i poleceń.

IrLAN, który nie został jeszcze w pełni znormalizowany, służy jako wygodne połączenie

między komputerem osobistym a siecią lokalną. IrLAN oferuje m.in. dostęp do sieci lokalnej
za pośrednictwem urządzenia Access Point Device, zwanego czasem IR LAN Adapter.


Wyszukiwarka

Podobne podstrony:
IrDA www, INFORMATYKA, Sieci, S O i S K I sem
IrDA
Moduł 5- IrDA(1), technik informatyk, soisk utk
IrDA
1.IrDA, informatyka
IRDA
irda
Łącze podczerwieni IrDa do PC, Komputer, Różności
IrDA TFDS 4500 schemat
IrDA mainboard schemat
Schemat Budowy Urządzenia Nadawczo Odbiorczego Irda
Irda
Dragonlance Lost Histories 02 The Irda (Children of the Stars) # Linda P Baker

więcej podobnych podstron