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
08.02.2016, 14:37
Скада систему лучше конечно не использовать для таких целей - для этого применяются контроллеры.
По остальному мы ответили:

Какой в MasterSCADA стоит период опроса изменений в ОРС сервере?
Если 2 импульса в секунду, то нужно тогда установить опрос 100-200 мс. И аналогичный период должен быть у объектов.

Andrei1401
08.02.2016, 16:05
Хорошо тогда другой вопрос. Если я буду использовать в CoDeSys ФБ CTU и на вход буду подавать сигнал с расходомера, то можно как нибудь подать сигнал со SCADA системы на вход PV CTU?

SCADAMaster
08.02.2016, 16:11
Конечно - как обычную числовую переменную.

Andrei1401
08.02.2016, 16:16
Просто у входа PV стоит тип данных WORD, а какой тогда нужно ставить тип данных в ОРС сервере?

SCADAMaster
08.02.2016, 16:31
Беззнаковый короткий целый - uint16
Подробнее описано в данной документации:
http://www.insat.ru/products/Universal_MasterOPC/OPC_To_Owen_PLC_1xx.pdf

energvk
08.02.2016, 17:06
Добрый день. Вопрос по отчету. Имеется отчет с колонками данных, в ячейки которых имеют формат числовой. Обнаружилось, что если число не более 7-ми знаков, то отображается правильно, если 8 и более - то последняя цифра округляется до 0, то есть вместо 32 838 562 отображается как 32 838 560. Как это можно победить?

Hemann
08.02.2016, 17:11
Добрый день еще раз!

Чуть ранее я задавал вопрос: "Подскажите, пожалуйста, как можно отключить работу Окна сообщений (чтобы оно вообще не появлялось на экране и не подавало никаких сигналов) при помощи внешней логической переменной?".
Вы ответили: "Так сделать нельзя.
Можно совсем запретить использование окна сообщений, можно закрывать его из дерева объектов используя ФБ "Состояние окна сообщений"".
Подскажите, пожалуйста, а как воспользоваться этим ФБ, если у него одни выходы?

SCADAMaster
08.02.2016, 17:35
Подскажите, пожалуйста, а как воспользоваться этим ФБ, если у него одни выходы?
Разрешение закрытия окна сообщения включается в настройках ФБ.

SCADAMaster
08.02.2016, 17:37
Добрый день. Вопрос по отчету. Имеется отчет с колонками данных, в ячейки которых имеют формат числовой. Обнаружилось, что если число не более 7-ми знаков, то отображается правильно, если 8 и более - то последняя цифра округляется до 0, то есть вместо 32 838 562 отображается как 32 838 560. Как это можно победить?
У нас все корректно.Какой тип данных у вас задан?

energvk
08.02.2016, 18:21
Вещественный,что в 7-ми,что в 8-ми значных значениях

SCADAMaster
08.02.2016, 18:52
Приложите ваш проект, выполните Проект - Экспортировать, сформированную папку заархивируйте и вышлите нам.
Укажите путь к проблемному отчету, и в какую переменную вы вводите значения.

energvk
09.02.2016, 09:01
Приложите ваш проект, выполните Проект - Экспортировать, сформированную папку заархивируйте и вышлите нам.
Укажите путь к проблемному отчету, и в какую переменную вы вводите значения.

Отправил в личку

SCADAMaster
09.02.2016, 09:51
Приведите в ячейках значение к типу Double. Примерно так:
{(double)ИсточникДанных1.Команда1}

energvk
09.02.2016, 10:21
Приведите в ячейках значение к типу Double. Примерно так:
{(double)ИсточникДанных1.Команда1}

Спасибо большое, помогло

Hemann
09.02.2016, 10:46
Спасибо!

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

SCADAMaster
09.02.2016, 11:10
Желательно обновить - так как при проект в более старой версии может не открываться.
Если гарантия еще действует (с момента покупки прошло менее года) то обновление будет бесплатным.

Hemann
09.02.2016, 12:45
А если гарантия закончилась, то дорого стоит это обновление?

SCADAMaster
09.02.2016, 13:02
Обратитесь в отдел продаж - вам все сообщат.

Pimpl
09.02.2016, 13:13
Скажите пожалуйста, как при именовании кнопки переносить текст. Например если у меня кнопка называет "Аналоговые сигналы", то можно ли это написать не в одну строчку а одно слово под другим с переносом?(слово "сигналы" под словом "Аналоговые") Спасибо.

SCADAMaster
09.02.2016, 14:11
Задача сделать перенос текста на кнопках записана, но пока не реализована.
Вы можете положить поверх кнопки обычный контрол "Текст" - в нем перенос сделать можно

Pimpl
09.02.2016, 14:35
Сверху наложенный текст не повлияет на нажатие кнопки?

Pimpl
09.02.2016, 14:50
И ещё один вопрос. Как указать стартовую мнемосхему я нашёл. Но как сделать чтобы на старте помимо стартовой мнемосхемы открывалось окно управления вместе с мнемосхемой?

SCADAMaster
09.02.2016, 21:18
Сверху наложенный текст не повлияет на нажатие кнопки?
Не повлияет


И ещё один вопрос. Как указать стартовую мнемосхему я нашёл. Но как сделать чтобы на старте помимо стартовой мнемосхемы открывалось окно управления вместе с мнемосхемой?
Компьютер - Режим исполнения - Стартовые окна. Добавьте нужные вам окна которые будут появляться при старте.

Pimpl
10.02.2016, 08:16
Спасибо, заработало, но немножко не так как надо. Проблема в следующем. Мне необходимо чтобы вместе с мнемосхемой открылось ещё и окно например "Параметров". всё открывается, но при старте второе окошко на мнемосхеме открывается с нулевым смещением, хотя я задал определённые координаты ближе к центру. То есть скажите где задать стартовые координаты у стартовых окон

SCADAMaster
10.02.2016, 09:01
Вообще отдельных стартовых координат для окна не задается - берутся стандартные координаты окна, задаваемые в окне свойств.

Pimpl
10.02.2016, 11:24
То есть я не могу поменять положение экрана окна или изображения объекта при старте? Я просто везде задал смещение, в системе в компьютере и так далее. но всё равно при старте окно открывается с нулевым смещением.

Pimpl
10.02.2016, 11:33
Всё, разобрался)

Pimpl
10.02.2016, 12:47
Есть ли в скаде возможность выводить на мнемосхему день недели в виде слова? (понедельник, вторник и так далее...)

Pimpl
12.02.2016, 14:02
Скажите как правильнее сделать. Мне необходимо сделать кнопку на котором изображён например кран. При это он отображает реальное положение крана. При нажатии на кнопку я вызываю окно управления краном. Если я кнопку сделаю как изображение объекта с краном, будет ли меняться изображение на кнопке?

SokolovS
14.02.2016, 11:24
Потерялось моё сообщение
Повторю
Получил ключевую версию скады 3.7.0.52641, на ней вот такая радость при попытке вызвать мастер отчётов. Также на ней не получается добавить в источник данных переменную
На версии 3.7.0.52356 3.7(DemoReleaseMin)_15_12_24_22_06 всё работает как надо

SokolovS
14.02.2016, 19:33
И не могу понять почему так мало вариантов обработки источников данных

mel_val
20.02.2016, 14:41
Раньше в ftp на insat в папке "OPS servers" был симулятор, а где его можно скачать сейчас ?

Pimpl
24.02.2016, 10:29
Никак не могу разобраться как работает функция в ST. Кто нибудь может скинуть проект с простой программой на ST где работает функция?

Ivan2
27.02.2016, 15:47
Здравствуйте!
Проблема: при открытии МастерСкада в проекте не отображается ни Дерево системы ни Дерево Объектов.
Проба решить: переустанавливал МастерСкада - не помогло, искал кнопки в в меню - не помогло, кнопки на панели тоже ничего не показывают (кроме кнопки "ОТображения палитры").
Вопрос: как отобразить Дерево системы и Дерево Объектов?

SCADAMaster
27.02.2016, 19:44
С таким мы еще не сталкивались. Пришлите скриншот проблемы.
Попробуйте переустановить под администратором, убедитесь что у пользователя есть права на папку Program Files\Insat/MasterSCADA и MasterSCADA Projects\Projects

Ivan2
28.02.2016, 20:26
Выглядело вот так. Я запускал её на винде ХР (на виртуалке). Сначала там было всё нормально. Не помню после чего так стало. Переустановка не помогала.
Сейчас я её удалил.
22886

SCADAMaster
28.02.2016, 21:46
Попробуйте поставить на другой виртуальной машине или основной системе.

Ivan2
28.02.2016, 23:19
Да, конечно. Для сбе я решение я нашёл, просто возникла такая ситуация, а что делать не ясно. Вдруг такое будет на реальной машине

Pimpl
29.02.2016, 08:13
Скажите как правильнее сделать. Мне необходимо сделать кнопку на котором изображён например кран. При это он отображает реальное положение крана. При нажатии на кнопку я вызываю окно управления краном. Если я кнопку сделаю как изображение объекта с краном, будет ли меняться изображение на кнопке?

SCADAMaster
29.02.2016, 09:19
Скажите как правильнее сделать. Мне необходимо сделать кнопку на котором изображён например кран. При это он отображает реальное положение крана. При нажатии на кнопку я вызываю окно управления краном. Если я кнопку сделаю как изображение объекта с краном, будет ли меняться изображение на кнопке?
Да, разумеется.

Pimpl
29.02.2016, 09:38
Спасибо. Подскажите, а как можно сделать в журнале фильтрацию по интервалу времени ? я не нашёл этого в стандартных фильтрах. Я имею ввиду в режиме исполнения выбрать начало и конец

SCADAMaster
29.02.2016, 14:29
Отключаете автопрокрутку, и в нижней части (панели времени) задайте нужный вам интервал развертки, или нужный интервал времени за которые вас интересуют данные.
Посмотрите наши видеопримеры:
http://www.masterscada.ru/?additional_section_id=233

Pimpl
02.03.2016, 08:46
Спасибо, разобрался. Подскажите ещё такой момент. Сделал менюшку всплывающую, на ней сделал кнопку "Х"закрытия меню через управление документом. Использовал кнопку без фиксации. Так вот, если я привязываю канал закрыть напрямую в выход кнопки, то она отрабатывает медленно, то есть простое нажатие не успевает закрыть меню, приходится кнопку подержать некоторое время, но если сделать всё через канал команда, то всё срабатывает. Скажите пожалуйста, можно ли где-то в кнопке указать задержку, чтобы всё отрабатывало без каналов посредников? И можно ли сделать запрос подтверждения при нажатии кнопки? Спасибо.

SCADAMaster
02.03.2016, 10:44
Кнопку нужно сделать вытащив команду на мнемосхему - тогда такую кнопку не нужно будет выдерживать и можно будет настроить подтверждение (через права доступа).

Pimpl
02.03.2016, 11:01
Я пробовал, но команда Закрыть из ФБ управление документом не тащится на схему. Я что-то не так делаю может?

