Донские Радиолюбители
16+
главная
новости
статьи
частоты
репитеры
радиоклубы
форум
ссылки
литература
RK6LZQ
Статьи

Статьи : Передача данных /

IrDA (Infrared Data Association) — Инфракрасный порт

Добавлено пользователем RN6LMR 05.09.2013 в 22:00.
Содержание:
Введение
История
Аппаратная реализация
Принцип работы
Возможности IrDA
Стеки протоколов
Протоколы IrDA
Достоинства IrDA
Недостатки IrDA
Литература


ИК-USB-модуль 4 Мбит/с

ИК-COM-модуль

Схема ИК-модуля для ПК

Введение

Infrared Data Association — IrDA, ИК-порт, Инфракрасный порт — группа стандартов, описывающая протоколы физического и логического уровня передачи данных с использованием инфракрасного диапазона световых волн в качестве среды передачи.
Является разновидностью оптической линии связи ближнего радиуса действия.
Была особо популярна в конце 1990-х начале 2000-х годов. В данное время практически вытеснена более современными способами связи, такими как WiFi и Bluetooth. Основные причины отказа от IrDA были:
  • Усложнение сборки корпусов устройств, в которых монтировалось ИК-прозрачное окно.
  • Ограниченная дальность действия и требования прямой видимости пары приемник-передатчик.
  • Относительно низкая скорость передачи данных первых реализаций стандарта. В последующих ревизиях стандарта этот недостаток исправили: скоростные возможности немного превышают, например, возможности самой распространенной, на сегодняшний момент, версии протокола Bluetooth (спецификация 4.0). Однако широкого распространения скоростные варианты IrDA получить уже не успели.

IrDA спецификации включают в себя:
  • Спецификацию физического уровня IrPHY (с разновидностями SIR, MIR, FIR, VFIR, UFIR).
  • Протокольные спецификации IrLAP, IrLMP, IrCOMM, Tiny TP, IrOBEX, IrLAN, IrSimple и IrFM (находится в разработке).

История

Летом 1993 года компания Hewlett-Packard организовала общепромышленное совещание, чтобы обсудить будущее ИК (инфракрасный) передачи данных. Многообразие несовместимых стандартов было печальной реальностью, причинявшей массу неудобств всем от того, что устройства от разных производителей были несовместимы. Телевизоры, видеомагнитофоны, другая бытовая техника с ИК управлением сегодня встречается на "каждом углу", однако в них используются несовместимые физические и программные интерфейсы. Целью совещания было обсуждение путей, которыми промышленность может пойти к общему стандарту, способному совместимость всех устройств, использующих ИК порт. На совещании был сформирован консорциум всех ведущих компаний, названных Ассоциацией инфракрасной передачи данных и вскоре (в июне 1994 года) была объявлена первая одноименная версия стандарта, включающая физический и программный протоколы — IrDA 1.0. Текущая версия — 1.1. В настоящей статье будут описаны основные моменты действующего ныне стандарта.

Аппаратная реализация

Протокол IrDA (Infra red Data Assotiation) позволяет соединяться с периферийным оборудованием без кабеля при помощи ИК-излучения с длиной волны 880 нм. Порт IrDA позволяет устанавливать связь на коротком расстоянии до 1 метра в режиме точка-точка. IrDA намерено не пытался создавать локальную сеть на основе ИК-излучения, поскольку сетевые интерфейсы очень сложны и требуют большой мощности, а в цели IrDA входили низкое потребление и экономичность. Интерфейс IrDA использует узкий ИК-диапазон (850—900 нм с 880 нм "пиком") с малой мощностью потребления, что позволяет создать недорогую аппаратуру и не требует сертификации FCC (Федеральной Комиссии по Связи).
Аппаратная реализация, как правило, представляет собой пару из излучателя в виде инфракрасного светодиода, приемника в виде фотодиода и кодер-декодер, расположенных на каждой из сторон линии связи. Наличие и передатчика и приемника на каждой из сторон является необходимым для использования протоколов гарантированной доставки данных. Блоки обмениваются данными по электрическому интерфейсу, в котором в том же виде транслируются через оптическое соединение, за исключением того, что здесь они пакуются в кадры простого формата — данные передаются 10bit символами, с 8bit данных, одним старт-битом в начале и одним стоп-битом в конце данных.
Сам порт IrDA основан на архитектуре коммуникационного СОМ-порта ПК, который использует универсальный асинхронный приемо-передатчик UART (Universal Asynchronous Receiver Transmitter) и работает со скоростью передачи данных 2400—115200 бит/с.
Связь в IrDA полудуплексная, т.к. передаваемый ИК-луч неизбежно засвечивает соседний PIN-диодный усилитель приемника. Воздушный промежуток между устройствами позволяет принять ИК-энергию только от одного источника в данный момент.



