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

ПО iRidi SCADA-BMS - Fast start

Приветствие

В данном пособии мы создадим пробный проект для демонстрации простоты работы в системе iRidi SCADA-BMS.

Проработка всех тем настоящей документации и изучение основ конфигурирования iRidi SCADA-BMS займет не более 6-8 часов. В пособии представлена полная последовательность шагов на различных этапах конфигурирования системы.

SCADA-система - ключевой компонент экосистемы автоматизации зданий iRidi. Он позволяет свести все данные здания в единое информационное пространство, обрабатывать эти данные, сохранять в базу данных и представлять пользователям системы в различном виде.

В пробном проекте мы создадим и визуализируем систему управление вентиляцией.

Создавая свой первый проект мы:

  • создадим SCADA-проект и настроим его;

  • подключим и настроим драйвер Modbus;

  • создадим и настроим SCADA-теги;

  • создадим клиентский SCADA-проект и настроим несколько элементов;

  • создадим систему аварийных сообщений;

  • создадим графические элементы, позволяющие информировать пользователя об авариях;

  • настроим передачу аварийных сообщений в Telegram-бота;

  • настроим группы пользователей и настроим доступ к графическим элементам и тегам;

  • настроим базу данных и вывод графиков значений тегов на экран;

  • настроим правила и расписания.

Перед началом работы Вам необходимо: - Скачать и установить со страницы «Загрузки» установочный setup iRidi SCADA-BMS: ссылка.

  • Установить симулятор оборудования Modbus на ПК:

  • Скачать симулятор оборудования Modbus.

  • Проверить, что он запускается. Если нет, установить недостающие пакеты Microsoft Visual C++ из этой папки (требуется установка и x64 и x86, вне зависимости от того, какая система у вас).
  • Зарегистрировать симулятор: откройте окно About MOD_RSsim и нажмите на кнопку «Register», в поле registration name ввести «Completely Free», а в поле registration key «66840713».

  • Скачать, установить и настроить базу данных PostgreSQL pgAdmin4. Рекомендации по установке представлены здесь.

  • Создать Telegram-бота с помощью https://telegram.me/BotFather:

  • Перейти в диалог с инструментом для разработки чатов — https://telegram.me/BotFather.

  • Нажать кнопку «Start» или ввести в диалоге команду /start.

  • Ввести команду /newbot, чтобы создать новый бот.

  • Указать название — как будет отображаться чат в списке контактов.

  • Задать системное имя - это то, что будет ником после знака @. Оно должно заканчиваться на «bot». Вот так, например:

TetrisBot или tetris_bot.

  • Название может быть любым, не страшно, если оно будет дублировать уже существующие. Но системное имя обязательно должно быть уникальным. Если имя уже занято, вы увидите подсказку: «Sorry, this username is already taken. Please try something different».

  • После успешного создания Вы получите токен. Его необходимо сохранить, он понадобится для дальнейшей интеграции. Если вы закрыли окно и нужно снова найти токен, напишите в диалоге команду /token.

  • Перейти по ссылке в бот и нажать Старт.

  • С помощью специального бота (например, Get My ID) узнать свой ID. Для этого необходимо зайти в бот и нажать Запустить. Вам придет ID, который будет нужен при настройке проекта SCADA сервера.

1. Создание проекта

1.1. Создание проекта First_Project

Задание: создать SCADA проект с именем “First_Project”, который будет использоваться, как сервер для обработки данных.

Последовательность действий:

  • Запустить iRidium Studio.
  • При запуске iRidium Studio создать новый проекта можно один из следующих способов:

● Нажать кнопку Создать SCADA проект на стартовой

  • В появившемся окне задать имя проекту - “First_Project”, тип проекта SCADA.

  • После ввода имени и подтверждения создания, в рабочей области будут открыты вкладки SCADA проекта:

1.2. Настройка проекта First_Project

Задание: настроить SCADA проект “First_Project” для дальнейше работы.

Последовательность действий:

  • Открыть окно настроек SCADA-проекта можно открыть одним из следующих способов:

  • Нажать на иконку "шестеренка" в панели управления iRidium

    Studio.

  • Вызвать контекстное меню кликом правой клавиши мыши по вкладке открытого SCADA проекта и выбрать пункт

    “Настройки”.

  • Настроить сервер.

  • Внести данные:

    ○ Уровень лога - Debug;

    ○ Локализация - Ru;

    ○ Широта, долгота необходимы для работы астротаймера, можно оставить без изменений;

    ○ Часовой пояс - (UTC+05) Yekaterinburg;

    ○ IP-адрес сервера - 127.0.0.1 или IP-адрес компьютера;

    ○ Логин и пароль - логин и пароль пользователя, под аккаунтом которого будет производиться загрузка проекта на сервер. Для нашего учебного проекта эту настройку мы сделаем при работе с авторизациями;

    ○ PIN - защита от случайного перетирания проекта. PIN для доступа к загрузке проекта на сервер. Для нашего учебного проекта эту настройку мы сделаем при работе с авторизациями.

  • Настроить базу данных.

  • Внести данные:

○ Имя базы данных - PostgreSQL, порт - 5432;

○ Хост - 127.0.0.1 или IP-адрес компьютера, на котором находится база данных;

○ Пользователь, Пароль, Имя БД - необходимо внести данный, которые Вы указали при настройке базы данных (см.раздел“Приветствие”).

  • Нажать на кнопку “Проверить соединение”. При успешной проверке подключения рядом с кнопкой появится сообщение об установлении соединения с базой данных.

В случае неудачи при проверке соединения рядом с кнопкой возникнет соответствующее сообщение. Проверьте все настройки базы данных еще раз.

  • Настроить чат в Telegram:
  • Внести токен Вашего Telegram-бота;
  • Задать частоту опроса - 5 секунд;
  • Добавить чат, куда нужно будет отправлять сообщение об аварии

