PDA

Просмотр полной версии : Вопросы начинающего



Страницы : 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

SCADAMaster
28.08.2016, 14:56
Приложите ваш проект (выполните Проект - Экспортировать), укажите путь к проблемному журналу.

mkv
28.08.2016, 16:44
Проблему решил. Удалил из дерева объектов события, в которых были вписаны сообщения об авариях и создал новые. Всё стало нормально. Подозреваю, что проблема возникла из-за копирования сообщений об аварии в "шаблон сообщений" "событий". Я копировал и вставлял с помощью клавиатуры (Ctrl+C и Ctrl +V).
Спасибо.

kail
30.08.2016, 20:24
Здравствуйте.

Нужен аналоговый "Антидребезг", т.е. использовать значение только после того, как оно стабилизируется. Готового модуля не нашел (не считая скрипта).
Отсюда два вопроса:

Какой самый простой способ отследить изменение значения?
Пока использую связку Значение + Не равно для {Значение, выход повторителя} + Повторитель.
Ещё пробовал использовать событие с вызовом по изменению входов, задав Значение как источник, или сравнивая метки времени, но не вышло ничего, максимум – событие хаотически пульсирует.
Какой самый простой способ сделать задержку?
Пока использую отслеживание изменения + Выдержка времени + Задний фронт + Повторитель по условию.
Как-то громоздко выходит, а надо много раз.

Спасибо.

SCADAMaster
30.08.2016, 20:49
Или ФБ "Фильтр 1 порядка" или скрипты. Или как - из набора элементов.

Vitorgan
31.08.2016, 11:25
Подскажите пожалуйста возможно ли в скаде стандартными средствами вытянуть из dword два worda?

kail
31.08.2016, 11:57
Тогда другой вопрос.
Используем MasterSCADA v.3.6.0.47575 и Modbus MasterOPC v.3.1.10.
И есть устройства, которые или иногда сбоят по связи (до 5-10с), или вообще отключены специально.
Поэтому в архив значений и сообщений генерируется прорва данных, хотя пользы от того нет.
Причём у команд используется обратная связь, потому что те же ТРМы могут и локально управляться. На отключенных устройствах MasterOPC пытается постоянно эти теги записать (да, знаю, что так он работает), но ещё эти теги периодически отказываются с хорошим качеством.

Как сделать скаду и/или OPC-сервер более толерантным к кратковременным разрывам?
Как правильно вести разработку для плановых отключений устройства?
Как забороть MasterOPC, чтобы недоступные теги не меняли качества?

SCADAMaster
31.08.2016, 13:51
Подскажите пожалуйста возможно ли в скаде стандартными средствами вытянуть из dword два worda?
Разобрать на биты и собрать снова.
Можно через ФБ "Распаковка-упаковка", можно через ST, можно через C#, можно через расчет попробовать.

SCADAMaster
31.08.2016, 13:54
Как сделать скаду и/или OPC-сервер более толерантным к кратковременным разрывам?

Увеличить количество попыток запроса




Как правильно вести разработку для плановых отключений устройства?

В ОРС сервере, с помощью скрипта server.SetDeviceToOnOff( ); выключать опрос устройства, а в скаде останавливать опрос группы ОРС сервера, используя поле "Опрос по условию" вкладки "опрос".




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

Теоретически можно, но это это неправильно.
Просто выключайте из опроса устройства, которые не нужны.

kail
31.08.2016, 18:53
Увеличить количество попыток запроса
Да, это работает, когда нет ответа, но не работает, если произошел разрыв TCP-соединения.



Как забороть MasterOPC, чтобы недоступные теги не меняли качества?Теоретически можно, но это это неправильно.
Просто выключайте из опроса устройства, которые не нужны.
А почему неправильно? Мне кажется естественным, что если устройство не отвечает, то все его теги будут неизменно в плохом качестве, а не мигать с BAD на OK. У тегов, из которых только читают, так и происходит, а вот с записью такая вот неприятность.
Кстати, а почему MasterOPC выдаёт при проблемах со связью BAD, а не COMM_FAILURE?

SCADAMaster
31.08.2016, 20:04
Какая у вас версия ОРС сервера? Мы проверили на текущей 3.2.11 - признак качества при записи на GOOD не меняется.
Попробуйте проверить на текущей версии на 32 точки.

kail
31.08.2016, 20:59
3.2.11 не нашел, на ftp://support.insat.ru/ нету, есть 3.2.9.
Да, действительно, в этой версии уже нет такой проблемы. В версии 3.1.10 ещё есть – как в коммерческой, так и на 32 точки.
И при разрыве по TCP сразу качество не меняет, потому что появились у узла параметры "Время ожидания соединения" и "Повторы при ошибке".
Прогресс – это хорошо! :)

kail
31.08.2016, 21:04
И ещё тогда вопрос.
В MasterSCADA в группу нельзя добавить ФБ, только переменные да расчёты. Очень этого не хватает.
Если вместо групп использовать под-объекты – какие будут у такого решения накладные расходы и сайд-эффекты? Как скажется это на производительности?

SCADAMaster
31.08.2016, 21:40
3.2.11 не нашел, на ftp://support.insat.ru/ нету, есть 3.2.9.

Качайте с сайта. На FTP не всегда последняя версия.
http://insat.ru/prices/info.php?pid=6944

SCADAMaster
31.08.2016, 21:40
Если вместо групп использовать под-объекты – какие будут у такого решения накладные расходы и сайд-эффекты? Как скажется это на производительности?
Не скажется.

Amko
01.09.2016, 07:56
Подскажите, в чем отличие "Окно объекта" от "Окно управления"?

SCADAMaster
01.09.2016, 08:57
Ни в чем - это полностью одинаковые окна.
Можете сделать собственное, на закладке Система - Окна или изменить параметры системных.

Grampus
01.09.2016, 11:07
Скажите пожалуйста, для отображения тех.процесса на ПК с использованием SCADA что нужно сделать! я понимаю что связать ПЛК и ПК. а вот по поводу рисования мнемосхемы или дополнительную программу писать потребуется? как это происходит все?

SCADAMaster
01.09.2016, 11:23
Размещаются элементы из дерева объектов - задвижки, насосы.
Если каких то элементов не хватает - вставляются рисунки.
Посмотрите наши видеопримеры - в них показано в том числе и создание мнемосхем:
http://www.masterscada.ru?additional_section_id=233

kail
01.09.2016, 12:26
А есть ли способ переноса объекта/ФБ/переменной на другой уровень иерархии с автоматическим переносом связей?
Например, были в объекте "Вентиляция" вентустановки скопом, а потом их решили по венткамерам сгруппировать. Или наоборот, решили сгруппированные переменные линейно скопом расположить. В остальном же качественно и количественно никаких перемен.
Вроде есть операция "вырезать", но приходится при восстановлении связей добавлять-убирать лишние "../", а там и ошибиться или пропустить чего-нибудь можно.

Спасибо вам за полезные и оперативные ответы :cool:

SCADAMaster
01.09.2016, 13:23
Нет, автоматически не получится - нужно через восстановление внешних связей править пути

Oak
01.09.2016, 13:53
ФБ управление документом.
Пытаемся сохранить журнал в формате эксел.
При расширениях xls и xlsx получаем html файл - какое расширение надо поставить для сохранения в эксел?
Какие форматы/расширения для журнала и тренда доступны?

Какие и как можно задавать параметры для сохранения тренда - масштаб, период отображения? Или тренд будет сохраняться в последнем сохраненном виде?

SCADAMaster
01.09.2016, 14:41
В Excel журнал не сохраняется.
Поддерживаются html и графические форматы (jpg, gif, bmp, png,xps).
Период отображения задается на входах Дата с и Дата по. Остальные доступные параметры сохранения задаются в параметрах ФБ.

nenaika
05.09.2016, 09:23
Добрый день! Подскажите, пожалуйста, что я делаю не так. Необходимо сформировать отчет по суточным значениям архивов тепловой энергии. Способ формирования периодический, интервал сутки, значение первое. Допустим у меня есть архивы с 13.08 по 19.08 (контрактное время 9.00) (других нет), дата формирования отчета с 07.08 по 21.08. Соответственно с 7 по 12 значений нет. Соответственно 13-19 заполняются корректно. И 20 в отчете появляется значения от 19 числа, хотя в архивах его нет. Как это выглядит в реальности - прилагаю отчет в pdf и данные из архива в картинке. Вопрос откуда появляется значение для 20 числа в отчете и как сделать, чтобы отчет формировался корректно, и если отсутствуют данные, то это и отображается прочерком?

Oak
05.09.2016, 10:55
Работаем с несколькими контролерами под мастерплк. Как избавиться от постоянных сообщений что нет ответа от контролера, если контролер отключен.
Хотелось бы получить один раз аварийное сообщение и всё, до следующего включения и выключения.
Чувствую, должна быть настройка, но где?

SCADAMaster
06.09.2016, 14:19
Работаем с несколькими контролерами под мастерплк. Как избавиться от постоянных сообщений что нет ответа от контролера, если контролер отключен.
Хотелось бы получить один раз аварийное сообщение и всё, до следующего включения и выключения.
Чувствую, должна быть настройка, но где?

Во всплывающем окне кнопка "Запретить->От этого источника". Но при этом надо учитывать что сообщения потом надо будет включить вручную.

Либо отключить данное сообщение (Система->Сообщения->Сообщение) вовсе.

evgeni293
06.09.2016, 16:14
Кто может помочь Trace? Делал по примеру https://www.youtube.com/watch?v=AhDAOrxd9YU , но в моей версии нет generate trace pou for visualization

Amko
07.09.2016, 07:51
Хочу на вход/выход ST программы передать структуру (STRUCT) или массив. Компилятор ругается. Насколько я понял, стандартом МЭК это допускается. В мастерскада такая возможность есть?

P.S. Просто мне надо передать порядка 100 значений из одной группы переменных в другую. Хотел как-то сгруппировать их при передаче.

artamonov
07.09.2016, 09:51
Здравствуйте! В свойствах "Станции" дерева системы во вкладке "Окна" создал "Стартовую мнемосхему". Она выглядит так - сверху полоска высотой 75 пикселей с заголовком и часами, снизу полоска такой-же высоты для кнопок. Посередине между этими полосками пустое пространство. В дереве объектов создал объекты "Мнемосхема" и объекты для каждого физического объекта. Создал кнопки для вызова Мнемосхемы, Журнала, Аварий, Настроек на нижней полоске Стартовой мнемосхемы. При нажатии на них открываются соответственно мнемосхема, журнал, аварии, настройки на пустом пространстве Стартовой мнемосхемы.
Всё вроде логично работает. Но при запуске проекта запускается "Стартовая мнемосхема", а посередине пусто, что не есть очень хорошо.
Как сделать так, чтобы при запуске проекта там открывалась сразу мнемосхема из объекта?

SCADAMaster
07.09.2016, 11:48
Хочу на вход/выход ST программы передать структуру (STRUCT) или массив. Компилятор ругается. Насколько я понял, стандартом МЭК это допускается. В мастерскада такая возможность есть?


Структуры и массивы в качестве входов или выходов не поддержаны

