Lua скрипты
Описание
Предназначение
Использование lua скриптов позволяет:
- создавать произвольную логику для целей автоматизации
- самостоятельно писать протоколы обмена с устройствами
Размещение скриптов
Lua скрипты могут быть встроенными в ПО ТМИУС (ТМ-сервер) и добавленными пользователями.
На роутерах iRZ R2 встроенные скрипты располагаются в папках
/usr/share/tm_cpps/luascript
Скрипты пользователя располагаются по пути
/opt/storage/files/tm_cpps/luauser/
В Windows версии скрипты располагаются в каталогах корневой папки ТМ-сервера
\luascript \luauser
Логика работы lua-скрипта
Описание и и примеры работы lua скриптов описана в файлах ниже:
TmsREADME.lua - краткая справка описания работы LUA скриптов
TmsParsToDB.lua - скрипт сохраняет сигналы (числа) и Rawdata (строки) в БД sqlite
TmsParsToJson.lua - cкрипт сохраняет сигналы (числа) и Rawdata (строки) в файл формата json
Порядок работы с Lua скриптами
Создание
WinSCP
- Разместить пустой или готовый Lua скрипт в папке пользовательских скриптов, добавить скрипту права 666
Веб-интерфейс
- В разделе передачи добавить папку для более удобной организации работы со скриптами
- Добавить во вновь созданной папке "lua источник", указать имя источника.
- На lua источнике нажать ПКМ (правой кнопкой мыши) и выбрать Редактор lua. Произвести редактирование файла и сохранить под необходимым наименованием.
- Добавить в папку lua скрипт и выбрать в имени источника вновь созданный файл в качестве источника указать "имя источника" из п.3
Редактирование
WinSCP
- Отредактировать текст в текстовом редакторе, перезапустить ТМ-сервер из консоли или через Веб-интерфейс.
Веб-интерфейс
- На lua источнике нажать ПКМ (правой кнопкой мыши) и выбрать Редактор lua
- Произвести необходимые правки, нажать Сохранить, нажать Применить.
Отладка
Веб-интерфейс
- В поле конфигурирования lua скрипта Выбрать Лог → Да, Лог-уровень → выбрать необходимый. Применить конфигурацию.
- На lua скрипте нажать ПКМ (правой кнопкой мыши) и выбрать Смотреть лог файл
Примеры реализаций протоколов на базе Lua
Протокол | Описание | Файл | |
---|---|---|---|
Modbus RTU | Прием данных по протоколу Modbus RTU | Conf.xml | |
СЭТ4 | Счетчики СЭТ4 | Conf.xml | |
Протокол Энергомера, Нева (IEC 61107) | Универсальный протокол для счетчиков Энергомера, Нева и многих других | Conf.xml | |
SNMP (клиент) | Возможность отправки данных по протоколу SNMP | lua, conf.xml | |
GPS (координаты) | Считывание координат через gpspipe (RL22w) | conf.xml |