○ Имя чата даете любое (самостоятельно);

○ ID чата - это ID Вашего Telegram или ID группы, куда необходимо присылать сообщения (в это случае созданный Telegram-бот должен быть добавлен в общую группу).

  • Настроить журнал аварий.

  • Настроить стратегию очистки записей в журнале аварий “Очистка при квитировании”.

  • Приоритеты системных событий не изменять.

2. Добавление и настройка драйвера

2.1. Добавление драйвера

Задание: добавить драйвер Modbus TCP Network.

Последовательность действий:

  • В SCADA проекте перейти на вкладку “Устройства”.

  • Нажать на иконку “+” для добавления нового устройства.

  • Выбрать из списка драйвер Modbus TCP Network.

  • Драйвер будет добавлен в раздел “Устройства”.

2.2. Настройка драйвера

Задание: необходимо настроить драйвер Modbus TCP Network.

Для справки:

Свойства драйвера:

  • LogLevel - уровень логирования драйвера;

  • Host - IP-адрес оборудования;

  • Port - порт подключения;

  • WaitforData(мс) - ответ от драйвера. После заданного времени делает переподключение драйвера;

  • KeepAlive(мс) - интервал проверки TCP соединения. Вслучае отсутствия ответа на запрос Keep Alive, драйвер будет принудительно переведён в состояние отключен;

  • Updatetime(мс) - периодичность опроса контроллера для обновления данных о его состоянии;

  • CoilWriteFunction - отправка отдельного пакета на запись каждого регистра (Single - запись одного регистра флагов, Multiple - запись нескольких регистров флагов);

  • Holding Write Function - режим отправки команды для выходных регистров (Single - запись одного регистра, Multiple - запись нескольких регистров);

  • Single Poll - при включении параметра происходит формирование отдельного пакета для опроса каждого канала подустройства;

  • Send Wait Time (мс) - пауза между попытками опроса подустройства. Количество попыток указывается в подустройстве в поле "Number of attempts".

Последовательность действий:

  • В свойства драйвера внести следующие данные:

  • Host - 127.0.0.1 или IP-адрес компьютера;

  • Coil Write Function - изменить на Single;
  • Holding Write Function - изменить на Single.

  • Остальные параметры оставляем без изменений.

2.3. Добавление команд и фидбеков драйвера

Задание: добавить в драйвер Modbus TCP Network следующие команды и фидбеки:

  • VentilationOnOff (команду и фидбек) - команда и фидбек на включение и выключение вентиляционной установки, значение 0 - вентилятор выключен, 1 - вентилятор включен: type: Holding Register; address: 0.

  • VentilationMode (команду и фидбек) - команда и фидбек управления режимом работы вентиляции, 0 - режим работы с нагревом воздуха, 1 - режим работы без нагрева воздуха): Type: Holding Register; address: 1.

  • VentilationSpeed (команду и фидбек) - команда и фидбек управления скоростью вентиляции, 1 - 50% от максимальной скорости, 2 - 75% от максимальной скорости, 3 - 100% от максимальной скорости: type: Holding Register; address: 2.

  • VentilationTemperature (команду и фидбек) - команда и фидбек управления уставки по температуре: type: Holding Register; address: 3.

  • VentilationTemperatureD1 (фидбек) - температура уличного воздуха:

  • type: Input Register; address: 0.

  • VentilationTemperatureD2 (фидбек) - температура приточного воздуха:

  • type: Input Register; address: 1.

  • VentilationTemperatureD3 (фидбек) - температура поверхности нагревателя: type: Input Register; address: 2.

Внимание: так как мы делаем проект без реального оборудования, то адреса команд и фидбеков были выбраны по порядку. При работе с реальным оборудованием, адреса каналов и фидбеков/список регистров можно посмотреть в технической документации на оборудование, с которым Вам предстоит работать.

Для справки:

Для настройки команд и фидбеков необходимо установить значение следующих полей:

  • Name - имя тега;

  • Description - краткое описание тега;

  • Type - регистр хранения, доступный на чтение и запись. iRidium поддерживает следующие регистры и функции:

  • CoilRegister (0x05,0x0F,0x01)-регистры флагов,один бит, чтение и запись;

  • HoldingRegister (0x06,0x10,0x03) - регистры хранения, 16-битное слово, чтение и запись;

  • DiscretInputs (0x02) - дискретные входы, один бит, только чтение;

  • InputRegister (0x04) - регистры ввода, 16-битное слово, только чтение;

  • Address - адрес регистра в десятичном формате;

  • Tags - название,предназначенное для поиска тега или группы тегов в проекте через поисковую строку;

  • Описание - общее описание команды или фидбека.

Последовательность действий:

  • Добавить подустройство Custom в драйвер. Добавить подустройство можно через контекстное меню драйвера или через иконку “+” на панели “Устройства”.

После добавления появится подустройство Custom и в нем две папки Commands и Feedbacks.

  • Добавить в драйвер команду VentilationOnOff.

Встать на папке Commands и через контекстное меню выбрать “Добавить команду”;

Настроить свойство команды:

  • Name - VentilationOnOff;

○ Тип - Holding Register; Address - 0.

  • Добавить в драйвер фидбек VentilationOnOff:

Встать на папке Feedback и через контекстное меню выбрать “Добавить фидбек”;

Настроить свойство команды:

  • Name - VentilationOnOff;

○ Тип - Holding Register; Address - 0.

  • Добавить остальные команды и фидбеки согласно заданию (описание команд и фидбеков находиться в описании задания).

  • Настроить параметры команд и фидбеков, согласно заданию (описание команд и фидбеков находиться в описании задания).

3. Создание и настройка SCADA тегов

Тег - это канал ввода/вывода (реальный физический или виртуальный), содержащий какое-то значение. Например:

  • значение температуры, полученные с датчика температуры;

  • режим работы установки;

  • состояние реле;

  • мощность, потребляемая нагревателем;

  • управляющий сигнал (для изменения состояния коммутатора) и т.д.

