Устройства ик связи что это
Инфракрасный порт и работа с ним
Инфракрасный порт и работа с ним
Для чего нужен ИК-порт? Такое устройство позволяет без применения проводов создать устойчивое соединение между компьютером и другими устройствами (оборудованными ИК-портами). Например, это может быть сканер или принтер. Хотя сейчас большинство пользователей приобретает такое устройство для связи настольного компьютера с карманным компьютером или, что бывает значительно чаще, сотовым телефоном. Последние два устройства имеют достаточно примитивную систему ввода и, безусловно, ее расширение увеличивает комфорт работы с информацией. Мобильный телефон стал вполне доступным устройством для большинства пользователей компьютеров. ИК-порт, которым оснащены многие модели телефонов, позволяет редактировать содержимое записной книжки аппарата через обыкновенный компьютер. Можно без особых проблем сменить логотип на дисплее или поставить мелодию вызова. Достаточно интересная функция, которая появляется у владельца мобильного аппарата, это сетевой мониторинг, который даст самую исчерпывающую информацию по сети. Нельзя не сказать о такой услуге практически всех сотовых операторов, как мобильный Интернет. В этом случае, вы можете выходить во Всемирную сеть через ваш мобильный телефон. Другими словами, вы становитесь пользователями Интернет в любой точке, где работает необходимый вам оператор. Это достаточно дорого, но альтернатив решения этой проблемы в некоторых случаях нет. Давайте поподробнее познакомиться с этим замечательным устройством.
Типы ИК-портов (по подключению):
1. | на IrDA-разъем материнской платы, | |
2. | на стандартный 9-пинный разъем COM | |
3. | и на USB. |
Устройства второго и третьего типа являются универсальными. Другими словами, если вы купите такой ИК-приемопередатчик, то он без всяких осложнений встанет на ваш компьютер. Если же вам приглянулся ИК-порт, который подсоединяется к материнскому разъему IrDA, то могут возникнуть проблемы. Внимательно читайте инструкцию и консультируйтесь с продавцом. Например, ИК-порт компании ASUS работает только на материнской плате этого же производителя. Очень удобные ИК-порты делает одна из китайских компаний (на полиэтиленовом пакетике нет названия фирмы изготовителя). Коннектор для подключения к IrDA выполнен по принципу «собери меня сам». С одной стороны, ему явно не хватает механической прочности, и вставить его в разъем материнской платы очень сложно. Но с другой стороны, вы можете с легкостью, не прибегая к помощи паяльника и пинцета, собрать нужный коннектор, тем самым обеспечить необходимую «пинную» совместимость. Такая гибкость решения делает его очень привлекательным для покупки. Хотя качество китайских ИК-портов. Давайте не будем о плохом. В дальнейшем мы поговорим о характеристиках подобных устройств.
Устройства ИК-связи нельзя назвать очень капризными, но все же нужно немного рассказать об условиях их эксплуатации. Прежде всего, стоит знать, что длина волны работы ИК-портов лежит в диапазоне от 850 до 900 нм. Чаще всего это значение равно 880 нм. Так что организовать сильные помехи дело достаточно простое. Начнем с примеров:
Исключите все источники ИК-волн диапазона 850–900 нм из зоны прямой видимости ИК-приемника. Отраженные волны могут принести проблемы, но в меньшей степени. Одним словом, всех помех не предусмотреть, но убрать их причину всегда можно. Рабочее расстояние между двумя ИК-устройствами не должно превышать одного метра. В противном случае система будет работать нестабильно. Диаграмма направленности работы ИК-порта, которая указана в инструкции к нему, мягко говоря, не выдерживает никакой критики. Старайтесь разместить устройства прямо друг напротив друга. Посторонние предметы, помещенные между ИК-портом и рабочим устройством, не будут способствовать лучшей работе. Были случаи, когда сотовый телефон в чехле пытались подключить через ИК-порт к компьютеру. Ничего не получалось, пока не снимали полупрозрачный чехол.
Подключить ИК-порт к персональному компьютеру достаточно просто. Но в любом случае рекомендуется потратить десять минут на внимательное изучение инструкции к устройству. Даже если вы ничего нового не узнаете из нее, во время инсталляции будете чувствовать себя уверенно.
Аппаратная часть
Подключите ИК-порт к разъему COM-порта. Запомните номер COM-порта — это пригодиться вам в дальнейшем. При подключении ИК-порта к IrDA-разъему материнской платы раскрутите корпус вашего системного блока и, ознакомившись с описанием вашей материнской платы, вставьте в нужное гнездо коннектор (четырех-пинная линейка). Первый провод помечен на плате цифрой 1 или указан в описании материнской платы. Первый провод коннектора ИК-порта имеет цветовую метку. Выведите заднюю заглушку на свободное место и можете собирать корпус. Подсоедините коннектор гибкого провода с ИК-приемником/передатчиком к разъему на заглушке. Гнездо и коннектор очень похожи на PS/2-разъем.
Программная часть
Здесь приведено описание настройки программного обеспечения для операционной системы MS Windows 98. Для остальных операционных систем от Microsoft оно аналогичное. Подключать ИК-порт к компьютерам с другими операционными системами возможно, но в описании ИК-порта указано: «Предназначен для работы с операционными системами Windows 95 и выше». Поэкспериментируйте, может быть у вас все получиться.
При установке ИК-порта на COM вас ждет счастливое плавание. В комплекте к устройству идет CD-диск, установить драйвера с которого не составит никаких трудностей. Правильно установите номер порта, к которому подключен ИК-порт. Посмотрите, не занят ли COM-порт другим устройством, например, внутренним модемом. Также проверьте установки BIOS для параллельного порта — он должен быть установлен в режим ECP, а не в Normal или SPP (значение по умолчанию).
При установке внутреннего ИК-порта стоит сделать несколько больше манипуляций руками. Прежде всего, войдите в BIOS и включите второй COM-порт. Как правило, ниже находится опция по включению IrDA. Активизируйте ее. Далее установите полудуплексную связь. Если ваш BIOS содержит другие настройки, то поставьте их в режим «по умолчанию». Будут проблемы — читайте инструкцию и экспериментируйте с настройками. Вреда или физической порчи вашему компьютеру вы не сможете принести.
Загрузите операционную систему. Если вы сделали все правильно, то новое устройство само будет обнаружено системой. Далее вам предложат выбрать тип устройства. Для надежности сделайте это вручную. Выберите «ИК-УСТРОЙСТВА», а затем стандартный тип устройства. Установите виртуальный порт и запомните его номер. Он будет нужен вам для конфигурирования большинства программ. Меню «Свойства: Система» обретет еще один пункт — «Устройства ИК-связи».
Перегрузите машину.
После этого в правом нижнем углу появится значок в виде мигающей лампочки.
Открыв его, вы увидите свойства ИК-связи.
Среди всех настроек стоит выделить только «Режимы». Здесь вы сможете включить ИК-связь и установить время, через которое ИК-порт будет искать ИК-устройства в прямой зоне видимости. Параметр «Ограничение скорости обмена до:» можно отключить.
Теперь, если поместите в зону видимости вашего ИК-порта другое активизированное ИК-устройство, то услышите звук и увидите на экране подобное этому:
Все, ваш ИК-порт полностью настроен, теперь вы можете пользоваться им. Например, переслать картинку с телефона на компьютер. Дальше предлагаем вам посмотреть на самое модное и популярное применение устройства ИК-порт в связке с мобильным телефоном — Мобильный Интернет.
Большинство операторов сотовой сети, работающих в стандарте GSM-900/1800, предлагают такую услугу как «Мобильный Интернет». Что это такое? При помощи сотового телефона, оборудованного ИК-приемником/передатчиком и модемом, вы можете входить во Всемирную паутину и пользоваться ей как при обыкновенном dial-up-соединении. Плюсы подобного входа в сеть очевидны. Прежде всего, вы отвязываете себя от надоевших телефонных проводов и становитесь мобильным (если вы используете ноутбук). Но сеть через мобильник имеет свои минусы. Рекомендуем заранее узнать, во сколько (в денежном эквиваленте) выльется вам такое развлечение. Второй минус заключается в скорости мобильного Интернета. Она составляет 9600 bps и не больше. С введением в эксплуатацию новых технологий эта цифра может скоро увеличиться. Настройка мобильного Интернета не занимает много времени. Вот порядок ваших действий. Убедитесь, что ваш сотовый телефон оборудован ИК-портом и модемом. Включите на мобильнике ИК-порт. После этого поместите его в зону действия подключенного к компьютеру ИК-порта (около 1 м).
Теперь надо настроить работу встроенного в телефон модема. Для это необходимо войти в меню «Настройка», далее «Модем» и вручную установить «стандартный модем 19200» (если у вас есть специальный драйвер для вашего сотового модема, то поставьте его). При инсталляции не забудьте указать правильный виртуальный порт, который был создан при подключении ИК-порта к вашему компьютеру. Все, настройка модема закончена. Перегрузите систему. Для установки соединения нужно создать «Новое соединение» (параметры для него вы можете узнать у вашего сотового оператора). Интернет через сотовый телефон в вашем распоряжении. Мобильный Интернет — это достаточно важное и интересное дополнение к вашему компьютеру.
ИК-связь компьютера с другими устройствами действует на сравнительно небольшом расстоянии. Однако ее возможности широко используются среди мобильной техники. Скорее всего, в ближайшем будущем связь на ИК-лучах уступит свое место более совершенным видам связи (например, Bluetooth — несколько десятков метров). Но пока никто из производителей материнских плат не отказался от IrDA, и вы можете со спокойной душой покупать ИК-порт. Хотя, прежде чем сделать покупку, убедитесь, что ваш телефон и компьютер могут передавать данные в инфракрасном диапазоне. Надеемся, что вы, ознакомившись с этой статьей, без особых проблем сможете выбрать и включить ИК-порт.
Летом 1993 года компания Hewlett-Packard организовала общепромышленное совещание, чтобы обсудить будущее ИК (инфракрасный) передачи данных. Многообразие несовместимых стандартов было печальной реальностью, причинявшей массу неудобств всем от того, что устройства от разных производителей были несовместимы. Телевизоры, видеомагнитофоны, другая бытовая техника с ИК управлением сегодня встречается на «каждом углу», однако в них используются несовместимые физические и программные интерфейсы. Целью совещания было обсуждение путей, которыми промышленность может пойти к общему стандарту, способному совместимость всех устройств, использующих ИК порт. На совещании был сформирован консорциум всех ведущих компаний, названных Ассоциацией инфракрасной передачи данных и вскоре (в июне 1994 года) была объявлена первая одноименная версия стандарта, включающая физический и программный протоколы — IrDA 1.0. Текущая версия — 1.1. В настоящей статье будут описаны основные моменты действующего ныне стандарта.
Итак, протокол IrDA (Infra red Data Assotiation) позволяет соединяться с периферийным оборудованием без кабеля при помощи ИК-излучения с длиной волны 880nm. Порт IrDA позволяет устанавливать связь на коротком расстоянии до 1 метра в режиме точка-точка. IrDA намерено не пытался создавать локальную сеть на основе ИК-излучения, поскольку сетевые интерфейсы очень сложны и требуют большой мощности, а в цели IrDA входили низкое потребление и экономичность. Интерфейс IrDA использует узкий ИК-диапазон (850–900 nm с 880nm «пиком») с малой мощностью потребления, что позволяет создать недорогую аппаратуру и не требует сертификации FCC (Федеральной Комиссии по Связи).
Устройство инфракрасного интерфейса подразделяется на два основных блока: преобразователь (модули приемника-детектора и диода с управляющей электроникой) и кодер-декодер. Блоки обмениваются данными по электрическому интерфейсу, в котором в том же виде транслируются через оптическое соединение, за исключением того, что здесь они пакуются в кадры простого формата — данные передаются 10bit символами, с 8bit данных, одним старт-битом в начале и одним стоп-битом в конце данных.
Сам порт IrDA основан на архитектуре коммуникационного СОМ-порта ПК, который использует универсальный асинхронный приемо-передатчик UART (Universal Asynchronous Receiver Transmitter) и работает со скоростью передачи данных 2400–115200 bps.
Связь в IrDA полудуплексная, т.к. передаваемый ИК-луч неизбежно засвечивает соседний PIN-диодный усилитель приемника. Воздушный промежуток между устройствами позволяет принять ИК-энергию только от одного источника в данный момент.
Рассмотрим физические основы IrDA. Передающую часть. Байт, который требуется передать, посылается в блок UART из CPU командой записи ввода-вывода. UART добавляет старт-стоп биты и передает символ последовательно, начиная с младшего значения бита. Стандарт IrDA требует, чтобы все последовательные биты кодировались таким образом: логический «0» передается одиночным ИК-импульсом длиной от 1.6m s до 3/16 периода передачи битовой ячейки, а логическая «1» передается как отсутствие ИК-импульса. Минимальная мощность потребления гарантируется при фиксированной длине импульса 1.6m s.
По окончании кодирования битов необходимо возбудить один или несколько ИК-светодиодов током соответствующего уровня, чтобы выработать ИК-импульс требуемой интенсивности. Стандарт IrDA требует, чтобы интенсивность излучения в конусе ± 30° была в диапазоне 40–50 m W/Sr, причем ИК-светодиод должен иметь длину волны 880nm, как уже отмечалось ранее. Радиальная чувствительность приемника и длины связи диктуются, исходя из требований самой спецификации IrDA.
Приемная часть. Переданные ИК-импульсы поступают на PIN-диод, преобразующий импульсы света в токовые импульсы, которые усиливаются, фильтруются и сравниваются с пороговым уровнем для преобразования в логические уровни. ИК-импульс в активном состоянии генерирует «0», при отсутствии света генерируется логическая «1». Протокол IrDA требует, чтобы приемник точно улавливал ИК-импульсы мощностью от 4m W/sm 2 до 500mW/sm 2 в угловом диапазоне ± 15°.
Для ИК-излучения cуществует два источника интерференции (помех), основным из которых является солнечный свет, но к счастью в нем преобладает постоянная составляющая. Правильно спроектированные приемники должны компенсировать большие постоянные токи через PIN-диод. Другой источник помех — флуорисцентные лампы — часто применяются для общего освещения. Хорошо спроектированные приемники должны иметь полосовой фильтр для снижения влияния таких источников помех. Вероятность ошибок связи будет зависеть от правильного выбора мощности передатчика и чувствительности приемника. В IrDA выбраны значения, гарантирующие, что описанные выше помехи не будут влиять на качество связи.
Стандарт IrDA включает в себя стек протоколов трех согласованных обязательных уровней: IrPL (Physical Layer), IrLAP (Link Access Protocol) и IrLMP (Link Management Protocol).
Физический уровень (Physical Layer). Спецификация этого протокола устанавливает стандарты для Ir-трансиверов, методов модуляции и схемы кодирования/декодирования, а также ряд физических параметров. Стандарт предусматривает использование длины волны в диапазоне 850–900 nm. Минимальная и максимальная интенсивность передатчика (как уже говорилось) составляет 40–50 m W/Sr соответственно внутри 30° конуса. Для стандарта IrDA (скорость передачи данных 115.2Kbps) схема кодирования аналогична используемой в традиционной UART: бит старта («0») и стоп-бит («1») добавляются перед и после каждого байта соответственно. Но вместо схемы NZR (Non-Return to Zero) используется кодировка, подобная RZ (Return to Zero), т.е. двоичный «0» кодируется единичным импульсом, а «1» — его отсутствием. Кадры отделяются друг от друга байтами Escape-последовательности, содержащимися в теле самого кадра. Для определения ошибок (EDt — Error Detection) используется 16bit циклическая контрольная сумма. Например, уже в стандарте IrDA 1.1 для протокола обмена 1.152Mbps (синхронизация выполняется как в протоколе HDLP — High-level Data Link Protocol высокого уровня) и 4Mbps (использование 4-PPM — Pulse-Phase Modulation) старт-бит и стоп-бит не применяются. Так, фреймы, получаемые от более высокоуровневого протокола IrLAP, вкладываются в поле данных фреймов SIR, согласно используемому методу кодирования. Стандарт не содержит обязательных вариантов реализации этой процедуры и допускает варьирование алгоритмов в зависимости от возможностей конкретного оборудования. В зависимости от скорости соединения предлагаются методы кодирования: асинхронный (ASYNC, 9600–115200 bps), синхронный (HDLC, 0.576–1.152 Mbps) и 4-PPM (4Mbps).
Программный протокол. Он включает в себя: 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 Kbps.
Максимальный квант передачи может быть равен 100, 200 или 500 ms. Он представляет собой максимальное время, в течение которого устройство передает данные до того, как перейдет к прослушиванию подтверждения приема и зависит от скорости передачи, емкости буфера в принимающем устройстве. Минимальная длительность передачи определяется неспособностью передающего устройства перейти к приему данных сразу после выдачи последнего бита. Дело в том, что усилитель PIN-диода в передающем устройстве входит в состояние насыщения от собственной передачи. Время восстановления приемника — переменная величина, составляющая 0.001–10 ms. Этот параметр для данного устройства должен быть заранее известен и учитывается в фазе переговоров об установлении соединения. Процедуры расширенного восстановления включают в себя функцию сброса, которая прерывает связь, но потом восстанавливает активное состояние с параметрами соединения, используемые по умолчанию.
Стандартом предусмотрено два основных состояния: 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, но не все его особенности являются таковыми. Любая станция, не принимающая в данный момент времени участия в обмене, перед тем как начать передачу, должна прослушивать канал не менее 500ms, чтобы убедиться в отсутствии трафика. С другой стороны, станция, участвующая в обмене, должна вести передачу не более 500ms. Доступ к среде передачи регулируется посредством специального бита 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 могут содержать импульс) со скоростью 75Kbps. Однако, при использовании такой схемы кодирования, импульс означает «1», его отсутствие — «0». Частота несущей основного сигнала — 1.5MHz с минимальной дальностью действия 5м. Данные пересылаются в пакетах двух видов: длинные (776bit) и короткие (72bit), структура которых абсолютно идентична за исключением значения стартового флага, а также разрядности контрольной суммы. Так, протокол MAC (Media Access Control) регламентирует процессы взаимодействия множественной периферии с единственным основным устройством (Host) и обмена информацией между ними.
Существует три режима работы ведущего устройства: сон (с низким энергопотреблением), нормальный и сосуществование с IrDA (поддержка IrDA SIR 1.1 и IrControl). Если от периферии долгое время не поступает никаких данных, то Host автоматически переходит в состояние сна, причем само периферийное устройство в случае необходимости может самостоятельно перевести его в нормальный режим работы. Host получает данные путем циклического опроса периферии (Poll) с периодом 13.8m s, в ходе которого обслуживается до четырех устройств с критическим временем латентности (для менее требовательной периферии гарантируется период опроса в 69m s). Формат 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 bit.
Практически, сегодня уже нет мало-мальски уважающей компании, которая бы не производила компоненты для ИК портов. Например, компания Crystal Semiconductor выпускает микросхему ИК приемопередатчика серии CS8130. Этот прибор является интерфейсом между блоком UART, излучающим светодиодом и светочувствительным PIN-диодом. Он работает в форматах IrDA, ASK и TV формате беспроводного управления, имеет функции программирования мощности передачи и порога срабатывания приемника. Микросхема выполнена в корпусе типа SSOP очень малого размера (5х7 mm).
В качестве примера «интеграции» можно рассмотреть интерфейс IrDA, добавленного на материнскую плату обычного ПК (в связи со сложностью схемы она не прилагается). Блок UART, имеющийся на плате, можно использовать как для того, чтобы управлять проводным СОМ-портом интерфейса RS-232, используя, например, преобразователь напряжения МАХ562, так и для управления ИК-портом, соответствующим стандарту IrDA, используя трансивер CS8130. Внешний вывод PWRDN# микросхемы CS8130 используется для перевода в третье состояние линий RXD и FORM/BSY, что позволит использовать UART. И наоборот, с помощью выводов EN и SHDN# можно перевести в третье состояние выходы R2OUT и R3OUT микросхемы МАХ562, передавая управление UART трансиверу CS8130. В качестве второго примера можно привести схему (также не прилагается) внешнего модуля, который можно подключить к имеющемуся СОМ-порту любого компьютера. Этот модуль очень компактен и расположен в конце метрового кабеля, свободно ориентируемого в пространстве. Более подробно с конкретными реализациями интерфейса IrDA можно в документах, указанных в «списке дополнительных источников»…