Страница 1 из 1

Управление нагрузками с ик пульта

Добавлено: 27.06.2016{, 15:35}
alex555
Добрый день. У меня встала такая задача: управлять нагрузками с помощью пульта. Как подключать приемник, прочитать коды кнлпок, вставить их в блок программы и управлять одиночными кнопками 1, 2, и тд. я разобрался. Но у меня 20 нагрузок и соответственно нужно использовать сочетания кнопок как на телевизионном пульте(чтоб включить к примеру 13 канал нужно сначала включить клавишу 1 и через небольшую задержку клавишу 3 при этом если клавиша 13 не будет нажата включится 1-й канал). Подскажите пожалуйста как это организовать в программе флпрог. Заранее благодарен.

Управление нагрузками с ик пульта

Добавлено: 27.06.2016{, 16:47}
Oleg1345140
Самое просто что приходит в голову это всегда набирать все команды двумя цифрами 01,02,03...... Или использовать таймер и компоратор

Управление нагрузками с ик пульта

Добавлено: 27.06.2016{, 18:28}
slavas
На пультах бывают кнопки +10

Управление нагрузками с ик пульта

Добавлено: 27.06.2016{, 20:41}
Oleg1345140
slavas писал(а):На пультах бывают кнопки +10
Возможно пульт уже имеется или ограничен размер.

Управление нагрузками с ик пульта

Добавлено: 27.06.2016{, 22:07}
alex555
Фото пульта

Управление нагрузками с ик пульта

Добавлено: 27.06.2016{, 22:26}
Oleg1345140
кнопки * или # задействованы?

Управление нагрузками с ик пульта

Добавлено: 27.06.2016{, 23:02}
alex555
Незадействованы

Управление нагрузками с ик пульта

Добавлено: 27.06.2016{, 23:17}
Noname
Отправку команды реализуйте после кнопки "ОК". То есть чтобы включить 13 канал надо нажать "1" ,потом "3" ,потом "ОК". А чтобы 7 канал- "7",потом" ОК".

Управление нагрузками с ик пульта

Добавлено: 28.06.2016{, 09:26}
Oleg1345140
Или использовать */# для добавления десятка (позволит уменьшить число нажимаемых кнопок на 1)

Управление нагрузками с ик пульта

Добавлено: 28.06.2016{, 11:30}
slavas
ну так я об этом сразу сказал.

Управление нагрузками с ик пульта

Добавлено: 28.06.2016{, 12:30}
Олег
Если делать как в телевизоре, то у меня получилась примерно такая конструкция, может и проще можно, но на первый взгляд получается так:


При первом нажптии включается таймер, в течении которого можно нажать вторую кнопку, при каждом нажатии в переменную Номер канала добавится еще одна цифра.
По истечении времени таймера значение переменной Номер канала запишется в переменную Передача номера, вот с этой переменой дальше и работать.
Можно преобразовать в integer и сравнивать компараторами.
Не проверял, просто схематический набросок.

Управление нагрузками с ик пульта

Добавлено: 28.06.2016{, 13:52}
Oleg1345140
можно так, единственное насчет преобразователя из числа в бит не уверен, нужно проверить.


Добавлено (28.06.2016, 13:52)
---------------------------------------------
таймеры тоф 1,5 секунды, тон 1,4 секунды

Управление нагрузками с ик пульта

Добавлено: 28.06.2016{, 13:57}
Oleg1345140
Немного поторопился, вот исправленный

Управление нагрузками с ик пульта

Добавлено: 28.06.2016{, 13:57}
Oleg1345140

Управление нагрузками с ик пульта

Добавлено: 28.06.2016{, 22:24}
hrach
[video][/video]

Добавлено (28.06.2016, 22:24)
---------------------------------------------
Скетч можно скачать здесь.

Управление нагрузками с ик пульта

Добавлено: 30.06.2016{, 01:12}
alex555
Мой вариант наверное самый громоздкий. Там добавлена резервная кнопка(включает все) и сдвиговые регистры 74HC595

Добавлено (30.06.2016, 01:12)
---------------------------------------------
Только в моем варианте нужно подтверждать клавишей "ок"

Управление нагрузками с ик пульта

Добавлено: 30.06.2016{, 05:57}
Oleg1345140
На будущее, может быть полезно у некоторых блоков (в том числе и логические блоки и/или) можно увеличивать число входов что бы не городить лесенку из них

Управление нагрузками с ик пульта

Добавлено: 30.06.2016{, 09:37}
alex555
Спасибо. Теперь буду знать.

Добавлено (30.06.2016, 09:37)
---------------------------------------------
Честно говоря чать "кода" я подсматрел у вас Олег в сообщении на одной из веток форума

Управление нагрузками с ик пульта

Добавлено: 30.06.2016{, 10:04}
Oleg1345140
alex555 писал(а):Честно говоря чать "кода" я подсматрел у вас Олег в сообщении на одной из веток форума
Я и смотрю какие то знакомые переменные ))) рад что пригодилось.