В теге хранится значение, которое получено от прибора или сформировано скриптом.Тег может быть сохранен в базе данных или его значение может быть отправлено в Telegram-чат. Значения тега может использоваться для контроля аварийных ситуаций.

Количество тегов, которое может быть использовано в проекте, зависит от типа лицензии.

3.1. Создание SCADA тегов (1 вариант)

Задание: добавить SCADA теги в проект, связать их с командами и фидбеками драйвера Modbus TCP Network.

Последовательность действий:

  • Создать новую папку для тегов. Для создания папки нужно нажать на иконку “Папка” на вкладке SCADA теги.

  • Переименовать папку в “Вентиляция” в ее свойствах.

  • При помощи drag-and-drop перенести команду и фидбек VentilationOnOff в папку “Вентиляция” в SCADA теги.
    Сначала перенесите команду VentilationOnOff в папку “Вентиляция”, затем фидбек VentilationOnOff перетащить на команду.

  • Повторите эти действия для команд и фидбеков VentilationMode, VentilationSpeed, VentilationTemperature.

  • Перенесите фидбеки VentilationTemperatureD1, VentilationTemperatureD2, VentilationTemperatureD3 также в папку “Вентиляция”.

3.2. Создание SCADA тегов (2 вариант)

Задание: добавить SCADA теги в проект, связать их с командами и фидбеками драйвера Modbus TCP Network.

Последовательность действий:

  • Создать новую папку для тегов. Для создания папки нужно нажать на иконку “Папка” на вкладке SCADA теги.

  • Переименовать папку в “Вентиляция” в ее свойствах.

  • В контекстном меню папки “Вентиляция” выбрать “Добавить тег”.

  • В свойствах тега необходимо изменить:

  • Имя тега - VentilationOnOff;

  • Считать из - задать фидбек VentilationOnOff;

  • Записать в - задать команду VentilationOnOff.

  • Создайте теги VentilationMode, VentilationSpeed, VentilationTemperature и свяжите их с соответствующими командами и фидбеками драйвера.

  • Создать теги VentilationTemperatureD1, VentilationTemperatureD2, VentilationTemperatureD3 и связать их соответствующими фидбеками.

3.3. Настройка SCADA тегов

Задание: настроить SCADA теги в проекте:

  • тип данных (VentilationOnOff - Boolean, остальным тегам - Signed int);

  • начальное значение (VentilationSpeed - 1, VentilationTemperature - 22, остальным тегам - 0); ● Зоны тегов - 2 этаж.

Для справки:

У тега можно настроить его свойства:

  • Имя - отображаемое имя тега;

  • Активность:

  • True - тег опрашивается;

  • False - тег не опрашивается;

  • Описание - описание тега;

  • Считать из - КОС драйвера (чтение из драйвера);

  • Записать в - КУ драйвера (запись в драйвер);

  • Тип данных - тип данных тега;

Boolean

Unsignedchar

Signedchar

Unsignedshort

Signedshort

Unsignedint

Unsignedlong

Signedint

Signedlong

Float32bit Float64bit String.

  • Начальное значение - значение тега при запуске сервера;

  • Запись в БД - Стратегия записи в базу данных:

Нет - запись в базу данных не ведётся;

По времени - запись в базу данных через фиксированный интервал;

Интервал - временной интервал записи в базу данных;

Зона чувствительности - запись в базу данных по изменению значения тега;

Значение - значение, на которое должен измениться тег для записи в БД;

  • Другое

  • Зоны - зона, к которой относиться тег. Зона может быть физической/реальной (например: “Подвал”, “Бойлер”,“Система вентиляции”), так и абстрактной (например:“Зона1”). Для того чтобы добавить новую зону, нажимаем на кнопку справа в строке “Зона”, в появившемся окне переносим нужные зоны вправо. Для добавления новой зоны нажимаем на “+” на панели инструментов. Можно выбрать несколько зон.

  • Доступ - разрешение/запрет чтения и записи тега для определённых ролей пользователей (Администратор может читать и записывать все теги).

Последовательность действий:

  • Настроить следующие параметры тегов:

  • для тега VentilationOnOff тип данных - Boolean, начальное значение - False, зоны - 2 этаж;

Для того чтобы добавить новую зону, нажимаем на кнопку справа в строке “Зона”, в появившемся окне нажимаем на “+” на панели инструментов и создаем новую зону - “2 этаж”. Переносим зону вправо.

  • для тега VentilationMode тип данных - Signed int, начальное значение - 0, зоны - 2 этаж;

  • для тега VentilationSpeed тип данных - Signed int, начальное значение - 1, зоны - 2 этаж;

  • для тега VentilationTemperature тип данных - Signed int, начальное значение - 22, зоны - 2 этаж;

  • для тега VentilationTemperatureD1 тип данных - Signed int, начальное значение - 0, зоны - 2 этаж;

  • для тега VentilationTemperatureD2 тип данных - Signed int, начальное значение - 0, зоны - 2 этаж;

  • для тега VentilationTemperatureD3 тип данных - Signed int, начальное значение - 0, зоны - 2 этаж.

  • Сохранить проект.

3.4. Запуск SCADA сервера

Задание: запустить SCADA сервер.

Последовательность действий:

  • Нажать на кнопку “Эмулятор”.

4. Создание и настройка SCADA-клиента

4.1. Создание SCADA клиента (1 вариант)

Задание: создать проект SCADA клиента.

Последовательность действий:

  • Скачать готовый панельный проект по ссылке.

  • Открыть проект.

  • В разделе устройства нажать на “+” и добавить устройство - iRidi SCADA Server.

  • В свойствах проекте настроить Host - 127.0.0.1 (или IP-адрес Вашего компьютера), Source Project - First_Project.irscada.

  • Синхронизировать проект SCADA клиента и SCADA сервера. Для того чтобы проекты синхронизировались они должны находиться в одной папке или быть одновременно открыты в IRidium Studio.

