Это старая версия документа.


system

Добавляет возможность выполнения платформенно-зависимых операций.

Данный модуль требует включения в задачу.

plugin.system:
  enable: on

  module.sys:
    enable: on

    gpio:
      gpi.0: 2563/1
      gpi.1: 2565/5
      gpi.2: 2565/4
      gpi.3: 2560/1

      gpo.0: 2563/6
      gpo.1: 2562/5
      gpo.2: 2567/0
      gpo.3: 2567/1

    shutdown:
      tag:     gpi.0
      value:   1
      delay_s: 300
gpio - карта портов ввода/вывода в формате: tagname: ioport/bit
tagname - имя создаваемого тега
ioport - номер аппаратного порта, см. описание gpio в мануале на оборудование
bit - номер бита, от 0 до 7
shutdown - параметры отключения системы по событию

shutdown

tag - отслеживаемый тег для определения наступления события
value 1 необходимое значение тега для определения наступления события
delay_s 60 задержка отключения после наступления события
cmd.linux shutdown -h now системная команда отключения для linux
cmd.windows shutdown.exe -s -t 0 системная команда отключения для windows

copy

id - Имя действия (опционально)
src - Имя тега-источника в формате ссылки
dst - Имя тега-приемника в формате ссылки
delay_s 0 Задержка копирования с секундах. Значение источника после изменения копируется в приемник только, если значение источника не вернулось в прежнее состояние в течение времени задержки
delay_ms 0 Задержка копирования в миллисекундах

calc

id - Имя действия (опционально)
expr - Арифметическое выражение (см. calc выражения)
result - Имя тег результата вычисления. Тип тега double.
<arg1> - Имя тега-аргумента в формате ссылки. Количество аргументов может быть любым
<argN>
delay_s 0 Задержка копирования значения в тег результата. Изменившееся вычисленное значение копируется в тег результата только, если вычисленное значение не вернулось в прежнее состояние в течение времени задержки
delay_ms 0 Та же задержка в миллисекундах

java

java
id - Имя действия (обязательный параметр)
class - Имя класса скрипта
<arg1> - Аргументы для передачи значений в скрипт. Количество аргументов может быть любым
<argN>

Скрипт - это java класс, наследуемый от класса с интерфейсом ScriptJavaApi.java. Для написания скрипта требуется перекрыть методы load и execute. Файл исходного кода состоит только из методов и полей. Заголовок класса, пакета, импорт пакетов и прочее указывать не нужно (Пример скрипта java).

В целях ограничения области действия скрипта текст исходного кода не может содержать слово promauto.

Файлы исходного кода скриптов помещаются в каталог java.src. Один файл может содержать один класс. Файлы могут находится во вложенных подкаталогах, при этом имя подкаталога(ов) включается в имя класса через точку. Например, subdir1.subdir2.MyScript.

После создания или изменения скрипта при загрузке системы происходит компиляция, и если успешно, то каталог java.bin будет содержать байткод скрипта и хеш-файл. Если во время компиляции возникла ошибка, то в этом же каталоге можно будет найти сформированный полный исходный код класса, и используя сообщение об ошибке компилятора, проанализировать код и найти ошибку.

Ссылка на тег

Ссылки на тег могут быть записаны двумя способами:

  1. modname:tagname - имя любого модуля проекта и его тег
  2. tagname - имя своего тега (данного модуля)
doc/jroboplc/modules/system.1458626076.txt.gz · Последние изменения: 2016/03/22 08:54 — denis
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0