В ряде случаев, например при использовании в пультах дистанционного управления бытовой техникой, одна из сторон может быть оснащена только передатчиком а другая только приемником.
Иногда устройства оснащают несколькими приемниками, что позволяет одновременно поддерживать связь с несколькими устройствами. Использование при этом одного передатчика возможно благодаря тому, что протоколы логического уровня требуют лишь незначительного обратного трафика для обеспечения гарантированной доставки данных.
Наличие нескольких передатчиков встречается гораздо реже.
Большинство оптических сенсоров, используемых в фото и видео камерах, имеет диапазон чувствительности гораздо шире видимой части спектра. Благодаря этому работающий инфракрасный передатчик можно увидеть на экране или фотоснимке в виде яркого пятна.

Принцип работы

Рассмотрим физические основы IrDA. Передающую часть. Байт, который требуется передать, посылается в блок UART из CPU командой записи ввода-вывода. UART добавляет старт-стоп биты и передает символ последовательно, начиная с младшего значения бита. Стандарт IrDA требует, чтобы все последовательные биты кодировались таким образом: логический "0" передается одиночным ИК-импульсом длиной от 1.6 мс до 3/16 периода передачи битовой ячейки, а логическая "1" передается как отсутствие ИК-импульса. Минимальная мощность потребления гарантируется при фиксированной длине импульса 1.6 мс.
По окончании кодирования битов необходимо возбудить один или несколько ИК-светодиодов током соответствующего уровня, чтобы выработать ИК-импульс требуемой интенсивности. Стандарт IrDA требует, чтобы интенсивность излучения в конусе ± 30° была в диапазоне 40—50 мВт/Sr, причем ИК-светодиод должен иметь длину волны 880 нм, как уже отмечалось ранее. Радиальная чувствительность приемника и длины связи диктуются, исходя из требований самой спецификации IrDA.
Приемная часть. Переданные ИК-импульсы поступают на PIN-диод, преобразующий импульсы света в токовые импульсы, которые усиливаются, фильтруются и сравниваются с пороговым уровнем для преобразования в логические уровни. ИК-импульс в активном состоянии генерирует "0", при отсутствии света генерируется логическая "1". Протокол IrDA требует, чтобы приемник точно улавливал ИК-импульсы мощностью от 4 мВт/см2 до 500 мВт/см2 в угловом диапазоне ± 15°.



Для ИК-излучения существует два источника интерференции (помех), основным из которых является солнечный свет, но к счастью в нем преобладает постоянная составляющая. Правильно спроектированные приемники должны компенсировать большие постоянные токи через PIN-диод. Другой источник помех — флуорисцентные лампы — часто применяются для общего освещения. Хорошо спроектированные приемники должны иметь полосовой фильтр для снижения влияния таких источников помех. Вероятность ошибок связи будет зависеть от правильного выбора мощности передатчика и чувствительности приемника. В IrDA выбраны значения, гарантирующие, что описанные выше помехи не будут влиять на качество связи.

Возможности IrDA

В повседневной жизни мы постоянно сталкиваемся с ИК-портами.
Дистанционный пульт управления передает команды на телевизор или видеомагнитофон с помощью IrDA. До недавнего времени ИК-портами оснащалась большая часть мобильных телефонов, ноутбуков и карманных компьютеров. ИК-портами оснащаются некоторые принтеры и цифровые фотоаппараты. Большинство настольных ПК, напротив, не имеет инфракрасного порта в стандартной системной конфигурации, и для них необходим ИК-адаптер, который подключается к компьютеру через USB, СОМ-порт или в специальный разъем на материнской плате.
Через ИК-порт, с помощью протокола высокого уровня — IrOBEX можно, например, передать цифровую визитную карточку, мелодию, картинку или файл на другой мобильник или компьютер, на котором также имеется ИК-порт. Этот же протокол позволяет организовывать синхронизацию данных.
Протокол IrCOMM позволяет использовать мобильный телефон как беспроводной модем.
Протокол IrLAN позволяет подключить и связать устройства в локальную сеть, наподобие Ethernet.
Ввиду того, что пульты дистанционного управления используют этот же протокол, КПК, со встроенным ИК-портом, можно использовать как пульт для управления. Для этого, как правило, необходимо установить соответствующее ПО.

Стеки протоколов