После синхронизации в проекте появятся каналы и фидбеки из SCADA сервера.

  • При необходимости настройте размер интерфейса в настройках проекта.

  • При необходимости измените настройки запуска проекта.

4.2. Создание SCADA клиента (2 вариант)

Задание: создание проекта SCADA клиента.

Последовательность действий:

  • В контекстном меню SCADA проекта выбрать “Создать панельный проект”.

  • В появившемся окне ввести:

  • название проекта - First_PanelProject;

  • тип - Panel SCADA (встает автоматические);

  • тип устройства и его габаритные размеры; имя страница и ее ориентацию.

  • Во вновь созданном проекте в устройствах появится iRidi SCADA Server со всеми тегами и токенами.

  • Скачать готовый проект SCADA клиента по ссылке.

  • Открыть проект и скопировать в проект First_PanelProject страницу с нарисованной графикой.

  • При необходимости измените настройки запуска проекта.

  • Сохранить панельный проект.

4.3. Связь элементов интерфейса с драйвером для управления оборудованием

Задание: настроить связи элементов интерфейса со SCADA-тегами для управления системой вентиляции.

Все элементы в SCADA-клиенте уже настроены, необходимо создать связь элементов интерфейса с соответствующими командами и фидбеками.

Последовательность действий:

  • При помощи drag-and-drop перенести фидбек VentilationTemperatureD1 в значение элемент Label.

  • Повторить то же самое для фидбеков VentilationTemperatureD2, VentilationTemperatureD3.

  • При помощи drag-and-drop перенести команду VentilationOnOff на кнопку “Состояние установки (Вкл/Выкл)”.

Программирование элемента:

  • При помощи drag-and-drop перенести команду и фидбек

VentilationTemperature на кнопки уменьшения и увеличения уставки по температуре, а также на элемент Label в свойство текст, отображающий заданную температуру.

Программирование элементов:

В VentilationSpeed на кнопки уменьшения и увеличения скорости вентилятора, а также на элемент Label в свойство текст, отображающий режим скорости вентилятора (аналогично п.4).

  • При помощи drag-and-drop перенести команду и фидбек

VentilationMode на кнопки выбора режима работы вентилятора, а также на Label, отображающий текущий режим работы вентилятора

В VentilationTemperatureD1/2/3 на элемент Label (в значение), отображающий температуру уличного воздуха, температуру приточного воздуха, температуру поверхности нагревателя соответственно.

  • Сохраните проект.

4.4. Проверка управления оборудованием через SCADA-клиента

Задание: проверить возможность управления оборудованием со SCADA-клиента.

Последовательность действий:

  • Запустить сервер, нажать на кнопку “Эмулятор”.

  • Запустить симулятор Modbus. Установить I/O в симуляторе - Holding Register.

  • Запустить проект SCADA клиента на сервер, нажать на кнопку “Загрузить на сервер”.

  • Запустить проект SCADA клиента, нажать на кнопку “Эмулятор”.

  • В разделе “Команды” изменить параметры функционирования системы. Изменения отобразятся в симуляторе Modbus.

  • Установить I/O в симуляторе Modbus - Analogue Inputs.

  • Изменить значение переменных VentilationTemperatureD1/2/3 в симуляторе Modbus, в SCADA-клиенте в соответствующих строках будут отображены значений тегов.

5. Аварийные сообщения

Аварийные сообщения (алармы) - это сообщения, предупреждающее оператора о возникновении определенной ситуации, которая может привести к серьезным последствиям, и потому требующее его внимания и вмешательства.

В данной главе мы создадим группы аварийных сообщений для отслеживания включения и выключения установок, а также температуры нагревателя.

Отображать аварийные сообщения будем с помощью таких элементов, как AlarmLabel и AlarmView.

5.1. Создание групп аварийных сообщений

Задание: создать группы аварийных сообщений:

  • включение/выключение установки - данная группа аварийных сообщений будет выдавать сообщения при включении установки;

  • датчик D3 - данная группа аварийных сообщений будет выдавать сообщение, если температура нагревателя выше или ниже нормы.

Для справки:

Параметры настройки группы аварийных сообщений:

  • Имя - имя группы аварийных сообщений (алармов);

  • Тип по кол-ву уставок - выбор количества уставок у группы:

Аналоговый 4 уставки (HiHI,Hi,Lo,LoLo);

Аналоговый 2 уставки (Hi,Lo);

Дискретный прямой;

Дискретный инверсный;

  • Активность - включение/отключение активности группы алармов:

Включить

Выключить;

  • Тип контроля - на данный момент доступен только тип контроля - По значению; в дальнейшем появится тип контроля - По скорости изменения (пока нереализовано);

  • Описание - описание группы;

  • Приоритет (0-999) - важность данного аларма (наиболее серьезные алармы имеют приоритет 1). При добавлении тега в группу алармов приоритет автоматически присваивается тегу;

  • Гистерезис - порог нечувствительности при фиксации срабатывания аларма.

  • Задержка аварии (сек) - задержка выполнения действий алармов;

  • Группа/Узел/Этаж - отношение группы к конкретному объекту (отображается в журнале аварий);

  • Подтверждение - нужно ли оператору подтверждать то, что оператор отреагировал на аларм:

  • Включить подтверждение аварий

Выключить подтверждение аварий;

  • Комментарии при квитировании - запрашивать от пользователя комментарии при квитировании аварийного сообщения:

  • Без комментария - квитировать сообщение без запроса комментариев;

Комментирование не обязательно - пользователь может оставить комментарии при квитировании группы аварийных сообщений или нет (на свое усмотрение);

Комментирование обязательно - пользователь обязательно должен оставить комментарии при квитировании группы аварийных сообщений.