SCADAMaster
02.03.2016, 13:12
Она и не должна тащится.
Создайте команду, типа "Дискретный", свяжите ее со входом "Закрыть". Затем саму команду вытащите на мнемосхему - она станет кнопкой.

Pimpl
02.03.2016, 13:17
Ну да,таким способом всё работает. Скажите вот что ещё. Можно ли в скаде сделать так чтобы режим исполнения производился на двух мониторах. Ну чтобы я на одном компьютере мог открыть два разных экрана. То есть по сути нужно чтобы один проект трудился на двух разных мониторах, но при этом листание экранов происходило независимо друг от друга. Я видел галочку в настройках окон "открыть на другом мониторе" но это насколько я понял немножко не то. Если так не получится, то поясните пожалуйста что и как максимум я смогу сделать в плане разделения экранов по мониторам.

SCADAMaster
02.03.2016, 13:34
Несколько мониторов представляются компьютеру как один монитор высокого разрешения.
В MasterSCADA у каждого окна есть настройка смещения X и Y. Задавая эти координаты, вы можете расположить нужные вам окна на нужных мониторах. Для удобства, можно у Системе - Окна, создать по дополнительные окна, для каждого монитора - с нужным размером и смещениями, а потом создавать эти окна в нужных объектах. Это позволит упростить внесение изменений.
Настройка "Открыть на другом мониторе" - в этом случае если кнопка вызова окна находится на окне находящегося на первом мониторе, то окно будет открыто на втором мониторе.

Pimpl
02.03.2016, 14:08
Спасибо. Но я так понял одно и то же окно я не смогу открыть сразу на двух мониторах без дублирования объекта?

SCADAMaster
02.03.2016, 14:12
Вы имеете ввиду одновременно? Одновременно не сможете. Обычно так не делают.

Pimpl
02.03.2016, 14:18
Ну да. Смысл в следующем. У диспетчера два экрана, и на нём он может открыть разные экраны в различной комбинации, в том числе и два одинаковых. Но то что так не делается я конечно согласен. Но от этого не легче))))Просто мы это называем полным функционалом проекта

SCADAMaster
02.03.2016, 15:21
Вообще в версии 3.7 мы сделали похожую задачу - это решается через ФБ "Управление документом".
Вам нужно для всех окон или только для определенных?

Pimpl
03.03.2016, 08:11
В общем задачу поставили мне такую. Есть общая мнемосхема с набором кнопок вызова экранов. При запуске проекта на двух мониторов открыта одна и та же стартовая мнемосхема(ну или разные, пока не особо важно). И потом уже диспетчер открывает какие ему нужно экраны. Получается что для всех окон.

SCADAMaster
03.03.2016, 11:33
Тогда имеющими средствами это будет очень трудоемко.

Pimpl
03.03.2016, 11:37
Спасибо. Ну я решил попробовать делать дублированием схем. Можно ли два экрана открыть как документ?(или второй документ на втором мониторе) Или придётся один как документ, а второй как окно?Подскажите как это вообще можно реализовать, пусть даже трудоёмко.

SCADAMaster
03.03.2016, 13:23
Нет, как документ нельзя. Второе нужно как окно открывать.

SCADAMaster
03.03.2016, 13:52
Давайте мы все же опишем как сейчас реализовано открытие нескольких окон.
Для примера, необходимо иметь возможность с мнемосхемы два окна одновременно на разных мониторах.
На мнемосхему добавляются две кнопки вызова окна (объект вытаскивается на мнемосхему). У кнопки вызываем свойства - кнопка Настроить - появится окно настройки окна. В этом окне задаете идентификатор окна (например Окно2), и задаете ее положение - например делаете чтобы оно открылось в определенном месте (на втором мониторе или рядом с первым окном).
Благодаря наличию идентификатора окна, окна будут открываться параллельно (так как будут считаться разными окнами).
Версия должна Beta (в стабильную еще пока не вносилось).

Pimpl
03.03.2016, 14:23
Спасибо. А как можно в журнале сообщений время события посмотреть до миллисекунды?

SCADAMaster
03.03.2016, 14:26
В продвинутом уровне - общие настройки - Таблица сообщений - Формат времени. Введите:
dd.MM.yyyy HH:mm:ss.fff
Переоткройте журнал.

Pimpl
03.03.2016, 14:33
Спасибо, получилось всё. Подскажите как можно в режиме исполнения организовать смену операторов? Смогу ли я это сделать через самостоятельно нарисованную панель смены операторов, а не через штатное окно?

SCADAMaster
03.03.2016, 15:18
В принципе через скрипты можно производить смену оператора, а значит можно использовать и собственную панель смены оператора.
А чем не устраивает стандартное?

Pimpl
04.03.2016, 08:10
Я пока не разобрался как стандартное устроено, поэтому не могу сказать, что не устраивает. Я, так сказать, наперёд спросил) У вас есть какие-нибудь скрипты по работе с операторами чтобы разобраться как их писать? Спасибо.

SCADAMaster
04.03.2016, 08:37
Вот здесь пример:
http://www.owen.ru/forum/showthread.php?t=14556&highlight=Relogon

SokolovS
04.03.2016, 08:49
Что-нибудь скажете по этому поводу?

Потерялось моё сообщение
Повторю
Получил ключевую версию скады 3.7.0.52641, на ней вот такая радость при попытке вызвать мастер отчётов. Также на ней не получается добавить в источник данных переменную
На версии 3.7.0.52356 3.7(DemoReleaseMin)_15_12_24_22_06 всё работает как надо

Pimpl
04.03.2016, 08:52
Спасибо. Вы не могли бы мне подробнее объяснить как он работает. А именно каким образом и куда я ввожу пароль который данный скрипт проверяет?Точнее как это будет выглядеть в режиме исполнения.

SCADAMaster
04.03.2016, 11:48
Что-нибудь скажете по этому поводу?
Данная проблема действительно проявляется на некоторых компьютерах.
Мы попробуем разобраться с данной проблемой.
Вы можете использовать для создания отчетов не мастер, а сам конструктор - он должен запускаться стабильно. Отчет создаваемый мастером сделать в конструкторе достаточно быстро.

SokolovS
04.03.2016, 13:40
Данная проблема действительно проявляется на некоторых компьютерах.
Мы попробуем разобраться с данной проблемой.
Вы можете использовать для создания отчетов не мастер, а сам конструктор - он должен запускаться стабильно. Отчет создаваемый мастером сделать в конструкторе достаточно быстро.
Источники данных тоже не добавляются
Пока я сделал проект в демо-версии
Проблем с этим не будет?

SCADAMaster
04.03.2016, 14:00
Источники данных тоже не добавляются

Где именно? Опишите проблему подробнее и приложите скриншот.

SokolovS
04.03.2016, 15:18
Где именно? Опишите проблему подробнее и приложите скриншот.
Беру переменную в дереве проекта
Тащу в источник данных отчёта
Отпускаю
Переменная в источнике данных не добавляется
Не знаю как подробнее описать
После того, как догадался поставить демо-версию, источник данных добавился

SCADAMaster
04.03.2016, 15:32
Вы точно тащите в источник данных? Возможно вы тащите в группу источника данных.
Если есть возможность - сделайте видео. Для записи можно использовать например:
http://www.bbflashback.ru/

SokolovS
04.03.2016, 15:43
Я пробовал по-всякому
В любом случае:
На ключевой версии источник данных наполнить переменными так и не вышло
На ключевой версии открыть мастер так и не получилось
На демо-версии источник данных наполнился без проблем и с первой попытки
На демо-версии мастер запустился без проблем и с первой попытки

Подскажите, получилось ли у вас добавить переменную в источник данных в той ключевой версии?

Pimpl
09.03.2016, 14:14
Подскажите как сделать. У меня следующая структура экрана.Шесть агрегатов-шесть кнопок. Нажимая на кнопку всплывает менюшка с рядом других кнопок, которые в свою очередь открывают различные окна с экранами. Однако, при открытии экрана из этой менюшки, само меню закрывается. Подскажите где это исправить?

SCADAMaster
09.03.2016, 15:34
Если у окна стоит режим "Новое окно" то предыдущие не должны закрываться

SCADAMaster
09.03.2016, 15:38
Я пробовал по-всякому
В любом случае:
На ключевой версии источник данных наполнить переменными так и не вышло
На ключевой версии открыть мастер так и не получилось
На демо-версии источник данных наполнился без проблем и с первой попытки
На демо-версии мастер запустился без проблем и с первой попытки

Подскажите, получилось ли у вас добавить переменную в источник данных в той ключевой версии?
У нас все работает корректно.
Попробуйте обновить вашу ключевую версию или для начала просто переустановить MasterSCADA

SokolovS
09.03.2016, 16:06
У нас все работает корректно.
Попробуйте обновить вашу ключевую версию или для начала просто переустановить MasterSCADA
Пожалуйста, расскажите как можно обновить ключевую версию

SCADAMaster
09.03.2016, 16:48
Направьте запрос в отдел продаж, с указанием номера ключа.

Pimpl
11.03.2016, 09:23
Скажите пожалуйста как лучше всего организовать открытие несколько окон одной кнопкой, а именно проблема в следующем. Есть допусти 6 кнопок открывающие мнемосхемы 6 агрегатов. Допустим я открыл окно аналоговые параметры для первого агрегата, потом жму следующий агрегат и так далее. как мне сделать так чтобы при нажатии следующего агрегата открывалась одно и то же окно но для каждого агрегата соответственно, то есть последнее открытое окно.Это надо писать ST прогу которая через управление документами будет это делать? Спасибо.

SCADAMaster
11.03.2016, 09:40
Вам нужно одной кнопкой открыть несколько окон?
Создайте команду типа "Дискретный", вытащите ее на мнемосхему - она станет кнопкой. В каждый объект с нужной вам мнемосхемой добавьте по модулю "Событие" и на закладке "Действие" добавьте действие "Открыть" и привяжите к нужной вам мнемосхеме. В формулу события добавьте сигнал от кнопки.

Pimpl
11.03.2016, 09:46
Не совсем. Нужно отслеживать последнее открытое окно для агрегат, и при последующем листании агрегатов, должно для каждого открываться такое же окно (последняя схема другого агрегата)

mkv
11.03.2016, 10:05
Добрый день.
Возник вопрос. Не сохраняются настройки в "фильтре событий" в основном журнале в режиме проектирования. Т.Е ставлю нужные мне галочки в "Категориях" и "Источниках" и сохраняю проект. Затем заново его открываю. В "Категориях" выбранные элементы сохраняются, а в "Источниках" нет. Хотя надпись "Источники" выделено синим цветом. Приходится галочки ставить заново в рабочем проекте. (3.7.0.52356 3.7(DemoReleaseMax)_15_12_24_22_06).
Спасибо.

SCADAMaster
11.03.2016, 10:13
Не совсем. Нужно отслеживать последнее открытое окно для агрегат, и при последующем листании агрегатов, должно для каждого открываться такое же окно (последняя схема другого агрегата)
То есть если для одного агрегата открыто окно управления, то при нажатии на кнопку другого агрегата тоже должно открыться окно управления? Или как?