Стандарт IrDA включает в себя стек протоколов трех согласованных обязательных уровней: IrPL (Physical Layer), IrLAP (Link Access Protocol) и IrLMP (Link Management Protocol).
Физический уровень (Physical Layer). Спецификация этого протокола устанавливает стандарты для Ir-трансиверов, методов модуляции и схемы кодирования/декодирования, а также ряд физических параметров. Стандарт предусматривает использование длины волны в диапазоне 850—900 нм. Минимальная и максимальная интенсивность передатчика (как уже говорилось) составляет 40—50 мВт/Sr соответственно внутри 30° конуса. Для стандарта IrDA (скорость передачи данных 115.2 кбит/с) схема кодирования аналогична используемой в традиционной UART: бит старта ("0") и стоп-бит ("1") добавляются перед и после каждого байта соответственно. Но вместо схемы NZR (Non-Return to Zero) используется кодировка, подобная RZ (Return to Zero), т.е. двоичный "0" кодируется единичным импульсом, а "1" — его отсутствием. Кадры отделяются друг от друга байтами Escape-последовательности, содержащимися в теле самого кадра. Для определения ошибок (EDt — Error Detection) используется 16bit циклическая контрольная сумма. Например, уже в стандарте IrDA 1.1 для протокола обмена 1.152 Мбит/с (синхронизация выполняется как в протоколе HDLP — High-level Data Link Protocol высокого уровня) и 4 Мбит/с (использование 4-PPM — Pulse-Phase Modulation) старт-бит и стоп-бит не применяются. Так, фреймы, получаемые от более высокоуровневого протокола IrLAP, вкладываются в поле данных фреймов SIR, согласно используемому методу кодирования. Стандарт не содержит обязательных вариантов реализации этой процедуры и допускает варьирование алгоритмов в зависимости от возможностей конкретного оборудования. В зависимости от скорости соединения предлагаются методы кодирования: асинхронный (ASYNC, 9600—115200 бит/с), синхронный (HDLC, 0.576—1.152 Мбит/с) и 4-PPM (4 Мбит/с).



Программный протокол включает в себя: IrLAP (Link Access Protocol), занимающийся разбиением данных на блоки, контролем ошибок и другими функциями низкого уровня, и IrLMP (Link Management Protocol), позволяющий по одной ИК-линии обмениваться данными между несколькими приложениями. Данный протокол базируется на существующих стандартах асинхронной полудуплексной передачи данных HDLC и SDLC. Инфракрасная технология поддерживает только однонаправленную передачу информации, поэтому, в следствие полудуплексной природы SIR, возникла архитектура с одним главным (первичным) и множественными подчиненными (вторичными) устройствами. Схема обращения устройств представляет собой обычный протокол обмена данными, где есть фазы запросов (Request) и ответов (Response). Так, первичное устройство отвечает за организацию соединения, обработку ошибок, и посланные им фреймы называются управляющими (Command Frames), а пакеты вторичных устройств именуются ответными (Response Frames). Обмен информацией идет только с первичным устройством, которое всегда выступает инициатором соединения, однако его роль может играть любое из устройств, поддерживающих необходимые для этого функции. По желанию может быть включен протокол транспортного уровня, позволяющий осуществлять контроль передачи между приложениями в случае одновременной работы нескольких приложений на одной физической линии. Для разных уровней имеется три интерфейса. Служебные примитивы уровня LM-SVC позволяют одному из устройств IrDA узнать какие сервис и протоколы зарегистрированы на другом устройстве. Примитивы доступа к уровню M-SVC управляют режимом связи, открытием и закрытием независимых соединений между клиентами, а так же отправкой и приемом данных. Интерфейс L-SVC дает доступ к функциям протокола IrLAP.
Устройства, соответствующие стандарту IrDA, перед началом передачи должны в первую очередь попытался выявить (прочитать) нет ли в ближайшей окрестности активности в ИК-диапазоне, установить не ведется ли какая-либо передача в пределах его досягаемости. Если такая активность обнаружена, то программе, выдающей запрос, посылается соответствующее сообщение, а сам блок откладывает передачу. Поскольку оба соединяющихся устройства могут быть компьютерами (а не компьютер и принтер, или клавиатура, мышь), то любое из них может быть ведущим. Выбор зависит от того, какое устройство первым проявит инициативу.
Каждое устройство имеет 32bit адрес, вырабатываемый случайным образом при установлении соединения. Каждому кадру в пределах соединения ведущее устройство при старте присваивает 7bit-адрес соединения. Для возможных, но нежелательных случаев, когда два устройства имеют одинаковый адрес, предусмотрен такой механизм, когда ведущее устройство дает команду всем подчиненным устройствам изменить их адреса. В процессе установления связи два устройства "договариваются" о максимальной скорости, с которой они оба могут работать. Все первичные передачи, выполняемые до фазы переговоров, по умолчанию ведутся на скорости 9,6 кБит/с.
Максимальный квант передачи может быть равен 100, 200 или 500 мс. Он представляет собой максимальное время, в течение которого устройство передает данные до того, как перейдет к прослушиванию подтверждения приема и зависит от скорости передачи, емкости буфера в принимающем устройстве. Минимальная длительность передачи определяется неспособностью передающего устройства перейти к приему данных сразу после выдачи последнего бита. Дело в том, что усилитель PIN-диода в передающем устройстве входит в состояние насыщения от собственной передачи. Время восстановления приемника — переменная величина, составляющая 0.001–10 мс. Этот параметр для данного устройства должен быть заранее известен и учитывается в фазе переговоров об установлении соединения. Процедуры расширенного восстановления включают в себя функцию сброса, которая прерывает связь, но потом восстанавливает активное состояние с параметрами соединения, используемые по умолчанию.
Стандартом предусмотрено два основных состояния: NRM (Normal Response Mode) и NDM (Normal Disconnect Mode). Первое — это состояние соединения с распределенными ролями первичного и вторичных устройств. Второе предусматривает функции детектирования доступных устройств, сбор информации о них, разрешение адресных конфликтов, а также позволяет передавать данные широковещательно, без установления соединения. В протоколе IrLAP используется три типа кадров по аналогии с HDLC. Поле данных присутствует только у первого и последнего вида фреймов, оно не ограничено по длине, но число бит в нем должно быть кратно 8. Ненумерованные (U-кадры) используются для установления связи: операции соединения и разъединения, информирования об ошибках и передачи данных, если нет необходимости в нумерации последовательностей. Информационные (I-кадры) используются для передачи информации и предназначены для передачи данных. Их командное поле содержит номер фрейма в последовательности, помогающей принимающему устройству отслеживать нарушения очередности. Нумерация организована так, что служит одновременно средством подтверждения приема: S- и I-фреймы могут нести номер пакета, который ожидается на входе устройства-отправителя. Счетчик позволяет идентифицировать только 8 фреймов, таким образом, номер следующего ожидаемого приемником пакета может высылаться не с каждым фреймом, а только по получении нескольких промежуточных пакетов. Величина, определяющая их количество, называется размером окна. Четвертый бит контрольного поля у фрейма, сгенерированного первичным устройством, означает запрос данных, а в ответном фрейме он играет роль конечного бита, сигнализирующего о завершении передачи. Супервизорные (S-кадры) используются для функций handshaking (процедура договора устройств о параметрах синхронизации).