SCADAMaster
07.09.2016, 13:18
Как сделать так, чтобы при запуске проекта там открывалась сразу мнемосхема из объекта?
Если нужно открыть сразу несколько мнемосхем при старте, то можно использовать ФБ "Управление документом" (Палитра->Служебные)
В настройках выбираете нужное окно. В группе "Открыть" по константой ставите Истина.
Для каждого окна нужен свой ФБ.

artamonov
08.09.2016, 09:08
Спасибо! Работает.

kail
08.09.2016, 12:16
А скажите, в чём отличие канала сообщений "журнал" от канала "архив"? Из справки и методичек понятно не стало.

Vitorgan
08.09.2016, 18:50
SCADAMaster , в версии 3.7.1.54827 (в других не проверял) не работает WORD_TO_INT (если данное преобразование происходит в функциональном блоке)

В приложенном проекте 2 программы, одна работает без ФБ, вторая идентичная, только вызов ФБ происходит из библиотеки. Как только ворду присваиваю больше >32767, выход программы отваливается, показывая ошибку.

mkv
09.09.2016, 11:43
Добрый день.
Скажите, можно ли как-то в минилегенде установить (отсортировать) названия перьев в нужном мне порядке?
Спасибо.

Oak
09.09.2016, 12:07
Как почистить старые данные из файлового архива? Например, в архиве данные за 3 месяца - хочется оставить данные только за последнюю неделю?

SCADAMaster
09.09.2016, 12:30
SCADAMaster , в версии 3.7.1.54827 (в других не проверял) не работает WORD_TO_INT (если данное преобразование происходит в функциональном блоке)

В приложенном проекте 2 программы, одна работает без ФБ, вторая идентичная, только вызов ФБ происходит из библиотеки. Как только ворду присваиваю больше >32767, выход программы отваливается, показывая ошибку.
Максимальное значение int16 (https://ru.wikipedia.org/wiki/%D0%A6%D0%B5%D0%BB%D0%BE%D0%B5_(%D1%82%D0%B8%D0%BF _%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85)) это 32767
Об этом же написано и в справке по ST

SCADAMaster
09.09.2016, 12:34
Как почистить старые данные из файлового архива? Например, в архиве данные за 3 месяца - хочется оставить данные только за последнюю неделю?
И как удалить из архива данные, которые больше не архивируются - сняли архивацию с переменной?

Файловый архив удаляется либо целиком для конкретного объекта (или всех сразу), удалить только часть для файлового архива нельзя.

Oak
09.09.2016, 12:58
Файловый архив удаляется либо целиком для конкретного объекта (или всех сразу), удалить только часть для файлового архива нельзя.

а если стоял период архивирования 90 дней, а установить 10 - старые архивы удалятся?

mkv
09.09.2016, 13:01
Добрый день.
Скажите, можно ли как-то в минилегенде установить (отсортировать) названия перьев в нужном мне порядке?
Спасибо.
Мне нужно, что бы вновь созданное перо (его название) отображалось ни в конце минилегенды, а там, где мне нужно.(допустим в середине минилегенды). Я, как понял, этого сделать нельзя?
Спасибо.

SCADAMaster
09.09.2016, 13:23
А скажите, в чём отличие канала сообщений "журнал" от канала "архив"? Из справки и методичек понятно не стало.
Канал "Архив" по сути представляет собой сохранение сообщения в архив для его последующего просмотра, т.е. без него после перезапуска проекта сообщения без этой галки вы не увидите
Журнал остался для совместимости со старыми проектами. В будущих версиях скорей всего будет убран. Сейчас он ни на что уже не влияет.

SCADAMaster
09.09.2016, 13:29
Добрый день.
Скажите, можно ли как-то в минилегенде установить (отсортировать) названия перьев в нужном мне порядке?
Спасибо.
Если только в имени задать что либо что будет влиять на их сортировку (1_перо5,2_Температура17) и после добавления отсортировать минилегенду по этому столбику.

SCADAMaster
09.09.2016, 13:32
а если стоял период архивирования 90 дней, а установить 10 - старые архивы удалятся?
Частично.
Файловый архив удаляется блоками. Т.е. грубо говоря пока блок не будет больше определенного (хотя и не очень большого) объема И не превысит значения по времени, удаления не будет. Лишние значения не удаляться, но могут остаться небольшие "хвосты" за 11-12 день. Это особенность файлового архивирования.

Vitorgan
09.09.2016, 13:32
Максимальное значение int16 (https://ru.wikipedia.org/wiki/%D0%A6%D0%B5%D0%BB%D0%BE%D0%B5_(%D1%82%D0%B8%D0%BF _%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85)) это 32767
Об этом же написано и в справке по ST

О том что максимальное значение INTa: 32767 я знаю со школьного курса информатики, а также я знаю, И О ЧЕМ В ВАШЕЙ ЖЕ СПРАВКЕ НАПИСАНО, что у wordа верхний предел это : 65535. И в скаде вашей работает конвертация, только в скрипте когда ее производишь.

Прочитайте мое сообщение повнимательней, и не поленитесь скачать проект который я Вам предоставил, и присвойте ИМЕННО wordам ( в программах ST это входы IN) значение превышающее 32767, и увидите как один ST-код работает, а второй нет. Он должен перевести значения INT после верхнего предела в отрицательные, так как количество значений и у INTa и у WORDа одинаковое!

kail
09.09.2016, 18:28
Чем принципиально отличается Повторитель от Значения, который используется как повторитель/клеммник?
Сервис внешних связей мне не очень понравился, а ФБ нельзя группировать. Но в справке и методичках рекомендуется использовать именно Повторитель.

SCADAMaster
11.09.2016, 13:02
В принципе можно использовать и значение и повторитель.
Значение по умолчанию наследует атрибуты источника (тип данных, шкалу), но это можно выключить поставив галочку "Запрет наследования типов".
Просто ранее (до версии 3.5) значение работало только на вход, поэтому и использовался повторитель.

Vitorgan
11.09.2016, 20:55
ScadaMaster, вы меня игнорируете?

SCADAMaster
12.09.2016, 09:04
Проблема проявилась, мы с ней разберемся.

Vitorgan
12.09.2016, 12:01
В какой срок ожидать исправления?

Vini74
12.09.2016, 17:59
Очень короткий вопрос. Наверняка уже задавали, но не шмогла найти.?
Как в Изображение Объекта вывести имя этого объекта? Что бы при последующем копировании объекта и переименовании копий это имя также менялось и на дочерних "изображения объекта"?

SCADAMaster
12.09.2016, 18:09
Штатно вывести имя объекта нельзя.
Можно сделать специальный скрипт, который запишет в значение имя объекта, а уже это значение выносить на мнемосхему.

Amko
13.09.2016, 06:02
Подскажите, где читать и смотреть. Хочу в отчет вывести все аварийные сообщения за последний сутки. Сообщения именно типа "Авария". Не могу найти в примерах и хелпе как выводить архив сообщений.

SCADAMaster
13.09.2016, 09:01
Редактор отчетов работает только с архивом данных, и не работает с архивом сообщений.
Как вариант - можно с помощью скрипта отслеживать появление событий и записывать их на выходы скрипта. А уже эти выходы скрипта использовать в редакторе отчетов.
В приложении проект с несколькими различными скриптами для работы с архивом сообщений, вам нужен пример "Отслеживание сообщений категорий и источников".
Подробнее также описано здесь:
http://blog.insat.ru/2016/08/c-masterscada_13.html

Vini74
13.09.2016, 10:50
Это я понимаю. А есть ли свойство в API типа "Имя родительского объекта" или надо разбирать весь путь, полученный по FullName, и выдирать оттуда предпоследний элемент?

SCADAMaster
13.09.2016, 12:46
HostFB.TreeItemHlp.ParentObject.Name
Но вообще лучшее решение - сделать Команды которые будут содержать имена объектов. С помощью скрипта в режиме разработке по команде DoAction перебирать все объекты вниз, искать значения и писать в них имя родительского объекта.

sing System;
using MasterSCADA.Script.FB;
using MasterSCADA.Hlp;
using FB;
using System.Linq;
using MasterSCADALib;
using MasterSCADA.Common;
using MGDesign.MasterSCADA;
using MGDesign.Hosts;
using MGDesign.Items;
using System.IO;
using System.Drawing;
using System.Windows.Forms;

public partial class ФБ : ScriptBase
{
string NewName; // новое имя из имени объекта
//чтобы выполнить скрипт - нажмите кнопку DoAction
public override void DoAction()
{
var elem = (ITreeItemHlp)HostFB.TreeItemHlp.Project.ObjectTre eRootItem; // устанавливаем местоположение скрипта как в корневом объекте
elem.NavigateChilds(delegate(ITreeObjectHlp item)
{
if (item.ObjectType != EObjectType.otFolder) //проверка что переменная это объект
return true; //если не объект - переход к следующему объекту
//создание переменной команды "Имя_Объекта"
var name=(ITreePinHlp)HostFB.TreeItemHlp.Project.Item( item.FullName+".Имя_Объекта");
if (name==null) return true; //если такой команды нет - переход к следующему объекту
string StrName=name.ParentObject.Name; //определяем имя объекта
name.ConstValue=StrName; //записываем в константу
name.ApplyChange(""); //применяем
return true;
}, TreeItemMask.Object, (NavigateItemsFlags)0);
}
}

Скрипт сделан усечением из другого - может быть с ошибками, но принцип мы думаем ясен.

Vini74
13.09.2016, 14:53
Спасибо. Вот рабочий вариант Скрипта.

using System;
using MasterSCADA.Script.FB;
using MasterSCADA.Hlp;
using FB;
using MasterSCADALib;
using MasterSCADA.Common;

public partial class ФБ : ScriptBase
{
string NewName; // новое имя из имени объекта
//чтобы выполнить скрипт - нажмите кнопку DoAction
public override void DoAction()
{
var elem = (ITreeItemHlp)HostFB.TreeItemHlp.Project.ObjectTre eRootItem; // устанавливаем местоположение скрипта как в корневом объекте
elem.NavigateChilds(delegate(ITreeObjectHlp item)
{
if (item.ObjectType != EObjectType.otFolder) //проверка что переменная это объект
return true; //если не объект - переход к следующему объекту
//создание переменной команды "Имя_Объекта"
var name=(ITreePinHlp)HostFB.TreeItemHlp.Project.Item( item.FullName+".Имя_Объекта");
if (name==null) return true; //если такой команды нет - переход к следующему объекту
string StrName=name.ParentObject.Name; //определяем имя объекта
name.ConstValue=StrName; //записываем в константу
name.ApplyChange(""); //применяем
return true;
}, TreeItemMask.Object, (NavigateItemsFlags)0);
}
}

Amko
13.09.2016, 22:26
Редактор отчетов работает только с архивом данных, и не работает с архивом сообщений.
Как вариант - можно с помощью скрипта отслеживать появление событий и записывать их на выходы скрипта. А уже эти выходы скрипта использовать в редакторе отчетов.
В приложении проект с несколькими различными скриптами для работы с архивом сообщений, вам нужен пример "Отслеживание сообщений категорий и источников".
Подробнее также описано здесь:
http://blog.insat.ru/2016/08/c-masterscada_13.html

Т.е. это в отчете будут фиксироваться только единичные моменты формирования сообщений? Немного не понял предложенный подход.
Если у меня 400 аварийных сообщений, мне надо 400 ФБ C#? И как их в одну таблицу сводить...

SCADAMaster
14.09.2016, 09:29
Т.е. это в отчете будут фиксироваться только единичные моменты формирования сообщений? Немного не понял предложенный подход.

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



Если у меня 400 аварийных сообщений, мне надо 400 ФБ C#? И как их в одну таблицу сводить...
Нет, ФБ будет один - он будет собирать данные со всего проекта.

Vitorgan
14.09.2016, 13:47
ScadaMaster, подскажите пожалуйста, когда будет решена проблема с WORD_TO_INT?

SCADAMaster
14.09.2016, 14:06
Мы сообщим когда разберемся с проблемой.

Amko
15.09.2016, 05:28
Подскажите вот такую вещь, пожалуйста. Доделываю проект, внешних переменных немного - 250. Объектов 1500, фб2100 штук. Ввод аналоговых параметров работает хорошо. Тренды рисуются, даже отчет аварийных сообщений приделал. Но никак не могу добиться быстродействия на дискретных сигналах. Кнопки жмутся по 2-3 секунды, сигналы управления еле уходят в плк. Настройки опроса такие: опрос ОРС сервера 50мс, галка период. опрос объектов снята. Передача данных ОРС серверу по изменению входов.
В настройке самого ОРС сервера опрос каждые 100мс.
ПЛК - S7-1200, OPC сервер ваш, от Инсат.

Добавлял и контрол Кнопка из палитры "Управление". Тупит моя скада, тупит.
Рад любому совету, в каком направлении двигаться.

SCADAMaster
15.09.2016, 08:48
Как у вас сделаны кнопки? Через выходы динамизации?
Нужно просто вытащить команду типа дискретный на мнемосхему - она станет кнопкой. Эту кнопку удерживать не нужно.
С циклами лучше не играться - попробуйте сначала вернуть стандартный 1000 мс. Если будет недостаточно для работы (как правило достаточно), то нужно снижать его на всех уровнях - в ОРС сервер, в настройках опроса ОРС в скаде, в циклах опроса объектов (везде ставить одно значение)

Amko
15.09.2016, 10:25
Кнопки сделаны Командой. Вытаскиваю лкм на мнемосхему - она становится кнопкой. Далее команду привязываю к ОРС переменной. Включаю рантайм, жму на кнопку. Она включается, но импульс в ОРС не проходит (наблюдаю лог орс сервера) . Причем, нажав на кнопку и убрав мышку кнопка остается в нажатом положении еще секунды 2-3. Сама. Где то на косячил)
Попробую веруть все настройки опроса к стандартным. Еще отпишусь)