SCADAMaster
11.03.2016, 10:16
У нас все сохраняется корректно. Попробуйте скачать текущую Beta версию и проверить на ней.

Pimpl
11.03.2016, 10:19
именно так.

Pimpl
11.03.2016, 10:20
То есть если для одного агрегата открыто окно управления, то при нажатии на кнопку другого агрегата тоже должно открыться окно управления? Или как?

Да-да, именно так.

SCADAMaster
11.03.2016, 10:37
Много будет окон в таком объекте?
Сделать можно. При помощи нескольких ФБ "Управление документом" отслеживаете состояние каждого окна в объекте (открыто закрыто). Передаете этот сигнал в другие объекты, например в модуль "Событие", в нем отслеживаете - если открыто одно из окон другого объекта и оператор нажал на кнопку, открываете соответсвующее окно.
То есть в каждом объекте нужно будет создать ФБ "Управление документом" и события такого же количества как окон в объекте. То есть если если окон много, то схема будет достаточно громоздкая и тогда уже лучше будет писать скрипт на C#.

Pimpl
11.03.2016, 10:40
Понятно, спасибо. У вас каких-нибудь скриптов по отслеживанию окон?

SCADAMaster
11.03.2016, 10:51
Например так:
var project = HostFB.TreeItemHlp.Project;
foreach (IDocumentHlp doc in project.Documents)
{
var obj = doc.Attribute.TreeItem; //получить атрибуты объекта
}
У obj можно получить короткое имя объекта (Name) или полное имя (FullName) и понять что за объект у которого открыто окно.

mkv
11.03.2016, 11:21
У нас все сохраняется корректно. Попробуйте скачать текущую Beta версию и проверить на ней.
Странно как то у Вас обновления программы проходят. В ранней версии сохранение работало. В предшествующей - нет. Сейчас скачал последнюю. В ней всё работает.
Скажите, а где можно посмотреть, какие исправления Вы вносите в новые версии? Или сделайте на форуме новую ветку " работа над ошибками, или "исправления". И туда скидывайте информацию. Просто частенько бывает ищешь проблему, тратишь драгоценное время, а проблема оказывается в самой программе.
Спасибо.

Bairam
14.03.2016, 09:44
Здравствуйте.

А как сделать так чтобы в режиме исполнения Мастерскада открывалась на весь монитор и оператор не смог запустить стороннюю программу (пасьянс, фильм включить).

SCADAMaster
14.03.2016, 10:26
Штатно таких средств нет (если нужно развернуть на весь экран, то нужно просто скрыть панель задач).
У нас есть встроенное средство для анализа активности - то есть действия оператора в системе будут писаться в журнал.
Если же нужна полная блокировка, то нужно воспользоваться сторонним ПО - например WinLock

Pimpl
14.03.2016, 12:36
Можно ли в одном событии формировать два сообщения? Например при активном событии сообщение "Кран открыт" , при неактивном событии сообщение "Кран закрыт". Или нужно строго одно событие для каждого сообщения?

SCADAMaster
14.03.2016, 12:50
У события может быть только одно сообщение, поэтому в вашем случае нужно будет делать два.
Но вряд ли так делать корректно.

Pimpl
14.03.2016, 13:05
Спасибо. Скажите, а возможно ли в режиме исполнения задавать положение для определённого окна?

SCADAMaster
14.03.2016, 14:25
С помощью ФБ "Управление документом" можно управлять окном, в том числе положением.

Pimpl
15.03.2016, 08:35
Когда открываешь окно через ФБ "Управление документом" каналом Открыть, то нужно помимо этого обязательно указывать координаты для окна? Почему кнопкой экран открывается там где надо, но через ФБ открывается согласно входным данным? И как сделать так чтобы при открытие окна через ФБ Управлением документом выполнялось условие "Закрывать при открытии сверху нового окна"?

SCADAMaster
15.03.2016, 09:59
Когда открываешь окно через ФБ "Управление документом" каналом Открыть, то нужно помимо этого обязательно указывать координаты для окна?
Нет, не обязательно - только если включена настройка "Использовать значения входов при открытии документа".



Ваш вопрос не понятен.

[QUOTE=Pimpl;200989]И как сделать так чтобы при открытие окна через ФБ Управлением документом выполнялось условие "Закрывать при открытии сверху нового окна"?
С использованием этого ФБ не получится.