Договариваясь о соединении, устройства обмениваются информацией о скорости, максимальной и минимальной длительности цикла, максимальной величине фрейма, размере окна, количестве дополнительных флагов BOF (Beginning Of Frame) и пороговом времени разрыва соединения (промежуток, в течение которого не было принято ни одного корректного фрейма). Под максимальным циклом (maximum turn-around time) подразумевается отрезок времени, по истечении которого устройство должно установить в своем фрейме конечный бит, а под минимальным — длительность паузы, начиная с момента отсылки последнего байта последнего фрейма, запрошенного передающим устройством, чтобы подготовиться к приему данных. BOF выполняет роль задержки перед посылкой очередного фрейма устройствам с большей задержкой. Предусмотрена команда смены ролей XCHG, позволяющая передавать право называться первичным устройством, как эстафету. Для проверки правильности передачи фрейма к нему в конце дописывается поле FCS (Frame Check Sequence), которое содержит контрольную сумму формата CRC-CCITT.
Протокол IrLAP устанавливает правила доступа к ИК-среде, процедуры открытия канала, согласование абонентов сети, обмена информацией и т.д. Хотя IrLAP и обязательный уровень IrDA, но не все его особенности являются таковыми. Любая станция, не принимающая в данный момент времени участия в обмене, перед тем как начать передачу, должна прослушивать канал не менее 500 мс, чтобы убедиться в отсутствии трафика. С другой стороны, станция, участвующая в обмене, должна вести передачу не более 500 мс. Доступ к среде передачи регулируется посредством специального бита PF (Poll/Final), который устанавливается в теле кадра и выполняет функции, аналогичные маркеру. IrLAP допускает передачи без установления предварительного соединения. По своей природе такая передача является широковещательной и не требует получения подтверждения станции получателя. Процедура открытия канала в этом случае предусматривает обмен идентификационной информацией (ID). Инициатор широковещательного обмена передает ID предопределенное количество раз и прослушивает канал в интервалах между ссылками (слот, Slot). Станция-получатель случайным образом выбирает слот и посылает в ответ свой ID. При обнаружении коллизии процедура повторяется и применяется для согласования операционных параметров станций (скорость посылки бит, максимальная длина пакета). При установлении соединения обмен данными, объем которых не должен превышать 64 байта, осуществляется со скоростью 9.6Kbps. После того, как соединение установлено, скорость обмена и величина пакета данных могут быть по "договоренности" увеличены до максимальных. Кроме пакетов с пользовательскими данными, в обмене участвуют специальные, служащие для управления потоком, коррекции ошибок и передачи маркера. Связь может осуществляться в режиме "1:1" или "1:n". В процессе обмена одна станция является первичной, а остальные — вторичными. Помимо описанных процедур существуют и другие: разрешение конфликтов адресов, изменение роли станции "первичная-вторичная" и т.д.
Протокол управления каналом IrLMP является обязательным, однако его некоторые особенности могут быть опциональны. Каждое устройство IrDA содержит таблицу сервисов и протоколов, доступных в настоящий момент. Эта информация может запрашиваться у других устройств. Мультиплексор администратора соединений и его схема управления позволяют нескольким приложениям обмениваться данными по одному физическому соединению. Протокол IrLMP содержит два компонента: LM-IAS (Link Management Information Access Service) и LM-MUX (Link Management MUltipleXed). LM-IAS управляет информационной базой так, что станции могут запросить, какие службы предоставляются. Эта информация храниться как ряд объектов, с каждым из которых связан набор атрибутов. Например, Device является обязательным и имеет атрибуты DeviceName, IrLMPSupport (номер версии протокола, поддержка ISA и MUX). LM-MUX выполняет мультиплексирование каналов поверх одного соединения, устанавливаемого протоколом IrLAP. С этой целью в Ir-станции определяется множество точек доступа канала — LSAP (Link Service Access Point) — каждая с уникальным селектором. Таким образом каждое из LSAP-соединений определяет логически различные информационные потоки. Протокол LM-MUX обеспечивает передачу данных между точками доступа как внутри одной, так и между другими станциями. Он может работать в одном из двух режимах: эксклюзивном (активизируется только одно соединение LSAP) и мультиплексивном (несколько соединений LSAP могут разделять один канал IrLAP). В этом случае управление потоком должно быть обеспечено протоколами верхнего уровня или непосредственно приложением. Итак, IrLMP функционирует в двух режимах: мультиплексирования и эксклюзивном. Первый позволяет разделять одно физическое соединение нескольким задачам, второй отдает все ресурсы одному-единственному приложению. Каждое виртуальное соединение представлено своей LSAP, таким образом, связь происходит на уровне двух LSAP (LSAP Connection). Также предусмотрено три варианта доступа: с установлением предварительного соединения, без установления предварительного соединения (Сonnectionless) и режим сбора информации о возможностях, сервисах и приложениях удаленного устройства (XID_Discovery).