SCADAMaster
15.09.2016, 11:56
Удержание кнопки на 2-3 секунды - это нормальное поведение.
А вот если установлены разные периоды опроса, например у объекта где лежит кнопка 50 мс, а у ОРС сервера 1000, то тогда значение может и не передаться.

Amko
15.09.2016, 13:05
Вернул настройки по умолчанию. А по умолчанию к объектов это опрос по изменению. И передача данных ОРС серверу тоже по изменению стоит по умолчанию. Мне лучше переключить на периодический опрос? Потому что реакция на нажатие кнопки есть, но задержка порядке 3-4 секунд. Позже скину архив с настройками.
Спасибо за подсказки.

SCADAMaster
15.09.2016, 14:02
Как вы проверяете время реакции?
Приложите ваш проект, выполните Проект - Экспортировать, сформированную папку заархивируйте и вышлите нам.

Amko
15.09.2016, 14:18
Ну как, нажимаю кнопку на мнемосхеме. Кнопка прижалася, жду, жду, включилась реле в шкафу), жду, жду, появился зеленый индикатор на мнемосхеме - реле прижато. Как то так)
Архив отправил личным сообщением.

SCADAMaster
15.09.2016, 15:29
SCADAMaster , в версии 3.7.1.54827 (в других не проверял) не работает WORD_TO_INT (если данное преобразование происходит в функциональном блоке)

В приложенном проекте 2 программы, одна работает без ФБ, вторая идентичная, только вызов ФБ происходит из библиотеки. Как только ворду присваиваю больше >32767, выход программы отваливается, показывая ошибку.

Ошибка исправлена в текущей Beta версии.

SCADAMaster
15.09.2016, 15:32
Ну как, нажимаю кнопку на мнемосхеме. Кнопка прижалася, жду, жду, включилась реле в шкафу), жду, жду, появился зеленый индикатор на мнемосхеме - реле прижато. Как то так)
Архив отправил личным сообщением.
С циклом в 1000 мс, примерно так и получится - послать запрос, ОРС послал запрос, дождался ответ, скада получила передала дальше.
Можно попробовать снижать время опроса - снизьте его в параметрах опроса в ОРС сервере, в параметрах опроса ОРС в скаде и период опроса объектов. Везде поставьте одинаковое значение. Можно начать с 500 мс.

Vitorgan
16.09.2016, 09:52
Ошибка исправлена в текущей Beta версии.

Спасибо большое, для ключевой версии обращаюсь на почту insat?

SCADAMaster
16.09.2016, 10:14
Пока что в стабильуню версию исправление не внесено. Слишком много было правок и переносить одно изменнеие затруднительно.
Мы планируем через неделю-две выпустить 3.8, в нее это изменение попадет.

Если нужно срочно - можем собрать Beta версию на ключ.

