|
|
|
Методика выбора пульта ДУ.
Внимание!!!
В связи с добавлением поддержки Win7 и переходом на HID версию описание проекта
обновляется, и новый вариант описания развивается
ОТДЕЛЬНО - с самостоятельным оформлением
(это этот же сайт, но убрано все лишнее кроме описания HID версии проекта), а не обновленные ссылки
временно свернуты в "пояснения":
»Щелкните по этому тексту, чтобы развернуть пояснения«
AA) Быстрый старт проекта IgorPlug2 -
тут.
A) Прошивки и драйвера -
тут.
Б) Библиотека для стыковки IgorPlug2 и SlyControl -
тут.
В) Программный
Осциллограф
для экспериментов -
тут.
Г) Стандартная реализация IgorPlug2 -
тут.
Д) Управляемое реле на основе IgorPlug2 -
тут.
Е) Технические характеристики ПТК -
тут.
Ж) Методика выбора пульта ДУ для IgorPlug - Эта страница.
З) Виды кодировок ПДУ -
тут.
И) Варианты дизайна печатных плат -
тут.
К) USB Key на основе IgorPlug2 -
тут.
Л) Список часто задаваемых вопросов FAQ -
тут
М) Драйвер для IgorPlug2
доработанный пользователями -
тут.
X) Обратная связь -
тут.
Если требуется пошаговая инструкция...
То прочтите раздел Быстрый старт проекта IgorPlug2.
Эта же страница, но без "воды", вступления и т.д. лежит -
тут.
Рис. 1 Внешний вид универсальных пультов.
Увеличить
Рис. 2 Внешний вид пультов от бытовой техники.
Увеличить
Рис. 3 Внешний вид пультов от бытовой техники2.
Увеличить
Рис. 4 Экзотические пульты.
Увеличить
В этом очерке я попытаюсь немного рассказать о методах выбора наиболее оптимального дистанционного пульта
для управления компьютером.
Первое, на что стоит обратить внимание - пульт должен быть обязательно эргономичным (то есть, очень удобным в
использовании). Если пульт плохо лежит в руке или трудно нажимать пальцами одной руки на крайние верхние
или крайние нижние кнопки, то через некоторое время это начинает раздражать...
После выбора удобного пульта уже можно перейти к вопросам совместимости с аппаратно - программным комплексом,
состоящим из IgorPlug2 на основе
проекта IgorPlug и соответствующего программного обеспечения со стороны компьютера, например
SlyControl:
В первых версиях устройства единственным ограничением аппаратной части является максимальная длина посылки
до 105 бит. (Буфер в 108 байт, но 3 из них служебные). Почему ДО 105 ? Это связано с применением интеллектуального
сжатия - если посылка не требует сжатия, то 105, если требует, то меньше, до 52. У большей части пультов от бытовой
техники посылка более чем в два раза меньше - обычно около от 67 до 97 бит с применением сжатия максимум 2 раза на
посылку.
В более поздних версиях длина посылки ограничена 197 битами. (Буфер в 200 байт, но 3 из них служебные). Почему такая
странная цифры 197 ? Это связано с несовершенством драйвера, у которого максимальная длинна посылки ограничена
200 байтами.
В этом был основной недостаток первоначальной версии IgorPlug с максимальной длиной посылки, ограниченной до 33 бит.
Для сравнения можно указать, что на рисунках 2 и 3 из не универсальных пультов имеют посылку меньше или равную 33 бит
(или 0х21 в шестнадцатиричной системе счисления) только три пульта: TTS35AI - пульт от SS2, PsevdoRC5 - пульт с 4
кнопками от магнитофона Lion и RC5(RC10) - пульт от телевизора.
Причём пульты на фотографиях были выбраны случайным образом. Т.е., я не подбирал их по какому-либо признаку, а просто
попросил у всех своих знакомых и соседей пульты от имеющейся у них бытовой техники - сфотографировать.
Обобщая, можно сказать, что из приведённых 12 не универсальных пультов, прекрасно работающих с
IgorPlug2, но при этом с оригинальным
IgorPlug совместимы только 3 из них, что составляет 1/4 часть. Причём у пультов последних годов выпуска (за исключением
сверх примитивных китайских ноунеймов) длина посылки практически всегда больше 33х бит, что делает их несовместимыми с
оригинальным девайсом IgorPlug.
Привожу данные по длине посылки пультов в шестнадцатиричном виде: TTS35AI-0x13, R28B04_Daeewo-0x17, PsevdoRC5-0x17,
RM_C364-0x23, Kom16-0x25. Далее группа, имеющая 0x43 бита: PX9400, Sams00104M, OP820, LT2040P, LT720, Kreative.
А следующая группа имеет длину посылки длиннее 0x43 бит: R18H43_Daeewo-0x4B, KT2926-0x57, HF0867-0x57.
Все эти данные находятся в одноимённых файлах и идут в архиве с моей программой
Осциллограф
, с помощью которой можно захватить, а потом просмотреть принятые данные.
Рис. 5 Пульт от ноутбука Apple.
Я перебрал более 150 разных пультов от бытовой техники и примерно столько же кодировок в универсальных
пультах. Все проверки производились на доработанном мной проекте
IgorPlug2
на основе проекта IgorPlug, с помощью разработанной мной программы
Осциллограф.
В результате экспериментов выяснилось, что размер посылки превысил 105 бит только в пульте от кондиционера
(у них посылка колеблится от 105 до 167, что заведомо меньше максимально возможного 197).
То есть, аппаратная часть IgorPlug2
в подавляющем большинстве случаев позволяла устойчиво распознавать передаваемый ими сигнал. Но при использовании
оригинального IgorPlug больше чем у 1/2 пультов 5-6 летней давности (или больше чем 3/4 современных пультов) длина посылки
была больше 33 бит, что делала их несовместимыми с оригинальной версией IgorPlug.
На этом весь "длинный" список ограничений аппаратной части и заканчивается, но программная часть (применительно
к оригинальному плагину, входящему в комплект SlyControl) накладывала
свои ограничения.
Уточню: все эти ограничения исправлены в нашей модификации этого плагина. Подробнее об этом можно прочесть
тут.
Рис. 6 Пульт от PCI TV тюнера AverMedia..
Рис. 7 Пульты от PCI TV и USB TV тюнеров AverMedia.
Обученные прошивки под них -
тут.
Ограничения SlyControl с оригинальным плагином:
1) В сигнале от пульта не должно быть длительных пауз (что иногда встречается). Это связано с тем,
что оригинальный плагин к SlyControl написан для старой версии IgorPlug,
у которой измеряемая длительность описывалась одним байтом, в который эта пауза зачастую не вписывалась.
Для частичного решения этой проблемы, в старой версии IgorPlug автор вводил переменный масштаб на первые
7 бит посылки, что не всегда решало проблему. В новых версиях (начиная с 8) моей прошивки реализована псевдо
2х байтовая посылка, что снимает данную проблему, но с оригинальной библиотекой работает только 6 версия.
2) У некоторых пультов номер кнопки идёт в начале посылки, а после идёт маленькая посылка сообщающая,
что кнопка пульта нажата. С использованием оригинальной версии плагина к SlyControl,
нажатие кнопки отловить и однократно выполнить действие не проблема. Проблема заключается в выдаче
повтора действия при нажатии кнопки больше заданного времени.
3) Оригинальный плагин к SlyControl сам распознаёт кодировку и в частности
код RC-5, в котором для распознания повторного нажатия кнопки в начале посылки, 1 бит постоянно меняет
своё значение. В самом плагине нет средств настройки, а если длина посылки очень маленькая и номер
кнопки передаётся в начале посылки, велика вероятность того, что SlyControl
распознает кодировку как RC-5 и просто проигнорирует её значение, захватив только хвостик посылки.
А в настройках оригинального плагина нет возможности отключения данной функции в самом плагине.
В случае наличия универсального пульта, который можно настроить на любую кодировку, немного повозившись,
можно подобрать подходящую для Вас кодировку, в которой задействованы все кнопки пульта. За частую большинство
универсалок менее эргономичны по сравнению с пультами от бытовой техники. Так, что управлять компьютером с помощью
универсальника следует только в том случае, если на универсалке есть переключатель на кодировки от других используемых
видов бытовой техники используемых в одной комнате вместе с компьютером.
Рис. 8 Фото пяти первых обученных пультов.
Обученные прошивки под них -
тут.
Подводя итог - более 97% (по распространённости) пультов от бытовой техники вполне подходят для управления компьютеров
с помощью USB - InfroRed (что к сожалению
нельзя сказать о оригинальном IgorPlug имеющем кучу недостатков) и соответствующего программного обеспечения со стороны
компьютера, например
SlyControl. Но в случае использования программы
SlyControl, для устойчивой работы необходимо установить доработанный
плагин в виде библиотеки. Подробнее об этом можно прочесть
тут.
Ограничения.
Устройство разработано по принципу КАК ЕСТЬ и автор не несёт ответственности за явный (или не явный) ущерб,
причинённый в результате повторения.
То есть все эксперименты вы делаете на свой страх и риск.
Если у вас возникли вопросы и предложения - пишите мне по адресу внизу страницы
Если вы нашли на моём сайте что-либо интересное или полезное для себя и хотите видеть
на этом сайте новые интересные проекты, а также поддержку, доработки существующих проектов,
то все желающие могут поддержать данный проект, частично покрыть оплату хостинга,
затраты на разработку и переделку проектов.
Кошелёк для оплаты накладных расходов на сайт
Z158779319858 в системе WebMoney.
Принимаю только
безвозмездную помощь :)
Все статьи, опубликованные на этом сайте защищены
Частью 4 Гражданского Кодекса Российской Федерации.
Запрещено полное или частичное копирование материалов без согласия их авторов.
Незаконное использование материалов сайта влечет за собой административную ответственность в виде
компенсации в размере от 10.000 рублей до 5.000.000 рублей [Ст.
1301,
1250,
1252,
1253 ГК РФ].
При согласованном использовании материалов сайта обязательна активная ссылка на
www.mindrunway.ru и указание авторства.

|
Copyright© 2007-2012 QuickWitted
|
Почта
grani
СОБАКА
mindrunway
РУ
|
|
|
|
|
|