IrDA TP (Transport Protocol) работает над использованием в качестве транспортного протокола ISO-8073. Его применение позволяет пропускать по линии IrDA несколько потоков данных, с собственным управлением для каждого. Но использование этого протокола не обязательно. TinyTP (Tiny Transport Protocol) — транспортный протокол, осуществляющий функции управления потоком независимыми для любого LSAP-соединения. Каждая точка доступа этого протокола (TTPSAP — TinyTP Service Access Point) идентифицируется с единственной точкой доступа IrLMP и использует единый с ней адрес. TinyTP также ведает сегментацией и сборкой фреймов). IrCOMM — протокол эмуляции последовательного и параллельного портов, основанный на четырех типах сервиса: 3-Wire Raw, 3-Wire, 9-Wire и Centronics. Первый работает только через одно эксклюзивное соединение и используется, когда необходимо передавать исключительно данные. Второй эмулирует параллельную передачу по трем каналам (Signal Common, TD, RD), используя возможности TinyTP, Девятипроводный предназначен для эмуляции последовательных портов и обрабатывает, помимо трех вышеупомянутых, еще шесть сигналов (RTS, CTS, DSR, DTR, CD, RI). Centronics — это не что иное, как виртуальный параллельный интерфейс на базе TinyTP).



Протокол IrTran-P, введенный для передачи изображений, состоит из трех слоев (SCEP, bFTP, UPF) и пользуется услугами упоминавшегося ранее IrCOMM. Назначение SCEP (Simple Command Execute Protocol) — изоляция вышележащих уровней от реалий конкретного интерфейса. Благодаря высокому уровню абстракции удалось спроектировать протокол bFTP (binary File Transfer Protocol) таким образом, что он может единообразно обслуживать нужды самых разных устройств в самых разных конфигурациях соединения. Имя файла упаковывается вместе с данными в единый блок, предусмотрены функции опроса удаленного устройства и согласования параметров представления информации, что максимально автоматизирует процесс. UPF (Uni Picture Format) обеспечивает гарантированное воспроизведение изображений, переданных с одного устройства на другое. UPF основывается на формате JPEG и позволяет сохранять, помимо изображения, еще и все дополнительные сведения о нем, обычно фиксируемые цифровыми камерами (дата, ориентация, уровень белого, уровень черного и т. д.). Чтобы устройства, содержащие аппаратно-зафиксированные алгоритмы обработки изображений, могли адекватно воспринимать модифицированный формат, вся расширенная информация вынесена в заголовок, а само изображение остается нетронутым.