Amko
16.09.2016, 11:22
Пытаюсь уменьшить время опроса. Настройки стоят по умолчанию, уменьшаю только параметры "опрос ОРС сервера", "период цикла опроса объектов" и "период опроса" в настройках самого ОРС сервера. Не получается. Тормозит, сигналы не уходят. Думаю уже, что 1.5к объектов для мастерскады много и придется заняться оптимизацией проекта. Неужели так у всех?(

SCADAMaster
16.09.2016, 11:37
Приложите ваш проект и конфигурацию ОРС сервера.

Amko
16.09.2016, 11:44
Я же отправил ссылку на архив личным сообщением...

SCADAMaster
16.09.2016, 12:14
Нет, пришлите последнюю версию, после того как вы установили новые времена.
И укажите путь к кнопке на которую вы нажимаете

Shnurutra
16.09.2016, 16:10
Здравствуйте!

Можно ли из MasterSCADA вызвать другое приложение? Например калькулятор. А так же, можно ли кнопке привязать сочетание клавиш Windows?

Спасибо.

Vitorgan
16.09.2016, 19:15
ScadaMaster не починили, переустановил себе, открыл свой же проект который вам скидывал, такая же беда. вообще ничего не изменилось

Vitorgan
16.09.2016, 19:26
Теперь для скады int_to_real уже неизвестная функция в библиотеке, то что раньше компилировалось, теперь ошибку выдает...

SCADAMaster
17.09.2016, 09:56
Теперь для скады int_to_real уже неизвестная функция в библиотеке, то что раньше компилировалось, теперь ошибку выдает...
Да, забыли сказать - нужно в библиотеке перекомпилировать код.

SCADAMaster
17.09.2016, 09:58
Можно ли из MasterSCADA вызвать другое приложение? Например калькулятор.

С помощью ФБ "Запуск процесса". В "Имя команды" пропишите calc.exe



А так же, можно ли кнопке привязать сочетание клавиш Windows?

Создаете команду типа дискретный и вытаскиваете ее на мнемосхему - она станет кнопкой.
У команды, на закладке "Общие" есть раздел "Горячая клавиша" где можно сделать привязку.

osc
21.09.2016, 09:39
В SMS-сообщениях, отправляемых MasterSCADA при использовании канала СМС, время сдвинуто на три часа в большую сторону. При этом в журнале и окне сообщений время отображается правильно.
Шаблон: [Время]\[Текст]

Как-то можно это изменить?

SCADAMaster
21.09.2016, 10:24
Это ошибка. Она уже исправлена.
Вам нужно обновить до текущей версии

osc
21.09.2016, 11:12
Только что установил демоверсию (версия 3.7.0.55057 3.7(DemoReleaseMin)_16_08_19_22_22). Ничего не поменялось.
Может нужно что-то ещё обновить? Пересоздать проект, например?

SCADAMaster
21.09.2016, 11:28
В Demo версию исправление пока не попало.
Если вам нужна именно Demo - вы можете скачать Beta версию, у нее такой же функционал, в ней исправление доступно. Лежит на том же FTP

osc
21.09.2016, 14:19
Спасибо.

Ещё есть вопросы по поводу сервиса "Внешние связи".
Есть ли возможность при импорте указать тип и шкалу входа/выхода?
На данный момент в нашем проекте около 1000 OPC-переменных, среди них около 150 дискретных, целочисленных и вещественных примерно поровну, процентов 60 переменных для чтения / записи. Хотелось бы избежать необходимости проставлять вручную типы и шкалы для такого количества.

Кроме того, когда привязываешь внутренний вход "Внешних связей" к формуле события или расчёта, почему-то в таблице "Внешних связей" наличие такой связи не указывается. Ели нам понадобится внести изменения в эту таблицу с помощью импорта, не приведёт ли это к разрыву связей с событиями?

Vitorgan
22.09.2016, 13:43
ScadaMaster, подскажите пожалуйста, по поводу 3.8 все еще актуально, ждать к 30 числам? А то в бета версии новые правки в библиотеки не вставляются, и новые не добавляются, как бы в самой вкладке библиотеке все создается, а скрипты вновь добавленные Ф и ФБ не видят, и еще заметил что в папке MasterSCADA Projects\Projects\название проекта\Config\Library\ST\... создаются только 2 файла с названием библиотеки с расширением .cs и zip (архив) и файл LinkedLibs.xml, а вот в старых проектах до переустановки на бета версию с исправлениями WORD_TO_INT, присутствуют еще два файла c расширением .dll и .pdb. Как только из старого проекта перекинул содержимое папки library. скрипты увидели библиотечные ФБ. но теперь я в засаде. я не могу из за данной ошибки добавлять что-то в библиотеку. Очень жду 3.8, надеюсь эпопея с ST закончится. Если возможно проверьте в готовящейся 3.8 данный баг.

SCADAMaster
22.09.2016, 14:04
А то в бета версии новые правки в библиотеки не вставляются, и новые не добавляются, как бы в самой вкладке библиотеке все создается, а скрипты вновь добавленные Ф и ФБ не видят, и еще заметил что в папке MasterSCADA Projects\Projects\название проекта\Config\Library\ST\...
Опишите данную проблему подробнее, а также приложите несколько скриншотов и ваш проект.

Vitorgan
22.09.2016, 14:32
Вот, проект полностью скопрован с рабочего, созданного в старой версии.
26510
26514
26511
26512

osc
22.09.2016, 15:34
В дополнение к предыдущим вопросам (http://www.owen.ru/forum/showthread.php?t=11806&p=221055&viewfull=1#post221055) по сервису "Внешние связи".

1. Если вручную настроить типы входов, а затем экспортировать внешние связи в файл и импортировать отредактированный файл обратно, то тип всех входов устанавливается в вещественный двойной точности. Также разрываются связи между входами и событиями. Получается данный сервис можно использовать только для вещественных переменных. Не планируется ли в ближайшее время добавить возможность работы с переменными другого типа?

2. Есть ли ещё какой-нибудь способ автоматизации создания связей между переменными OPC-сервера и объектами проекта?

3. Текущий OPC-сервер нормально работает с одним контроллером и тысячью переменными, а с сорока контроллерами у него проблемы. Поэтому планируется замена OPC-сервера. Каким образом мы должны строить проект, чтобы замена OPC-сервера в будущем прошла безболезненно?

U_Dimas
26.09.2016, 06:55
Здравствуйте
Вот такой вопрос возможно ли при нажатие на изображение открывать документ ?

SCADAMaster
26.09.2016, 09:16
Здравствуйте
Вот такой вопрос возможно ли при нажатие на изображение открывать документ ?
Возможно. Вытащите объект на мнемосхему правой кнопкой мыши и выберите нужный документ. В свойствах кнопки задайте "Прозрачная кнопка" и положите поверх изображения

artamonov
26.09.2016, 11:16
Здравствуйте! Как сделать так, чтобы при нажатии на "кнопку с фиксацией" выставлялся определенный бит в теге OPC-сервера. Бит 1 и бит 2, и если выставлен бит, чтобы кнопки были нажаты, если не выставлен, то отжаты. Не получается сделать.

SCADAMaster
26.09.2016, 11:38
Поясните - нужно чтобы была и обратная связь от битов и управление ими?

artamonov
26.09.2016, 11:38
Да-да, именно так.

osc
26.09.2016, 12:10
Здравствуйте
Подскажите пожалуйста как в скрипте добраться до обратной связи команды, чтобы затем подключить к ней OPC-переменную? Саму команду связал, а где искать обратную связь не соображу

SCADAMaster
26.09.2016, 12:49
Да-да, именно так.
Посмотрите эту тему:
http://www.owen.ru/forum/showthread.php?t=24971

SCADAMaster
26.09.2016, 12:50
Здравствуйте
Подскажите пожалуйста как в скрипте добраться до обратной связи команды, чтобы затем подключить к ней OPC-переменную? Саму команду связал, а где искать обратную связь не соображу
Вы хотите с помощью скрипта добавить в поле обратной связи связь с ОРС переменной?
Чем не подходит стандаттный вариант перетаскивания?

И ОРС переменную мы туда явно связывать не рекомендуем. Лучше делать это через повторитель - выход в обратную связь, а вход - с ОРС переменой

osc
26.09.2016, 13:16
Переменных 1050 штук. Чтобы избежать ошибок, сэкономить время, а также иметь возможность автоматически обновлять дерево объектов при добавлении/удалении переменных хочу сделать как в учебном примере "Демонстрация скрипта". Пока получается, кроме как с обратной связью команды.

Повторитель связать с OPC-переменной получилось. Спасибо за идею.
Возникает вопрос производительности. Предполагается, что в нашем проекте будет 40 объектов, в каждом из которых в настоящий момент задействованы 1050 переменных. Как скажется наличие 40к+ повторителей на скорости работы / потреблении памяти?

SCADAMaster
26.09.2016, 13:25
Существенного влияния они не должны оказать.
Кроме того если опрос стоит по изменению, то не все будут исполняться в один момент времени.

artamonov
26.09.2016, 13:38
SCADAMaster, спасибо! Приладил к своему проекту, работает.
Оффтоп, конечно, но почему такая простая, казалось-бы, операция выполняется так сложно, похоже на мазохизм.

SCADAMaster
26.09.2016, 13:45
Есть свои нюансы, это решение позволяет избежать различных проблем при работе с битами - зацикливания, несоответствия состояний и т.д.

SCADAMaster
26.09.2016, 16:12
SCADAMaster , в версии 3.7.1.54827 (в других не проверял) не работает WORD_TO_INT (если данное преобразование происходит в функциональном блоке)

В приложенном проекте 2 программы, одна работает без ФБ, вторая идентичная, только вызов ФБ происходит из библиотеки. Как только ворду присваиваю больше >32767, выход программы отваливается, показывая ошибку.

Ошибка исправлена. Исправление доступно в Beta версии

Vitorgan
26.09.2016, 17:04
Данное исправление было уже в предыдущей версии бета-версии. проблема с созданием библиотек исправлена? будет ли обещанная 3.8 к пятнице?

SCADAMaster
26.09.2016, 17:15
Ошибка исправлена сегодня. Beta версия доступна на FTP по тому же адресу.
По 3.8 ничего сказать не можем.

oleg1821
27.09.2016, 10:20
Где вводится диапазон ограничения вводимых значений в элементе значения26663
Разобрался.

SCADAMaster
27.09.2016, 13:19
Он определяется шкалой переменной.

osc
27.09.2016, 14:41
Здравствуйте
Столкнулся с проблемой ограничения прав доступа.
При реализации выдачи команд с помощью выпадающего списка отказа в доступе не происходит, сигналы уходят в контроллер.
Если перетаскивать команды на мнемосхему, то ограничения срабатывают.
Что нужно сделать чтобы ограничения срабатывали и для выпадающих списков?

SCADAMaster
27.09.2016, 14:54
Выпадающие списки - это AciveX контролы, на них права доступа не распространяются, так как контролировать их нельзя.
Если вам нужны раскрывающиеся списки вариантов три (от лучшего к худшему):
1. Использовать команды типа Перечислимые. Система - Шкалы - Перечислимые. Создаете шкалу, назначаете переменной, вытаскиваете на мнемосхему. К таким переменным права доступа применяются.
2. Положить раскрывающийся список в окно, доступ к которому ограничивать
3. С помощью ФБ "Служебная информация" определять должность оператора и блокировать контрол через входы динамизации

osc
27.09.2016, 16:08
Понятно. Спасибо.
А если сделать визуальный функциональный блок, тоже ничего не получится?
Его входы / выходы видны же в дереве системы

SCADAMaster
28.09.2016, 09:37
Если разработаете свой ВФБ, то к нему конечно можно применить права доступа.
Про права доступа в собственных ВФБ описано в документации по разработке, в разделе Структура элемента <Rights> …</Rights>

osc
28.09.2016, 16:59
Здравствуйте
Для скачивания текущей демо бета-версии нужно быть зарегистрированным как пользователь коммерческой версии MasterSCADA? Или я не вижу её на ftp по другой причине?

SCADAMaster
28.09.2016, 17:10
Вы на каком FTP смотрите?
У нас около года назад сменился FTP - на нем выложены и DEMO и Beta.

osc
28.09.2016, 17:16
ftp.masterhost.ru
Мне его на странице загрузки демоверсий предлагают

Мне видно:
Cron/
DEMO-DISK/
Documentation/
.ftpaccess
masteropc_di_61850/
MasterSCADA-DEMO/
MasterSCADA_RT-32/
MB_OPCSERVER_32DEMO/
MULTI-PROTOCOL-MASTEROPCSERVER_DEMO/
Old Demo/
OLD OPC servers/
OPC servers/
Other/
ReadMe.txt
Sabros-6/

Содержимое MasterSCADA-DEMO:
1-st_Setup_MasterSCADA/
707784843.php
.htaccess
post.php
Repeat_Setup_MasterSCADA/

SCADAMaster
28.09.2016, 17:32
Это старый.
Напишите на support - мы вышлем параметры на новый.
Или зайдите в раздел техподдержки на сайте - там обновлено.

U_Dimas
29.09.2016, 09:37
Вопрос - для включения механизма использую кнопку с фиксацией, но для включения необходимо подавать сигнал 1000 на овеновский прибор. Как можно поступить в данном случае ?

SCADAMaster
29.09.2016, 10:23
Если используется наш Mobus OPC сервер, то можно просто включить функцию "Пересчет" - задать коэффициент A=0.001, чтобы произвести домножение.
Либо можно сделать это на уровне скады - с помощью модуля Расчет умножить значение вашей дискретной команды на 1000.

artamonov
30.09.2016, 10:21
В чем отличия между расчетом, созданными из палитры, и расчетом, созданным правой кнопкой мыши на объекте "Вставить - Расчет"? В первом случае есть "Результат" и "Переменные", а во втором такое отсутствует.

SCADAMaster
30.09.2016, 10:39
В палитре - это старая версия расчета, которая представляет собой ФБ.
Добавляйте через контекстное меню.

artamonov
03.10.2016, 14:13
Здравствуйте! У меня с устройства передается величина напряжения, умноженная на 25. Считываю по Modbus эту величину в значение дерева объектов. Как мне его масштабировать (поделить на 25)? Использовать расчет?

SCADAMaster
03.10.2016, 15:02
Вы считываете его с помощью нашего Modbus Universal MasterOPC?
Тогда лучше сделать преобразование на уровне ОРС сервера. Для этого включите у тега функцию "Пересчет", коэффициент А задайте равным 0.04, тип тега в Сервере задайте Float.

artamonov
03.10.2016, 15:48
Нет, не вашим OPC. А в самой MasterScada как?

SCADAMaster
03.10.2016, 17:51
С помощью модуля "Расчет". Но лучше конечно сменить на наш ОРС - избавитесь от многих проблем.

Aleksandr
05.10.2016, 20:55
Сделана возможность задавать динамическое описание, но в тренде пока это использовать нельзя - берется только статичное имя.
Мы сделаем доработки и в тренде.

Сделано ли эта доработка. Спасибо.

SCADAMaster
05.10.2016, 22:58
Нет. Пока еще не сделано.

artamonov
06.10.2016, 10:15
Доброе утро! Есть ли функция в Программе ST, чтобы интерпретировать DWORD как REAL?
А можно ли тогда создать свою функцию на языке ST и вставить в Программу ST

osc
06.10.2016, 16:22
Здравствуйте

Создавая с помощью C#-скриптов объекты в дереве проекта столкнулся с необходимостью перепривязки кнопки вызова окна на мнемосхеме к вновь созданному объекту. Как это делается в C#?
В учебном проекте "ДемонстрацияСкрипта" показано, как создать такую кнопку, но мне необходимо изменять также настройки окна (заголовок и размер). Если можно добраться до этих настроек, то это тоже бы подошло.

SCADAMaster
07.10.2016, 12:57
Доброе утро! Есть ли функция в Программе ST, чтобы интерпретировать DWORD как REAL?
А можно ли тогда создать свою функцию на языке ST и вставить в Программу ST
Функция Word_to_Real.
Была ошибка в ее работе. Ошибка исправлена, исправление доступно в Beta версии.

artamonov
07.10.2016, 13:09
исправление доступно в Beta версии.
Я что-то не могу на FTP-сервере найти бета-версии(

SCADAMaster
07.10.2016, 13:46
Возможно вы пытаетесь подключиться на старый FTP.
Обратитесь на support - мы дадим параметры на новый. Или зайдите в раздел техподдержки на сайте - там должна быть параметры

artamonov
07.10.2016, 15:45
Функция Word_to_Real.
Была ошибка в ее работе. Ошибка исправлена, исправление доступно в Beta версии.
Конечно я пытаюсь подключиться на старый FTP, потому что о новом на сайте не написано.Спасибо техподдержке - выслала новые параметры и я скачал бета-версию.
Но видимо мы не поняли друг друга.)
Поясню. Есть допустим DWORD 0x41d13333. В десятичном это 1104229171, если использовать вашу функцию отображается как 1104229171.00. А мне надо преобразовать его в REAL и получить 26.15. Я конечно могу написать свою функцию, но нет ли стандартных?

SCADAMaster
07.10.2016, 16:49
Нет, стандартных нет.
У нас реализованны функции стандарта ST, в нем подобных функций нет.

artamonov
07.10.2016, 16:58
Нет, стандартных нет.
У нас реализованны функции стандарта ST, в нем подобных функций нет.
Я разобрался, написал функцию преобразования и вызываю её в ST-программе. Спасибо.

Эдуард_Н
09.10.2016, 11:46
Подскажите как добавить-изменить пароль в MasterSCADA для запрета редактирования проекта?

Эдуард_Н
09.10.2016, 18:17
Спасибо, нашёл.

Kulman
12.10.2016, 21:37
Здравствуйте! Подскажите, в чем проблема:
Установил dotNetFx40_Full_x86_x64 и owenlogic_v1.8.62 на один ноутбук с виндовс 7 - owenlogic нормально запускается.
Установил то же самое на другой ноутбук (тоже виндовс 7) - появляется окно owenlogic, экран приветствия (фотка реле) и виснет. Иногда еще появляются панели инструментов в окне owenlogic, но они недоступны, т.к. поверх окно приветствия.
Навожу на панель задач - видно, что открыто два окна, но окно приветствия отдельно не закрывается. Оба окна закрываются только через диспетчер задач.

SCADAMaster
13.10.2016, 08:21
Данный вопрос вам нужно задать в разделе эксплуатация или программируемые реле

artamonov
14.10.2016, 13:56
Здравствуйте! Как при открытии определенной Мнемосхемы записывать в соответствующее Значение единичку?

SCADAMaster
14.10.2016, 15:13
В закладке палитры Служебные есть ФБ "Управление доментом", с его помощью можно отслеживать состояние различных документом, в том числе мнемосхем.

artamonov
14.10.2016, 15:48
Спасибо. Работает.

Pimpl
17.10.2016, 10:42
Столкнулся со следующей проблемой. Вытаскиваю кнопку из палитры, привязываю к выходу команду. Хочу чтобы при нажатии выдавалась цифра 2048, настраиваю. Цифра при нажатии выдаётся только при нажатии и удерживании кнопки подольше. То есть сам факт быстрого нажатия не выдаёт нужную команду. Что я возможно делаю не так? Может можно как-то настроить чувствительность кнопки?

SCADAMaster
17.10.2016, 11:43
Создайте команду типа "дискретный" и вытащите на мнемосхему - она станет кнопкой. Ее удерживать не надо

Pimpl
17.10.2016, 11:59
Но тогда же будет чисто булевское значение. А если нужно для дать определённую цифру? Например включить 32 а выключить 64?

SCADAMaster
17.10.2016, 12:33
Взводить определенный бит или именно число?

Pimpl
17.10.2016, 12:41
На данный момент необходимо число. Но если есть возможность только бит, то подскажите как? Число в принципе шлёт, но не совсем корректно (необходимо держать кнопку чтобы команда отработала)

SCADAMaster
17.10.2016, 13:01
На данный момент необходимо число.
В модуле Расчет напишите
ЕСЛИ (Команда=истина, 32, 64).


Но если есть возможность только бит, то подскажите как? Число в принципе шлёт, но не совсем корректно (необходимо держать кнопку чтобы команда отработала)
С помощью ФБ "Упаковка 32-битного значения" из закладки "Обработка сигналов" палитры ФБ

Pimpl
18.10.2016, 10:35
Спасибо. Подскажите, возможно ли в журнале действий фиксировать неудачные попытки войти в систему?

za9c
18.10.2016, 10:53
Подскажите какой функцией при построении отчёта делать временные выборки! Т.е. нужны показания нескольких переменыых только в 8-00, 13-00, и 17 -00!

SCADAMaster
18.10.2016, 11:34
Спасибо. Подскажите, возможно ли в журнале действий фиксировать неудачные попытки войти в систему?
Пока что нельзя. Но недавно мы закончили доработки по выводу в том числе неудачных попыток. Функционал будет доступен в версии 3.8
Сейчас его можно попробовать в Beta версии (находится на том же FTP, что и Demo версия)

SCADAMaster
18.10.2016, 11:36
Подскажите какой функцией при построении отчёта делать временные выборки! Т.е. нужны показания нескольких переменыых только в 8-00, 13-00, и 17 -00!
То есть нужны значения только в определенный момент времени?
Можно на этапе формирования данных записывать в архив только эти значения (через ФБ "Повторитель по условию").
Либо можно формировать отчет с шагом в час, а затем использовать фильтрацию бэнда - оставить только данные в нужные вам времена

Vitorgan
18.10.2016, 12:10
SCADAMaster, подскажите пожалуйста, каким способом собрать DT в DWORD, в мастерскаде не поддерживается преобразование DT вообще.

SCADAMaster
18.10.2016, 13:11
В скрипт ST? Какая конечная цель?

Vitorgan
18.10.2016, 13:29
конечная цель дату и время в одну Dword

energvk
18.10.2016, 13:43
Это можно сделать скриптом ST. Можно использовать код от petera, например.
http://www.owen.ru/forum/showthread.php?t=10555&p=161139&viewfull=1#post161139

SCADAMaster
18.10.2016, 13:51
Разберите время на составляющие с помощью "Разбор времени", а затем в расчете выполните вычисление.

Vitorgan
18.10.2016, 14:00
Это можно сделать скриптом ST. Можно использовать код от petera, например.
http://www.owen.ru/forum/showthread.php?t=10555&p=161139&viewfull=1#post161139

Нельзя, petera использует преобразования, которые Masterscadой не поддерживаются.

Vitorgan
18.10.2016, 14:02
Разберите время на составляющие с помощью "Разбор времени", а затем в расчете выполните вычисление.

Не понимаю какие вычисления? года, месяца, дни в секунды переводить?

SCADAMaster
18.10.2016, 14:13
Не понимаю какие вычисления? года, месяца, дни в секунды переводить?
Ну да. А вам что требуется?
Куда потом это время будете использовать?

SCADAMaster
18.10.2016, 14:23
Вам что в итоге нужно найти? Количество секунд с какого то момента времени (с 1970 года)?
Куда вы планируете это значение использовать?

Vitorgan
18.10.2016, 14:37
Я хотел использовать так:

Есть уставкок 150 штук, из мастерскады в ПЛК идут через файл csv, чтобы обезопасить себя от умершего аккума в ПЛК и слета всех ретайн уставок, решил вместе с уставками передавать в ПЛК число в Dword в котором спрятана дата и время в секундах. При инициализации Скада сверяет свою дату уставок с датой уставок в ПЛК

Убиваю сразу 2 зайцев, сверяю Dword (дату-время) скинутое на ПЛК при изменении уставок, с Dwordом которое было одновременно сохранено в файл(например). И глазами вижу всегда уставки какой даты хранятся в ПЛК.

SCADAMaster
18.10.2016, 15:31
Вообщем вам нужно или время скады перевести в Word или наоборот?
В обоих случаях делается в расчете.
Насколько я помню в ОВЕН время идет в секундах от 1970 года.
Тогда время DWord во время скады будет вычисляться:
Int2Date( 1,1,1970 )+ КоличествоСекунд
Если нужно наоборот, то вычитаете из текущего времени 1970 год:
DateTime( ) - Int2Date( 1,1,1970 )

Vitorgan
18.10.2016, 23:24
Нет, мне просто нужно текущее время в DWord, в плк будет храниться данная переменная вместе с уставками, никакой работы со временем в ПЛК не используется.
сделал по аналогии с вашей формулой текущее время, на расчет все равно вида DT, ни огромное число в секундах, а отображается как дата.

energvk
19.10.2016, 00:35
Вообщем вам нужно или время скады перевести в Word или наоборот?
В обоих случаях делается в расчете.
Насколько я помню в ОВЕН время идет в секундах от 1970 года.
Тогда время DWord во время скады будет вычисляться:
Int2Date( 1,1,1970 )+ КоличествоСекунд
Если нужно наоборот, то вычитаете из текущего времени 1970 год:
DateTime( ) - Int2Date( 1,1,1970 )

Блин, оказывается просто до гениального!!!!
Такой огород в ST не нужно городить (а он существует, независимо от

Цитата Сообщение от energvk Посмотреть сообщение
Это можно сделать скриптом ST. Можно использовать код от petera, например.
http://www.owen.ru/forum/showthread....l=1#post161139
Нельзя, petera использует преобразования, которые Masterscadой не поддерживаются. )

P.S. Огромнейшее спасибо!

P.P.S.

Нет, мне просто нужно текущее время в DWord, в плк будет храниться данная переменная вместе с уставками, никакой работы со временем в ПЛК не используется.
сделал по аналогии с вашей формулой текущее время, на расчет все равно вида DT, ни огромное число в секундах, а отображается как дата.

Всё работает
27085

P.P.P.S.

Расчёт1 - это полученное значение времени в DWORD (преобразую из двух WORD, полученных по сети - можно сразу в DWORD вводить), Расчёт2 -

Тогда время DWord во время скады будет вычисляться:
Int2Date( 1,1,1970 )+ Расчёт1

Расчёт3 - обратное преобразование текущего времени:

Если нужно наоборот, то вычитаете из текущего времени 1970 год:
DateTime( ) - Int2Date( 1,1,1970 )

SCADAMaster
19.10.2016, 08:53
сделал по аналогии с вашей формулой текущее время, на расчет все равно вида DT, ни огромное число в секундах, а отображается как дата.
У нас все корректно:

za9c
21.10.2016, 09:32
Запутался совсем! общая картина - весы удалённые - при заезде машины показания меняются от 0 до массы и обратно - OPC считывают показания! Я строю отчёт по методичке(http://www.masterscada.ru/files/art_step_by_step/MasterReport_Part_3.pdf) 3.3 периодический - в качестве события использую формулу (если масса>0,истина,ложь) , в колонке значений массы выбираю функцию Max(данные.масса)! Высчитывается правильно максимальное значение, но, получается много строк с максимальным значением 5-6 постоянно - как их отфильтровать чтоб оставалось только одна строка с максимальным значением!

SCADAMaster
21.10.2016, 10:21
Вам нужно у колонки которая привязана к событию установить в свойствах "Основной", а у веса - выключить это свойство. Количество строк в таком случае должно получится две - при переходе в Истина и назад. Для фильтрации в бэнде есть фильтр, отфильтруйте - оставьте только когда событие было истинно.
И лучше формулу сделать не от 0, а чуть больше - у весов возможно дрожание на нижней планке.
Возьмите килограмм 100 - вряд ли автомобиль весит меньше.
И формулу можно проще написать:
Масса>100

za9c
21.10.2016, 10:40
0 был принят условно - у меня 5 тонн стоит - до 40 меряем, ещё вопрос по MasterOPC universal modbus - может ли он прослушивать линию? или только запрос ответ - если нет будет ли когда нибудь такая функция? Просто в старых весах - выход есть на принтер - и при взвешивании(нажатии на кнопку) он автоматом выдаёт данные в RS232(протокол от производителя получили)-т.е. без запроса от OPC! Приходится сторонними программами перехватывать данные и сохранять их а потом считывать из файла! долго и муторно. Заранее СПС!

SCADAMaster
21.10.2016, 11:36
Может и в режиме прослушки. В функции sendandrecivedatabymask просто указываете ноль в количестве отправляемых элементов.
Узел все равно должен быть тип Master.
И нужно будет в каждом цикле проверять приняла ли что-то функция. Если приняла - то тогда записывать в теги, иначе выходить из функции чтения

za9c
21.10.2016, 14:39
Вам нужно у колонки которая привязана к событию установить в свойствах "Основной", а у веса - выключить это свойство. Количество строк в таком случае должно получится две - при переходе в Истина и назад. Для фильтрации в бэнде есть фильтр, отфильтруйте - оставьте только когда событие было истинно.
И лучше формулу сделать не от 0, а чуть больше - у весов возможно дрожание на нижней планке.
Возьмите килограмм 100 - вряд ли автомобиль весит меньше.
И формулу можно проще написать:
Масса>100
попробовал - не получилось. при измерении значений за время T приходит допустим 5 параметров выше уставки сработки события что на весах масса более 5 тон - и на каждый положительный ответ событие устанавливается в истину(с истины в истину). после создания отчёта всё равно пишет 5100 - true, 7000 true и т.д. хотя должно по идее так- при переходе в истину начало интервала - при переходе в ложь конец(и в этом интервале ищем максимум). - а получается даже при переходе с истины в истину отображается в отчёте максимум. как так?

SCADAMaster
21.10.2016, 14:49
У вас событие не меняет свое состояние? Когда машина заехала она все время находится во включенном состоянии?
Тогда не должно ничего пульсировать. Если только архивация стоит периодическая - тогда может.

И вы должны также понимать - максимум не вернется. В строку выйдет то число, которое будет на момент возникновения импульса, то есть в момент перехода события из Ложь в Истина.

Pimpl
21.10.2016, 15:13
27173 подскажите что за ошибка. Возникает при импортировании узлов с библиотеки в проект. как это обойти?

SCADAMaster
21.10.2016, 15:30
Судя по всему это какой-то пользовательский ФБ, который не зарегестрирован в скаде правильно

Pimpl
21.10.2016, 15:34
Да, это свой ФБ. С ним получается работать, проблема возникает именно при импортировании из проекта в проект

za9c
21.10.2016, 15:51
У вас событие не меняет свое состояние? Когда машина заехала она все время находится во включенном состоянии?
Тогда не должно ничего пульсировать. Если только архивация стоит периодическая - тогда может.

И вы должны также понимать - максимум не вернется. В строку выйдет то число, которое будет на момент возникновения импульса, то есть в момент перехода события из Ложь в Истина.

да архивация не та стояла - но значение максимума для интервала false true false - получилось высчитать только через бенд Заголовок группы. при использовании функции Мах(данные.Масса) - писал только один общий максимум для всей таблицы, а не для интервалов переходов.
И ещё вопрос - при перетягивания бенда таблицы или данных - они по ширине на всю страницу - можно ли изменять размеры по горизонтали бенда или нет?

za9c
21.10.2016, 15:52
поробуй скопировать свой ФБ в тот проект куда импортируешь - а потом экспортируй!

SCADAMaster
21.10.2016, 15:54
Да, это свой ФБ. С ним получается работать, проблема возникает именно при импортировании из проекта в проект
На разных компьютерах?
На другой компьютер нужно перенести библиотеку и зарегить ее (в документации описано).

SCADAMaster
21.10.2016, 15:57
И ещё вопрос - при перетягивания бенда таблицы или данных - они по ширине на всю страницу - можно ли изменять размеры по горизонтали бенда или нет?
Нет и не нужно.
Зачем менять его ширину?

za9c
21.10.2016, 16:05
просто понять не могу - хочу сделать два независимых отчёта на одной странице - один слева - второй соответственно справа - а так получается один сверху - второй снизу - и почитать негде как это реализовать! В принципе мой вопрос по отчёту успешно решён - спасибо!

Pimpl
21.10.2016, 16:11
Один проект на одном компьютере , второй проект на другом. Библиотека одна и та же. Регистрировал библиотеку в командной строке (netreg ecl.dll). Причём оба проекта открываются на любом компьютере без проблем. Что первый что второй. Но как только пытаешься скопировать элементы с экрана одного проекта на экран второго проекта сразу начинаются проблемы. Что через библиотеку что через копипаст не получается.Через импортировании тоже не получается. Два проекта открыть параллельно тоже не получается, выдаёт ошибку. По отдельности проекты прекрасно открываются.

SCADAMaster
21.10.2016, 17:43
просто понять не могу - хочу сделать два независимых отчёта на одной странице - один слева - второй соответственно справа - а так получается один сверху - второй снизу - и почитать негде как это реализовать! В принципе мой вопрос по отчёту успешно решён - спасибо!
Используйте компонент "Панель" - делаете две панели. Кладете в каждую бэнд.

SCADAMaster
21.10.2016, 17:44
Один проект на одном компьютере , второй проект на другом. Библиотека одна и та же. Регистрировал библиотеку в командной строке (netreg ecl.dll). Причём оба проекта открываются на любом компьютере без проблем. Что первый что второй. Но как только пытаешься скопировать элементы с экрана одного проекта на экран второго проекта сразу начинаются проблемы. Что через библиотеку что через копипаст не получается.Через импортировании тоже не получается. Два проекта открыть параллельно тоже не получается, выдаёт ошибку. По отдельности проекты прекрасно открываются.
Регистрировали под администратором?
Попробуйте под администратором. Только укажите в bat файле регистрации полный путь к netreg (иначе будет искать ее в System32).
Скада должна быть закрыта

Pimpl
25.10.2016, 11:20
Скажите, возможно ли в Мастер Скада реализовать трансляцию потокового видео. Например в охранной системе трансляцию с камер? и как это лучше всего реализовать?Спасибо

SCADAMaster
25.10.2016, 13:32
Можно использовать компонент WEB-браузер, который находится в разделе Окна палитры мнемосхемы.

Если он не будет воспроизводить видео, а будет пытаться его скачать, то попробуйте переключить элемент WEB браузера на текущую версию Explorer. Для этого сначала убедитесь что у вас версия Internet Explorerне ниже версии 10. Также желательно сначала вашу страницу в Explorer и убедится что он открывается корректно. Если все корректно, то закройте Explorer и MasterSCADA.
После этого запустите редактор реестра (Пуск - Выполнить - Regedit). Найдите ключ реестра:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\ Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULA TION
В нем создайте параметр типа Dword, который назовите MasterSCADA.exe, значение параметра задайте 10000 (в десятичном формате).

Pimpl
25.10.2016, 14:00
А как это можно реализовать по локалке? если имеется только ip адрес устройства ?

SCADAMaster
25.10.2016, 15:52
В качестве URL указываете IP и все.

Pimpl
25.10.2016, 16:22
а разве таким образом я не получу просто интерфейс оборудования?

SCADAMaster
25.10.2016, 16:46
А это как реализовано устройство
Если камера поддерживает просмотр через WEB-интерфейс то увидите видео

IIeroniux
26.10.2016, 11:38
Ещё раз здравствуйте!

Такой вопрос, архивирую аналоговую переменную в БД FireBird. Также есть переменная D1, принимающая TRUE в начале работы и FALSE в конце работы. Мне нужно в интервале, когда D1=TRUE, найти минимальное и максимальное значение по архиву этой аналоговой переменной. Значение потом хотелось бы вывести на мнемосхему.
Искал в Расчетах, но там только мгновенное по архиву, среднее, интеграл и т.д., а min/max не имеется.
Подскажите как реализовать... заранее спасибо.

SCADAMaster
26.10.2016, 12:04
Скриптом:
http://blog.insat.ru/2015/09/Script-Archive.html

Pimpl
26.10.2016, 12:05
Подскажите пожалуйста, как можно экспортировать проект в текстовый файл? Конкретно мне нужен файл со списком всех моих объектов. Для ОРС можно нашёл экспорт в csv. Можно ли это сделать для объекта?

SCADAMaster
26.10.2016, 12:07
В HTML можно.
Проект - Документировать...

Pimpl
26.10.2016, 12:08
я пробовал. но там что-то ужасное в результате получается

SCADAMaster
26.10.2016, 12:49
Тогда только через скрипт. В приложении пример - можете адаптировать его настроив по иному фильтр

Pimpl
26.10.2016, 14:52
Скажите пожалуйста комбинации горячих клавиш для режима исполнения. Как вызвать-скрыть основную панель, я кроме Ctrl+F6 не знаю комбинаций. И второй вопрос. Как эти комбинации заблокировать в зависимости от прав доступа?Спасибо

SCADAMaster
26.10.2016, 15:10
Скрывать основную панель горячей клавишей нельзя - ее можно скрывать совсем.
Из горячих клавиш есть еще Alt+F10 - специальное меню, для действий.
Отключить горячие клавиши нельзя, но можно запретить действия которые они вызывают. Вы можете запретить переход к проекту например. Это делается через права доступа операторов

Andrew_Stranger
26.10.2016, 20:57
Подскажите пожалуйста откуда у емкости с мешалкой берется белый фон у мешалки?27290

SCADAMaster
27.10.2016, 08:32
Такая проблема проявляется с Windows 7 и более новыми. Мы знаем об этой проблеме

Pimpl
27.10.2016, 09:31
Скажите пожалуйста, возможно ли ограничить доступ к архивам скады в зависимости от пользователя Операционной системы?

SCADAMaster
27.10.2016, 09:47
Это как? Поясните вашу задачу.

Pimpl
27.10.2016, 09:55
Ну вот например. Захожу на сервер системы под учётной записью администратора. На жёстком диске нахожу папку архива, произвожу попытку доступа, доступ разрешён. Захожу под другим пользователем, например Гость, и при этом доступ к архивам должен быть запрещён.Ну чтобы не было возможности например подмены архивов.

Andrew_Stranger
27.10.2016, 12:04
Мы знаем об этой проблеме Это хорошо, но что с этим делать?

za9c
27.10.2016, 12:34
Подскажите пож-та!
каким образом сделать в отчёте чтоб таблицы строились друг за другом? измерения 5 параметров периодические с интервалом 1мин! Т.е. запустился процесс - создалась таблица в шапке написано - типа данные на 10-43 и дата! процесс завершился и весь процесс с интервалом в 1 мин в этой таблице! Допустим через час - следующий процесс начался - в этом же отчёте строится следущая таблица только в шапке написано типа данные на 12-30!

SCADAMaster
27.10.2016, 13:23
Ну вот например. Захожу на сервер системы под учётной записью администратора. На жёстком диске нахожу папку архива, произвожу попытку доступа, доступ разрешён. Захожу под другим пользователем, например Гость, и при этом доступ к архивам должен быть запрещён.Ну чтобы не было возможности например подмены архивов.
Штатно так делать нельзя.
Можно использовать стороннее ПО для ограничения доступа к системным ресурсам:
http://www.crystaloffice.com/winlock/
Но подменить архив в MasterSCADA не получится - он просто разрушится. Там не редактируемые файлы. Если только менять весь целиком архив

SCADAMaster
27.10.2016, 13:24
Подскажите пож-та!
каким образом сделать в отчёте чтоб таблицы строились друг за другом? измерения 5 параметров периодические с интервалом 1мин! Т.е. запустился процесс - создалась таблица в шапке написано - типа данные на 10-43 и дата! процесс завершился и весь процесс с интервалом в 1 мин в этой таблице! Допустим через час - следующий процесс начался - в этом же отчёте строится следущая таблица только в шапке написано типа данные на 12-30!
То что вы описали детально описано в данной документации:
http://www.masterscada.ru/files/art_step_by_step/MasterReport_Part_5.pdf

za9c
27.10.2016, 14:40
я читал - не совсем понятно с уставками начало цикла - конец цикла(не путать начало и конец))! в отчёте уставки цикла задаются в ручную - и при построении отчёта новая таблица затирает старую - а не рисует новую чуть ниже! если мне допустим нужно - событие истина - метка времени начало - ложь - метка времени конец! И в этом интервале - все данные что были - должны отрисовываться с определённым интервалом в таблице! и так снова и снова - в придачу старые таблицы не должны затираться - а новые просто отрисовываться чуть ниже - с шапкой и итогом!

SCADAMaster
27.10.2016, 15:07
Начало и конец каждого цикла должны быть в источнике данных. В нашем примере они формируются в дереве, вы можете формировать их как вам нужно - например с помощью событий бэндов.
Главное - вам нужно получить временные метки, которые ограничат диапазон времени в графике за каждый цикл.

Pimpl
28.10.2016, 15:17
Спасибо. Подскажите ещё вот что. Как происходит смена смен? Всё происходит автоматически по выставленному времени или надо где-то действие настраивать? Просто я создал 3 оператора поставил им время смен но, смена не происходит. проект как работал так и работает

SCADAMaster
28.10.2016, 15:48
Если у оператора выставлен посменный режим, то по окончанию смены должно произойти завершение сессии

Pimpl
29.10.2016, 09:28
Спасибо. А как мне в суточный отчёт который пойдёт на распечатку затолкать тренд с показаниями за выбранный период (например за сутки)?

SCADAMaster
29.10.2016, 11:58
Тренд вставить нельзя.
Используйте график самого отчета - в документации и видео описывалась работа с ним.

Andrew_Stranger
29.10.2016, 22:43
Как можно избавиться от иероглифов в вфб "таблица"?27346

SCADAMaster
30.10.2016, 08:52
Если изначально Windows была английская, то нужно под каждым конкретным пользователем выбрать
Язык и региональные стандарты - Формат - Русский

Если не поможет, то нужно исправить при помощи реестра:
Запускаем редактор реестра: Пуск - Выполнить и вводим regedit
Находим в HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\Nls\CodePage строковый параметр 1252, и меняем его значение на c_1251.nls
В папке C:\WINDOWS\system32\ найдите файлы С_1251 и С_1252. С_1251 копируем в другое место и переименовываем в С_1252
Файл С_1252 в папке C:\WINDOWS\system32\ удаляем (потребуется изменить права доступа или применить программу Unlocker). Копируем измененную версию файла С_1252 в папку /C:/WINDOWS/system32/.
Пуск-Панель управления - Язык и региональные установки - Дополнительно. Выбрать в пункте Текущий язык программ не поддерживающий Юникод: Русский (Россия)
Перезагрузка.

Также есть специальные reg файлы заменяющие ключи реестра. Архив с данными файлами в приложении.

Евгений_Котов
31.10.2016, 10:34
Добрый день. Подскажите пожалуйста, возможно ли писать в сообщениях время OPC тега?

SCADAMaster
31.10.2016, 11:29
Не совсем ясна ваша задача - опишите подробнее что и для чего вам требуется.

Евгений_Котов
31.10.2016, 11:51
Сейчас у меня стоит задача проверить быстродействие Отправка сигнала по кнопке с Мастер скады - через OPC на контроллер и обратно. В связи с этим возник вопрос - возвращаемый сигнал пишет время, которое у меня сейчас на компьютере с МастерСкадой ?, или время OPC ?

SCADAMaster
31.10.2016, 12:21
Сейчас у меня стоит задача проверить быстродействие Отправка сигнала по кнопке с Мастер скады - через OPC на контроллер и обратно. В связи с этим возник вопрос - возвращаемый сигнал пишет время, которое у меня сейчас на компьютере с МастерСкадой ?
А зачем тогда возится с сообщениями? Включите у переменных архивацию, и смотрите на вкладке "Данные" с какими временами будут значения и сравнивайте.


сейчас на компьютере с МастерСкадой ?, или время OPC ?
По умолчанию метка времени наследуется от ОРС сервера. Если нужно чтобы была метка времени скады, то в MasterSCADA у ОРС сервера на вкладке "Опрос" поставьте галочку "Использовать локальную метку времени"

za9c
01.11.2016, 10:12
Начало и конец каждого цикла должны быть в источнике данных. В нашем примере они формируются в дереве, вы можете формировать их как вам нужно - например с помощью событий бэндов.
Главное - вам нужно получить временные метки, которые ограничат диапазон времени в графике за каждый цикл.
Здравствуйте!
В событиях бенда прописал
if(ИсточникДанных1.событие==true&&предыдущее_событие==false)
{
время_начала=ИсточникДанных1.Время;
}
if(ИсточникДанных1.событие==false&&предыдущее_событие==true)
{
время_конца=ИсточникДанных1.Время;
}
после чего в фильтре бенда ограничил диапазон выборок :ИсточникДанных1.Время>время_начала&&время_конца<ИсточникДанных1.Время;
по идее значения false в выборки не должны попадать - но все равно попадают! Без метода двух проходов вообще не высчитываются время начала события и время конца! есть ли способ счёта без бендов - только переменными? Или есть ли пример готовый - где правильно рассчитывается такой пример!

SCADAMaster
01.11.2016, 17:27
Здесь нужно будет сделать так.
1. Отфильтровать бэнд (в свойствах бэнда включается, описано в документации) - оставить только там, где ваше событие будет false (как мы понимаем - True это начало, False - это конец).
2. После этого в событии получить предыдущее значение времени с помощью функции Previous. Например:
{Previous(ИсточникДанных1,"Время")}
Таким образом вы сможете получить и начало и конец - и на основании этого фильтровать данные.

za9c
02.11.2016, 09:01
Здесь нужно будет сделать так.
1. Отфильтровать бэнд (в свойствах бэнда включается, описано в документации) - оставить только там, где ваше событие будет false (как мы понимаем - True это начало, False - это конец).
2. После этого в событии получить предыдущее значение времени с помощью функции Previous. Например:
{Previous(ИсточникДанных1,"Время")}
Таким образом вы сможете получить и начало и конец - и на основании этого фильтровать данные.
Отфильтровал!
В создал два источника данных! один по изменению, второй периодический! в первом событие - во втором измеряемый параметр! Создал две переменных -конец_цикла- по формуле (DateTime?)Previous(ИсточникДанных1,"Время"). И -начало_цикла- (DateTime?)Next(ИсточникДанных1,"Время")! А дальше - вторая неделя мучений! Как написано в пятой документации вытягиваю бенд - связываю с другим фильтрую - и ничего - или вообще ничего не рисует - или заполняет всё одной таблицей(периодическим отчётом около 1000страниц с шапкой от отчёта по изменению). Пробовал как в 6-ой документации и связи ставить - бесполезно - да и не видно их вообще - беда короче! Вроде и простой отчёт - а все перемешалось! Пока вышел из положения OPC сервером фильтрую и нахожу максимум - только потом его выстреливаю в скаду!

SCADAMaster
02.11.2016, 09:56
Приложите ваш проект целиком вместе с данными (заархивируйте папку проекта), укажите путь к отчету и за какое время вы его формируете

artamonov
02.11.2016, 09:56
Здравствуйте!
1) Что за кнопка "настроить ККС" на вкладке "Общие" Системы?
2) Как сделать Рантайм на весь экран? А то у меня панель задач отображается поверх него.

