Пультостроение

Dimanoss
Offline
Зарегистрирован: 29.05.2016

День добрый,

есть задумка - функционально скопировать ИК-пульт.  Основные непонятки пока что с диодами.  Вопросов, собственно, два:

1.  В копируемом пульте стоит два ИК-диода.  Внешне - идентичных (пульт, к сожалению, неразборный). Это чтобы сигнал был "погуще", или всё же они что-то разное передают?  Железяка недорогая, поэтому сомнения берут в какой-то чрезмерной заумности разработчиков; в камеру, вроде, тоже синхронно моргают...

2.  Какие диоды с точки зрения практика наиболее универсальны?

Спасибо!

Tomasina
Tomasina аватар
Offline
Зарегистрирован: 09.03.2013

пульт обучаемый? Тогда два диода понятно  зачем - один передатчик, другой приемник.

Либо два стоят для расширения диаграммы направленности, но тогда они длолжны быть немного под углом относительно друг друга.

Dimanoss
Offline
Зарегистрирован: 29.05.2016

Нет, пульт не обучаемый.  Более того, он функционально прост - 8 кнопок.

a5021
Offline
Зарегистрирован: 07.07.2013

Теоретически, могли два поставить, чтобы мощность увеличить.

Dimanoss
Offline
Зарегистрирован: 29.05.2016

Пытаюсь считать IRremote коды клавиш пульта.  Пара других пультов, хоть и не всегда, считываются нормально.  Кодировка копируемого же пульта не определяется; RAW-значения плавают туда-сюда.  Это ошибка, или же всё в пределах допусков?

Received unknown code, saving as raw
 m2850 s700 m600 s3000 m600 s3000 m600 s2950 m650 s2950 m2900 s700 m2900 s700 m650
Received unknown code, saving as raw
 m2800 s700 m650 s2950 m600 s3000 m600 s3000 m600 s2950 m2900 s700 m2900 s700 m650
Received unknown code, saving as raw
 m2800 s700 m650 s2950 m600 s3000 m600 s2950 m650 s2950 m2900 s700 m2900 s700 m650
Received unknown code, saving as raw
 m2850 s700 m650 s2950 m600 s3000 m600 s3000 m600 s3000 m2850 s750 m2850 s700 m650
Received unknown code, saving as raw
 m2750 s750 m600 s3000 m600 s3000 m550 s3000 m650 s2950 m2900 s700 m2900 s700 m600
Received unknown code, saving as raw
 m2750 s750 m600 s3000 m600 s2950 m650 s2950 m650 s2950 m2900 s700 m2850 s750 m600
Received unknown code, saving as raw
 m2800 s750 m600 s2950 m650 s2950 m650 s2950 m600 s3000 m2900 s700 m2900 s700 m600

Что может быть?  Менял напряжение (3.3v - 5v) - не лечится.  Не угадал с частотой?

Logik
Offline
Зарегистрирован: 05.08.2014

Угадали. Во всех строках принято одинаковое. Чего решили что "RAW-значения плавают туда-сюда". Все стабильно две длительности 3000 и 600. Кодировка просто не известная. Но если Вам просто клонировать  не зачем знать название кодировки. Просто воспроизведите такой же сигнал.

Dimanoss
Offline
Зарегистрирован: 29.05.2016

ну, как.... вот первое значение: то m2850, то m2800, а то - m2750.... и это всё - одна и та же (зажатая) кнопка.... Или те самые "две длительности 3000 и 600" взять: там вместо 3000 и 2950 вылазит, и 2900, а вместо 600 - и 550, и 650.... Я не ставлю задачей кодировку распознать, но ведь приёмнику посылать-то что-то одно надо?

Logik
Offline
Зарегистрирован: 05.08.2014

Перфекционизм - болезнь;)

100%*(3000-2750)/3000=8%

Вам погрешность 0% хочется?

Округляете до 3000 и 600. Заменяете интервалы m3000s600 условно на "0" а m600s3000 на "1". Эти двоичные данные и  будут кодировать команду. Ну и отдельно длину сохраните.  При выводе побитно разбираете данные встретили "0" зажигаете свктодиод на 3000мксек и паузу на 600, для "1" - наоборот. 

 

 

 

Dimanoss
Offline
Зарегистрирован: 29.05.2016

О! Спасибо! А я собирался пакетами данные пересылать! :-)