IR канал управления широко распространён в AV аппаратуре для эмуляции команд пересылаемых с ручных IR пультов управления. Компания Global Cache — это одна из компаний выпускающих оборудование для работы с IR каналом:
- IR излучатели (Emmiter)
- IR приёмники
- IR контроллеры
- IR сканеры
- и др.
Подробнее можно ознакомиться на сайте http://www.globalcache.ru/catalogue/
Передача IR команды:
Для передачи можно использовать IR контроллер Global Cache семейства GC‑100 или iTach.
Контроллер LogicMachine соединяется с ними через Ethernet или WiFi подключение (есть модели и c портом RS‑232).
Global Cache iTach IP2IR | Global Cache iTach WF2IR |
Ниже представлен код для LogicMachine (например, событийный) для передачи команды:
local socket = require("socket")
local tcp = assert(socket.tcp())
-- IP adress контроллера GlobalCache и номер порта контроллера
-- GlobalCache, по умолчанию: 4998
tcp:connect('IP_adress', port);
-- строка для передачи команды контроллеру GlobalCache
tcp:send(GC_Command);
-- команда для получения ответа от контроллера GlobalCache
tcp:receive()
tcp:close()
Формат строки GC_Command (без пробелов!):
Command,Modul:NumDev,Id,Freq,Repeat,Оffset,P0,..,Pn^
Command | Команда для исполнения контроллером Global Cache. Для передачи IR посылки Command = sendir. Полный перечень см. в документации Global Cache. |
Modul | Модуль, содержащий соответствующий IR порт. Смотреть в документации конкретного устройства Global Cache. (для iTach = 1). |
NumDev | Номер порта в модуле, начиная с 1. Смотреть в документации конкретного устройства Global Cache. |
Id | Идентификационный код команды, представляет собой число от 0 до 65535. Используется при ответе устройства по завершению отработки данной команды. |
Freq | Несущая частота IR канала, представляет собой число от 20000 до 500000 Гц. |
Repeat | Количество повторений отправления сообщения, представляет собой число от 0 до 31. При 0 — повторение 65535 раз или до соответствующей команды для отмены отправления. Смотреть в документации конкретного устройства Global Cache. |
Offset | Период повторения передачи заголовка сообщения в последовательных сообщениях (при Repeat не равным 1), представляет собой число от 1 до 255. |
P0,..,Pn | Последовательность строк разделённых запятыми, определяющая последовательность импульсов в IR сообщении (команде). |
^ | Символ завершения командной строки для контролера: 0D (Hex). |
Устройства не содержат буфера команд. Если порт модуля занят исполнением текущей команды, то новые посланные команды будут пропущены, за исключением команд отмены. | |
IP адрес устройства Global Cache можно найти с помощью вспомогательной программы iHelp (Discovery Utility). Смотреть в документации Global Cache. |
Пример:
DevIR05CmdH="sendir,1:1,1,37650,1,1,"; -- неизменная часть простой IR команды
tcp:send(DevIR05CmdH ..
"341,171,21,21,21,21,21,64,21,21,21,21,21,21,21,21,21,21,21,64,21,64,21,21,21,
64,21,64,21,64,21,64,21,64,21,64,21,21,21,21,21,21,21,64,21,21,21,21,21,21,21,21,21,64,
21,64,21,64,21,21,21,64,21,64,21,64,21,1520,342,85,21,3765\r");
-- "\r" это "0D" (Hex) в LogicMachine.
Определение IR команды.
Последовательность P0,..,Pn может быть получена
- из базы данных IR команд Global Cache на сайте www.globalcache.com .
- сканированием IR команд, полученных от пульта управления устройством.
Для сканирования Вам потребуется:
- Сканер IR команд, например: Global Cache iTach IP IP2IR
(в устройствах серии iTach объединены сканер и IR порты). - Программа сканирования Global Cache iLearn
(http://www.globalcache.com/files/software/iLearn.exe)
Инструкции по установке и использованию программы Вы можете найти на Site Global Cache www.globalcache.com . - Персональный компьютер с возможностью связи с устройством
(для работы программы iLearn и связи со сканером)
Сканирование команд:
1. Настройте подключение устройства Global Cache к сети.
2. Запустите программу iLearn и установите связь. Окно программы iLearn:
3. После приёма посылки с IR пульта в окне «Edit View» появится строка, представляющая собой команду для отправки считанной последовательности через IR порт устройства. Формат строки соответствует строке управления, описанной в разделе «Передача IR команды».
4. Скопируйте строку и отредактируйте нужные поля (не забывайте, что пробелы и прочие разделители внутри строки не допускаются).