SCADAMaster
02.11.2016, 12:13
1) Что за кнопка "настроить ККС" на вкладке "Общие" Системы?

http://enersys.ru/support/podderzhka/dokumentaciya/kodirovka-kks/



2) Как сделать Рантайм на весь экран? А то у меня панель задач отображается поверх него.
Панель задач перекрыть нельзя.
Сделайте ее скрываймой в настройках Windows

SCADAMaster
03.11.2016, 09:12
Все удивляет мастер скада своей способностью решать серьезные задачи но бъёт по рукам полный дибилиз некоторых простых вещей в ней.

Это вы сейчас про что?



Ну де ладно, вопрос бонален, но все таки, как вывести int переменную на экран со смещением запетой, заранее помноженную в ПЛК без математических функций?
Если используется Modbus Universal, то просто используйте в нем функцию пересчет - у каждого тега можно включить режим, и задать коэффициент А (0.1 - смещение на 1 знак влево). Это самый простой и удобный вариант.
Если используйте другой ОРС сервер, то используется модуль Расчет - поделите в нем значение.

za9c
03.11.2016, 14:48
Приложите ваш проект целиком вместе с данными (заархивируйте папку проекта), укажите путь к отчету и за какое время вы его формируете

проект точно такой же как в документации http://www.masterscada.ru/files/art_step_by_step/MasterReport_Part_5.pdf только в дереве объектов у меня некое значение которое должно отображаться в таблицах! Нет уставок "начало цикла" и "конец цикла"(они должны рассчитываться в отчёте по событию) и вместо команды "УСТАВКА" у меня событие(когда процесс начинается true - заканчивается false)! вместо графика нужна таблица!
Всё упёрлось в то, что время начала цикла и конца рассчитываются в отчёте(и даже правильно отображаются) - на когда добавляю в фильтр бенда периодический - всё "затыкается".
И второй вопрос - получили мастерскаду - на 1000 точек - до этого было - 500 - чтоб старые проекты не затереть и ахрхивы не удалить - можно ли устанавливать поверх(не удаляя старой)? и как сетевые компьютеры отреагируют на замену скады? (Просто время ограничено - на всё 15 минут) С OPC universal modbus - тот же вопрос!

