Перейти к содержанию

Навигация

WB-MSx Consumer IR Manual: различия между версиями

Нет описания правки
Строка 191: Строка 191:
->1<-->2<-->3<-->4<-->5<-
->1<-->2<-->3<-->4<-->5<-
  Starting wb-mqtt-serial
  Starting wb-mqtt-serial
</syntaxhighlight>
== Новый способ сохранения ИК-команд из устройств ==
Также появился новый способ сохранения ИК-команд, написанный нашими инженерами.
Архив с файлами скриптов доступен по ссылке: [[Media:Backup-ir-signal_tool.tgz | Backup-ir-signal_tool.tgz]]
=== Подготовка ===
Содержимое архива:
* read_signal.py — скрипт сохранения ИК-команд в файл
* write_signal.py — скрипт записи ИК-команд из файла в регистры датчика
* ir.py — набор инструкций и функций для работы вышеуказанных скриптов, запускается автоматически.
Перед тем, как приступить к чтению и записи команд:
# Зайдите в консоль контроллера по [[SSH]].
# Перейдите в папку <code>/home</code>
# Загрузите скрипт на контроллер и распакуйте его:
#:<syntaxhighlight lang="console">
# wget -qO- https://wirenboard.com/wiki/images/7/7f/Backup-ir-signal_tool.tgz | tar -xvz  -C ./
ir.py
read_signal.py
write_signal.py
</syntaxhighlight>
# Также необходимо остановить сервис [[wb-mqtt-serial]] для получения доступа к устройствам:
#:<syntaxhighlight lang="console">
# systemctl stop wb-mqtt-serial
</syntaxhighlight>
# После окончания работ со скриптами, сервис нужно обратно включить:
#:<syntaxhighlight lang="console">
# systemctl start wb-mqtt-serial
</syntaxhighlight>
=== Немного о механизме работы скрипта ===
* Скрипт чтения автоматически создаст папку <code>/ir_backup</code>, в которую будет сохранять файлы с ИК-командами
* Название файлов с ИК-командами формируется по следующему принципу:
** <code>серийныйНомерУстройства_дата_время.txt</code>, пример - <code>4270625043_11172021_12:01:54.txt</code>
* Во время исполнения скрипта, контроллер издаст звуковой сигнал столько раз, сколько банков устройства было занято ИК-командами. Это касается как скрипта чтения, так и записи.
=== Чтение команд в файл ===
Для чтения ИК-команд используется скрипт <code>read_signal.py</code>.
Формат запуска скрипта:
<syntaxhighlight lang="bash">
python read_signal.py -a [address]
</syntaxhighlight>
Где [address] нужно заменить на желаемый адрес устройства. По умолчанию скрипт использует 2-й порт RS485, при необходимости, это можно изменить добавив к исходной команде ключ:
<syntaxhighlight lang="bash">
--port /dev/ttyRS485-n
</syntaxhighlight>
Где n - номер нужного порта RS485.
Пример команды запуска для устройства с адресом 84, находящемся на 2-м порту RS485:
<syntaxhighlight lang="bash">
python read_signal.py -a 84 --port /dev/ttyRS485-2
</syntaxhighlight>
=== Запись команд из файлов ===
Для записи ИК-команд используется скрипт <code>write_signal.py</code>.
Формат запуска скрипта:
<syntaxhighlight lang="bash">
python write_signal.py -a [address] ir_backup/[filename]
</syntaxhighlight>
Где [address] нужно заменить на желаемый адрес устройства. А [filename] на название файла, полученного при чтении ИК-команд из устройства. По умолчанию скрипт использует 2-й порт RS485, при необходимости, это можно изменить добавив к исходной команде ключ:
<syntaxhighlight lang="bash">
--port /dev/ttyRS485-n
</syntaxhighlight>
Где n - номер нужного порта RS485.
Пример команды запуска для устройства с адресом 84, находящемся на 2-м порту RS485:
<syntaxhighlight lang="bash">
python write_signal.py -a 84 --port /dev/ttyRS485-2 4270625043_11172021_12:01:54.txt
</syntaxhighlight>
</syntaxhighlight>


89

правок