Последовательность действий: - В SCADA проекте перейти на вкладку “Алармы”.

  • Нажать на иконку “+” для создания первой группы аварийных сообщений.

  • Настроить свойства первой группы аварийных сообщений:

  • Имя - Включение/включение установки;

  • Тип по кол-ву уставок - Дискретный инверсный;

  • Активность - Включить;

  • Группа/Узел/Этаж - Вентиляция;

  • Подтверждение - Выключить подтверждение аварий.

  • Нажать на иконку “+” для создания второй группы аварийных сообщений.

  • Настроить свойства первой группы аварийных сообщений:

  • Имя - Датчик D3;

  • Тип по кол-ву уставок - Аналоговый 4 уставки (HiHI, Hi, Lo, LoLo);

  • Активность - Включить;

  • Группа/Узел/Этаж - Вентиляция;

  • Подтверждение - Выключить подтверждение аварий.

5.2. Настройка действий для групп аварийных сообщений

Задание: настроить действия для групп аварийных сообщений:

  • включение/выключение установки: при включении установки добавить запись в журнал - “Вентиляция включена” ;

  • датчик D3: добавить запись в журнал при температуре выше hi - “Температура нагревателя высокая”, при температуре ниже lo - ”Температура нагревателя низкая”, при температуре выше hihi - “Температура нагревателя слишком высокая”, при температуре ниже lolo - “Температура слишком нагревателя низкая”.

Последовательность действий:

  • Выбрать группу аварийных сообщений - “Включение/включение установки”, вкладка Норма/Normal. Нажмите на иконку “Добавить группу действий”.

Автоматически появляется действие - “Добавить запись в журнал”.

  • Настроить параметры группы действий:

  • Имя группы - Включение/включение установки;

  • Зона тега - зона, к которой относится тег. Зону можно выбрать, нажав на “Шестеренку” и выбрав нужные зоны, либо создав новые.

Добавьте зону тега, например, “2 этаж”:

  • Приоритет тега - =50.

  • Задать параметры действия “Добавить запись в журнал”: сообщение Норма - “Вентиляция включена”.

  • Выберите группу аварийных сообщений - “Датчик D3”, вкладка Предупреждение. Нажмите на иконку “Добавить группу действий”.

Автоматически появляется действие - “Добавить запись в журнал”.

  • Настроить параметры группы действий:

  • Имя группы - Датчик D3_Предупреждения;

  • Зона тега - зона, к которой относится тег. Зону можно выбрать, нажав на “Шестеренку” и выбрав нужные зоны, либо создав новые.

Добавьте зону тега, например, “2 этаж”:

  • Приоритет тега - =40.

  • Задать параметры действия “Добавить запись в журнал”: сообщение hi -“Температура нагревателя высокая”, lo -”Температура нагревателя низкая”.

  • Выбрать группу аварийных сообщений - Датчик D3, вкладка Crash.

Нажмите на иконку “Добавить группу действий”.

Автоматически появляется действие - “Добавить запись в журнал”.

  • Настроить параметры группы действий:

  • Имя группы - Датчик D3_Аварии;

  • Зона тега - зона, к которой относится тег. Зону можно выбрать, нажав на “Шестеренку” и выбрав нужные зоны, либо создав новые.

  • Добавьте зону тега, например, “2 этаж”:

  • Приоритет тега - =30.

  • Задать параметры действия “Добавить запись в журнал”: сообщение hihi - “Температура нагревателя слишком высокая”, lolo - ”Температура слишком нагревателя низкая”.

5.3. Настройка отправки сообщения об аварии в Telegram

Задание: настроить действие отправки сообщения в Telegram для группы сообщений “Датчик D3”.

Последовательность действий:

  • Выбрать группу аварийных сообщений “Датчик D3”, в разделе Crash, добавить действие “Отправить в Telegram”.

  • Настроить следующие параметры действия:

  • Включить 🆅;

  • Чат - выбрать в настройках проекта чат, в который необходимо отправить сообщение:

  • Задать аварийные сообщения:

○ hihi - Значение тега @name - @value слишком высокое; ○ lolo - Значение тега @name - @value слишком низкое.

  • Необходимо зайти в Вашего Telegram-бота и запустить его, нажав кнопку “Запустить.

Для справки:

При создании записи в журнал можно использовать следующие параметры:

  • @name - имя тега;

  • @value - значение тега, которое активировало аларм;

  • @bound -имяграницы (lo,lolo,hi,hihi), для дискретных пустое;

  • @exp - ожидаемое значение границы;

  • @state - состояние аларма (Normal,Accident,Warning);

  • @p - приоритет (число);

  • @confirm - необходимость квитирования (yes,no); @time-время срабатывания.

5.4. Настройка SCADA-тегов

Задание: настроить SCADA теги для групп аварийных сообщений:

● включение/выключение установки; ● датчик D3.

Последовательность действий:

  • У SCADA тега VentilationOnOff в разделе “Аларм” настроить следующие параметры (обратите внимание, что если у SCADA тегов и алармов не совпадает хотя бы одна зона, то аларм не сработает):

  • Группа - Включение/включение установки;

  • Активность - Включить;

  • Приоритет Нормы (0-999) - 50 (номер приоритета должен совпадать с номером приоритета группы действий данной группы аварийных сообщения).

  • У SCADA тега VentilationTemperatureD3 в разделе “Аларм” настроить следующие параметры:

  • Группа - Датчик D3;

  • Активность - Включить;

  • HiHi - 50;

  • Hi - 45;

  • Lo - 10;

  • LoLo - 0;

  • Приоритет hihi (0-999) - 30 (номер приоритета должен совпадать с номером приоритета группы действий данной группы аварийных сообщения);

  • Приоритет hi (0-999) - 40 (номер приоритета должен совпадать с номером приоритета группы действий данной группы аварийных сообщения);

  • Приоритет lo (0-999) - 40 (номер приоритета должен совпадать с номером приоритета группы действий данной группы аварийных сообщения);

  • Приоритет lolo (0-999) - 30 (номер приоритета должен совпадать с номером приоритета группы действий данной группы аварийных сообщения);

  • Приоритет Нормы (0-999) - 50 (номер приоритета должен совпадать с номером приоритета группы действий данной группы аварийных сообщения).