SCADAMaster
03.11.2016, 15:05
И второй вопрос - получили мастерскаду - на 1000 точек - до этого было - 500 - чтоб старые проекты не затереть и ахрхивы не удалить - можно ли устанавливать поверх(не удаляя старой)? и как сетевые компьютеры отреагируют на замену скады? (Просто время ограничено - на всё 15 минут) С OPC universal modbus - тот же вопрос!
Поверх ставить нельзя - удаляете старую версию, ставите новую. Проекты и архивы не затронут.
Аналогично с ОРС сервером. Только после того как ОРС будет переустановлен, он будет пытаться загружать стартовую конфигурацию Simulator, поэтому нужно открыть в нем вашу и сделать ее стартовой

SCADAMaster
03.11.2016, 17:57
А по обратной связи приходит значение? Если не приходит, то не будет меняться.
Приложите ваш проект и скриншоты описывающие проблему.

SCADAMaster
03.11.2016, 19:05
Приложите ваш проект и несколько скриншотов.

SCADAMaster
03.11.2016, 20:10
По проекту все правильно.
Приложите скриншоты с проявлением проблемы.

SCADAMaster
03.11.2016, 21:10
Попробуйте уменьшить значение в поле "Блокировка обратной связи" - поставьте 3-5 секунд.

andrej_V
03.11.2016, 21:24
Всем привет. В работе со СКАД системами я конечно новичок. Вот решил восполнить пробел. Погонял МастерСкада с различными OPC сервирами, вроде все понятно, нечего заумного,но вот только элементов "визуализации" очень мало. Я тут решил проект системы оперативно-дистанционного контроля (СОДК) накидать, с использованием модуля входов, GSM модемом "ОВЕН" и столкнулся с такой бональщиной, что я в этой скаде не могу изобразить линию (трубопровод) которая бы например меняла цвет, мигала и т.д, в зависимости от состояния опрашиваемых входов.
Прошу подсказать где можно скачать библиотеки элементов которые бы мне помогли: линии, объемные элементы, переключатели и т.д, чтобы можно было создать красивую визуализацию.

