Вопросы и предложения по Simple-Scada 2

Автор Simple-Scada, 11 мая 2015, 20:34:39

Simple-Scada

#1500
Здравствуйте.

Извините за задержку с ответом, пропустили уведомление с Вашим вопросом. Сложить результат нескольких условий можно таким способом:
Код: csharp
{
  (double)(IIF(vrOn1==1, (double)Данные.Value1, (double)0)) + 
  (double)(IIF(vrOn2==1, (double)Данные.Value2, (double)0)) + 
  (double)(IIF(vrOn3==1, (double)Данные.Value3, (double)0))
}

ЦитироватьЕще вопрос почему для Источника_1 с интервалом 0 и Источника_2 с интервалом 10 секунд за один и тот же промежуток времени выдаются разные первые и последние значения одних и тех же переменных. А выражение {Источник2.Время.AddSeconds(-Источник2_Интервал)} влияет только на отображение времени. Получается, что перед генерацией отчета надо из Начала и Конца периода вычитать число секунд Интервала.
В колонке "Время" по-умолчанию отображается время на конец интервала. Если нужно, то можете сместить его выражением, которое Вы привели, это никак не повлияет на работу типов обработки. Принцип работы периодических источников и типы обработки описаны здесь.

ELX

Добрый день.
Есть ли возможность вывода web-страницы произвольного сайта непосредственно в окне Simpla-scada? Если конкретнее, то есть руфтопы, у которых встроенная в ПЛК web-визуализация. Заказчик пожелал видеть визуализацию этих руфтопов не в отдельном окне браузера, а непосредственно в SCADA-системе.

Simple_Scada

Здравствуйте.

ЦитироватьЕсть ли возможность вывода web-страницы произвольного сайта непосредственно в окне Simpla-scada?
Такой возможности нет.

dima_k

Здравствуйте.
Использую Demo версию программы для разработки проектов.
Недавно редактор отчётов начал ругаться, что "Срок Вашей пробной версии истек".
Переустановка не помогла. Что делать?

Simple Scada

Здравствуйте.

Цитата: dima_k от 14 июля 2022, 07:57:43Использую Demo версию программы для разработки проектов. Недавно редактор отчётов начал ругаться, что "Срок Вашей пробной версии истек". Переустановка не помогла. Что делать?
Скачайте с сайта текущую демо-версию и установите ее. После обновления окно "Срок вашей пробной версии истек" не должно выдаваться.

ART63

Почему-то на главной странице текущей версией является 2.6.1.0, а не 2.6.2.1

Simple-Scada

#1506
По ошибке не опубликовали на сайте новость о версии 2.6.2.1, поэтому она не отображается в разделе "Новости". При выходе дальнейших обновлений новости будут публиковаться как обычно. Для скачивания сейчас доступна последняя версия 2.6.2.1.

alex29

Здравствуйте.
Можно ли как-то в скриптах получить наличие/количество  аварийных/предупредительных  сообщений?

Simple Scada

Здравствуйте.

Цитата: alex29 от 19 июля 2022, 13:47:26Можно ли как-то в скриптах получить наличие/количество  аварийных/предупредительных  сообщений?
Для получения количества активных сообщений проекта можно использовать функцию SysGet с константой SYS_ACTIVE_COUNT. Но следует учитывать, что данная функция возвращает количество всех активных сообщений проекта любого типа: Сообщение, Предупреждение, Авария.

alex29

#1509
Цитата: Simple Scada от 19 июля 2022, 15:01:39следует учитывать, что данная функция возвращает количество всех активных сообщений проекта
жаль.

Еще вопрос. Скада может реагировать на пересечение границ переменной. И даже выдавать сообщения. Всё классно, готовый функционал.
Сигнал аварии идет в колонки компутера.
Но, что бы включить аварийный/предупредительный сигнал где-то ...  , то как это сделать?  ( может где-то не дочитал, но честно - искал)
Хотелось бы использовать готовый функционал и не реализовывать это в контроллере.
Может добавить где-нибудь настройку(в свойствах сообщений, например) где указать переменные или номер бита для привязки к авариям и предупреждениям.
или сделать доступ из скриптов к "наличию предупредительного/аварийного звука".

Simple_Scada

Если при нарушении границ определенных переменных требуется записать значение в переменную ПЛК(например, которая включает сирену), то для этого можно создать скрипт с типом события "Нарушена граница", добавить в список скрипта(как это описано здесь) требуемые переменные и написать такой скрипт:
Код: pascal
begin
  if not IsFirstChange then // пропускаем первое изменение, чтобы скрипт не срабатывал при перезапусках проекта
    if Variable.GetValueZone <> 0 then // если нарушена любая граница любой переменной из списка скрипта, то..
      MyVar.Value := 1;                // включаем сирену
end.
В данном скрипте, при нарушении любой границы любой переменной из списка скрипта в переменную будет записываться значение 1. При необходимости, можно включать сирену только в случае нарушения определенных границ - см. описание функции GetValueZone.

alex29

#1511
Спасибо. Но хотелось бы чуть другой логики. После подтверждения сообщений, на компе со скадой звук выключится, а в случае Вашего примера скрипта сирена подключенная к плк продолжит орать, пока значение за границами находится. Нужно все равно обрабатывать это как-то дополнительно.

В идеале было бы доступ к событиям "воспроизводится звук сообщения", "воспроизводится звук предупреждения", "воспроизводится звук аварии"

Simple_Scada

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

Eugene_

Можно ли поменять общий принцип поведения системы в работе с ключом лицензии ?
Scada установлена как сервис, версия 2.6.1.0. на виртуальной машине. В настройках проекта режим "запущен всегда" . Туда по USB_over_Ethernet проброшен USB ключ лицензии.

Неудобство и проблема: когда вытаскиваешь (или пропадает связь SCADA - ключ) то вместо очевидной и ожидаемой остановки всех проектов с ошибкой в логе "не найдена лицензия" - останавливается вся служба Scada. После включения ключа нужно вручную запускать службу. Соответственно нужен админ для запуска проекта, полевые инженеры сделать этого не могут по модели доступа предприятия, и нет в логах сообщений что был потерян системой ключ.

Можно переделать поведение системы в будущих релизах ? при потере ключа остановка проектов и периодическая последующая проверка ключа, если найдет  - возврат в предыдущее состояние проектов  (согласно их настроек запуска)

Simple-Scada

Здравствуйте.

Остановка проектов без завершения процесса сервера снизит уровень защиты и упростит взлом ПО, поэтому система проверки ключа скорее всего не изменится в ближайшем будущем. Если Вы пробрасываете ключ по локальной сети, то рассмотрите возможность прямого проброса из основной машины (на которой запускается и работает виртуальная машина), как описано по этой ссылке (пункт №1).