5.5. Настройка Alarm Label

Для справки:

AlarmLabel - это графический элемент, позволяющий информировать пользователей об актуальном состоянии выбранного SCADA тега. Настройка элемента производится в панельном проекте SCADA. Он имеет до 5 вариантов внешнего вида, для каждого состояния тревогии состояния “Норма”.

AlarmLabel меняет свое состояние при получении значения текущей тревоги от SCADA тега.

Задание: добавить в SCADA клиента графический элемент Alarm Label и настроить его для отображения состояния тега VentilationTemperatureD3.

Последовательность действий:

  • Синхронизируйте панельный проект с серверным. Перейдите в панельный проект, и в разделе устройства нажмите кнопку синхронизация. Для того чтобы проекты синхронизировались они должны находиться в одной папке или быть одновременно открыты в IRidium Studio.

  • Выбрать элемент Alarm Label из списка графических элементов, перенести его на страницу (в любое удобно для Вас место), растяните до нужных размеров.

  • При помощи drag-and-drop перенести фидбек VentilationTemperatureD3 в значение на элемент Alarm Label.

  • Настройте элемент:

  • настройте разные цвета отображения элемента для всех состояний;

  • настройте частоту мерцания (в Гц);

  • настройте остальные параметры (при необходимости).

Например, удалить текст.

  • Сохранить проект.

  • Проверить работу:

  • запустить сервер, нажать на кнопку “Эмулятор”;

  • запустить симулятор Modbus. Установить I/O в симуляторе Analogue Inputs;

  • загрузить проект SCADA-клиента на сервер, нажать на кнопку “Загрузить на сервер”;

  • запустить проект SCADA-клиента, нажать на кнопку “Эмулятор”;

  • изменить значение переменной VentilationTemperatureD3 в симуляторе Modbus, в SCADA-клиенте элемент Alarm Label будет изменять цвет и частоту мерцания.

  • При появлении аварий (когда значение тега ≥50) в Telegram-бот будут приходить сообщения об аварии.

5.6. Настройка Alarm View

Для справки:

Alarm View - это графический элемент, предназначенный для отображения аварийных сообщений (алармов) в виде таблицы.

Задание: добавить в SCADA-клиента графический элемент Alarm View и настроить его для отображения групп аварийных сообщений Включение/включение установки и Датчик D3.

Последовательность действий:

  • Выбрать элемент Alarm View из списка графических элементов, перенести его на страницу. Растянуть до нужных размеров. Данный элемент достаточно объемный, поэтому можно сделать его как можно больше.

  • При необходимости настроить внешний вид элемента и отображаемых сообщений в отдельном окне “Настройка Alarm View”. Окно можно вызвать двойным щелчком по элементу или нажатием кнопки “Настройка Alarm View” на панели свойств элемента.

  • Проверить работу:

  • запустить сервер, нажать на кнопку “Эмулятор”;

  • запустить симулятор Modbus. Установить I/O в симуляторе - Holding Register;

  • загрузить проект SCADA-клиента на сервер, нажать на кнопку “Загрузить на сервер”;

  • запустить проект SCADA-клиента, нажать на кнопку “Эмулятор”;

  • включить установку, в таблице Alarm View появиться сообщение о включении установки;

  • установить I/O в симуляторе Modbus - Analogue Inputs;

  • изменить значение переменной VentilationTemperatureD3 в симуляторе Modbus, в SCADA клиенте в элементе Alarm View, в зависимости от установленной температуры, появятся аварийные сообщения;

  • установить I/O в симуляторе Modbus - Holding Register;

  • изменить значение переменной VentilationOnOff с выключено на включено в проекте, в SCADA клиенте в элементе Alarm View появится аварийное сообщение;

  • При появлении аварий (когда значение тега ≥50) в Telegram-бот будут приходить сообщения об аварии.

5.7. Настройка отправки снимка в Telegram

Задание: при возникновении аварийной ситуации на датчике D3 в Telegram должно прийти аварийное сообщение со снимком с камеры.

Отправка самого сообщения в Telegram у нас уже настроена, необходимо привязать к этому действию камеру.

Мы будем использовать общественную камеру http://46.160.254.214/mjpg/video.mjpg?COUNTER. Это просто уличная камера, но нам для того, чтобы проверить работу функции, она подойдет.

Для справки:

  • URI - ссылка на видео-поток (или поток кадров). Логин, пароль ипорт доступа к камере можно указать в строках ниже;

  • Port- для JPEG/MJPEG, по умолчанию, порт: 80, для MPEG-4/H.264 порт: 554;

  • Login/Password - логин и пароль доступа к видео-потоку с камеры;

  • Refresh (мс) - переподключение к источнику видео;

  • Refresh: 0 (мс) - для потокового видео MJPEG/H.264/MPEG-4;

Refresh: 1000...n (мс) - для по-кадровой трансляции JPEG;

  • Demuxer - автоматический или ручной выбор типа потока FFMPEG (для случаев, когда поток не определяется автоматически). Иногда используется при работе с Mobotix;

  • ProbeSize: 50000(Кб) - размер буфера данных в Кб, который приложение загрузит перед началом воспроизведения видео. По умолчанию, если оставить 0, составляет 5 Мб. Можно уменьшить для камер с малым разрешением или для медленного соединения, но, не рекомендуются значения менее 20000Кб;

  • Param - строка для указания типа транспорта RTSP. Укажите:

  • rtsp_transport=tcp; если RTSP поток с IP камеры загружается через Интернет или его качество неудовлетворительное; rtsp_transport=udp; или пустое поле подключает загрузкуRTSPпотокавлокальнойсетипоUDP;

  • ScaleWidth / ScaleHeight - ширина / высота кадра для масштабирования. Если оставить пустые поля, то видео отобразитсясоригинальнымразрешением;

  • Audio - определяет необходимость воспроизведения аудио-потока с mxpeg камеры (если таковой имеется);

  • Disconnect when minimized - прекращает прием потокового видео при сворачивании приложения или блокировки экрана устройства (это позволяет экономить интернет трафик).