Pimpl
15.03.2016, 10:08
[QUOTE=Pimpl;200989 Почему кнопкой экран открывается там где надо, но через ФБ открывается согласно входным данным? [/QUOTE]
Ваш вопрос не понятен.
Я имею ввиду если открываю экран через кнопку на мнемосхеме то объект открывается там где я указал в настройках кнопки, но когда тот же экран открываю уже не нажатием кнопки а например сторонней командой через канал ОТКРЫТЬ в ФБ Управление документом, то объект уже открывается с другим положением.

SCADAMaster
15.03.2016, 10:16
Если в настройках не включено использование входов для при открытии документа, то должно открываться согласно координатам заданным в настройках окна.
Если же вы указали координаты в настройки кнопки, то они к ФБ, разумеется, никакого отношения иметь не будут.

Pimpl
15.03.2016, 10:54
Понятно, спасибо. Подскажите ещё такой момент. Как можно использовать одно событие для нескольких объектов. А именно... Допустим у меня имеется набор из 10 кранов, которые открываются и закрываются. Как можно создав одно событие "Кран открыт" или "Кран закрыт" использовать его для всех 10 кранов, при этом чтобы в журнале было видно какой конкретно кран был открыт, в том числе если они открываются одновременно должны будут формироваться сообщения для каждого крана

SCADAMaster
15.03.2016, 11:03
Мы вам уже ответили - одно событие может генерировать только одно сообщение.
Сделайте для каждого крана объект, в него положите по событию и генерируйте сообщения.

mkv
15.03.2016, 20:09
Добрый вечер. Возник небольшой вопрос. Приложил картинку. При нажатии на "Кнопку мнемосхемы" левой кнопкой мыши, открывается мнемосхема. Это нормально. А при нажатии правой-открывается окошко, с которого можно открыть "Новое окно №1" или "Новое окно №2" ну и естественно саму мнемосхему. Мне это не надо. Скажите, можно ли как то скрыть всплывающее окно? Т.Е что бы при нажатии правой кнопки мыши на "Кнопка мнемосхемы" всплывающее окошко не появлялось.
Картинка: 23161
Спасибо.

SCADAMaster
15.03.2016, 20:42
В панели свойств кнопки можно выключить контекстное меню.

lomtik
15.03.2016, 20:49
Здравствуйте! Подскажите советом. В мастерскаде формируется отчет по показаниям счетчиков - эл вода газ. Отчет формируется, все нормально, вижу все цифры, но при попытке сохранить отчет в экселевский файл в последнее время на этапе экспорта отчета в файл стала происходить какая-то ерунда - то никак координаты не рассчитаются, то форматирование объекта никак не закончится и т.д. вообщем файл экселя так и не формируется. Пробовал и pdf файл и html и другие - такая же ерунда, не экспортирует или экспортирует часми. Причем раньше этот процесс занимал сек 15, а сейчас часами ждешь экспорта и можешь не дождаться. Делал откаты полностью диска на 3 - 6 мес назад - не помогло, грешил на жесткий диск - сегодня склонировал и поставил новый - не помогло, поставил на новый диск образы полугодовой давности когда все работало - не помогло, поигрался с двумя линейками оперативной памяти - то с одной работал то с другой - не помогло. Комп достаточно мощный - оперативки 8 гб, 4 ядра по 3 с чем то Ггц. Переставил офис - не помогло. Проверил проект на другом компе - все летает, но там отчеты по нулям, т.к. опс сервера не настроены. Вообщем грешу на какую-то железку в компе, возможно процы. Перегрев и зависание. Но во время экспорта отчета в файл комп не висит, мышь шавелится, все работает, загрузка системы около 50-60 процентов. Подскажите что может быть? Скада 3.5.

mkv
15.03.2016, 20:54
В панели свойств кнопки можно выключить контекстное меню.
Спасибо. Всё нормально. Эти окна мне нужны только для просмотра в интернет-клиенте.
Спасибо.

SCADAMaster
15.03.2016, 21:22
Здравствуйте! Подскажите советом. В мастерскаде формируется отчет по показаниям счетчиков - эл вода газ. Отчет формируется, все нормально, вижу все цифры, но при попытке сохранить отчет в экселевский файл в последнее время на этапе экспорта отчета в файл стала происходить какая-то ерунда - то никак координаты не рассчитаются, то форматирование объекта никак не закончится и т.д. вообщем файл экселя так и не формируется. Пробовал и pdf файл и html и другие - такая же ерунда, не экспортирует или экспортирует часми. Причем раньше этот процесс занимал сек 15, а сейчас часами ждешь экспорта и можешь не дождаться. Делал откаты полностью диска на 3 - 6 мес назад - не помогло, грешил на жесткий диск - сегодня склонировал и поставил новый - не помогло, поставил на новый диск образы полугодовой давности когда все работало - не помогло, поигрался с двумя линейками оперативной памяти - то с одной работал то с другой - не помогло. Комп достаточно мощный - оперативки 8 гб, 4 ядра по 3 с чем то Ггц. Переставил офис - не помогло. Проверил проект на другом компе - все летает, но там отчеты по нулям, т.к. опс сервера не настроены. Вообщем грешу на какую-то железку в компе, возможно процы. Перегрев и зависание. Но во время экспорта отчета в файл комп не висит, мышь шавелится, все работает, загрузка системы около 50-60 процентов. Подскажите что может быть? Скада 3.5.
А если попробовать выполнить построения отчета на другом компьютере отчета с данными?
То есть перенести проект целиком (вместе с архивом) и попробовать построить отчет.
У вас долго строится отчет (то есть долго формируется окно предварительного просмотра) или же именно экспорт с Excel? Вы экспортируете в Excel через окно предварительного просмотра или через ФБ "Управление документом"?

lomtik
15.03.2016, 21:35
Проблема именно с экспортом. На другом компе отчет строится также как и на основном - быстро, несколько секунд всего, и экспортируется так как надо - быстро - секунд 15-20, как было раньше на основном. Экспортирую через окно предварительного просмотра в готовом отчете. Как я понял дело даже не в экселе, т.к. ни pdf ни html, тоже не хотят экспортироваться на основном компе, даже на резервных восстановленных копиях полностью системы винды. Ощущение что не хватает ресурсов. Буду пробовать завтра махнуть железо - процы либо мать. Пока ума не приложу что может быть.

А забыл - на другом компе скада демонстрационная с 1 часом работы, но версия кажется такая же 3.5.

Может скаду переустановить?эээ...Хотя я же из бэкапа акронисом систему восстанавливал когда она еще работала. Должна работать , а не работает.

SCADAMaster
15.03.2016, 21:58
Можно попробовать поставить 3.7 (только сделайте резервную копию проекта), хотя в редакторе отчетов ничего существенного давно не правилось.

lomtik
15.03.2016, 22:00
Спасибо, на крайняк попробую. А от 3.5 ключ к 3.7 не подойдет да? Ставить демо?

SCADAMaster
15.03.2016, 22:28
нужно поставить Demo

Pimpl
16.03.2016, 11:57
Подскажите, если организовать открытие окон через ФБ "Событие", будет ли выполняться условие "Закрывать при открытии сверху нового окна"?

SCADAMaster
16.03.2016, 20:49
Будет.
Через ФБ "Управление документом" - тоже будет выполняться (приносим извинения, что ввели в заблуждение).

Pimpl
17.03.2016, 09:18
Спасибо. А можно ли при построении проекта дублировать окно объектов? Ну например для того чтобы при привязке каналов не надо было мотать на вверх

SCADAMaster
17.03.2016, 09:42
Ваш вопрос не понятен - опишите вашу задачу подробнее

Pimpl
17.03.2016, 10:37
Рабочая область у меня состоит из окна "Система" и окна "Объект". Могу ли я открыть два окна "Объект" или два окна "Система"? Просто когда дерево объекта очень большое и мне нужно привязать какой-нибудь объект из конца дерева к объекту в начале дерева то получается немного неудобно.

SCADAMaster
17.03.2016, 11:04
Контекстное меню - Открыть в новом окне.

Sherverpupa
17.03.2016, 11:28
Как можно запретить изменение пользователем "оператор" состояния переключателя на мнемосхеме ?
На мнемосхеме имеется переключатель. Динамизация входов-выходов связана с дискретной командой.
Пробовал менять права доступа для команды - не работает, все равно можно изменить.
Хотел сделать расчет сравнения текущего оператора с "Оператор" - расчеты не работают со строками.

Как сделать правильно ?

UPD. В скрипте не пойму как использовать "HostFB.TreeItemHlp.Project.RTPermissions.CurrentUs er" чтобы сравнить с "оператор" ?

SCADAMaster
17.03.2016, 13:13
Как можно запретить изменение пользователем "оператор" состояния переключателя на мнемосхеме ?
На мнемосхеме имеется переключатель. Динамизация входов-выходов связана с дискретной командой.
Пробовал менять права доступа для команды - не работает, все равно можно изменить.

Переключатель не подчиняется правам доступа - так как это отдельные ActiveХ контрол. Как вариант вы можете разместить его на отдельном окне и блокировать вход на это окно определенным пользователям.
Или через вход динамизации "Блокирован" запрещать изменять состояние в зависимости от категории оператора



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

Используйте ФБ "Служебная информация" и "Сравнение строк"

Vitorgan
17.03.2016, 23:40
Доброй ночи, подскажите пожалуйста, возможно ли производить действия над локальными переменными функционального блока вызвав его в ST коде? В справке говориться только о входах и выходах:
"Можно получить доступ к входам и выходам экземпляра функционального блока используя инструкцию:
Имя_экземпляра.имя_переменной"

И каким образом проверять правильность работы функций и ФБ созданных в собственной библиотеке? В режиме разработки код можно только скомпилировать, а присваивать онлайн значения и смотреть на "реакцию" кода как например в кодесисе нельзя? Только Главный ST код можно монитроить(так как его выходы и входы отображаются в дереве объекта)?

Заранее благодарен за помощь.

SCADAMaster
18.03.2016, 08:12
Доброй ночи, подскажите пожалуйста, возможно ли производить действия над локальными переменными функционального блока вызвав его в ST коде? В справке говориться только о входах и выходах:
"Можно получить доступ к входам и выходам экземпляра функционального блока используя инструкцию:
Имя_экземпляра.имя_переменной"

Непонятно что вы имеете ввиду



И каким образом проверять правильность работы функций и ФБ созданных в собственной библиотеке? В режиме разработки код можно только скомпилировать, а присваивать онлайн значения и смотреть на "реакцию" кода как например в кодесисе нельзя? Только Главный ST код можно монитроить(так как его выходы и входы отображаются в дереве объекта)?

Как правило сначала делают функцию в обычном ФБ "Скрипт ST", отлаживают его, а уже затем переносят в библиотеку.

Vitorgan
18.03.2016, 08:47
Непонятно что вы имеете ввиду


Как правило сначала делают функцию в обычном ФБ "Скрипт ST", отлаживают его, а уже затем переносят в библиотеку.

Например в кодесис существует действие над ФБ, с помощью которого можно обращаться к локальным переменным блока.

SCADAMaster
18.03.2016, 10:19
Вы имеете ввиду из одного ФБ обращаться к другому напрямую?

Vitorgan
18.03.2016, 10:52
Не обязательно из ФБ, я хочу сбросить локальную переменную блока или считать ее, мастерскада позволяет такие действия производить только с input и output. Например:
Есть ФБ с именем Proba, в нем переменные
Var_input: x
Var_output: y
Var:z
В кодесисе к блоку можно добавить действие
( например proba."действие" и затем прописать код в специальном окне например z:=FALSE;),
, затем в PLC PRG помимо стандартных инструкций
( например присвоение значения входу proba(x:=TRUE); или опроса значения выхода (proba.y)
возможно применение инструкции proba."действие"();

А в мастерскаде из main_programm я могу обращаться только к "x" и "y".

Vitorgan
18.03.2016, 10:55
Еще один вопрос: в собственном ФБ созданном в библиотеке ST вызываю экземпляр стандартного ФБ TON, для его нормальной работы периодический опрос ставится в дереве "система" на вкладке "опрос" или же в другом месте?

SCADAMaster
18.03.2016, 11:41
Не обязательно из ФБ, я хочу сбросить локальную переменную блока или считать ее, мастерскада позволяет такие действия производить только с input и output. Например:
Есть ФБ с именем Proba, в нем переменные
Var_input: x
Var_output: y
Var:z
В кодесисе к блоку можно добавить действие
( например proba."действие" и затем прописать код в специальном окне например z:=FALSE;),
, затем в PLC PRG помимо стандартных инструкций
( например присвоение значения входу proba(x:=TRUE); или опроса значения выхода (proba.y)
возможно применение инструкции proba."действие"();

А в мастерскаде из main_programm я могу обращаться только к "x" и "y".
У нас в ST действий нет


Еще один вопрос: в собственном ФБ созданном в библиотеке ST вызываю экземпляр стандартного ФБ TON, для его нормальной работы периодический опрос ставится в дереве "система" на вкладке "опрос" или же в другом месте?
У самого ФБ поставьте.

Vitorgan
18.03.2016, 11:52
У самого ФБ который в дереве объекта- стоит, он работает! но ФБ библиотечный в котором есть экземпляр TON работать отказывается. Вопрос: Можно ли библиотечный блок TON вызвать из пользовательского ФБ, или только из главного ST кода?

SCADAMaster
18.03.2016, 12:47
Что вы подразумеваете под пользовательским ФБ и главным ST кодом?
Код размещенный в библиотеке ST не исполняется он вообще - к нему просто идет обращение из других блоков.

mkv
21.03.2016, 13:19
Добрый день.
Спасибо за видео примеры по созданию отчётов. Разобрался со структурой создания отчётов. Но не получается решить простую задачу. Имеется счётчик импульсов СИ-30. Ко входу подключен обычный водяной счётчик с герконовым выходом. СИ-30 выдаёт 1 импульс -10 литров. Надо создать отчёт расхода за указанный промежуток времени. Сделал в дереве объектов иммитацию счётчика с помощью "Пульсар" и "Счётчик дискретных импульсов". Сделал такую же структуру в дереве отчётов, как в Вашем видео примере (First) и кнопки как в (Third). Только вместо команд 1,2,3,в источник данных перетащил выход "Число импульсов" счетчика дискретных выходов. Скажите, какие настойки надо сделать для моего случая в "дереве отчёта" в переменной и в итогах данных для правильной работы отчёта? У меня в итогах данных не получается нужное значение. Я, как понял там должен быть расчёт. Т.Е из большего значения должно вычитаться меньшее. В игоге это идолжен быть расход за определённый промежуток времени.
Спасибо.

mkv
21.03.2016, 16:04
Наверно непонятно задал вопрос.
На мнемосхеме три кнопки. Две с заданием времени отчёта. Первой задаю начало отсчёта, второй-конец. Третья для запуска отчёта. Надо считать кол-во импульсов за определённый промежуток времени. Отсчёт сформировывается, но в "Итогах данных" значение выводится не правильно. Т.Е к примеру: начальное значение 50, конечное 80. В "Итог данных" должно быть 30. (80-50). А у меня в итогах выдаёт последнее значение, т.е 80. Вот я и спрашиваю, как правильно сделать настройки выхода счётчика в дереве отсчёта для моего случая?
Спасибо.

SCADAMaster
21.03.2016, 19:17
Напишите примерно следующую формулу:
{(double)First(DataИсточникДанных,ИсточникДанных1. Счетчик)-(double)Last(DataИсточникДанных,ИсточникДанных1.Сч етчик)}
То есть берете последнее значение источника и вычитаете первое.
Оба значения нужно привести к какому то типу (у вас возможно будет (int) ).

mkv
21.03.2016, 20:34
Извините, я не совсем понял куда вписывать эту формулу?
И ещё. Можно ли решить эту проблему не создавая отчёта. Т.Е. проделать это в дереве объектов самой Скады. А количество импульсов счётчика за выбранный промежуток времени просто вывести на мнемосхему.
Спасибо.

SCADAMaster
21.03.2016, 21:53
Извините, я не совсем понял куда вписывать эту формулу?

В ячейке бэнда "Итог данных"



И ещё. Можно ли решить эту проблему не создавая отчёта. Т.Е. проделать это в дереве объектов самой Скады. А количество импульсов счётчика за выбранный промежуток времени просто вывести на мнемосхему.

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

mkv
21.03.2016, 22:00
Значение счетчика у вас будет идти нарастающим итогом?
Да, считать будет по нарастающей (Счётчик СИ-30). А мне надо будет просматривать "куски" за определённые промежутки времени. Завтра на работе попробую.
Спасибо за помощь.

SCADAMaster
22.03.2016, 07:45
Используйте функцию расчета AbsArchMomentValue( )

mkv
22.03.2016, 13:59
Используйте функцию расчета AbsArchMomentValue( )
Спасибо, всё получилось.(AbsArchMomentValue( Число_импульсов,Конец,1)-(AbsArchMomentValue( Число_импульсов,Начало,1).
Хотелось бы уточнить, какое значение типа поиска правильнее внести в расчёт в моём случае, (0,1 или 2)?
Спасибо.

SCADAMaster
22.03.2016, 15:12
Смотрите сами исходя из вашей задачи.

mkv
22.03.2016, 19:24
Добрый вечер.
Я опять возвращаюсь к функции расчета AbsArchMomentValue( ). Объясните пожалуйста, как правильно истолковать объяснение в справке: Тип поиска может иметь значения: 0 - ближайшее по времени сверху, 1 - ближайшее снизу, 2 - ближайшее. Что значит "ближайшее по времени сверху, снизу, ближайшее?
Спасибо.

SCADAMaster
22.03.2016, 21:29
Время которое вы указываете может не совпадать со временем точки в архиве.
Например вы запрашиваете значение в момент времени 12:00. Но в архиве значения с такой меткой времени нет. Есть 12:01 и 11:58.
Если выберете режим "Ближайшее сверху", то вернется 12:01, снизу - 11:58, ближайшее - 12:01

Pimpl
23.03.2016, 10:45
Подскажите как можно реализовать всплывающую подсказку для текста? У меня есть динамическая область с меняющимся текстом. Необходимо сделать всплывающую подсказку для оператора что это за текст и о чём сигнализирует. Спасибо.

SCADAMaster
23.03.2016, 12:14
У некоторых компонентов есть вход динамизации "Текст подсказки" - его можно использовать для данной задачи.

mkv
23.03.2016, 15:30
Добрый день. Извините за простые вопросы, но век живи, век учись.
Мме нужно, что бы отображение количества импульсов за сутки автоматически менялось на мнемосхеме. Я сделал два варианта:
Вариант 1: Создал в дереве объектов три расчёта."Конец суток" с формулой CurDay( ), "Начало суток" с формулой CurDay( )-24*60*60 и расчет с формулой мгновенного значения: AbsArchMomentValue( Число_импульсов,Конец_суток,0) - AbsArchMomentValue( Число_импульсов,Начало_суток,1 ), который отображается на мнемосхеме.
Вариант 2: Создал в дереве объектов один расчёт с формулой мгновенного значения: ArchMomentValue( Число_импульсов,CurDay( ),1 ) - ArchMomentValue( Число_импульсов,CurDay( )-24 * 60 * 60,1 ), который отображается на мнемосхеме.
Вопроса два. Скажите правильно ли написаны формулы, и каким образом это можно проверить. У меня для проектирования демо версия и при переводе времени на компьютере, останавливается режим исполнения. В итоге при повторном запуске Скады, результат выводится, но правильный или нет, я не знаю как проверить.
Спасибо.

SCADAMaster
23.03.2016, 17:09
Написаны правильно, но проверить без архива не получится.

mkv
24.03.2016, 11:21
Добрый день.
Остался один вопрос по отчётам.
Т.Е. Архив отчёта формируется в течение суток. У меня работает счётчик, допустим 30 минут, а затем останавливается на какое то время. Затем опять запускается. Пока счётчик стоит в архив сбрасывается одно и то-же значение. В итоге из-за этого в отчёте создаётся огромное количество не нужных строк с одинаковым значением.(1,2,3,4,5,5,5,5,5,5,5,5,5,5,5,6 и т.д).
Скажите пожалуйста, как в отчёте убрать повторяющиеся значения?
Спасибо

SCADAMaster
24.03.2016, 16:02
Не совсем понятно - в архив или же в отчет?
Если в архив, то какой способ архивации у вас стоит? Если стоит по изменению, то такого быть не должно.

SCADAMaster
24.03.2016, 20:49
То что у вас ничего не отображалось при формировании по изменению вероятно связано с тем, что у вас у переменной была выключена настройка "Основной".
Что вам в конечном счете нужно от отчета? Какой формы он должен быть? Вам нужно вывести показаний каждый час (то есть разницу за час)?

mkv
24.03.2016, 21:07
Что вам в конечном счете нужно от отчета? Какой формы он должен быть? Вам нужно вывести показаний каждый час (то есть разницу за час)?
Я интервал времени отчёта задаю двумя кнопками с мнемосхемы. При нажатии третьей кнопки, открывается отчёт. Мне надо, что бы в отчёте отображались данные счётчика за выбранный промежуток времени с результатом "мгновенное значение" в конце. Для этого я формулу вписывал в ячейку бэнда "Итог данных". Я делал всё на основании Вашего третьего видеопримера. Да, Вы правы. Почему то при изменении способа форматирования в дереве отчётов в "ИСТОЧНИКЕ" у меня в переменной "основной" присваивалось значение "False". По этому я и не видел ничего в отчёте. Сейчас вроде всё получилось. Правда в строках всё равно идут по два одинаковых значения. Или это правильно? 23356 Завтра ещё раз на работе попробую.
P.S. Похоже так и должно быть. Попробовал увеличить длительность импульса счётчика, затем совсем остановил. Получается одинаковые значения пишутся после предыдущего и перед последующим значениями. Причём время между одинаковыми значениями зависело от времени между предыдущим и последующим значениями.
Спасибо.

SCADAMaster
24.03.2016, 22:32
Мне надо, что бы в отчёте отображались данные счётчика за выбранный промежуток времени с результатом "мгновенное значение" в конце.
Все равно не понятно - в конце вывести одно последнее значение?


Да, Вы правы. Почему то при изменении способа форматирования в дереве отчётов в "ИСТОЧНИКЕ" у меня в переменной "основной" присваивалось значение "False". По этому я и не видел ничего в отчёте. Сейчас вроде всё получилось. Правда в строках всё равно идут по два одинаковых значения. Или это правильно?
Есть еще переменные в источнике данных (кроме "Время")?
В настройках архивации переменной не включена настройка "Моделирование ступеньки".

mkv
25.03.2016, 06:21
Все равно не понятно - в конце вывести одно последнее значение?
Отчёт показывает, что происходило за выбранный промежуток времени. В какое время происходил разбор и в каком количестве. А в итогах высчитывается разница между последним и первым значением за этот период.(расход за выбранный промежуток времени).


Есть еще переменные в источнике данных (кроме "Время")?
Время и переменная выход счётчика. Он мне и считает расход. На картинке выше это видно.(пост 2898)


В настройках архивации переменной не включена настройка "Моделирование ступеньки".
"Моделирование ступеньки" не включено. Включено только "По изменению".
Спасибо.

mkv
25.03.2016, 09:32
Добрый день.
Мне надо,что-бы значение переменной из архива обновлялось один раз в сутки в 8.00. Я создал расчёт с формулой:
ArchMomentValue( Число_импульсов,CurDay( )+8*60*60,0 ) - ArchMomentValue( Число_импульсов,CurDay( )-24 * 60 * 60,1 )
Но номер не прошёл. Переменная поменяла значение в 00.00 часов, а в 8.00 на месте значения переменной на мнемосхеме появился вопросительный знак и вышло сообщение, что пропала связь с переменной. Посмотрел в дереве объектов значение расчёта - там стало отрицательное значение.
Скажите, как правильно это сделать?
Спасибо.

SCADAMaster
25.03.2016, 09:58
Отчёт показывает, что происходило за выбранный промежуток времени. В какое время происходил разбор и в каком количестве. А в итогах высчитывается разница между последним и первым значением за этот период.(расход за выбранный промежуток времени).

Опять не понятно. У вас сейчас каждое изменение счетчика будет порождать новую строку - это точно то что вам нужно?
Может быть вам все же нужно выдавать забор каждый час?



"Моделирование ступеньки" не включено. Включено только "По изменению".

Посмотрите у переменной, на вкладке "Данные" есть ли там дублирование данных.

SCADAMaster
25.03.2016, 09:59
Добрый день.
Мне надо,что-бы значение переменной из архива обновлялось один раз в сутки в 8.00. Я создал расчёт с формулой:
ArchMomentValue( Число_импульсов,CurDay( )+8*60*60,0 ) - ArchMomentValue( Число_импульсов,CurDay( )-24 * 60 * 60,1 )
Но номер не прошёл. Переменная поменяла значение в 00.00 часов, а в 8.00 на месте значения переменной на мнемосхеме появился вопросительный знак и вышло сообщение, что пропала связь с переменной. Посмотрел в дереве объектов значение расчёта - там стало отрицательное значение.
Скажите, как правильно это сделать?
Спасибо.
Попробуйте :
AbsArchMomentValue( Число_импульсов,CurDay( )+8*60*60,0 ) - AbsArchMomentValue( Число_импульсов,CurDay( )-24 * 60 * 60,1 )

mkv
25.03.2016, 11:48
Может быть вам все же нужно выдавать забор каждый час?
Вы знаете, наверно Вы правы. Так будет и лучше и правильнее. Буду пробовать.
Я, как понял, для реализации забора каждый час, мне нужно в свойствах данных вернуть способ форматирования на "ПЕРЕОДИЧЕСКИЙ", а в свойствах интервала поставить значение (60*60) или просто 3600?
Спасибо.

SCADAMaster
25.03.2016, 14:37
Да, все верно.

mkv
26.03.2016, 08:38
Попробуйте :
AbsArchMomentValue( Число_импульсов,CurDay( )+8*60*60,0 ) - AbsArchMomentValue( Число_импульсов,CurDay( )-24 * 60 * 60,1 )
Таже проблема. Только по старой формуле "ArchMomentValue( Число_импульсов,CurDay( )+8*60*60,0 ) - ArchMomentValue( Число_импульсов,CurDay( )-24 * 60 * 60,1 )" значение обновлялось в 00.00 часов, а в 8.00 выдавало ошибку. А в Вашем варианте в 00.00 часов выдало ошибку и всё-дальше не работает.
Скажите, а в "Расчёте" в закладке "Опрос выхода" надо ставить галочку "Значение до опроса"? Может из-за этого вся проблема?
Спасибо.

SCADAMaster
26.03.2016, 13:40
Так как она будет у вас работать, если вы пытаетесь найти значение за будущее время (к текущему времени прибавляете 8 часов)?

mkv
26.03.2016, 13:58
Так как она будет у вас работать, если вы пытаетесь найти значение за будущее время (к текущему времени прибавляете 8 часов)?
Так я в посте 2903 задавал по этому поводу вопрос. Мне предложили попробовать этот вариант.
А как тогда правильно? Мне надо,что-бы значение переменной из архива обновлялось один раз в сутки в 8.00. (26.03.8.00-25.03.8.00). Как в формуле AbsArchMomentValue( Число_импульсов,CurDay( ),0 ) - AbsArchMomentValue( Число_импульсов,CurDay( )-24 * 60 * 60,1 ) можно сделать, что-бы сутки начинались ни с 00.00, а с 8.00.
Спасибо.

SCADAMaster
26.03.2016, 19:51
Вы пытаетесь посчитать значение в будущем времени - это разумеется неправильно.
Вам нужно сделать чтобы если время меньше 8 часов, то расчет шел за прошлый сутки, а если больше - то уже за текущий.
Можно сделать примерно такую формулу:
AbsArchMomentValue(Число_импульсов,ЕСЛИ( Time( )>Int2Time( 8,0,0 ),Date( )+8*60*60,Date( )-16*60*60 ),0)
-
AbsArchMomentValue(Число_импульсов,ЕСЛИ( Time( )>Int2Time( 8,0,0),Date( )+8*60*60,Date( )-16*60*60 )-86400 ,0)

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

mkv
26.03.2016, 20:15
SCADAMaster
Большое спасибо. Теперь только в понедельник попробую. Сегодня на работающем проекте экспериментировал. Пытался по разному формулы писать и на компьютере время изменял. В итоге у меня на трендах графики стали бред показывать. Пришлось чистый новый проект ставить.

Поскольку вы работаете с архивами, то следует установить у расчета период опроса пореже - раз минуту например.
Вы имеете ввиду у расчёта в закладке "опрос" поставить опрос "периодический" и 60 тактов? ( у меня сейчас стоит "по изменению).
Спасибо.

Pimpl
28.03.2016, 11:13
Подскажите, как можно запаролить конкретный экран, а именно экран "Замена уставок"? Ну чтобы уставки мог менять человек определённой должности.И как с помощью кнопки вызвать окно смены операторов? Спасибо.

SCADAMaster
28.03.2016, 13:55
Вы имеете ввиду у расчёта в закладке "опрос" поставить опрос "периодический" и 60 тактов? ( у меня сейчас стоит "по изменению).
Спасибо.

Да, именно его

SCADAMaster
28.03.2016, 13:56
Подскажите, как можно запаролить конкретный экран, а именно экран "Замена уставок"? Ну чтобы уставки мог менять человек определённой должности.И как с помощью кнопки вызвать окно смены операторов? Спасибо.
Это делается через права доступа. Компьютер (объект) - права доступа - снимаете галочки на открытие нужных документов у нужных пользователей.
Для того чтобы из кнопки вызвать смену оператора, нужно добавить команду, типа "Дискретный", на закладке "ДЕйствия" - системное - завершение сеанса

SokolovS
28.03.2016, 16:21
У нас все работает корректно.
Попробуйте обновить вашу ключевую версию или для начала просто переустановить MasterSCADA
Забыл отписаться
На новой ключевой версии источник данных наполняется корректно, насколько я протестировал
Мастер так и не запустился

Pimpl
29.03.2016, 08:43
Подскажите, как лучше реализовать функцию замены уставок. Необходимо менять уставки с экрана оператора, но по факту должны отображаться уставки установленные на контроллере после замены, а не те которые висят в команде. Спасибо.

mkv
29.03.2016, 10:21
Подскажите, как лучше реализовать функцию замены уставок. Необходимо менять уставки с экрана оператора, но по факту должны отображаться уставки установленные на контроллере после замены, а не те которые висят в команде. Спасибо.
Попробую объяснить. В дереве объектов у "Команды" есть закладка "Опрос выхода" в ней окошко"обратная связь". Вам туда надо перетащить выход с контроллера.
Спасибо.

SCADAMaster
29.03.2016, 13:48
Подскажите, как лучше реализовать функцию замены уставок. Необходимо менять уставки с экрана оператора, но по факту должны отображаться уставки установленные на контроллере после замены, а не те которые висят в команде. Спасибо.
Нужно использовать обратную связь.
У команды, на закладке "Опрос выхода" есть поле "Обратная связь" перетащите в него ОРС переменную или выход ФБ "Повторитель", который получает данные из прибора. Тогда контрол команды будет отображать то что приходит по обратной связи, а вводимые значения будут записываться на выход команды.

Aleksandr
31.03.2016, 08:14
необходимо чтобы в режиме исполнения оператор мог изменить текстовое поле. Те кликнув по нему, ввести новый текст. Как такое реализовать?

SCADAMaster
31.03.2016, 09:01
Создаете команду, типа "Строковый" и вытаскиваете на мнемосхему. При щелчке появится окно ввода.

Pimpl
01.04.2016, 10:11
Подскажите, возможно ли сделать индикацию уровня заполнения произвольного элемента, например просто прямоугольника? или только цистерны ?

mkv
01.04.2016, 11:27
Подскажите, возможно ли сделать индикацию уровня заполнения произвольного элемента, например просто прямоугольника? или только цистерны ?
Вы знаете, я из этого положения выходил так: В "палитре" в закладке "Управление" есть элемент "Индикатор". Перетещите его на мнемосхему, а в его свойствах установите галочку "Только столбик". И крутите его, как хотите.
Возможно есть ещё какой вариант.....
Спасибо.
P.S. Так и в настройках ёмкости можно сделать, что бы получился обычный прямоугольник.

Aleksandr
04.04.2016, 09:38
Добрый день. Имеется порядка трехсот объектов, для каждого есть "окно объекта". Необходимо в каждом окне добавить кнопку (которая связана со своим объектом). Как лучше поступить, чтобы сделать это быстрее.
И еще вопрос так и не понял как сделать, чтобы изображение объекта автоматически обновлялось на мнемосхеме после его изменения.

SCADAMaster
04.04.2016, 10:18
Добрый день. Имеется порядка трехсот объектов, для каждого есть "окно объекта". Необходимо в каждом окне добавить кнопку (которая связана со своим объектом). Как лучше поступить, чтобы сделать это быстрее.

Объекты однотипные? Тогда можно через механизм "Шаблон-экземпляр" (в видеопримерах про него рассказывалось), но если вы изначально не включили этот механизм перед дублированием то сперва нужно будет его включить и связать шаблон и его экземпляры



И еще вопрос так и не понял как сделать, чтобы изображение объекта автоматически обновлялось на мнемосхеме после его изменения.
Автоматически нельзя - это делается с помощью команд:
в текущей мнемосхеме - Сервис - Обновить изображения проектов.
во всем проекте - Сервис - Проект - Обновить изображения проектов.

Aleksandr
04.04.2016, 11:03
Объекты однотипные? Тогда можно через механизм "Шаблон-экземпляр" (в видеопримерах про него рассказывалось), но если вы изначально не включили этот механизм перед дублированием то сперва нужно будет его включить и связать шаблон и его экземпляры
Да объекты однотипные. Шаблон экземпляр использую, очень помогает. Но там видна разница, только в дереве объекта, а в окнах различия не отображаются. Или я не прав...

Aleksandr
04.04.2016, 11:04
Автоматически нельзя - это делается с помощью команд:
в текущей мнемосхеме - Сервис - Обновить изображения проектов.
во всем проекте - Сервис - Проект - Обновить изображения проектов.

_Спасибо!_

SCADAMaster
04.04.2016, 11:16
Конкретные отличия окон не отображаются - отображается если ли отличие окон в целом. То есть синхронизировать окна можно, но только целиком.

Aleksandr
05.04.2016, 16:12
Конкретные отличия окон не отображаются - отображается если ли отличие окон в целом. То есть синхронизировать окна можно, но только целиком.

Спасибо. получилось. Теперь не получается создать рамку вокруг изображения объекта на мнемосхеме. В режиме разработки она есть, в RT нет, появляется только при наведении мыши. Как сделать чтоб рамка отображалась всегда?

SCADAMaster
05.04.2016, 16:38
Это корректное поведение - рамка отображается только в режиме разработки.
Если вам нужна постоянная рамка, то вы можете положить компонент "Прямоугольник" у которого включить видимость границ, а фон сделать прозрачным.

Aleksandr
05.04.2016, 19:00
Это корректное поведение - рамка отображается только в режиме разработки.
Если вам нужна постоянная рамка, то вы можете положить компонент "Прямоугольник" у которого включить видимость границ, а фон сделать прозрачным.

такой вариант и рассматривал. Еще заметил что "шаблон-экземпляр" не проверяет (не сравнивает) наличие обратной связи у команды.

SCADAMaster
05.04.2016, 19:35
Да, есть такая ошибка. Она уже исправлена. Исправление будет доступно в следующей стабильной версии

Aleksandr
05.04.2016, 19:42
Да, есть такая ошибка. Она уже исправлена. Исправление будет доступно в следующей стабильной версии

Когда она выйдет?

Pimpl
06.04.2016, 11:47
Скажите пожалуйста, как при создании своего ФБ, прописать его настройки в системных? Ну например указать в общих системных настройках цвет аварийного блинкера который я сам создал

byv7
06.04.2016, 11:57
Возможно ли блокировать квитирование?

SCADAMaster
06.04.2016, 13:31
Когда она выйдет?
Мы сообщим когда все протестируем.

SCADAMaster
06.04.2016, 13:34
Скажите пожалуйста, как при создании своего ФБ, прописать его настройки в системных? Ну например указать в общих системных настройках цвет аварийного блинкера который я сам создал
Не совсем понятна ваша задача. Опишите ее подробнее

SCADAMaster
06.04.2016, 13:34
Возможно ли блокировать квитирование?
Вы имеете ввиду запретить оператору квитировать определенное сообщение? Или что именно вам требуется?

byv7
06.04.2016, 15:09
Да. Запретить оператору квитировать сообщения.

mkv
06.04.2016, 15:42
Да. Запретить оператору квитировать сообщения.
Вот, посмотрите. 23688
Снимите галочки у оператора.
Спасибо.

SCADAMaster
06.04.2016, 16:31
Все верно.
И аналогично - в журнале.

Aleksandr
07.04.2016, 12:31
Т.к. "шаблон - экземпляр" не проверяет наличие обратной связи у команды, пришлось удалить и заново дублировать объекты. Соответственно разорвалась связь с изображениями объектов на мнемосхеме. Возможно как-нибудь восстановить связь или придется все ручками?

SCADAMaster
07.04.2016, 12:49
Восстановить не получится - у параметров теперь новые ID.

Aleksandr
07.04.2016, 15:20
Восстановить не получится - у параметров теперь новые ID.

Ясно.
У заказчика возникло еще одно пожелание. Просят чтобы можно было изменять название канала (название датчика к подключенного к регулятору). Я создал объект для каждого канала и создал строковую команду, которую можно менять. Она и используется в сообщениях для идентификации. Подскажите как к тренду привязать эту команду, чтобы отражалась в минилегенде?
Так понимаю мне нужно организовать динамическое название в тренде. Как это сделать?

Нашел как вводить пользовательское название тренда. но при перетаскивании туда строковой переменной отображается "ерунда"

SCADAMaster
07.04.2016, 15:59
К сожалению так пока не получится.
Тут вариантом бы было использование поле "Описание" - из него можно брать имя пера. Но сделать его динамическим пока что нельзя.
Но у нас записана задача сделать, чтобы в этом поле можно было перетаскивать команду.

Aleksandr
07.04.2016, 16:10
К сожалению так пока не получится.
Тут вариантом бы было использование поле "Описание" - из него можно брать имя пера. Но сделать его динамическим пока что нельзя.
Но у нас записана задача сделать, чтобы в этом поле можно было перетаскивать команду.

Как же мне решить эту задачу. Можно ли в дереве объекта, динамизировать название чего либо (внешние связи, расчет...)? Ведь в коротком названии пера отображается название последнего элемента.

SCADAMaster
07.04.2016, 16:53
Пока к сожалению никак.
Подождите некоторое время - в течении месяца-двух, мы планируем сделать этот функционал.

Vitorgan
11.04.2016, 12:25
Добрый день, подскажите пожалуйста, возможно ли "задатчик" из палитры сделать целочисленным, объясню в чем проблема:
При перемещении ползунка например до 35%(задатчик от 0 до 100%) на мнемосхеме в окошке отображается 35, а в дереве объектов на переменной которая завязана с данным задатчиком отображается значение 36. Я как понимаю, это из-за того, что я как-бы ползунком попал в промежуточное значение, например 35,8. Как с этим бороться? заранее благодарен.

EnPc
12.04.2016, 18:42
Скажите пожалуйста, как при создании своего ФБ, прописать его настройки в системных? Ну например указать в общих системных настройках цвет аварийного блинкера который я сам создал


Не совсем понятна ваша задача. Опишите ее подробнее

Имеется ввиду задание свойства для всех экземпляров ФБ в проекте одновременно. На примере блинкера (control, привязанный к ФБ): цвет всех блинкеров в проекте должен быть одинаковый, но задаваться в одном месте для всех. Блинкеров в проекте может быть очень много, на разных мнемосхемах, править все весьма утомительно.

Вариант со static полями не заработал потому что при сохранении записываются данные только отредактированных control`ов и при загрузке значение поля зависит от того, кокой экземпляр control'a загрузился последним.

Возможно ли где то централизованно сохранить данные общие для всех экземпляров?

Victor721
12.04.2016, 22:47
Доброго времени суток!
Помогите с чтением архива из ПЛК160, сделал все как в инструкции http://www.insat.ru/products/Universal_MasterOPC/ExportDevice/OwenPLC/owenplc_readme.pdf , но когда запускаю MasterSCADA в тренде скада отрисовывает данные только за последние ~20 минут. 10 переменных типа FLOAT, интервал сохранения 5 секунд.
Подскажите почему не получается просмотреть архив за больший период времени?

SCADAMaster
13.04.2016, 09:32
Добрый день, подскажите пожалуйста, возможно ли "задатчик" из палитры сделать целочисленным, объясню в чем проблема:
При перемещении ползунка например до 35%(задатчик от 0 до 100%) на мнемосхеме в окошке отображается 35, а в дереве объектов на переменной которая завязана с данным задатчиком отображается значение 36. Я как понимаю, это из-за того, что я как-бы ползунком попал в промежуточное значение, например 35,8. Как с этим бороться? заранее благодарен.
Данная ошибка исправлена. Исправление будет доступно в следующей стабильной версии.

SCADAMaster
13.04.2016, 09:34
Доброго времени суток!
Помогите с чтением архива из ПЛК160, сделал все как в инструкции http://www.insat.ru/products/Universal_MasterOPC/ExportDevice/OwenPLC/owenplc_readme.pdf , но когда запускаю MasterSCADA в тренде скада отрисовывает данные только за последние ~20 минут. 10 переменных типа FLOAT, интервал сохранения 5 секунд.
Подскажите почему не получается просмотреть архив за больший период времени?
Сначала вам нужно убедится что данные действительно считаны OPC сервером корректно. В режиме исполнения ОРС сервера, выделите тег и посмотрите на вкладку HDA - все ли данные там видны.

Victor721
13.04.2016, 13:58
Сначала вам нужно убедится что данные действительно считаны OPC сервером корректно. В режиме исполнения ОРС сервера, выделите тег и посмотрите на вкладку HDA - все ли данные там видны.

В ОРС HDA первая запись за ~20 минут до запуска MS. Почему ОРС не тянет с ПЛК более поздние данные?

SCADAMaster
13.04.2016, 15:26
А они там точно есть?
Попробуйте средствами Codesys считать файл куда вы ведете архив и посмотреть его содержимое обычным блокнотом.

Victor721
14.04.2016, 10:12
Считал с ПЛК log, действительно архив за последние ~20 минут. В конфигураторе параметры модуля Max file size - 32000? ,больше не устанавливается. Есть ли возможность писать архив на более длительный период?

byv7
14.04.2016, 12:10
Такой вопрос. Имеется три установки, каждая на ПЛК160 подключенные к скаде. Возможно ли отключать опрос не работающей установки в режиме исполнения?

SCADAMaster
14.04.2016, 16:19
Такой вопрос. Имеется три установки, каждая на ПЛК160 подключенные к скаде. Возможно ли отключать опрос не работающей установки в режиме исполнения?

На закладке "Опрос", Условие выполнения
Перетащите дискретную команду чтобы задействовать это поле.

byv7
15.04.2016, 12:08
Спасибо. Все получилось.

Victor721
15.04.2016, 12:41
По моему вопросу мне тему создавать?

SCADAMaster
15.04.2016, 13:11
По моему вопросу мне тему создавать?

Это вопрос не к самой скаде, т.к. повлиять на настройки кодесиса мы не можем

Vitorgan
17.04.2016, 16:46
Подскажите пожалуйста, есть ли возможность изменять вид мышки или подсвечивать элемент при наведении мышки на определенный элемент?

Aleksandr
18.04.2016, 00:10
SCADAMaster подскажите как реализовать следующий функционал. Необходимо, чтобы каждый день автоматически создавался файл с сообщениями из журнала за последние сутки. Например, аналогичный тому, как будто печатаешь журнал сообщений за сутки на виртуальном принтере pdf. Т.е. нужен отчет по сообщениям. Или с помощью отчета можно это реализовать?

SCADAMaster
18.04.2016, 10:59
SCADAMaster подскажите как реализовать следующий функционал. Необходимо, чтобы каждый день автоматически создавался файл с сообщениями из журнала за последние сутки. Например, аналогичный тому, как будто печатаешь журнал сообщений за сутки на виртуальном принтере pdf. Т.е. нужен отчет по сообщениям. Или с помощью отчета можно это реализовать?
Воспользуйтесь ФБ "Управление документом" - с его помощью можно сохранять журнал в определенный формат, за определенное вами время

SCADAMaster
18.04.2016, 12:20
Подскажите пожалуйста, есть ли возможность изменять вид мышки или подсвечивать элемент при наведении мышки на определенный элемент?

Для собственных безоконных ВФБ есть возможность менять вид курсора (в коде отрисовки нужно вызвать SetCursor)

В остальных случаях можно отображать рамку вокруг элемента при наведении мыши.
На мнемосхеме, выделив саму мнемосхему выставьте "Отображать рамку элементов" в Истина.
Далее у нужных элементов в "Режим отображения рамки" выставляете либо Отображать либо Не отображать

Vitorgan
18.04.2016, 14:54
Спасибо!, тогда еще один вопрос, можно ли задать толщину и цвет данной рамке?
Есть зона выбора над каждым механизмом, при нажатии на который происходит открытие окна, поэтому оператору нужно "дать понять" что визуально что-то изменилось когда он навел на элемент с возможностью вызова окна

SCADAMaster
18.04.2016, 15:37
Толщину - нет
А вот цвет задается там же где и "Отображать рамку элементов"

Vitorgan
18.04.2016, 22:52
Уважаемые разработчики, заметил одну очень опасную штуку в Masterscada, если в проекте присутствуют ST программы, и в режиме разработки был открыт другой проект (по разным причинам), то после закрытия второго проекта, при переходе из режима разработки в режим исполнения, возникает ошибка кодов с текстом о неверном указании экземпляра и чего-то еще, кроме кнопок "ОК" и "ОТМЕНА" ничего сделать нельзя, в ИТОГЕ все связи выходов, входов, локальных переменных всех ST-кодов разрываются, у меня например связей более 200 штук, хороший подарочек на ночь) Такая ошибка возникает в разных проектах и постоянно. Проверьте пожалуйста в чем загвоздка. Спасибо за понимание.

Vitorgan
19.04.2016, 00:29
И еще вопрос, буду благодарен за помощь, в палитре мнемосхемы есть выпадающий список, при выборе нужной строки, строка остается "действующей", то есть пока не нажмешь на какой либо другой элемент мнемосхемы, строка останется активной, уже несколько раз произвольно прокручивал колесико мышки (нечаянно), и изменял строку. Очень не удобно, каким образом можно от этого избавиться?

Aleksandr
19.04.2016, 09:04
Воспользуйтесь ФБ "Управление документом" - с его помощью можно сохранять журнал в определенный формат, за определенное вами время

Спасибо, то что надо. Только файлы сохраненные в pdf, почему то не открываются. При сохранении в htm и xls все нормально.

SCADAMaster
19.04.2016, 13:22
Журналы в формат PDF не сохраняются - HTML, XPS и графические форматы.

SCADAMaster
19.04.2016, 15:38
Вышлите отчет об ошибках на почту support@insat.ru
Так же скопируйте в письмо ваш текст сообщения

SCADAMaster
19.04.2016, 15:40
И еще вопрос, буду благодарен за помощь, в палитре мнемосхемы есть выпадающий список, при выборе нужной строки, строка остается "действующей", то есть пока не нажмешь на какой либо другой элемент мнемосхемы, строка останется активной, уже несколько раз произвольно прокручивал колесико мышки (нечаянно), и изменял строку. Очень не удобно, каким образом можно от этого избавиться?
Нет, пока элемент активен, он принимает команды от мыши. Колесико как раз отвечает за прокрутку. Такое поведение является логичным.

Vitorgan
19.04.2016, 22:12
Ладно тогда другой вопрос, как сделать его не активным? тыканье на мнемосхему не помогает, ничего кроме нажатия на другие кнопки

Pimpl
20.04.2016, 10:11
Объясните один момент. Чем чревато то, что я буду тянуть сигналы (например аналоги) на экран сразу из "Компьютер", а не из "Объект"? Обязательно ли нужно вытянуть сигналы сначала в объект, а потом выводить на экран?

SCADAMaster
20.04.2016, 12:03
Ладно тогда другой вопрос, как сделать его не активным? тыканье на мнемосхему не помогает, ничего кроме нажатия на другие кнопки

Как вариант, либо заменить на ВФБ "Список строк" (Палитра->Работа с архивом)
Либо использоваться команду с типом "Перечесление"

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

SCADAMaster
20.04.2016, 12:09
Объясните один момент. Чем чревато то, что я буду тянуть сигналы (например аналоги) на экран сразу из "Компьютер", а не из "Объект"? Обязательно ли нужно вытянуть сигналы сначала в объект, а потом выводить на экран?

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

azausatu
21.04.2016, 10:03
Добрый день.

Возникла проблема при записи уставки температуры в прибор ТРМ138 от ОВЕН из MasterSCADA.
Запись производится с двух мест - MasterSCADA и сенсорная панель Weintek по Modbus TCP. Соединены через шлюз Modbus RTU - Modbus TCP.
Согласно документации к данному прибору ТРМ138, уставка пишется в один регистр, считывается с другого.
Настроил Modbus Universal OPC Server, в разделе "Дополнительно", в свойстве "Адрес отдельного регистра записи" указал нужный адрес.
Поочередная запись из OPC сервера и панели Weintek происходит корректно. Никто не переписывает друг друга, обновление переменной происходит правильно.
Когда происходит запись из MasterSCADA, панель считывает изменения переменной, но записать уже не может.
Ввод значения в MasterSCADA настроил следующим образом: Поместил в дерево объектов "Команду", перетащил на нее связь от переменной в OPC сервере, вытащил команду на мнемосхему правой кнопкой и выбрал "Редактируемое значение". В дереве объектов у команды включил обратную связь с той же переменной в OPC сервере.

Как правильно делать ввод значений, когда в OPC сервере настроено считывание с одного регистра, запись в другой?

24028

SCADAMaster
21.04.2016, 13:15
Что значит "записать уже не может"? Запись не проходит? Или же запись проходит, но вы этого в скаде не видите?
Если хотите чтобы команда не только позволяла вводить данные, но и отображать их, то перетащите в поле "Обратная связь" ОРС переменную или выход ФБ "Повторитель".

azausatu
21.04.2016, 13:25
Что значит "записать уже не может"? Запись не проходит? Или же запись проходит, но вы этого в скаде не видите?
Если хотите чтобы команда не только позволяла вводить данные, но и отображать их, то перетащите в поле "Обратная связь" ОРС переменную или выход ФБ "Повторитель".

Панелька пишет данные, отображает у себя. При просмотре в OPC сервере на АРМ или в скаде данные старые.
Когда скада выключена все нормально работает. Запись происходит и с панели и с OPC сервера, в любом порядке, все отображается и обновляется и на панели и в OPC сервере.
Обратную связь я включал:


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

SCADAMaster
21.04.2016, 16:00
Если в ОРС сервере данные отображаются старые, значит панель их не записала. Посмотрите по логу запросов - что отвечает контроллер, если данные старые, значит дело в нем или в панели.

azausatu
21.04.2016, 16:26
Если в ОРС сервере данные отображаются старые, значит панель их не записала. Посмотрите по логу запросов - что отвечает контроллер, если данные старые, значит дело в нем или в панели.

Почему тогда при выключенной скаде все нормально работает? Панель пишет все как надо.

Oak
21.04.2016, 21:55
не могу найти в палитре ВФБ Список строк - как его вставить в дерево проекта?

SCADAMaster
22.04.2016, 11:52
не могу найти в палитре ВФБ Список строк - как его вставить в дерево проекта?
ВФБ это визуальный функциональный блок
Соответственно они находятся в палитре которая относится к дереву объектов. А не в палитре мнемосхемы.
Располагается он там по следующему пути Палитра->Работа с архивом

Vitorgan
22.04.2016, 23:34
Есть одна проблема, представим что в проекте есть ST код (20 входов, 30 выходов, 15 локальных переменных), в своей работе он обращается к библиотечным ФБ блокам, или функциям... Все скомпилировано, связи настроены. Вдруг потребовалось изменить в ФБ какую-нибудь переменную, ну или хотя бы ее тип. Теперь что происходит: Я меняю переменной тип в Библиотечном ФБ, получаю нерабочий код в дереве объектов, но у меня даже нет возможности его исправить, так как при выборе ST программы, сразу же вылезает ошибка, тем самым исчезают все входы, выходы до того момента пока я не исправлю и скомпилирую код.
Вопрос- Как быть? ведь во время разработки проекта я не могу быть на 100% уверен в работоспособности ФБ, и если есть недоработка, которую надо изменить, я понимаю что попадаю каждый раз на расстановку связей, которых штук под 100. Почему сброс происходит при переходе в код, пусть сбрасывает при переходе в режим исполнения... Мастерскада вещь очень хорошая, но... этот сброс. Может есть что-то что мгновенно восстанавливает связи?

SCADAMaster
23.04.2016, 17:43
Какая у вас версия MasterSCADA?
Мы проверили - у нас при смене типа в библиотечном ФБ, можно войти в скрипт ST компилироваться он не будет, но входы и выходы не пропадают.
Пришлите небольшой пример который бы описывал данную ситуацию и последовательность действий приводящих к ошибке.

Vitorgan
23.04.2016, 17:57
а куда присылать? версия :3.7.0.51942

Vitorgan
23.04.2016, 18:18
Только что создал новый проект, там такого не наблюдаю, тогда другой вопрос, в скаде 3.6 такая ошибка присутствовала? Может ли повлиять то, что проект я создавал на основе ранее созданного проекта в версии 3.6? Если такое возможно... то как тогда быть? могу ли я безболезненно переместить проект в чистый только что созданный 3.7, со всеми связями, разумеется и с теме которые на мнемосхеме?

SCADAMaster
23.04.2016, 18:32
Можно попробовать.
Сначала добавьте дерево системы. Затем скопируйте все элементы дерева объектов из старого проекта и вставьте в новый - появится окно восстановления внешних связей, если в дереве системы имя компьютера, ОРС сервера и тегов будут такими же то все связи восстановятся.

Vitorgan
23.04.2016, 21:37
Уважаемый SCADAMaster, как я считаю, проблему я нашел. Но все по порядку. Заранее извиняюсь за русский язык и знаки препинания.

Весь путь до стабильной работы программы занял 35 часов. Пробовал все что только можно, и последовал вашему совету вставить дерево объекта в новый проект.

Сначала обрадовался, программа дала возможность заходить в ST код, но через раз, в 2 кода зайдет, на 3 ошибка, или сразу вылетала ошибка, и удаляла все входы, выходы. Пока разбирался, заметил одну странность:
Как мы помним при создании функций в библиотеки после компиляции, появляется маленький "+" напротив слова функции, при раскрытии которого, мы видим названия наших функций,щелкая по которым видим входы. Так вот, весь мой список ФБ и Функций вдруг перестал отображаться (пропали "+"). Методом исключения каждой функции из библиотеки, добился того что "+" появился. Всему виной стала безобидная функция:

FUNCTION ustSRDl : bool
VAR_INPUT
ust: REAL;
delta: REAL;
curr: REAL;
rez_old: BOOL;
END_VAR
VAR
dn:REAL;
lim_min: REAL;
lim_max: REAL;
rez: BOOL;
END_VAR

dn:=(delta/2);
lim_min:=(ust-dn);
lim_max:=ust+dn;

IF curr<lim_min THEN rez:=TRUE;
ELSIF curr>=lim_max THEN rez:=FALSE;
ELSE rez:=rez_old;
END_IF;

ustSrdl:=NOT rez;
END_FUNCTION

Красным выделены строчки которые и прячут "+". После их удаления проект заработал стабильно, ST коды открываются без ошибок, переменные не исчезают.

Огромная к Вам просьба, попробуйте вставить данную функцию в созданную библиотеку, далее перейдите на любую другую вкладку, затем вернитесь, и посмотрите пожалуйста, у Вас "+" остался? или исчез? 241262412724128

SCADAMaster
24.04.2016, 09:52
У нас данный код вообще не компилируется.
IF curr
при этом curr у вас тип Real, а не Bool
и где Then после curr?

Vitorgan
24.04.2016, 11:04
Обрезается, когда просто вставляю в сообщение


FUNCTION ustSRDl : bool
VAR_INPUT
ust: REAL;
delta: REAL;
curr: REAL;
rez_old: BOOL;
END_VAR
VAR
dn:REAL;
lim_min: REAL;
lim_max: REAL;
rez: BOOL;
END_VAR

dn:=(delta/2);
lim_min:=(ust-dn);
lim_max:=ust+dn;

IF curr < lim_min THEN rez:=TRUE;
ELSIF curr >= lim_max THEN rez:=FALSE;
ELSE rez:=rez_old;
END_IF;

ustSrdl:=NOT rez;
END_FUNCTION

SCADAMaster
24.04.2016, 11:44
Проблема с пропаданием значка "плюс" проявилась - мы передали информацию программистам. Проблема с пропаданием входов и выходов не проявилась - пришлите ваш проект, мы попробуем проверить на нем.

Vitorgan
24.04.2016, 11:58
Подскажите, куда высылать проект, и есть ли у Вас возможность оповестить меня, о решении проблемы с "+"?

SCADAMaster
24.04.2016, 12:37
Проект можете выложить сюда или выслать на support. Когда проблема будет решена - мы сообщим.

Vitorgan
24.04.2016, 12:43
Вот. Кстати от состояния плюсика проблема не ушла. заново появилась, после закрытия-открытия проекта. Во вложенном проекте при заходе в ST появляется ошибка, переменные исчезают. Если в ФБ вернуть трем определенным переменным нужный ТИП, ошибка пропадает.... Жду результатов. Спасибо за помощь.

Vitorgan
26.04.2016, 14:57
SCADAMaster, ошибка появляется? не получилось ее убрать? проект горит.

SCADAMaster
26.04.2016, 15:12
Ошибка с пропаданием входов исправлена. Сейчас исправляем пропадание +

Oak
26.04.2016, 21:32
как можно скопировать связи?
Например, была команда со связями, надо все эти связи перевесить на выход ФБ.

SCADAMaster
26.04.2016, 21:45
Скопировать связи явно нельзя. Если только через скрипт.

Oak
26.04.2016, 23:31
А было бы удобно.

Еще вопрос - создал таблицу помести в мнемосхему. Таблицу из дерева удалил, открыл мнемосхему, таблица перечеркнута красным и не удаляется. В мнемосхему объекты другие добавляются, но не удаляются тоже. Очень не хочется перерисовывать мнемосхему.
Версия 3,6 - есть смысл переходить на 3,7 и когда будет 3,8?

SCADAMaster
27.04.2016, 08:15
SCADAMaster, ошибка появляется? не получилось ее убрать? проект горит.
Ошибка исправления. Для получения обновления обратитесь в отдел продаж, укажите номер ключа на который нужна новая версия

SCADAMaster
27.04.2016, 08:19
Еще вопрос - создал таблицу помести в мнемосхему. Таблицу из дерева удалил, открыл мнемосхему, таблица перечеркнута красным и не удаляется. В мнемосхему объекты другие добавляются, но не удаляются тоже. Очень не хочется перерисовывать мнемосхему.

Должно удаляться. Попробуйте выделить элемент в дереве элементов мнемосхемы и удалить оттуда



Версия 3,6 - есть смысл переходить на 3,7 и когда будет 3,8?
Пока трудно сказать когда будет 3.8 - возможно к концу года.

Pimpl
27.04.2016, 13:18
Подскажите. У меня есть один из ваших скриптов по созданию списка событий с сообщениями. как изменить скрипт чтобы создавать список самому созданный ФБ?

Pimpl
27.04.2016, 13:21
Подскажите. У меня есть один из ваших скриптов по созданию списка событий с сообщениями. как изменить скрипт чтобы создавать список самому созданный ФБ? Как его прописать в скрипте

Vitorgan
27.04.2016, 13:42
SCADAMaster, ох, а можно пока без ключа? Объясню, Masterscadу покупал уже не раз, и работаю с ней уже более 2 лет, но сейчас выполняю проект на новый объект, и у меня есть свой принцип работы - пока проект не будет полностью функционален, ключевую версию не заказываю. Все таки скада на 500 точек стоит 30 тысяч, деньги не маленькие. Получается я без покупки ключевой версии не смогу нормально провести диагностику и отладку проекта(даже до конца не знаю количество точек, или 100 хватит, или придется 500 заказывать) из-за того, что в бесплатной версии есть возникающие ошибки?