Вы запустили SCAWARADAwebconsole.
(если нет, смотрите, как это сделать )
[Общее описание] >>[Создание проекта]
Общее описание
SCAWARADA - кроссплатформенное ПО (Windows, Linux, MacOS) состоящее из двух программ
Среда разработки SCAWARADAwebconsole - инструментарий разработки проекта, позволяющий создать проект с описанием задач для среды исполнения.
Среда исполнения SCAWARADAruntime - выполняет задачи, описанные в проекте.
Описание SCAWARADA
Задачи
Каждая задача представляет собой класс с типизированным набором функций выполняемый в отдельном потоке. Приложение запускает столько параллельных потоков, сколько задач использовано в проекте. Управление каждой задачей (запуск цикла выполнения) и отслеживание состояния задачи (завершение цикла выполнения, наличие ошибок) осуществляется с помощью системных тегов.
Фоновые задачи
Коллектор тегов. Коллектор хранит в оперативной памяти список всех тегов и их значений, предоставляет доступ к актуальным значениям тегов для всех остальных задач.
Хранилище данных. Хранилище предоставляет средства записи и хранения данных для задач «Аварии» и «Тренд» в базе данных или в файлах. А так же, выгрузки данных из БД для выдачи пользователю с помощью задачи «Веб публикации». Поддерживаемые хранилища данных:
файлы формата csv
БД MySQL / Maria DB
БД PostgreSQL
Веб сервер. Задача «Веб сервер» представляет собой веб сервер, осуществляющий публикацию веб файлов проекта и загрузку(get) / изменение(post) значений тегов для файлов html. Задача поддерживает аутентификацию пользователей (логин-пароль) и ограничение прав на доступ к веб страницам в соответствие с уровнем доступа группы пользователя.
Telegram бот. Задача представляет собой бота, осуществляющего отправку аварийных сообщений сформированных задачами «Аварии», а также получение команд и формирование ответов на команды с помощью java скрипта.
Email клиент. Почтовый клиент, осуществляющий рассылку электронных писем с сообщениями, сформированными задачами «Аварии».
SMS клиент. Задача осуществляет рассылку через GSM модем SMS сообщений сформированных задачами «Аварии».
Пользовательские задачи
Таймер. Запускает выполнение последующих задач через заданные промежутки времени.
Часы. Запускает выполнение последующих задач в указанное время.
Изменение тега. Запускает выполнение последующих задач при изменении значения указанного тега.
Аварии. Задача сравнивает значение тега с уставками, формирует сообщения, передаёт сообщения для веб публикации, сохранения в хранилище, отправки оповещения через Telegram, email, SMS. Сообщения формируются при выходе значения тега за уставки (аварийное сообщение) и при возвращении значения тега в границы уставок (сообщение о нормализации).
Сообщения. Задача передаёт произвольные сообщения, созданные пользователем или системой, для веб публикации, сохранения в хранилище, отправки оповещения через Telegram, email, SMS.
Тренд. Задача сохраняет в хранилище значения указанных тегов через заданные промежутки времени и/или при изменении значений тегов на величину больше заданного порога
Скрипт. Java скрипт, позволяющий выполнять различные вычисления и обработку значений тегов.
Файл. Запись и чтение значений тегов и текстовых форм в фаил / из файла.
I/O Обмен данными. Набор задач, осуществляющих коммуникацию со сторонним оборудованием и ПО используя различные протоколы обмена данными. В отличие от других задач, библиотеки задач IO подключаются к приложению по необходимости, в том случае если они используются в проекте.
Перечень задач I/O:
Modbus RTU master
Modbus TCP master
SNMP manager
TxRx обмен данными через последовательный порт
BacNet IP (в разработке)
SOAP client
OPC UA клиент
MQTT клиент
Beckhoff TwinCatADS
OneWire
Теги
Тег является глобальной переменной, обращение к которой может осуществляться из любой задачи, обращение к тегу начинается с символа $ ($tag_name).
Именование тегов. В имени тегов рекомендуется использовать латинские буквы (отсутствует разница между заглавными и прописными буквами, TAG=Tag=tag), цифры и символ «_». Использование пробелов или других символов недопустимо.
Не рекомендуется использовать в начале имени тега текст «System_», этот текст зарезервирован для системных тегов.
Типы тегов bool - булевый,
int -целочисленный 32 разрядный,
real - вещественный с плавающей запятой,
string - строковый.
Размерность тега. Каждый тег может быть скалярным (размерность 1) или массивом (размерность больше 1), обращение к элементу массива - $tag[5].
Системные теги
Теги задач , тип int
System_ИМЯ ЗАДАЧИ_Exec - изменение тега инициирует цикл выполнения задачи,
System_ИМЯ ЗАДАЧИ_Compl - тег изменяется (увеличивается на 1) после завершения цикла выполнения задачи,
System_ИМЯ ЗАДАЧИ_Error - тег содержащий код ошибки задачи.
System_Date string - текущая дата, System_Day int - день,
System_Month int - месяц,
System_Year int - год,
System_Time string - время,
System_Hour int - час,
System_Minute int - минута,
System_Second int - секунда,
System_DayOfWeek int - день недели,
System_Path string - путь к папке выполняемого проекта,
System_UserName string - имя пользователя, вошедшего в веб интерфейс, тег доступен только для html страниц, публикуемых задачей веб публикаций.
© Александр Байков.