Последовательность действий:

  • Открыть панель Камеры (хранилище ссылок на видео-потоки с IP-камер), которые можно использовать, и которые уже используются в проекте.

Для того чтобы открыть вкладку Камеры, если она закрыта, необходимо выбрать на панели справа иконку с камерой.

Для того чтобы добавить новую камеру необходимо, нажать на иконку с “+” на панели инструментов раздела “Камеры”.

  • Настроить следующие параметры камеры:

  • Имя - Серверная 2 этаж;

  • URI - http://46.160.254.214/mjpg/video.mjpg?COUNTER;

  • Параметры - rtsp_transport=tcp;

  • Ширина - 1920;

  • В разделе SCADA tags выбрать тег VentilationTemperatureD3 и в свойствах Аларм - Видеоконтроль выбрать добавленную камеру.

  • В разделе Алармы выбрать группу сообщение “Датчик D3”, в группе действий “Датчик D3_Аварии” (раздел Crash) в действии “Отправить в telegram” поставить галочку “Сделать фото”.

  • Проверить работу:

  • запустить сервер, нажать на кнопку “Эмулятор”;

  • запустить симулятор Modbus. Установить I/O в симуляторе Analogue Inputs;

  • изменить значение переменной VentilationTemperatureD3 в симуляторе Modbus, в Telegram-бот будут приходить сообщения об аварии со снимком с камеры.

6. Архивация тегов

6.1. Добавление тега в базу данных

Задание: добавить теги VentilationOnOff и VentilationTemperatureD3 в базу данных.

Последовательность действий:

  • В разделе SCADA теги выбрать тег VentilationOnOff, в свойствах тега добавить следующие параметры:

  • Запись тега → Запись в БД выбрать “Зона чувствительности”; ● Значение - 1.00.

  • В разделе SCADA теги выбрать тег VentilationTemperatureD3, в свойствах тега добавить следующие параметры:

  • Запись тега → Запись в БД выбрать “По времени”; ● Интервал - 5 секунд.

  • Сохранить проект.

6.2. Создание графика изменения тегов

Задача: в проекте SCADA клиента отобразить график изменения тегов

VentilationOnOff и VentilationTemperatureD3.

Последовательность действий:

  • Синхронизируйте панельный проект с серверным. Перейдите в панельный проект, и в разделе устройства нажмите кнопку синхронизация. Для того чтобы проекты синхронизировались они должны находиться в одной папке или быть одновременно открыты в IRidium Studio.

  • В SCADA клиенте выбрать элемент Line Chart (Beta) из списка графических элементов, перенести его на страницу и растянуть до нужных размеров.

  • При помощи drag-and-drop перенести фидбек VentilationTemperatureD3 в значение элемент Line Chart (Beta).

  • Тег можно добавить в окне свойств элемента Line Chart (Beta). Окно можно вызвать двойным щелчком по элементу или нажатием кнопки “Настройка Line Chart (Beta)” на панели свойств элемента.

  • Установить “Расширенные настройки”.

  • Во вкладке “Линии графика”, нажав на иконку “+”, добавить фидбек VentilationOnOff.

  • Настроить цвета графиков. Например, для VentilationOnOff - синий, для VentilationTemperatureD3 - зеленый.

  • В разделе “Область графика” настроить рамку графика (цвет, толщину линий).

  • В разделе “Горизонтальная ось” настроить диапазон оси - 5 минут.

  • Сделать остальные настройки графика при необходимости.

  • Сохранить проект.

  • Проверить работу:

  • запустить сервер, нажать на кнопку “Эмулятор”;

  • запустить симулятор Modbus. Установить I/O в симуляторе Analogue Inputs;

  • загрузить проект SCADA-клиента на сервер, нажать на кнопку “Загрузить на сервер”;

  • запустить проект SCADA-клиента, нажать на кнопку “Эмулятор”;

  • изменить значение переменной VentilationTemperatureD3 в симуляторе Modbus, в SCADA клиенте на элементе Line Chart (Beta) будет изменять график;

  • установить I/O в симуляторе - Holding Registers;

  • изменить значение переменной VentilationOnOff (включая и выключая установку), в SCADA клиенте на элементе Line Chart (Beta) будет изменять график.

7. Авторизация пользователей

7.1. Создание ролей пользователей

Задание: необходимо добавить в проект роль “Пользователь” с правом чтения тегов.

Для справки:

Ролевая система доступа позволяет разграничивать возможности взаимодействия с SCADA системой пользователям различных групп (должностей).

По умолчанию создаются три роли пользователей:

  • Администратор

  • Инженер

  • Оператор

Роль “Администратор” по умолчанию имеет уже одну учетную запись, ее нельзя удалить из проекта, как и саму группу, но можно изменить пароль доступа. При необходимости в группу можно добавить дополнительные учетные записи.

Последовательность действий:

  • Открыть панель Пользователи и роли.

Для того чтобы открыть вкладку Пользователи и роли, если она закрыта, необходимо выбрать на панели справа иконку с тремя человечками.

  • Для включения системы авторизации пользователей - включить чекбокс “Включить авторизацию”.

  • Нажать на кнопку “Добавления роли”.

  • Настроить роль:

  • Имя - Пользователи;

  • Описание - Пользователи системы;

  • Доступ к тегам - Чтение и запись; ● Настройка прав - нет.