VFIR (Very Fast IR) — дополнение к стандарту IrDA, позволяющее повысить скорость передачи данных до 16Mbps. Введен новый формат фрейма, в котором первым идет поле преамбулы (Preamble), состоящее из 240bit или слотов, после IrLAP-фрейма и контрольной суммы — поле FB (Flush Byte — 8 нулевых бит), в конце — поле Null (24 нулевых бита). Вся переданная информация кодируется по алгоритму HHH, обеспечивающему от 1 до 13 пустых слотов между импульсами. Конечно, необходимые изменения были сделаны и в протоколе IrLAP: добавлено обозначение для скорости 16Mbps в поле Baud Rate, а также увеличен максимально возможный размер окна с 7 до 127 фреймов.
IrBus (IrControl). Спецификация, регулирующая вопросы, связанные с подключением различной периферии, требующей взаимодействия с системными контроллерами. Ее положения применимы также к устройствам удаленного управления ПК, телевизорами высокой четкости (HDTV) и бытовыми приборами.
Физический уровень обеспечивает передачу данных, закодированных по схеме модуляции последовательными импульсами 16-PSM (Pulse Sequence Modulation — 8 слотов, где только 2 или 4 могут содержать импульс) со скоростью 75 кбит/с. Однако, при использовании такой схемы кодирования, импульс означает "1", его отсутствие — "0". Частота несущей основного сигнала — 1.5 МГц с минимальной дальностью действия 5м. Данные пересылаются в пакетах двух видов: длинные (776 бит) и короткие (72 бит), структура которых абсолютно идентична за исключением значения стартового флага, а также разрядности контрольной суммы. Так, протокол MAC (Media Access Control) регламентирует процессы взаимодействия множественной периферии с единственным основным устройством (Host) и обмена информацией между ними.



Существует три режима работы ведущего устройства: сон (с низким энергопотреблением), нормальный и сосуществование с IrDA (поддержка IrDA SIR 1.1 и IrControl). Если от периферии долгое время не поступает никаких данных, то Host автоматически переходит в состояние сна, причем само периферийное устройство в случае необходимости может самостоятельно перевести его в нормальный режим работы. Host получает данные путем циклического опроса периферии (Poll) с периодом 13.8 мс, в ходе которого обслуживается до четырех устройств с критическим временем латентности (для менее требовательной периферии гарантируется период опроса в 69 мс). Формат MAC-пакета состоит из поля адреса основного устройства (HA — Host Address), поля адреса периферии (PA — Peripheral Address) и контрольного поля (MAC). Значение структуры MAC зависит от того, основное или периферийное устройство являются "автором" пакета, и содержит вспомогательную системную информацию.



Прежде чем начнется обмен данными, должен пройти процесс идентификации всей доступной "лидеру" периферии (Enumeration), для чего предназначен специальный формат пакета, называемый "окликом" (Hail). После идентификации устройства и регистрации сведений о его максимально возможном времени опроса оно включается в общий цикл Host-опроса. В зависимости от его дальнейшей активности частота обращений может быть повышена или понижена.



