Управление
компьютером с пульта!
1. Сборка ИК приемника.
Руководоство для чайников :)
Как
всегда, всё очень просто! =) Статью писал в расчете на
человека, не знакомого с электроникой :) Так что те, кто в
этом разбирается, часть информации может просто
пропустить.
Вся
идея состоит из двух частей: во-первых, понадобится
инфракрасный приемник (покупной или самодельный), который
будет получать сигнал от пульта (пульт совершенно любой:
подойдет от телевизора, видеомафона, музыкального центра и
т.п.) и передавать его в COM-порт компьютера, а во-вторых,
программное обеспечение, которое будет этот сигнал
обрабатывать: распознавать и выполнять согласно каждому
сигналу какие=то действие (ну, например, запускать песенку в
winamp'e, менять громкость и т.д.). Ну и, естественно, нужен
какой-нибудь ИК пульт.
Итак,
разберемся с приемником. Я не советую использовать покупной по
двум причинам: он не рассчитан на работу с пультом,
работает всего на 1-2 метра, и отклонять пульт от прямо
направления на приемник можно не больше, чем на 20-30
градусов. Вторая причина - это цена, такой приемник будет
стоить 20$ и больше.
Для сравнения - приемник, который
спаял я сам, работает на 10 метров, а больше просто невозможно
проверить - уже мешаются стены комнат =) Поворачивать же пульт
с таким приемником можно как угодно! Я даже пробовал встать с
пультом в угол комнаты, повернувшись спиной к приемнику, и всё
работало! При чем сигнал разпознавался без единой ошибки!
Стоимость же всех деталей не превышает 2$!
Надеюсь,
убедил не полениться и спаять самодельный ИК приемник
:)
Если так, то приступим. Вот, собственно, схемка
приемника:
Как я и
говорил, всё проще некуда :) Используется всего 2 резистора (5
кОм и 10 кОм), 1 конденсатор (10 мФ, обязательно электролитический!), 1 диод (совершенно
любой, т.к. токи в схеме очень маленькие) и сам приемник (на
схеме обозначен IR).
Автор статьи рекомендовал ИК
приемник TSOP1836, хотя подходят и аналоги от других
производителей: IS1U60L, GP1U52X, SFH506-36 или TK1833. Я же
нашел на Митинском рынке TSOP1736 - тоже прекрасно работает.
Выглядят эти приемники примерно так:
О
стоимости деталей: я купил в декабре 2002го приемник
за 35 р., все остальные четыре детали по одному рублю :) Итого
40 рублей. Неплохо, да? :)
Можно потратиться еще на 5
рублей и купить COM-порт, маму, т.е. с "дырочками", а не
"штырьками" (не проводки же будем в компьютер втыкать :), а
можно и разобрать старую ненужную мышь, только нужно найти
такую, у которой порт разбирается (иначе не припаяем к нему
провода). Вариант с мышью также решает и проблему проводов =),
но, думаю, уж 2 метра провода найти не составит труда (в
крайнем случае можно купить всё на том же Митинском, или еще
где...)
Ура!
Деталями закупились... (или отпаяли из плеера друга, гы гы
=)
Это шутка, конечно же :), не дело разорять рабочие
устройства из-за деталек, всё равно придется ехать за ИК
приемником - его вряд ли где-то найдешь (хотя и его можно из
телевизора выпаять :))
Приступим к сборке
схемы.
Скорей всего резисторы у вас будут с "полосками",
т.е. вместо надписей, на какое они сопротивление рассчитаны,
будут цветные полоски поперек резистора - это код их
сопротивления. Бывают резисторы с 4 и 5 полосками. Первые
встречаются чаще. Вычислить сопротивление резистора по
цветному коду можно по схеме (последняя полоска означает
точность):
С резиторами определились. Может еще возникнуть проблема с диодом - какой стороной припаять (если на нем явно не нарисован "треугольничек"). Чаще всего "плюс" ("треугольник" на схеме) соответствует толстой полоске на диоде.
Ну,
будем надеяться, схема собрана. Как ее теперь приделать
к COM-порту... Когда я покупал порт, то мне попался с
пронумерованными дырочками. Если и у вас такой - то
повезло. Если нет, то справа нарисовано, как
располагаются контакты на разъеме: |
На схеме
контакты, к которым надо припаивать, тоже пронумерованы (1 -
DCD, 7 - RTS, 5 - GND, земля). Совмещаем проводок с циферкой
на схеме с циферкой на COM-порте, припаиваем - и вуаля! Всё
практически уже готово.
Если кого-то интересует, что
означают эти циферки, то вот разводка
COM-порта:
N | Обозначение | Направление | Сигнал |
---|---|---|---|
1 |
DCD |
Вход | Data Carrier Detect |
2 | RxD | Выход | Transmit Data |
3 | TxD | Вход | Receive Data |
4 | DTR | Выход | Data Terminal Ready |
5 | GND | - | Ground |
6 | DSR | Вход | Data Set Ready |
7 | RTS | Выход | Request To Send |
8 | CTS | Вход | Clear To Send |
9 | RI | Вход | Ring Indicator |
Опять же, кому интересно, питание схемы берется с 7 го контакта COM-порта (а вы думали , она по воздуху питается от ближайшей электростанции? :)), ну и минус идет на "землю" - 5ый контакт.
Ну вот. Приемник собран, c чем всех и поздравляю! =) Пора приступать к настройке программ.
2. Установка программного обеспечения
Я
нашел единственная программу, нормально работающую с
самопальным пультом :) Это WinLIRC.
Скачать его можно у
меня. Я бы не сказал, что
настроить это прогу очень легко, но и не сложно. Думаю,
разберется каждый (но если нет, то спрашивайте - попробую
помочь :). Главное - проверить, работает ли хотя бы ваш
приемник! Для этого нужно зайти в окошко конфигурации
приемника, выбрать "DCD device", COM1 или COM2 - смотря к
какому порту вы его подключили, и скорость поставить 1200 или
2400. Затем надо нажать на "Raw Codes" и потыкать кнопки на
пульте.
Если в окошке появляются разные циферки - то значит
всё нормально =)
Небольшая проблема заключается в том,
что эта программа работает только как распознаватель. Чтобы по
распознанным сигналам выполнялись какие-то действия, нужно
поставить вторую программу, которая будет подключаться к
WinLIRC'у.
В
интернете довольно много таких программ. К сожалению,
большинство из них платные. Назову несколько: uICE, PC
Remote, Girder.
Меня, всё же, не устроила ни одна из
программ. У каждой нашлись какие-то недостатки.
Поэтому я
написал свою программку, которая умеет работать с WinLIRC'ом -
HyperIR.
Настраивать ее очень легко. Достаточно скопировать два файла -
HyperIR.exe и HyperIR.ini - в папку WinLIRC'а, и запустить
HyperIR.exe (WinLIRC при этом должен быть выключен, программа
запустит его сама!).
Программа умеет:
После запуска программы достаточно правильно настроить
WinLIRC, точнее, назвать кнопки нужным образом, т.е. присвоить
им названия, которые понимает моя программа.
Итак,
список команд, воспринимаемые моей программой (через черту " /
" будут даваться различные действия программы в зависимости от
режима аудио- или видеоплеера):
Название кнопки |
Выполняемое программой
действие |
PLAY |
начать проигрывание |
STOP |
остановить проигрывание
|
PAUSE |
пауза |
REW |
предыдущий трек /
видеофайл |
FWD |
следующий трек /
видеофайл |
B1 |
переключиться в режим Winamp |
B2 |
переключиться в режим Media
Player |
B3 |
переключиться в режим BS Player и Light
Alloy |
VOL_UP |
увеличить громкость на 1% |
VOL_DOWN |
уменьшить громкость на 1 % |
VOL_UP_BIG |
увеличить громкость на 10% |
VOL_DOWN_BIG |
уменьшить громкость на 10 % |
MUTE |
включить/выключить звук |
CLOSE |
закрыть текущее (активное)
окно |
SHOW |
показать/скрыть winamp / fullscreen в
видеоплеере |
MONITOR |
вкл./выкл. монитор |
TRACK_UP |
вперед на 5 сек / прокрутка
вперед |
TRACK_DOWN |
назад на 5 сек / прокрутка
назад |
TIME | показать на экране время и дату |
POWEROFF | выключить компьютер |
OSD | вкл./выкл. показ текста на экране |
Итак, снова, уже вкратце, что нужно сделать (если вы решили использовать мою программу):
Всё!
Теперь, если приемник, который вы спаяли (или купили ;)
рабочий, то ваш компьютер должен начать весело откликаться на
манипуляции с пультом! =) Можно смело запускать свой плеер и
отправляться на ближайший (в радиусе 10ти метров ;-) диван
смотреть фильмы.
Желаю
удачи!