ninvia
03.11.2016, 22:19
Выполняю действия указанные в первом видеопримере по изучению MasterSCADA. Добавил в дерево объектов
Insat_Simulator_MasterOPC_Data Server. Далее, при попытке вставить переменные, MasterSCADA выводит сообщение ошибки запуска ОРС сервера, а Microsoft.NET Framework выдает сообщение: Unhandled exception has occurred in a component in your application. if you click, the application will ignore this error and attempt to continue
Object reference not set to an instance of an object

Подскажите, пожалуйста, как разрешить проблему.

za9c
03.11.2016, 23:43
Приложите ваш проект целиком вместе с данными (заархивируйте папку проекта), укажите путь к отчету и за какое время вы его формируете
отчёт! не правильно формируется период у бенда периодический

SCADAMaster
04.11.2016, 08:55
Я тут решил проект системы оперативно-дистанционного контроля (СОДК) накидать, с использованием модуля входов, GSM модемом "ОВЕН" и столкнулся с такой бональщиной, что я в этой скаде не могу изобразить линию (трубопровод) которая бы например меняла цвет, мигала и т.д, в зависимости от состояния опрашиваемых входов.

Элемент трубопровод есть в палитре мнемосхемы, на вкладке "Объемные элементы". Через входы динамизации можно менять цвет материала, то есть менять ее цвет.
Что касается элементов - то их можно поискать в интернете. Есть такая библиотека Symbol Factory, от которой есть ресурсы, которые можно использовать в скаде как обычные рисунки.