В режиме сосуществования основное устройство в первые 50m s отводит на осуществление IrDA SIR 1.1-коммуникаций, а следующие 10m s производит опрос периферии. Устройства, чувствительные к времени задержки, не могут получить в этом режиме надлежащего обслуживания, да и количество некритичного к циклу опроса оборудования уменьшается до двух устройств. Над уровнем MAC располагается слой LLC (Logical Link Control), функции которого сводятся к обеспечению надежного соединения для вышележащих уровней. Именно LLC ведает пересылкой подтверждений об успешной доставке пакетов. Каждому устройству тут присваивается четыре оконечные точки (Endpoints): первая обслуживает "виртуальное" контрольное соединение, вторая и третья — входное и выходное соединения соответственно, а четвертая является опциональной и может служить для еще одного входного или выходного соединения. На прикладном же уровне определено только два стандартных, обслуживающих LLC, протокола — HA (Home Appliances) и HID (Human Interface Device). Последний поддерживает подключение USB-периферии с помощью IrDA Control Transceiver Module (IRB-TM), также являющегося USB-устройством и функционирующего как хаб (Hub).
IrLAN. Протокол обеспечивает доступ в локальную сеть с помощью инфракрасного соединения (сетевая среда IrLAN), где основными являются клиент и провайдер. Провайдер пассивен и ожидает проявления иницативы со стороны клиента, на которого возлагаются все функции по детектированию и конфигурированию соединения. Для этого используется контрольный канал — через него клиент получает необходимые сведения о провайдере из его IAS. Предусмотрено три метода доступа в сеть: через точку доступа (Access Point), типа "порт–порт" (Peer-to-Peer) и режим основного функционирования (Hosted). Access point представляет собой специализированное устройство, имеющее как доступ к сети, так и IR-адаптер. При соединении "порт–порт" два устройства связываются через инфракрасное соединение, а IrLAN лишь эмулирует локальную сеть. В этом случае каждый из участников должен играть роли клиента и провайдера одновременно. В режиме "хост" компьютер-провайдер не только предоставляет услуги подключения к сети для удаленных устройств, но и сам пользуется ими, потому что провайдер и клиент делят один и тот же сетевой адрес и возникает потребность в специальном маршрутизирующем и фильтрующем ПО. При инициализации соединения устанавливаются два "виртуальных канала" — данных и контроля, причем оба используют TinyTP. В канале данных в настоящий момент поддерживаются пакеты типов 802.3 (Ethernet) и 802.5 (Token Ring). Формат фрейма данных IrLAN аналогичен формату ретранслируемого сетевого протокола. Драйвер IrLAN обычно не модифицирует содержимое пакетов, за исключением дескрипторов, и лишь в режиме Hosted могут быть внесены определенные изменения. В канале контроля обмен осуществляется на основе фреймов другого формата. В первом его 8bit-поле содержится команда, в таком же следующем — количество сопутствующих параметров, а дальше идут сами параметры, которые "укладываются" в промежуток 0—8160 бит.
Практически, сегодня уже нет мало-мальски уважающей компании, которая бы не производила компоненты для ИК портов. Например, компания Crystal Semiconductor выпускает микросхему ИК приемопередатчика серии CS8130. Этот прибор является интерфейсом между блоком UART, излучающим светодиодом и светочувствительным PIN-диодом. Он работает в форматах IrDA, ASK и TV формате беспроводного управления, имеет функции программирования мощности передачи и порога срабатывания приемника. Микросхема выполнена в корпусе типа SSOP очень малого размера (5х7 мм).
В качестве примера "интеграции" можно рассмотреть интерфейс IrDA, добавленного на материнскую плату обычного ПК (в связи со сложностью схемы она не прилагается). Блок UART, имеющийся на плате, можно использовать как для того, чтобы управлять проводным СОМ-портом интерфейса RS-232, используя, например, преобразователь напряжения МАХ562, так и для управления ИК-портом, соответствующим стандарту IrDA, используя трансивер CS8130. Внешний вывод PWRDN# микросхемы CS8130 используется для перевода в третье состояние линий RXD и FORM/BSY, что позволит использовать UART. И наоборот, с помощью выводов EN и SHDN# можно перевести в третье состояние выходы R2OUT и R3OUT микросхемы МАХ562, передавая управление UART трансиверу CS8130. В качестве второго примера можно привести схему (также не прилагается) внешнего модуля, который можно подключить к имеющемуся СОМ-порту любого компьютера. Этот модуль очень компактен и расположен в конце метрового кабеля, свободно ориентируемого в пространстве.

Протоколы IrDA

IrPHY (Infrared Physical Layer Specification) — представляет обязательный протокол самого низкого уровня среди спецификаций IrDA. Соответствует физическому уровню сетевой модели OSI
Основные характеристики спецификации IrPHY выглядят следующим образом:
  • Дальность: не менее одного метра.
  • Минимальное поддерживаемое отклонение от оси приемника/передатчика: не менее 15°.
  • Скорость передачи данных: от 2.4 кбит/c до 16 Мбит/c (100 Mбитная версия находится в разработке).
  • Модуляция: немодулированный сигнал, без несущей.
  • Волновой диапазон: от 850 до 880 нанометров.
  • Режим передачи данных: полудуплексный.

Интересно что спецификация не определяет максимальных допустимых значений для таких параметров как дальность или отклонение от оси, тем не менее типичное расположение устройств для организации соединения подразумевает расстояние от 5 до 50 сантиметров, на одной оси. Устройства с односторонней связью (например пульт ДУ и телевизор), как правило, поддерживают дальность не менее 10 метров.
Использование полудуплексного режима мотивируется тем, что, при попытке одновременного приема и передачи данных, излучение собственного передатчика будет сильно мешать приему сигнала от передатчика удаленного, что делает реализацию полнодуплексного режима очень сложной и нецелесообразной.
Скорости передачи данных делятся на несколько поддиапазонов — SIR, MIR, FIR, VFIR, UFIR каждый из которых характеризуется не только разными скоростями но и использованием различных кодовых схем. Что, собственно, и делает возможным более быструю передачу данных.

SIR (Serial Infrared) использует те же скорости передачи данных, что и в спецификации последовательного соединения RS232 (COM-порт), а именно, 9.6 кбит/с, 19.2 кбит/с, 38.4 кбит/с, 57.6 кбит/с, 115.2 кбит/с. Совпадение поддерживаемых скоростей не случайно, и позволяет довольно легко реализовать COM IrDA адаптеры.
Как правило наименьшая доступная скорость для устройств составляет именно 9600 бит/с и именно она используется для передачи сигналов поиска, оповещения и сопряжения.

