Помогите советом.
Решил сделать самодельный ИК-приемник для ДУ компом.
Чаще всего в сети встречается схема:
Пошел купил ФПУ TSOP1736 (36кгц), в принципе стабилизатор 78L05 должен был найтись, вернее его аналог, КРЕН5. Но он оказался временно недоступен и в качестве эксперимента собрал схему без стабилизатора:
Но... схема абсолютно не заработала. Никакой реакции от нее не дождались ни Girderm, ни SlyControl ни IRLink. Мне кажется что конденсатор должен был обеспечить сглаживание необходимое хотя бы для минимальной работоспособности схемы. Пусть не стабильно, пусть с ошибками, пусть с малого расстояния, но схема мне кажется должна была работать. Однако схема не давала никакого отклика. Меня это настораживает...
В этом собственно и вопрос, возможно ли что без стабилизатора схема вообще не работает?
Завтра я думаю у меня все-таки будет стабилизатор и я его поставлю, но сомнения уже закрались...
И еще один вопрос в догонку. Можно ли при использовании данной схемы подключить несколько ФПУ на длинных экранированных проводах, и как их лучше подключить. (Чтобы пульт работал во всех комнатах).
Если нет, то какую схему для этого порекомендуете.
newARTix
Ну там напряжение идёт 11 В. А КРЕН5 делает из него 5 В. Не знаю, как ваш приёмник отнёсся к такому питанию. Померяйте напряжение, которое там получилось.
Неплохо бы осциллографом посмотреть, идут ли импульсы с выхода ФПУ. И проверить правильность распайки.
Несколько приёмников в принципе можно, но надо убедиться, что потянет питание.
Было и такое подозрение Хотя я забыл сказать, что сначала я пробовал подавать питание с БП компа. Те стандартные 5В которые идут на девайсы. Тоже ноль эмоций. Хотя... в общем завтра с КРЕНом посмотрю. Не думаю что приемник как-то мог пострадать, все-таки токи наверно не те...
1.gif неправильная. Скорее всего поджарил приемник.
pult_shem.jpg - правильная. Только я делал без КРЕН. Ставить КРЕН большая роскошь - хватает резистора и стабилитрона.
А скажите, почему большинство не рассматривает вариант использования "нормального" питания от БП компа? Конечно кроме тех соображений что не нужно лезть в сам комп.
Я вот думаю сделать примерно так:
Подцепиться к DCD COM2 (взять с разъема на мат.плате так как на заднюю панель он не выведен), взять 12В и GND с БП.
Вывести это все на заднюю панель компа, сделать планку с двумя-тремя джеками со следующими контактами в каждом джеке: GND, 12V, DCD. И к ним подключать ФПУ через стабилитрон или КРЕН. То есть стабилитрон и кондер будут стоять в кабеле непосредственно около ФПУ, таким образом устранив падение полезного напряжения на самом кабеле и дав возможность его сделать большой длины. Хотя конечно длина попрежнему будет ограничена уровнем сигнала самого ФПУ и наводками от аппаратуры.
Как вы думаете, будет выигрышь?
Кабель экранированный.
Длина кабеля должна быть не меньше 10М. А количество одновременно подключенных к порту ФПУ не меньше 3.
+ COM1 на задней панели остается свободен, и он мне пригодится
зачем? Приемнику надо 5. Можешь 5 взять с дежурного и сможешь включать дистанционно комп. Одновремено включенных - видимо придется логику ИЛИ ставить .
добавлено спустя 5 мин.
newARTix :
Хотя конечно длина попрежнему будет ограничена уровнем сигнала самого ФПУ и наводками от аппаратуры.
Собственно RS232 предназначен как раз для пердачи на большие расстояния без наводок. Кабель должен быть - витая пара.
И схема другая - "правильная" должны быть уровни +/-12(хватит и +/-7). Или как есть правильная или
12В из тех соображений что пока 5В "пройдет" по 10метровому кабелю, там уже будет не 5В, а значительно меньше. (Во всяком случае так некоторые пишут, сам не проверял... надо проверить, может и правда не стоит).
А насчет включать-выключать. Это для меня не актуально. Комп всегда включен.
newARTix
А теперь представьте, что вы запитали приёмник от БП компа и кто-то нечаянно коротнул провода - БП выключится и комп тоже. Как-то это не очень правильно.
Падение напряжения на проводах зависит от проводов и нагрузки. Если сопротивление нагрузки намного превышает сопротивление проводов, то падением можно пренебречь.
Vlafy, также легко представить что кто-нибудь разгрыз сетевой шнур компа или любой другой техники, и во всей квартире погас свет Хотя за предостережение спасибо, будем максимально от этого защищаться.
(На вскидку, я посмотрел по даташиту , в рабочем режиме входное сопротивление ФПУ по питанию не меньше 3кОм, т.е. сопротивление проводов вообще не влияет. Для защиты от КЗ можно в панельку перед джек-гнездом поставить мелкомощный резистор ом на 100. Пусть горит. На БП тогда нагрузка будет 50мА. Думаю переживет. Если слишком много будет отбирать резистор, то можно расмотреть вариант с 12В и стабилитроном у ФПУ.)
В общем собрал схему:
С ней уверенно работают два паралельно подключенных приемника на шнурах по 5М. Без стабилитронов и КРЕНов, прямо от БП.
(В предыдущей попытке я сделал ошибку с резистором между питанием и выходом ФПУ. По привычке кинул его не на питание, а на землю...)
При выборе софта остановился на Girder, версия 3.2, насколько я понимаю последняя бесплатная версия. В принципе и она способна на многое. Кто-нибудь пользуется платными версиями? Для ДУ там что-нибудь принципиально новое есть? Всякие доп.интерфейсы меня не интересуют.
Есть пара вопросов по эксплуатации этой версии. В поиске подходящей темы не нашел, неужели настройку Girder тут не обсуждают?
В частности.
1) Так и не понял как организовать OSD Menu. Или может я что-то не то под ним понимаю? Мне нужно чтобы по нажатию кнопки появлялось меню, по ее повторному нажатию переключался пункт и после остановки на определенном пункте выполнялась определенная команда или мультигруппа.
2) Как посылать нажатие клавиши клавиатуры текущему активному окну. Да и вообще как-то коряво работает там посыл нажатий, 50% программ отказываются их принимать. Хоть Альтернативно, хоть нет.
3) Конкретно по WinAmp 5.х. ИМХО идеальный способ управлять им это захват и эмуляция Команд. Работает как часы и полная свобода от хот-кеев и таргетинга. Управляю и проигрыванием и перемещением по плэйлисту. Однако вот окном MediaLibrary что-то никак... в частности справа в дереве задач там есть пункт Playlists. Когда по нему щелкаешь появляется списко доступных плейлистов. Вот мне и хотелось бы как-то перемещаться по этому списку и активировать нужный плэйлист. То есть три команды:
-Вверх по списку
-Вниз по списку
-Запуск выбранного плейлиста
Также Girder'ом управляю Fly2000 2.38rc и Media Player Classic.
Попытки приручить iTunes 6 не увенчались успехом. Ни команд у него нет. Ни хот-кеев на нужные функции. Он и мышью-то управляется с трудом... в общем мутная прога. На сайте разработчиков лежит группа для управления им, но насколько я понял для ее работы нужен какой-то доп. софт, типа WinLIRC.
Хочу еще приручить ACDSee 3.2 но не берусь пока не выясню все скрытые возможности Girder, эта прога все-таки посложнее плееров будет...
да, еще вопрос
4) Как изменить приоритет Girder? По умолчанию он имеет Наивысший и любая прога подзаикивается когда он выполняет команды, приходится ставить ему нормальный и тогда уже можно жить. Как сделать чтобы он сразу запускалься с Нормальным приоритетом?
SlyControl обладает исключительно не дружественным интерфейсом. По нему мне не удалось найти ни одного более-менее нормального мануала. А без них я так и не смог понять принципа работы его парсера. Хотя знаком с языками программирования не по наслышке. Помоему Girder обеспечивает тоже самое что делает SlyControl. Только в слае для описания алгоритмов используется скрипт-парсер, а в гирдере дерево событий-команд. То есть по принципу организации они идентичны. Но у гирдера гораздо более дружественный интерфейс.
newARTix
Это может быть и так. Я по SlyControl тоже ничего не читал, но разобрался довольно быстро, когда было надо. Нет ничего невозможного, главное - верить в свои силы
Там есть много готовых скриптов, можно в них поковыряться.
Slycontrol уже умеет скрипты на многие программы. Хотя им не пользуюсь. Стоит Winlirc сервер,IrEX, (рекомендую - Winamp размером с экран монтора/ТВ), Light Alloy умеет работать с Winlirc.
Очевидно это дело вкуса. (Хотя также очевидно что чтобы начать работать со Слаем нужно сначала все понять, а уж потом делать. А для того чтобы начать работать с Гирдером понимать все совсем не обязательно, процес изучения программы идет параллельно процессу осознания того что мне от нее нужно, и это есть хорошо.)
WinAmp'ом и без плагинов управляюсь на ТВ-экране вполне успешно. DoubleSize основного окна + шрифт плейлиста побольше и вуаля.
Может быть плагин умеет переключать заранее подготовленные плейлисты, максимум тремя кнопками? Это было бы полезно.
Видео смотрю только и это любовь навсегда. По крайней мере как кажется сейчас
Также управляю Fly2000. Тоже полный функционал.
Одна проблема, никак не могу разобраться с OSD меню... это значительно упростило бы навигацию по всем медиа-возможностям компа, однако уже начинаю что-то нащупывать.
Кстати, почитал тут ветку в одном форуме... и оказалось что Наивысший Приоритет для программ работающих с COM-DCD приемниками принципиален, иначе может ниче не работать... так как функция декодирования ИК сигнала лежит на программе и если она вовремя не успеет это сделать в реальном времени, нажатие будет пропущено. Решение - ИК приемник на микроконтроллере. На нем можно и функцию включения компа нормально реализовать (а не от любой кнопки любого ДУ). Однако стока там нужно обвязок... плата... программатор... программа... жесткое программирование каждой кнопки пульта в микроконтроллере... проще купить.
newARTix
Наивысший приоритет - штука опасная, можно комп повесить.
Сделать обработчик команд на микроконтроллере - несложно. Я бы даже сказал, просто. Есть готовые контролеры с USB интерфейсом, обвязка минимальна, жёсткое программирование клавиш -не обязательно, можно ведь в софте всё конфигурить и сливать в контроллер при включении. С подобным контроллером мы на работе уже больше года забавляемся
Купить готовый пульт проще, согласен
Я бы даже сказал НАМНОГО проще, сейчас вот пытаюсь пользоваться IRlink и в общем то, я бы сказал, пока неплохо. Делов то всего - любой пульт, микроконтроллер на УСБ и грамотная программа управления. Если действительно понравится - напечатаю на пульт наклейку с обозначениями понятными и привычными мне и может обзор напишу .
Недостаток - программное детектирование сигнала.
А на програмное детектирование требуется режим работы real-time. То есть если вы запустите какую-то другую программу требующую того же режима (видео захват и т.п.) то вам придется выбирать между этой программой и ДУ. Вместе они врядли смогут работать.
Подробнее:
То есть, то ФПУ которое стоит в этой схеме занимается ТОЛЬКО демодулирование оптического сигнала. То есть превращает его из оптического в электрический и подает на порт.
Процессор в свою очередь по команде программы (каждый такт) обращается к порт и выясняет, есть сигнал на порте или нет. Если есть, считает длительность импульса. Если нет - считает длительность паузы. Каждая кнопка на пульте есть последовательность нескольких десятков испульсов и пауз, которые процессор должен просчитать за доли секунды.
Причем этот подсчет является для него первоочередной задачей, если он отвлекется на что-то другое (прослушивание музыки, просмотр видео) то может пропустить момент начала сигнала, посчитать неправильную длительность и тем самым неправильно принять кнопку ДУ.
Это практически незаметно на мощных системах (и то на моем 2.5ГГц одновременно "хватать" и управлять не получается) и очень заметно на системах "предпоследнего" поколения. То есть это отрицательно сказывается на многозадачности.
Микроконтроллер полностью снимает этот вопрос. Он принимает импульсы и паузы с применика (процессор компа при этом свободен), считает их и передает в порт уже готовый код кнопки. Процессору остается только передать это код программе, которая никуда не торопится и выполнит свои функции когда процессор освободится от первоочередных задач.
Многозадачность сохраняется.
newARTix
Ну, всё-таки процессор не занимается измерением "импульсов и пауз". Это делает контроллер порта, который помещает считанный байт в буфер. Программа должна только вовремя считать эти данные, чтобы они не заместились более новыми.
Vlafy
Ну может и так, хотя суть проблемы от этого не меняется.
mmm32
Вы имеете ввиду приемник от тюнера? Там уже стоит микроконтроллер в котором "жестко" прошиты клавиши пульта тюнера. Это его единственный недостаток. С таким приемником вы не сможете использовать другие пульты, только тот что шел с тюнером.
mmm32
Приёмник от ТВ-тюнера самый обычный, разница лишь в том, что сам чип ТВ-тюнера выполняет приём и декодировку команд. Программа считывает значения из чипа с помощью определённых запросов к драйверу (это может быть сделано по-разному). Для чипов bt878 есть программы, которые с помощью своего драйвера считывают значение команды от ДУ прямо из регистра чипа.
Vlafy
Программы считывают значения из регистра независимо от того, какие это командя (с пульта тюнера или любого другого)?
А для других чипов такие программы существуют?
mmm32
Чипы в тюнерах заточены под работу со своими пультами ДУ. От других они не будут понимать команды или будут понимать их не так (хотя могут быть исключения).
Для других чипов есть, например, SlyControl.
Тут по поводу ДУ часто темы возникают. И о настройке софта для работы с самодельными приёмниками тоже.