SCADAMaster
04.11.2016, 08:58
Выполняю действия указанные в первом видеопримере по изучению MasterSCADA. Добавил в дерево объектов
Insat_Simulator_MasterOPC_Data Server. Далее, при попытке вставить переменные, MasterSCADA выводит сообщение ошибки запуска ОРС сервера, а Microsoft.NET Framework выдает сообщение: Unhandled exception has occurred in a component in your application. if you click, the application will ignore this error and attempt to continue
Object reference not set to an instance of an object

Подскажите, пожалуйста, как разрешить проблему.
А сам ОРС сервер у вас нормально запускается? Судя по всему на какую то проблему NetFramework
Вообще к первому видеопримеру прилагается файл:
http://www.masterscada.ru/files/documentation/masterscada/First_MasterSCADA_Project.zip
А также конфигурация для Modbus Universal MasterOPC:
http://insat.ru/prices/info.php?pid=6944
Когда мы разрабатывали это видео, Modbus Universal еще не выпускался, поэтому мы использовали старый OPC Toolkit, который уже снят с производства и продажи

SCADAMaster
04.11.2016, 09:58
отчёт! не правильно формируется период у бенда периодический
Исправленная версия в приложении.
Обратите внимание на фильтр бэнда по изменению и условное выделение периодического

andrej_V
04.11.2016, 12:36
Элемент трубопровод есть в палитре мнемосхемы, на вкладке "Объемные элементы". Через входы динамизации можно менять цвет материала, то есть менять ее цвет.
Что касается элементов - то их можно поискать в интернете. Есть такая библиотека Symbol Factory, от которой есть ресурсы, которые можно использовать в скаде как обычные рисунки.

В свойствах объемного элемента "Трубопровод" нет вкладки связь, и как я понимаю значит и цвета в зависимости от состояния нужных мне входов менять нельзя. То есть по большому счету этот элемент - пустая картинка. Меня же интересуют не картинки а именно элементы способные менять цвета, принимать анимацию и т.д. с настраиваемой связью в окне свойств элемента.
Или я что то не до понимаю?

SCADAMaster
04.11.2016, 13:43
Элементы добавляемые из палитры мнемосхему управляются через входы динамизации. В данном случае - цвет материала.
Подробнее про динамизацию описано здесь:
http://www.masterscada.ru/files/art_step_by_step/master%20scada%20animation.pdf

ninvia
04.11.2016, 19:23
Спасибо за ответ. Я использовал OPC сервер (masteropc_di_61850_server_setup_demo), очевидно проблема была связана с этим.
Скачал Modbus Universal MasterOPC. Пытался выбрать сервер с прибором указанным в видеопримере. Безуспешно. Нашел файл "Симулятор.mbp" (не помню откуда скачал). После его открытия и выбора стартовым смог прибор включить в проект.

SCADAMaster
05.11.2016, 10:57
Пытался выбрать сервер с прибором указанным в видеопримере. Безуспешно.
Нужно выбирать не тот что в видеопримере, а - Modbus Universal. В файле Readme все это описано

Andrew_Stranger
05.11.2016, 11:44
Добрый день. Никак не могу найти в палитре ВФБ задвижку с аналоговым управлением. Скажите где искать пожалуйста.

SCADAMaster
05.11.2016, 13:12
С аналоговым управлением у нас нет.
Вы можете использовать обычную задвижку а положение выводить в виде команды/значения

ninvia
05.11.2016, 17:56
Спасибо, все работает.

SCADAMaster
06.11.2016, 19:51
Приложите отчет об ошибках.
Для того чтобы сформировать отчет об ошибках:
В Режиме Разработки (DT):
"Проект"-> "Отчет об Ошибках"
Поставьте галочку "Включая конфигурацию текущего проекта". Сформированную папку заархивируйте и вышлите нам.

andrej_V
06.11.2016, 22:19
Спасибо на счет входов динамизации, все получается. Сейчас не могу найти в сущ. библиотеках звуковой сигнал, с зависимостью по входам, хотел при аварии вывести звук на динамик.

SCADAMaster
07.11.2016, 08:48
Можете сюда приложить или нам на support

SCADAMaster
07.11.2016, 08:49
Спасибо на счет входов динамизации, все получается. Сейчас не могу найти в сущ. библиотеках звуковой сигнал, с зависимостью по входам, хотел при аварии вывести звук на динамик.
Для этих целей есть канал "Звук", настраивается Система - Сообщения - Каналы, затем назначается нужным категориям.

Kyzylzhar
07.11.2016, 14:36
Добрый день!
Создал журнал событий, отметил переменные, события которых хотел бы видеть в нем. Но в него попадают лишь события с ошибкой связи от выбранных переменных.
Каким образом можно в журнале отобразить, например, исполнение какой-либо команды по нажатию кнопки? В данном случае, необходимо создавать дополнительное событие и к нему привязывать интересующую команду или есть вариант попроще?
Спасибо!

SCADAMaster
07.11.2016, 14:44
В текущей версии так сделать нельзя. В версии 3.8 мы сделали категорию "Действия оператора" и в нее могут попадать и действия, которые осуществляет оператор (вводит значения, жмет на кнопки и т.д.)

artamonov
08.11.2016, 09:28
Здравствуйте! Использую ВФБ «Метки». Надо сделать так, чтобы выставленные метки оставались, а статический набор меток не отображался. Ведь меток может быть 6 штук и они перекрывают саму мнемосхему. Хотелось бы когда надо выставить метку, то показывать набор меток, выставил метку, убрал набор меток.
И что значит "Файл с метками" во вкладке "Настройки" свойств?

SCADAMaster
08.11.2016, 10:56
Не совсем ясно что именно вы хотите. Опишите вашу задачу детальнее и приложите несколько скриншотов.
Для какой цели вы используете метки?

artamonov
08.11.2016, 11:16
Я использую метки для выставления пометок и плакатов.
Как я хочу сделать.
Есть мнемосхема, нажимаю кнопку "показать панель с пометками", появляется область с 6 метками, я перетаскиваю нужные мне метки на мнемосхему, далее нажимаю кнопку "скрыть панель с пометками", область с метками скрывается, а сами пометки, выставленные мною на мнемосхему остаются.
Что есть сейчас.
Кнопки привязываю к свойству "отключен" ФБ и получается так, что пропадает не только область, откуда нужно "вытягивать" пометки, но и сами пометки.

И ещё: можно ли какие-то приоритеты у меток делать? Например, если я накладываю метки друг на друга, чтобы пометка "Допуск к работе" была выше пометки "Информация"?
И еще кое-что: разместил на мнемосхеме из палитры "кнопку без фиксации", привязал ее к входу "очистить метки" ВФБ. При нажатии не срабатывает, надо удерживать. Это нормально?

SCADAMaster
08.11.2016, 12:29
Я использую метки для выставления пометок и плакатов.
Как я хочу сделать.
Есть мнемосхема, нажимаю кнопку "показать панель с пометками", появляется область с 6 метками, я перетаскиваю нужные мне метки на мнемосхему, далее нажимаю кнопку "скрыть панель с пометками", область с метками скрывается, а сами пометки, выставленные мною на мнемосхему остаются.
Что есть сейчас.
Кнопки привязываю к свойству "отключен" ФБ и получается так, что пропадает не только область, откуда нужно "вытягивать" пометки, но и сами пометки.

Естественно - это же контрол, он скрывается целиком. Как он может скрыться по частям?



И ещё: можно ли какие-то приоритеты у меток делать? Например, если я накладываю метки друг на друга, чтобы пометка "Допуск к работе" была выше пометки "Информация"?

На данный момент нельзя.



И еще кое-что: разместил на мнемосхеме из палитры "кнопку без фиксации", привязал ее к входу "очистить метки" ВФБ. При нажатии не срабатывает, надо удерживать. Это нормально?
Вы неправильно делаете.
Создайте команду типа Дискретный и вытащите на мнемосхему - она станет кнопкой. Ее удерживать не надо.