Это старая версия документа.
Содержание
Общие понятия
Введение
JRoboPLC - консольное java-приложение, позволяющее взаимодействовать внешними устройствами через последовательные порты, ethernet и т.п. и управлять этими устройствами в соответствии с заданной логикой.
При помощи специальных программ, например, Java Service Wrapper, легко превращается в сервис.
JRoboPLC может выполняться на любом оборудовании, имеющем JVM от Oracle или OpenJDK версии 8 и выше.
JRoboPLC может применяется для создания ПЛК, серверов сбора данных, работающих с СУБД, а также использоваться в качестве платформы для создания других приложений.
Для удобства расширения функциональности используются система подключаемых плагинов.
Терминология
Плагин (plugin) - подключаемый jar-файл, хранящийся по умолчанию в jar/plugin
. При запуске jar/core/jroboplc.jar
выполняется проверка доступных к использованию плагинов, загрузка плагинов и создание модулей.
Модуль (module) - основной программный компонент, из которых состоит работающее приложение. Модули создаются на стадии загрузки программы, объединяются в задачи и, после старта системы, выполняют определенную им работу.
Тег (tag) - именованная переменная, содержащееся в модуле, значение в которой может быть считано или изменено другим модулем . Модуль может иметь любое количество тегов, включая нулевое. При помощи тегов модули взаимодействуют как между собой, так и с внешним миром.
Тип тега (tag type) - тип данных значения тега. Поддерживаются следующие типы данных:
bool
- логическийint
- целочисленный, знаковый, размерность 32 битlong
- целочисленный, знаковый, размерность 64 битdouble
- вещественный, знаковый, размерность 64 битstring
- строковый
Флаг тега (tag flag) - обозначает специфическое свойство тега. Каждый тег может иметь любое количество флагов. Поддерживаются следующие флаги тегов:
autosave
- значение тега необходимо сохранятьhidden
- тег не предназначен для показа удаленным клиентамexternal
- тег содержит значение, запрошенное с удаленного сервераstatus
- тег меняет свой статус в зависимости от состояния модуля (good
илиbad
)
Статус тега (tag status) - актуальность значения тега, определяемая состоянием модуля, владеющего тегом. Существуют два типа статуса тега:
good
- значение тега актуальноbad
- значение тега не актуально
Канал (channel) - тег строкового типа, значением которого является имя другого тега. Используется для динамического связывания входов и выходов периферийных модулей с модулями управления.
Адрес (address) - тег, имя которого является значением канала. Адресом может являться любой тег.