Для справки: При создании новой группы пользователей параметр “Доступ к тегам” применяется для всех существующих SCADA-тегов, для быстрой раздачи прав основной массеSCADA-тегов. При создании новогоSCADA-тега он доступен всем группам на чтение и запись.

7.2. Создание пользователей

Задание: необходимо создать пользователей:

  • Иванов (логин - ivanov, пароль - 123456, роль - Оператор);

  • Петров (логин - petrov, пароль - 123456, роль - Пользователь).

Последовательность действий:

  • Создать пользователя, нажав кнопку “Добавить пользователя”.

  • Настроить данные пользователя:

  • Имя - Иванов;

  • Описание - Оператор 1;

  • Логин - ivanov;

  • Пароль - 123456;

  • Роль - Оператор (Оператор имеет доступ на запись и чтение тегов).

  • Аналогично создать еще одного пользователя со следующими настройками:

  • Имя - Петров;

  • Описание - Пользователь 1;

  • Логин - petrov;

7.3. Настройка доступа к SCADA тегам

Задание: настроить доступ к SCADA тегу VentilationOnOff для группы пользователей “Пользователи” только на чтение.

При регистрации пользователя из группы “Пользователь”, он будет видеть изменение значение тега, но не сможет им управлять/изменять его значением.

Последовательность действий:

  • Перейти в раздел “SCADA теги” , выбрать тег VentilationOnOff. В свойстве тега Доступ отметить следующие уровни доступа:

  • Проверьте настройки доступа у всех остальных тегов. Доступ до всех остальных тегов должен быть у все пользователей, на чтение и запись.

  • В пользователя Admin посмотреть логин/пароль и при необходимости исправить.

В настройках проекта, в свойствах Сервер внести логин и пароль пользователя Admin.

  • Сохранить проект.

  • Запустить сервер, нажать на кнопку “Эмулятор”.

  • Запустить симулятор Modbus. Установить I/O в симуляторе - Holding Registers.

  • Синхронизируйте панельный проект с серверным. Перейдите в панельный проект, и в разделе устройства нажмите кнопку синхронизация. Для того чтобы проекты синхронизировались они должны находиться в одной папке или быть одновременно открыты в IRidium Studio. Для того чтобы проекты синхронизировались они должны находиться в одной папке или быть одновременно открыты в IRidium Studio.

  • Загрузить проект SCADA-клиента на сервер, нажать на кнопку “Загрузить на сервер”;

  • Запустить проект SCADA-клиента, нажать на кнопку “Эмулятор”;

  • Зарегистрироваться под пользователем Петров.

  • При попытке включить систему вентиляции для пользователя Петров значение тега в симуляторе изменяться не будет. При этом управление всеми остальными тегами и переменными ему остались доступны.

  • Закройте панельный проект и откройте снова, зарегистрировавшись под пользователем Иванов.

  • Пользователю Иванов доступно управление всеми тегами.

7.4. Настройка доступа к элементам управления в SCADA клиенте

Задание: настроить доступ к элементу управления скоростью вентиляционной установки. Доступ к элементу должен быть у всех групп пользователей, кроме группы “Пользователи”.

Последовательность действий:

  • В панельном проекте выберите Up/Down Button для управления режимами скорости вентилятора.

  • В настройках свойств данных элементов укажите доступ только для Администратора, Инженера и Оператора.

  • Загрузить проект SCADA-клиента на сервер, нажать на кнопку “Загрузить на сервер”;

  • Запустить проект SCADA-клиента, нажать на кнопку “Эмулятор”;

  • Зарегистрироваться под пользователем Петров.

  • У данного пользователя в интерфейсе кнопки управления скоростью вентилятора будут скрыты.

  • Закройте панельный проект и откройте снова, зарегистрировавшись под пользователем Иванов.

  • Пользователю Иванов доступно управление скоростью вентилятора.

8. Расписания и правила

8.1. Создание расписания

Задание: создать расписание, которое будет выполняться по будним дням.

Последовательность действий:

  • В SCADA проекте перейти на вкладку “Расписание”.

  • Нажать на иконку “+” для создания расписания.

  • Настроить у расписания следующие параметры:

  • Имя - Автовыключение;

  • Описание - Выключение системы вентиляции;

  • Начало - Выставить время - 17-00;

  • В указанные дни недели - Понедельник, Вторник, Среда,

  • Активировать расписание, поставить чекбокс “Включено”.

8.2. Создание правила

Задание: необходимо создать правило, выключение вентиляционной установки в 17-00 (согласно составленного расписания п.8.1).

Последовательность действий:

  • В SCADA-проекте перейти на вкладку “Правила”.

  • Нажать на иконку “+” для создания правила.

  • Настроить у правила следующие параметры:

  • Имя - Автовыключение;

  • Когда - нажать на иконку “+”, выбрать - “Сработало событие расписания”, выбрать из списка наше расписание “Автовыключение”;

  • Тогда - нажать на иконку “+”, выбрать - “Значение”;

  • Выбрать SCADA тег VentilationOnOff и отправить в него

  • Сохраните серверный проект.

  • Запустить сервер, нажать на кнопку “Эмулятор”.

  • Установите время на своем компьютере за 3-5 минут до 17-00.

  • Запустить симулятор Modbus. Установить I/O в симуляторе - Holding Registers.

  • Синхронизируйте панельный проект с серверным. Перейдите в панельный проект, и в разделе устройства нажмите кнопку синхронизация. Для того чтобы проекты синхронизировались они должны находиться в одной папке или быть одновременно открыты в IRidium Studio.

  • Загрузить проект SCADA-клиента на сервер, нажать на кнопку “Загрузить на сервер”;

  • Запустить проект SCADA-клиента, нажать на кнопку “Эмулятор”;

  • Зарегистрироваться под пользователем Иванов.

  • Включите вентиляционную установку.

  • Когда время будет 17-00, сработает правило Автовыключение и вентиляционная установка выключится.