MIR (Medium Infrared) — поддерживает скорости передачи данных 0.576 Мбит/с и 1.152 Мбит/с.
Хотя MIR и не является официальным термином IrDA, однако то, что схема кодирования, используемая для этих скоростей, отлична как от SIR так и от FIR, делает этот термин довольно удобным и распространённым.

FIR (Fast Infrared) — устаревший термин спецификации IrDA, ранее использовавшийся для обозначения устройств, поддерживающих скорость передачи данных от 9600 бит/с до 4 Мбит/с, что включает в себя и SIR и MIR.
В наше время, как правило, термин FIR используется для обозначения собственно скорости 4 Мбит/с.
Некоторые источники используют термин FIR для обозначения всех скоростей, превышающих SIR.

VFIR (Very Fast Infrared) — термин использующийся для обозначения поддержки скоростей передачи вплоть до 16 Мбит/с.
Хотя детали спецификации все ещё находятся в состоянии разработки, на данный момент, 16 Мбит/с это самая высокая скорость передачи данных по IrDA, поддерживаемая серийными устройствами.
Например, инфракрасный передатчик TFDU8108 поддерживает все скорости передачи данных от 9.6 кбит/с до 16 Мбит/с.

UFIR (Ultra Fast Infrared) — находится в состоянии разработки, ожидается поддержка скорости вплоть до 100 Мбит/с.

IrLAP (Infrared Link Access Protocol) — обязательный протокол второго уровня, располагается поверх IrPHY, соответствует канальному уровню сетевой модели OSI.
IrLAP отвечает за:
  • Контроль доступа.
  • Поиск расположенных вблизи устройств.
  • Установление и поддержку двунаправленного соединения.
  • Распределение первичной и вторичной ролей среди устройств.

IrLAP делит все сообщающиеся устройства на одно Первичное и остальные (одно и более) вторичные. Первичное устройство контролирует все Вторичные и может передавать им данные без «разрешения». Вторичное устройство может отправлять данные только по запросу с Первичного.

IrLMP (Infrared Link Management Protocol) — обязательный протокол третьего уровня. Соответствует сетевому уровню сетевой модели OSI.
Состоит из двух подуровней — LM-MUX (Link Management Multiplexer) и LM-IAS (Link Management Information Access Service).
LM-MUX отвечает за:
  • разделение потока данных на различные каналы связи.
  • смену Первичных/Вторичных устройств.
    LM-IAS отвечает за:
  • публикацию списка доступных сервисов.
  • доступ клиентских устройств к опубликованным сервисам.

    IrCOMM (Infrared Communications Protocol) — протокол позволяет использовать ИК-соединение в качестве последовательного или параллельного порта (COM).

    Tiny TP (Tiny Transport Protocol) — протокол, основанный на базе IrLMP. Позволяет передавать большие массивы данных и управлять потоком данных, расставляя приоритеты каждому логическому каналу.

    IrOBEX (Infrared Object Exchange) — протокол, основанный на базе Tiny TP. Обеспечивает возможность обмена произвольными объектами данных: контактами, событиями календаря и даже исполняемыми приложениями.

    IrLAN (Infrared Local Area Network) — протокол, позволяющий подключиться к LAN-сети через IrDA-соединение одним из трёх способов: как точка доступа, одноранговая связь peer-to-peer, или в качестве хоста.

    IrSimple

    IrFM (Infrared Financial Messaging) — протокол, позволяющий проводить денежные транзакции между двумя устройствами. Находится в стадии разработки.

    Достоинства IrDA

  • не вреден для здоровья в отличии от радиоканала
  • не требует проводов
  • нечувствителен к электромагнитным помехам
  • в отличие от радиосвязи, не требует лицензирования в инспекции электросвязи

    Недостатки IrDA

  • высокая стоимость приемников и передатчиков
  • необходимость нахождения приемника и передатчика в прямой видимости

    Литература:

  • http://ru.wikipedia.org/wiki/Infrared_Data_Association
  • http://ru.wikipedia.org/wiki/Инфракрасный_канал
  • http://www.ixbt.com/peripheral/irda.html
  • → 11:33 MSK. Среда, 04 декабря 2024 г.
        Нашли ошибку? Сообщите вэбмастеру: wеbmаstеr@qrv.su.
    ◊  О проекте QRV.SU.
     Условия использования материалов сайта.
    © При перепечатке материалов ссылка обязательна.
    ® qrv.ru : 2005 — 2006
    ® qrv.su : 2008 — 2024
        Построено на mini.aCMS™.
    radionet
    web-ring: электроника, электронные компоненты и приборы Электроника, электронные компоненты и приборы Случайный Предыдущий Следующий Яндекс цитирования Коллективная радиостанция RK6LZQ радиоклуб Элита Каменск-Шахтинский Коллективная радиостанция RK6LWL радиоклуб Возрождение г. Донецк
    free counters