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

Vitorgan
27.04.2016, 13:51
И еще один вопрос, ПЛК160 будет соединен с мастерскадой через ОПС, в свою очередь на ПЛК приходит огромное количество аналоговых сигналов. Очень не хочется их передавать на скаду через сам ПЛК, бывают ли какие-нибудь устройства, чтобы я например мог подать значения с модулей МВ110-8а и на ПЛК и на Мастерскаду одновременно? Заранее благодарен за совет.

SCADAMaster
27.04.2016, 14:31
Подскажите. У меня есть один из ваших скриптов по созданию списка событий с сообщениями. как изменить скрипт чтобы создавать список самому созданный ФБ?
Не совсем понятно про какой скрипт идет речь - опишите подробнее.
Также не совсем ясно что вы хотите сделать - перенести код в собственный ФБ?

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

SCADAMaster
27.04.2016, 14:33
И еще один вопрос, ПЛК160 будет соединен с мастерскадой через ОПС, в свою очередь на ПЛК приходит огромное количество аналоговых сигналов. Очень не хочется их передавать на скаду через сам ПЛК, бывают ли какие-нибудь устройства, чтобы я например мог подать значения с модулей МВ110-8а и на ПЛК и на Мастерскаду одновременно? Заранее благодарен за совет.
Нет - получится два мастера на сети.
А в чем проблема передавать данные с ПЛК? Используйте не ОРС Codesys, а Modbus Universal - тогда все будет быстро и стабильно

Pimpl
27.04.2016, 14:38
Имеется скрипт, который в режиме DoAction создаёт ФБ "События", названия и сообщения берёт из буфера. Там есть строчка var Event=(ITreePinHlp)ParentObject.TreeItemHlp.Insert NewChildItem(MasterSCADALib.EObjectType.otVisualFB ,"?"); Подскажите что написать вместо вопроса в ковычках чтобы создавать не ФБ События, а свой ФБ который был создан в Visual Studio

Vitorgan
27.04.2016, 14:46
SCADAMaster подскажите пожалуйста новый фтп, и огромное СПАСИБО за быстрое и качественное решение проблемы!

SCADAMaster
27.04.2016, 15:20
SCADAMaster подскажите пожалуйста новый фтп, и огромное СПАСИБО за быстрое и качественное решение проблемы!
Ответили личным сообщением.

Pimpl
28.04.2016, 09:00
24202 Вот, этот скрипт который создаёт События с соответствующими сообщениями, названия и текст он берёт из буфера. Как мне изменить скрипт чтобы вместо ФБ События создавался мой собственный ФБ (созданный в Visual)

SCADAMaster
28.04.2016, 09:03
Имеется скрипт, который в режиме DoAction создаёт ФБ "События", названия и сообщения берёт из буфера. Там есть строчка var Event=(ITreePinHlp)ParentObject.TreeItemHlp.Insert NewChildItem(MasterSCADALib.EObjectType.otVisualFB ,"?"); Подскажите что написать вместо вопроса в ковычках чтобы создавать не ФБ События, а свой ФБ который был создан в Visual Studio
Попробуйте
InsertNewChildItem(MasterSCADALib.EObjectType.otVi sualFB, "{1AA634E3-8A1B-477A-971B-76AE6A05558F}")
{1AA634E3-8A1B-477A-971B-76AE6A05558F} - это GUID ФБ, прописанный в атрибуте Guid у класса ФБ

leszkin
29.04.2016, 11:40
а что за нововведение по работе с объектами в плане их перетаскивания и изменения размеров путем драг-энд-дроп? появился какой-то непонятный даблл-клик для выполнения данных действий. стало жутко не удобно. можно отключить как-то данную "фичу"?

SCADAMaster
29.04.2016, 13:56
а что за нововведение по работе с объектами в плане их перетаскивания и изменения размеров путем драг-энд-дроп? появился какой-то непонятный даблл-клик для выполнения данных действий. стало жутко не удобно. можно отключить как-то данную "фичу"?

Можете записать видео, так непонятно о чём речь

махон
04.05.2016, 09:19
помогите с программированием экрана в овен логик

SCADAMaster
04.05.2016, 09:23
Вы ошиблись разделом - здесь задаются вопросы по MasterSCADA

Oak
05.05.2016, 09:17
контролер плк100 под мастерплк - как получить доступ к энергонезависимой памяти контролера. Конкретно, надо сохранять значение выхода ФБ расчет при выключениях.

SCADAMaster
05.05.2016, 09:28
Для этого вам не нужен отдельный доступ к памяти.
Включите в настройках контроллера "Горячий рестарт". Задайте период с которым нужно сохранять значения, и время актуальности (если требуется).
После этого у нужных переменных поставьте галочку "Восстановление при рестарте".
Если включить "Восстановление при рестарте" но не включить "Горячий рестарт", то значение также будет восстановлено - но не самим контроллером, а скадой - при первом опросе.

Oak
05.05.2016, 09:34
а если включен горячий рестарт в контролере и восстановление при рестарте, то скада не будет сохранять и восстанавливать при рестарте эти переменные? Тоько контролер?

SCADAMaster
05.05.2016, 09:47
Да, тогда это прерогатива контроллера

Vitorgan
05.05.2016, 19:07
Подскажите пожалуйста SCADAMaster при установке и открытии скады, независимо от того, стояла ли предыдущая версия скады, или нет, вылетает окно с ошибкой:
24310
Эта бета версия, которую Вы мне говорили качать, она с исправленными ошибками

SCADAMaster
05.05.2016, 19:41
Какая у вас версия ОС? XP?

Vitorgan
05.05.2016, 22:48
ОС : Windows 7

SCADAMaster
06.05.2016, 09:47
У вас имя компьютера (в самой ОС) не по русски написано?

Vitorgan
06.05.2016, 10:51
От этого не зависит, имена где на русском, где на латинице. Ошибка и там и там.

Vitorgan
10.05.2016, 14:01
SCADAMaster, подскажите пожалуйста возможно ли в скаде "инвертировать" значения с Модуля МВ 110-8ДФ. Приходит битовая маска, раскладывается в скаде распоковкой 32 бит. значения из палитры, получается каждый бит мне приходится "инвертировать". Можно ли одним "махом" все поменять?

SCADAMaster
10.05.2016, 16:07
Инвертируйте их до разбора на биты. Воспользуйтесь модулем "Расчет" - у него есть функция Побитовое НЕ.

Vitorgan
10.05.2016, 16:40
Спасибо большое, пробовал с НЕ, только не побитовой) а справка для слабаков):)

Vitorgan
10.05.2016, 16:52
Подскажите пожалуйста в "догонку", чем чревата установка опроса опс переменных в скаде, например,100 мс? И вообще, может вы знаете, где понятным языком описано про периоды опросов устройств OPC, а то одних модулей штук 20, еще частотники, хотелось бы до конца понимать modbus server, правильно настроить опрос. Заранее благодарен!

SCADAMaster
10.05.2016, 17:10
Если будет успевать опрашиваться с такой скоростью,то ничем. Если не будет - то будет опрашивать с той скоростью, с какой это возможно.
Но если данные меняются часто и при этом они архивируются, то при таком темпе может быстрее заполнятся база архивных данных - нужно настроить мертвые зоны.
Принцип настройки периодов опроса простой - нужно везде установить его одинаковым (то есть 100 мс в опросе ОРС сервера, в 100 мс опрос ОРС сервера в скаде, и 100 мс опрос дерева объектов).

Но прежде чем снижать до такого периода, нужно посмотреть с каким реально периодом выходит опросить ваши устройства. Возможно что на полный опрос всех приборов у вас уйдет 2-3 секунды или больше, тогда ставить 100 мс не имеет смысла.

Vitorgan
10.05.2016, 17:33
А каким образом это проверить?

Vitorgan
10.05.2016, 17:37
Вы сказали опрос должен быть одинаковым, ну а если например опрос дерева объектов будет 100мс независимо от опс, ничего страшного? просто такой опрос я ставлю чтобы окна на мнемосхеме открывались мгновенно, а не с задержкой

SCADAMaster
10.05.2016, 17:43
А каким образом это проверить?
По логам запросов и ответов

SCADAMaster
10.05.2016, 17:44
Вы сказали опрос должен быть одинаковым, ну а если например опрос дерева объектов будет 100мс независимо от опс, ничего страшного? просто такой опрос я ставлю чтобы окна на мнемосхеме открывались мгновенно, а не с задержкой
Ничего страшного.
Окна будут открываться без задержки, если открывать через кнопку вызова (вытащить объект на мнемосхему - он станет кнопкой).

Vitorgan
11.05.2016, 10:42
SCADAMaster, правильно ли я Вас понял, что мне надо узнать время запрос-ответ каждого прибора "висящего" на одном ком-порте, сложить полученное время, данное число и будет минимальным временем, за которое опс вернется к опросу каждого устройства? а возможно например опрашивать устройство "А" каждые 2 секунды, а "Б" например каждые 500мс?

SCADAMaster
11.05.2016, 10:57
Да, выясните за какое время опрашивается каждое устройство. Если в сумме выйдет больше секунды, то оставьте все настройки (в том числе в скаде) по умолчанию - 1000 мс.

Vitorgan
11.05.2016, 12:53
SCADAMaster если я создам событие, которое будет считывать признак качества значения OPCQuality( ), то будет считываться только "Ошибка Устройства" как написано в справке, или еще "ошибку датчика" и "Значение не определено" я смогу увидеть?

SCADAMaster
11.05.2016, 13:10
С помощью этой функции можно вернуть все признаки качества переменной, в том числе и перечисленные вами.

Vitorgan
11.05.2016, 13:35
Получается в истину будет переходить событие от любой ошибки прописанной в скрипте в ОПС? Мне для этого ничего добавлять не нужно? И еще, что такое "снять признак качества"?

Vitorgan
11.05.2016, 13:43
OPCQuality(Значение) = НЕОПРЕДЕЛЕНО ИЛИ OPCQuality(Значение) =ОШИБКА_УСТРОЙСТВА ИЛИ OPCQuality(Значение) =ОШИБКА_ДАТЧИКА

Должно быть вот так прописано? правильно я понял?

Vitorgan
11.05.2016, 13:53
Есть еще одна ДИЛЕ́ММА, с аналоговых модулей я могу принимать значение с одних регистров в int и передавать также в скаду, там в свою очередь делить число, получая нужное значение с запятой, или же из других регистров считывать и передавать float, и в скаде уже ничего не делать, так каким путем все таки идти? что быстрей и меньше грузит и ОПС и СКАДУ?

SCADAMaster
11.05.2016, 13:57
OPCQuality(Значение) = НЕОПРЕДЕЛЕНО ИЛИ OPCQuality(Значение) =ОШИБКА_УСТРОЙСТВА ИЛИ OPCQuality(Значение) =ОШИБКА_ДАТЧИКА

Должно быть вот так прописано? правильно я понял?
Что вам нужно в конечном счете? В каком случае должно генерироваться сообщение?

SCADAMaster
11.05.2016, 13:58
Есть еще одна ДИЛЕ́ММА, с аналоговых модулей я могу принимать значение с одних регистров в int и передавать также в скаду, там в свою очередь делить число, получая нужное значение с запятой, или же из других регистров считывать и передавать float, и в скаде уже ничего не делать, так каким путем все таки идти? что быстрей и меньше грузит и ОПС и СКАДУ?
Лучше просто делайте пересчет в ОРС сервере - там есть специальная настройка для этого.

Vitorgan
11.05.2016, 14:05
В итоге мне требуется, чтобы при выполнении скрипта в ОПС:
function CheckQ(t)
local qu
--server.Message("MBA = ",t);
if (t==0) then qu=OPC_QUALITY_GOOD;
return qu;
end
--если зафиксированы ошибки датчики то признак "Ошибка датчика"
if (t==61440 or (t>=61450 and t<=61453)) then qu=OPC_QUALITY_SENSOR_FAILURE;
return qu;
end
--если зафиксированы ошибки устройства то признак "Ошибка устройства"
if ((t>=61447 and t<=61449) or t==61454 or t==61455) then qu=OPC_QUALITY_DEVICE_FAILURE;
return qu;
end
--если статус "Значение заведомо неверно" то признак "Значение не определено"
if (t==61446) then qu=OPC_QUALITY_UNCERTAIN;
return qu;
end
return OPC_QUALITY_UNCERTAIN;
end


на данном событии появлялась 1, если ошибки не зафиксированы, то 0.

Vitorgan
11.05.2016, 14:08
Лучше просто делайте пересчет в ОРС сервере - там есть специальная настройка для этого.

Так все-таки считываю флоат или инт?
http://www.owen.ru/uploads/re_mv110-8as_1821.pdf (56 страница)
Измеренное значение iRD или Read

SCADAMaster
11.05.2016, 14:14
на данном событии появлялась 1, если ошибки не зафиксированы, то 0.
Тогда так:
OPCQuality( Alarm ) <> ОШИБКА OPCQuality( Alarm ) <>НЕТ_СВЯЗИ

НЕТ_СВЯЗИ, это признак 24 появляется в момент когда сервер еще не запустился.

SCADAMaster
11.05.2016, 14:14
Так все-таки считываю флоат или инт?
http://www.owen.ru/uploads/re_mv110-8as_1821.pdf (56 страница)
Измеренное значение iRD или Read
Без разницы - и скаде и ОРС серверу все равно.

Vitorgan
11.05.2016, 14:22
Alarm это что за переменная в ОПС?

SCADAMaster
11.05.2016, 14:29
Да. Не обязательно ОРС - просто любая переменная скады.

Vitorgan
11.05.2016, 14:30
Я раньше не используя скрипт предоставленный в библиотеке ОВЕНа (который я демонстрировал в посте №#3044) просто передавал с каждого канала 8А или 8АС две переменных (значение и статус), но скада не резиновая, поэтому потребовалось сократить передачу переменных между скадой и опс. Подумал что смогу передавать только значение, а статус генерировать из функции OPCQuality того же значения, но как этой функцией воспользоваться, понять не могу.

SCADAMaster
11.05.2016, 14:38
А зачем вам статус генерировать вообще?
Переменная будет иметь признак качества - выдастся сообщение, на мнемосхеме сообщение подчернется, на тренде будет пунктиром. Что еще требуется?

Vitorgan
11.05.2016, 14:46
Не все так просто) в идеале хотелка требует чтобы на мнемосхеме над значением при плохом качестве появлялась надпись (например: "ошибка датчика"), и вообще среди огромного количества датчиков на мнемосхеме глаз не всегда заметит подчеркнутое значение. Можно ли через эту функцию узнать какой в данный момент признак качества? и например через расчет сделать: если признак "ошибка датчика" то расчет равен "1", если "ошибка устройства" то расчет равен "2", если не определено то расчет =3, а если все ОК, то расчет =0. Или невозможно прочитать признак и вот так разложить?

SCADAMaster
11.05.2016, 15:11
Да, можно. Например так:
OPCQuality( Команда_1 ) = ОШИБКА_ДАТЧИКА*1+OPCQuality( Команда_1 ) = ОШИБКА_УСТРОЙСТВА*2+OPCQuality( Команда_1 ) = ОШИБКА*3
Если ошибок не будет будет 0, ошибка датчик - 1, устройства - 2, нет связи - 3.

Vitorgan
11.05.2016, 16:35
Команда_1 - это переменная моего значения?

SCADAMaster
11.05.2016, 16:54
Да. Именно так.

Vitorgan
11.05.2016, 17:04
Ладно, пока не до конца вник в вашу формулу, могу ли я просто сравнить с константой "Норма" и если не равняется, то истина?
Вставил вашу формулу в расчет он сразу же становится логическим, либо 1 либо 0

Vitorgan
11.05.2016, 17:17
в формулу я вник примерно, мы сравнение (1 или 0) умножаем на 1,2 или 3. Только не могу понять покакой причине расчет становится логическим.

SCADAMaster
11.05.2016, 17:22
если формула будет как у нас то результат будет целым.

Vitorgan
11.05.2016, 17:29
у меня почему-то нет, формулу скопировал

SCADAMaster
11.05.2016, 18:36
Попробуйте так:
(OPCQuality( Значение ) = ОШИБКА_ДАТЧИКА)*1+(OPCQuality( Значение ) = ОШИБКА_УСТРОЙСТВА)*2+(OPCQuality( Значение ) = ОШИБКА)*3

SCADAMaster
12.05.2016, 12:26
От этого не зависит, имена где на русском, где на латинице. Ошибка и там и там.
Данная ошибка исправлена. Скачайте текущую Beta версию.

The-Boss
16.05.2016, 08:08
Доброго времени суток
Есть приборы ИРТ5501 с элемеровским орс-сервером. Общение с этими приборами происходит через переменную Device exchange, в которую задаются команды и соответственно получают ответы
Задача тривиальна. Нужно вывести на мнемосхему значение уставки и поле для установки уставки. Но есть одно но - так как переменная для общения одна - как проходит команда установки уставки - поле для вывода уставки становится равным ответу об успешной задаче уставки
Собственно, есть ли возможность попробовать цикличного (например раз в 5 сек) выполнения команды? (чтобы периодически отправлять команду запроса о значении уставки)

Vitorgan
16.05.2016, 15:08
SCADAMaster, добрый день. Может быть вы встречались с данной проблемой, опишу ситуацию, есть 12 модулей(МВ110-8дв-2 шт, МУ110-16Р- 2 шт, МУ110-8А- 2 шт,МУ110-8АС- 2 шт), все они соединены витой парой и приходят на АС3М. далее через ком-порт в OPC Modbus. Если работает скада, то раз в минуту вылетает сообщение "ошибка" и показывает что все переменные связанные с 8ДФ отвалились, также в дереве системы с такой же цикличностью битовая маска 8ДФ приобретает тусклый свет, как будто она потеряла связь, через секунд 10 все восстанавливается, до нового обрыва. Все остальные модули работают спокойно. посмотрел на строку передачи-приемки пакетов модулей в ОПС, через какое-то время вылетает строчка связанная с 8ДФ, что то типа: Ошибка записи команды 3 (holding register) в устройство и на признаке качества появляется BAD. запускал отдельно от скады, все время признак ОК, обрывов нет, только по какой то причине опс практически всегда отправляет два запроса 8ДФ, а отвечает он один раз.

Oak
16.05.2016, 15:14
Существует ли удобный способ найти дублирующиеся архивы и снять архивирование с дубликатов?

SCADAMaster
16.05.2016, 19:48
SCADAMaster, добрый день. Может быть вы встречались с данной проблемой, опишу ситуацию, есть 12 модулей(МВ110-8дв-2 шт, МУ110-16Р- 2 шт, МУ110-8А- 2 шт,МУ110-8АС- 2 шт), все они соединены витой парой и приходят на АС3М. далее через ком-порт в OPC Modbus. Если работает скада, то раз в минуту вылетает сообщение "ошибка" и показывает что все переменные связанные с 8ДФ отвалились, также в дереве системы с такой же цикличностью битовая маска 8ДФ приобретает тусклый свет, как будто она потеряла связь, через секунд 10 все восстанавливается, до нового обрыва. Все остальные модули работают спокойно. посмотрел на строку передачи-приемки пакетов модулей в ОПС, через какое-то время вылетает строчка связанная с 8ДФ, что то типа: Ошибка записи команды 3 (holding register) в устройство и на признаке качества появляется BAD. запускал отдельно от скады, все время признак ОК, обрывов нет, только по какой то причине опс практически всегда отправляет два запроса 8ДФ, а отвечает он один раз.
Видимо по какой то причине прибор не отвечает. Можно попробовать в ОРС сервере добавить количество попыток опроса у него.
Можно в приборе увеличить межсимвольный таймаут - возможно есть он так чувствителен к разрыву пакетов.

SCADAMaster
17.05.2016, 12:01
Существует ли удобный способ найти дублирующиеся архивы и снять архивирование с дубликатов?
Попробуйте скрипт по ссылке
https://dl.dropboxusercontent.com/u/50919138/16_05_2016_1.zi_
Переименуйте "16_05_2016_1.zi_" в "16_05_2016_1.zip"
Работает в режиме разработки. На закладке "Код" надо нажать "DoAction"
Будет выведен список переменных которые архивируются и у которых в связях есть переменные, которые тоже архивируются.

leszkin
17.05.2016, 12:12
А как реализовать перенос текста по словам?
Нужно разместить достаточно длинные предложения в пространстве, ограниченном по ширине, но не ограниченном по высоте. Текст берется из перечисляемой переменной.
Лепит все в 1 строку, несмотря на то, что я растянул область отображения по высоте ;(

SCADAMaster
17.05.2016, 14:07
А как реализовать перенос текста по словам?
Нужно разместить достаточно длинные предложения в пространстве, ограниченном по ширине, но не ограниченном по высоте. Текст берется из перечисляемой переменной.
Лепит все в 1 строку, несмотря на то, что я растянул область отображения по высоте ;(
На текущий момент для шкал, никак

Vitorgan
17.05.2016, 23:31
Добрый день, а подскажите возможно ли организовать запись уставок(констант переменных) в ПЛК 160 средствами скады? Если да, то где копать?

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

Как обстоят дела с реализацией этого функционала? Очень надо.

SCADAMaster
18.05.2016, 12:03
Добрый день, а подскажите возможно ли организовать запись уставок(констант переменных) в ПЛК 160 средствами скады? Если да, то где копать?
160 напрямую не поддержан. Так что всё общение с ним можно организовать только через OPC

Oak
18.05.2016, 14:03
Попробуйте скрипт по ссылке
https://dl.dropboxusercontent.com/u/50919138/16_05_2016_1.zi_
Переименуйте "16_05_2016_1.zi_" в "16_05_2016_1.zip"
Работает в режиме разработки. На закладке "Код" надо нажать "DoAction"
Будет выведен список переменных которые архивируются и у которых в связях есть переменные, которые тоже архивируются.

спасибо попробуем.
При снятии архивирования файл архива удаляется автоматом или надо его найти и удалить руками? Как тогда найти файл?

Vitorgan
18.05.2016, 20:45
160 напрямую не поддержан. Так что всё общение с ним можно организовать только через OPC

Получается чтобы записать 40 уставок, у меня должно быть + 40 переменных в опс? а через какой нибудь txt или csv никак?

SCADAMaster
19.05.2016, 11:52
Получается чтобы записать 40 уставок, у меня должно быть + 40 переменных в опс? а через какой нибудь txt или csv никак?

Если записывать из скады - нет.

SCADAMaster
19.05.2016, 12:00
спасибо попробуем.
При снятии архивирования файл архива удаляется автоматом или надо его найти и удалить руками? Как тогда найти файл?
Архивирование идет в файловый архив?
Для файлового архива файл остается на месте, так что если вернуть галку "архивировать", он продолжится.
Чтобы "избавится" от файлового архива, в панели управления "Проект->"Экспортировать", в указанную папку будет скопирован проект без архивов.

Для баз данных архив удаляется.

Oak
24.05.2016, 09:45
Архивирование идет в файловый архив?
Для файлового архива файл остается на месте, так что если вернуть галку "архивировать", он продолжится.
Чтобы "избавится" от файлового архива, в панели управления "Проект->"Экспортировать", в указанную папку будет скопирован проект без архивов.

Для баз данных архив удаляется.

Не хотелось бы терять всю историю.
Если просто руками потом удалить архивные файлы по устаревшим датам обновления - ничего страшного не произойдет?
Архивы в Система\SCADA MAIN\__Data?

SCADAMaster
24.05.2016, 10:25
Можно удалить руками.
Можно выделить объект, чьи данные вы хотите удалить - Архив - Удаление Архивов - Удалить.

agatveo
26.05.2016, 12:23
Доброго времени суток, как попасть на FTP? Нужен Simulator OPC server, на insat.ru я зарегистрирован.Спасибо.

SCADAMaster
26.05.2016, 13:53
Для каких целей вам требуется Simulator?
Мы можем дать параметры на FTP напишите нам на support(рр)insat.ru

ilyako
26.05.2016, 15:12
Добрый день. Пришел работать на предприятие, здесь стоит Master SCADA. Раньше я с ней дело не имел. Столкнулся с проблемой, что проект, реализованный в SCADA наполовину не рабочий. В общем-то с многим разобрался и исправил кучу проблем, но вот совсем простую задачку решить не получается.
На мнемосхеме есть кнопка, которая не открывает график. В проекте не могу найти привязку. Если вызывать контекстное меню, из него график открывается.
24590
Заранее благодарен за подсказки.

SCADAMaster
26.05.2016, 15:52
Приложите ваш проект, выполните Проект - ЭКспортировать, сформированную папку заархивируйте и выложите сюда.
Также рекомендуем вам посмотреть наши видеопримеры:
http://www.masterscada.ru/?additional_section_id=233

MR_VADS
27.05.2016, 14:55
Здравствуйте! Столкнулся со следующей проблемой.
Разрабатываем с коллегой автоматизированную систему управления наружным освещением. Сразу же хочу поставить Вас в известность - уровень знаний по работе в ПО MScada не велик, так что если Вас не затруднит, ответить на вопрос мой с пояснениями.

Проблема заключается в следующем.
Логическая переменная OPC сервера(назовем её State), меняет свое состояние в зависимости от работы светильника. Т.е. Свет горит - переменная State - 1 в противоположном случае 0.
В MScada с помощью "события", в разделе формул сделал простейшее условие - Переменная State=1.
Мне необходимо визуально анализировать работу светильника на предмет включения.
Данное событие перетащил на мнемосхему в виде индикатора мнемонического ( он выполняет свою функцию - но с большой задержкой... Светильник горит - а индикатор состояния срабатывает через секунд 15-20)
В меню опрос установлено значение в 1000 мс..
Не могу понять в чем проблема.
Надеюсь на Вашу помощь...

И еще вопрос по поводу формул - существует ли руководство с описанием синтаксиса формул "Событие" "Расчет"?

Приношу свои извинения если мой вопрос не корректен.

ilyako
27.05.2016, 15:05
В меню опрос установлено значение в 1000 мс..
Не могу понять в чем проблема.

Я сам не силен в Master SCADA, но сталкивался с подобной ситуацией. Поменял время опроса в SCADA, потом в настройках OPC-сервера и еще в конфигурации самого прибора. В конечном итоге победил задержку.

MR_VADS
27.05.2016, 15:19
Да менял и в SCADA и в OPC - без результатов...
При включении светильника, в OPC сервере я вижу как изменяется значение и задержка не великая а вот индикатор в Scada меняет вид с задержкой. Думаю проблема в настройках опроса SCADA

MR_VADS
27.05.2016, 16:35
Разобрался в чем причина. Вопрос закрыт.

Но теперь появился другой.

Ситуация в следующем: Индикатор работы не загорается например - 20 сек. Как сделать так, чтобы произошло оповещение оператора путем мигания индикатора.
Я опять же предполагаю что в событии(в разделе формулы) необходимо логически задать процесс возникновения оповещения с помощью формул. Но выполнить это не могу так как не удается найти описание синтаксиса.
Ребят подскажите пожалуйста решение данной проблемы.

SCADAMaster
27.05.2016, 16:52
Если вы хотите сделать мигание индикатора, то нужно использовать вход динамизации "Мигание". Свяжите его с нужной переменной и все.
Подробнее про динамизацию в наших видеопримерах:
http://www.masterscada.ru/?additional_section_id=233
и этой документации:
http://www.insat.ru/services/support/art_step_by_step/master%20scada%20animation.pdf

Описание синтаксиса событий и расчетов есть в справке.

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


Как обстоят дела с реализацией этого функционала? Очень надо.

????????????

SCADAMaster
30.05.2016, 14:41
Сделана возможность задавать динамическое описание, но в тренде пока это использовать нельзя - берется только статичное имя.
Мы сделаем доработки и в тренде.

agatveo
02.06.2016, 13:22
Доброго времени суток, необходимо выполнить проект(курсовой) в среде MasterSCADA АРМ диспетчера подстанции 10/0,4 кВ производственного предприятия. В проекте должно быть отражено на мнемосхеме состояние высоковольтных вакуумных выключателей и низковольтных автоматических выключателей с возможностью управления с мнемосхемы. Все должно быть выполнено с использованием материальной базы ОВЕН, этим занимаюсь не так давно, пробелов в знаниях достаточно. Хотелось бы их устранить. Что можно использовать из линейки ОВЕН для выполнения проекта?
Спасибо за понимание.

SCADAMaster
02.06.2016, 13:43
Вам следует сначала задать подобный вопрос в разделе "Подбор оборудования".
Но если нужно просто собирать дискретные сигналы состояний, то вам подойдет любой модуль дискретного ввода, например:
http://www.owen.ru/catalog/modul_vvoda_diskretnih_signalov_mv110_16dn/opisanie

leszkin
02.06.2016, 21:09
а можно пожелание для будущих версий?
буквально сегодня разочаровался в следующем: разработал проект (жирный такой, хороший. на 2500+ переменных). в нем было много значений, которым я назначил свойство перечисляемых. сделал, проверил - все ок. а вот когда начал подключать данные значения к орс-серверу они по умолчанию приняли свойство переменных орс-сервера - т.е. просто стали целыми вместо перечисляемых. может как-то было бы лучше предупредить пользователя о смене типа в подобном случае? а еще лучше дать выбор какую именно из двух переменных будем преобразовывать?
в итоге провал запуска и перспектива незапланированных исправлений ;(

SCADAMaster
02.06.2016, 21:32
Во первых так проект строить не совсем корректно - лучше сразу расставлять связи.
Во-вторых, у значения можно поставить галочку "Запрет наследования типов".

leszkin
02.06.2016, 21:51
в данном случае карта переменных создавалась в последнюю очередь по ряду причин.
про запрет наследования учту, но все-же считаю текущую ситуацию не очень то "юзер-френдли". почему то же есть предупреждение когда пытаешься, например, подружить дискретную переменную с целым значением? почему бы не выдать подобный алерт и в описанном мною случае?

SCADAMaster
03.06.2016, 08:45
Входы всегда наследуют параметры источников.
Сообщение выводится если вы пытаетесь установить связь с ОРС переменную меньшего типа, и сообщение выдается здесь для того чтобы пользователь знал - при подобном преобразовании он может потерять данные (например дробную часть).

nenaika
07.06.2016, 11:07
Добрый день. Возникла следующая проблема. Есть проекты, сделанные на MasterSCADA 3.6 с нашим собственным ОРС DA-сервером и все прекрасно работает. Установил попробовать версию 3.7 - возникли проблемы: работа сервера начинается через 20 секунд после старта, т.е. в результате не выполняется стартовый скрипт т.к. отсутствует связь с сервером. Если обновить в Системе связи с сервером то запуск происходит на ура - но только один раз, при перезапуске проблема возвращается.

SCADAMaster
07.06.2016, 11:23
А если вернуть версию 3.6 то опять все начинает работать нормально?
В момент старта ваш сервер сразу запускается или же запускается с задержкой?
Попробуйте также проверить подключение к вашему серверу другим клиентом - например Matrikon OPC Explorer.

nenaika
07.06.2016, 12:30
С версией 3.6 было все в порядке. Попробую вернуть и посмотреть. По поводу сервера - он запускается при старте операционной системы. Если запущен какой либо другой клиент и идут через него данные, то скада запускается нормально. Если же просто запущен сервер, то его работа в скаде начинается где-то через 20 секунд. Т.е. сообщений в это время о том, что связь с сервером отсутствует нет (все переменные идут с вопросительными знаками).

nenaika
07.06.2016, 13:31
Вернул версию 3.6 стали наблюдаться такие же проблемы. Тогда вопрос почему после установки версии 3.7 произошли такие изменения?

SCADAMaster
07.06.2016, 13:53
Попробуйте установить OPC Core Components в соответствии с вашим типом системы
https://yadi.sk/d/7uMDXzVJkgky3
https://yadi.sk/d/Z1_bJnGwkgky9

nenaika
07.06.2016, 13:57
Спасибо. Попробую.

SCADAMaster
07.06.2016, 15:00
Если не поможет, то пришлите полный лог режима исполнения - включите его формирование, а когда подключение к серверу произойдет сформируйте отчет
Для того чтобы получить полный лог режима исполнения, нужно в режиме разработки выполните пункт меню «Сервис/Настройка», в диалоговом окне перейдите на закладку «Режим исполнения». Установите флаг «Формирование полного журнала исполнения».
Перейдите в режим исполнения и добейтесь воспроизведения ошибки. Нажмите комбинацию клавиш ALT+F10. Сформируйте отчет об ошибках, включая конфигурацию текущего проекта, скриншот экрана и необходимые логи. Убедитесь, что в получившуюся папку попал файлы Runtime.log и Runtime.log.xml. Если файлы в отчет не попали, пришлите их отдельно, они должны находится в папке "..:\MasterSCADA Projects".
После этого желательно отключить формирования полного журнала, чтобы не переполнился диск.
Если размер архива превысит 5 мб, то выложите его на файлообменник, например на Yandex.Disk или Google.Drive

nenaika
07.06.2016, 17:27
Не помогло. Так что высылаю отчет.

SCADAMaster
07.06.2016, 18:50
Висит в момент подключения к OPC серверу (на CoCreateInstance), это видно по дампу -
<Thread ID='7964'>
<Method>COPCControl::RunOPCServer</Method>
<Method>COPCControl::OPCFreeThreadFuncImpl</Method>
<Method>COPCControl::OPCFreeThreadFunc</Method>
</Thread>

> ntdll.dll!_NtAlpcSendWaitReceivePort@32() Unknown
ntdll.dll!_NtAlpcCreatePortSection@24() Unknown
combase.dll!NdrExtInterfacePointerMarshall(_MIDL_S TUB_MESSAGE * pStubMsg, unsigned char * pMemory, const unsigned char * pFormat) Line 1039 C++
rpcrt4.dll!NdrPointerMarshall() Unknown
combase.dll!ChannelWrapper_GetBuffer(struct IRpcChannelBuffer3 *,struct tagRPCOLEMESSAGE *,struct _GUID const &) Unknown

То есть тут надо разбираться с OPC сервером.

Akim
07.06.2016, 21:28
Здравствуйте! Подскажите пожалуйста, как можно на АРМе с двумя мониторами при запуске проекта сделать стартовыми мнемосхему и окно на другом экране? А то сейчас сделал окно стартовым на вспомогательном экране и потом перехожу на мнемосхему. Крайне не удобно при запуске проекта(

SCADAMaster
07.06.2016, 22:26
Компьютер - Режим исполнения - Стартовые окна.
На этой вкладке можно сделать любое количество окон стартовыми.

Pimpl
08.06.2016, 08:45
Сделал проект, есть одна общая мнемосхема и на ней журнал сообщений. В нём сообщения формируются. Но есть ещё отдельное окно с журнал. В нём почему то пусто. Скажите пожалуйста , с чем может быть связано, то , что при наличии двух журналов, в одном сообщения формируются, а в другом нет?

SCADAMaster
08.06.2016, 10:16
Посмотрите настройки фильтра этого журнала - возможно оно привязано не к тому объекту или еще какие нибудь настройки фильтра некорректные.

Pimpl
08.06.2016, 10:28
не нашёл ничего такого. беру один и тот же журнал. копирую на разные экраны. сообщения отображаются только в одном. никаких настроек я по умолчанию не менял.

SCADAMaster
08.06.2016, 10:58
Приложите ваш проект, выполните Проект - Экспортировать, сформированную папку заархивируйте и вышлите нам. Укажите путь к проблемному объекту

Pimpl
08.06.2016, 11:15
Пока не могу отправить. почему то не грузит

SCADAMaster
08.06.2016, 11:38
Выложите на файлообменик (Yandex.Disk, Google.Drive, Mail.Файлы), а сюда положите ссылку

Pimpl
08.06.2016, 11:42
https://yadi.sk/d/dGMjwvrSsLf59 Запустите проект, и увидите что в журнале на окне события (работайте только с первым эгпа), сообщения не формируются

SCADAMaster
08.06.2016, 12:06
Укажите на какой мнемосхеме находится журнал в котором сообщения есть, и объект у которого журнал, в котором сообщений нет.

Pimpl
08.06.2016, 13:11
внизу, общий маленький журнал содержит сообщения, а на экране события не содержит

SCADAMaster
08.06.2016, 13:49
а на экране события не содержит
К какому объекту он принадлежит?

Pimpl
08.06.2016, 14:47
Объект\АРМ\ЭГЭС-12\ЭГЭС-12 №1\События

SCADAMaster
08.06.2016, 15:16
По умолчанию журнал берет сообщения из текущего объекта и всех его подообъектов. Поэтому журнал по указанному вами пути будет брать сообщения от событий возникаемых в этом объекте, а их у вас там нет.
Вам нужно сделать журнал уровнем повыше.

Evgenyi
08.06.2016, 15:36
Здравствуйте!
Я начинаю только программировать системы автоматизации.
Есть ПЛК и ТРМ212, общаются по RS-485. Необходимо передавать сигналы управления для трм212.
Я делаю следующее в "Конфигурации плк" создаю "ModBus master" в нем "Universal ModBus device" далее "Register output module" и не работает!
Программа проста как двери. "Register output module" имеет имя переменных что я использую в теле программы.
Я предполагаю что проблема в настройках "Register output module" я их оставлял стандартные.
Прошу совета, за ранее Благодарю всех кто поможет!

SCADAMaster
08.06.2016, 16:03
Вы ошиблшись разделом форума - вам нужно задать данный вопрос в разделе "ПЛК"

Pimpl
09.06.2016, 09:46
то есть создать его в другом объекте? в более общем объекте?

SCADAMaster
09.06.2016, 10:30
По умолчанию журнал берет сообщения из текущего объекта и всех дочерних объектов. То есть вам нужно делать журнал на уровне того объекта, чьи сообщения вас интересуют.

Pimpl
09.06.2016, 10:38
Спасибо, всё заработало

Oak
09.06.2016, 10:48
при загрузке проекта появляется сообщение файл дркумента ХХХ объекта ННН не найден.
документ будет удален. Продолжить загрузку?

после продолжения документ не удаляется. Удалил этот трэнд руками, сообщение все равно возникает.
Как можно вылечить?
Спасибо.

SCADAMaster
09.06.2016, 11:05
Приложите ваш проект (заархивируйте папку проекта в MasterSCADA Projects/Projects).

nenaika
10.06.2016, 09:13
Добрый день. С сервером прояснилось - проблема обнаружилась при работе с модемом. Но проявилась следующая проблема. На мнемосхеме при добавлении таблицы значений эти самые значения не отображаются, а, допустим, если использовать тренд, то все нормально - значения в таблице тренда видны. Это касается версии 3.7, в 3.6 все нормально.

SCADAMaster
10.06.2016, 09:30
Что значит не отображаются? Что вместо них? Приложите скриншот проблемы.

mkv
10.06.2016, 11:32
Добрый день. Возник небольшой вопрос.
Как можно в дереве системы отключить (заблокировать) не нужные в летний период времени ОРС переменные в приборах трм1хх,2хх, МВ110 и т.п, в режиме работы, либо в режиме проектирования. Только сразу все выбранные, а ни каждый по отдельности. Я имею ввиду, создать кнопку, в которой указать все не нужные ОРС переменные. И одним нажатием блокировать выбранные переменные.(Либо какой другой вариант).
Спасибо.

SCADAMaster
10.06.2016, 11:58
Что вы понимаете под "заблокировать" - чтобы они ОРС сервером не опрашивались или достаточно чтобы от них просто значения не поступали?

nenaika
10.06.2016, 12:22
Вообще ничего. 24890 А вот значения из тренда - одни и те же данные. 24891

mkv
10.06.2016, 12:54
Что вы понимаете под "заблокировать" - чтобы они ОРС сервером не опрашивались или достаточно чтобы от них просто значения не поступали?
Второго варианта вполне достаточто. Я сейчас в "дереве системы" в рабочем режиме просто блокирую каждую отдельную ОРС переменную вручную. А хотелось бы как то ускорить этот процесс.
Спасибо.

SCADAMaster
10.06.2016, 14:05
Вообще ничего. 24890 А вот значения из тренда - одни и те же данные. 24891
Точно данные за этот интервал есть?
Приложите ваш проект, выполните Проект - Экспортировать, сформированную папку заархивируйте и вышлите нам. Укажите путь к проблемному тренду.

SCADAMaster
10.06.2016, 14:14
Второго варианта вполне достаточто. Я сейчас в "дереве системы" в рабочем режиме просто блокирую каждую отдельную ОРС переменную вручную. А хотелось бы как то ускорить этот процесс.
Спасибо.
Если вы вынесете переменные которые нужно выключать в отдельные группы, то тогда выключить их можно.
У групп ОРС переменных, на вкладке "Опрос" есть поле "Старт по условию". Перетащите в это поле дискретную переменную (событие, выход ФБ). При "Истина" значения из ОРС сервера будут опрашивтаься, когда ложь - нет.

nenaika
10.06.2016, 15:20
Прикладываю проект. Проблема не в трендах - с ними все в порядке. Проблема в том, что на мнемосхему добавлены таблицы значений и эти таблицы этих значение не показывают. В режиме исполнения - Архивные данные -Архивные данные откроется окно (рецепт) с таблицами на которых не выводятся указанные в них значения. В режиме разработки Объект-Ведение архива-Окна-рецепт. Вот ссылка на проект - https://yadi.sk/d/hRh3sYq0sQFjf .

mkv
10.06.2016, 15:32
У групп ОРС переменных, на вкладке "Опрос" есть поле "Старт по условию.
Спасибо, всё получилось. А можно ли как то сделать, чтобы при остановке опроса групп ОРС переменных отображалось не последнее измеренное значение, а ноль?
Спасибо.

SCADAMaster
10.06.2016, 15:56
Это ошибка. Мы ей займемся.
Пока что проблему можно обойти - переключите тренд на уровень базовый, активизируйте панель значений, данные должны отобразится. После этого, не выключая панель значений вернитесь на уровень "только значения".

SCADAMaster
10.06.2016, 15:56
Спасибо, всё получилось. А можно ли как то сделать, чтобы при остановке опроса групп ОРС переменных отображалось не последнее измеренное значение, а ноль?
Спасибо.
Только если через расчет анализировать признак качества и выдавать ноль.
Но лучше оставить так.

agatveo
15.06.2016, 09:29
Добрый день, не могу добиться динамизации ФБ "выключатель" из отраслевой библиотеки "электроэнергетика". Созданы кнопки (дискретные) "включить, отключить", в режиме отладки команда на ФБ проходит, но на мнемосхеме символ выключателя не меняется.
Спасибо.

SCADAMaster
15.06.2016, 11:44
Нужно подать сигнал на вход "Включен" - это состояние выключателя.

ast1
17.06.2016, 12:37
Добрый день, возможно ли на демо версии MSRT отправлять e-mail и sms?

SCADAMaster
17.06.2016, 15:42
Да, в Demo версии доступны все модули и опции, в том числе отправка E-mail и СМС

Oak
23.06.2016, 09:16
Возможно ли включить в отчет сообщения журнала? Как это сделать?

U_Dimas
23.06.2016, 09:42
Здравствуйте

Имеется несколько вопросов:
1. Где можно взять изображения насосов, задвижек и прочего, в стандартной версии (NET500) всего пара изображений ?
2. Объект цилиндр - необходимо в зависимости от уровня менять заливку, но в свойствах указывается только в процентах. В голову приходит использование расчета или можно другим способом ?
3. По поводу архивации, раньше работал с ifix - там график сохранялся каждый день (или несколько раз в день), задача например раз в год выдернуть архив и сохранит на носителе. Как можно такое реализовать ?

SCADAMaster
23.06.2016, 09:50
Возможно ли включить в отчет сообщения журнала? Как это сделать?
На данный момент штатно так сделать нельзя - из редактора отчетов нельзя обращаться к архиву сообщений.
Можно с помощью скрипта обрабатывать входящие сообщения, записывать их на выходы скрипта а уже их перетаскивать в редактор отчетов.

SCADAMaster
23.06.2016, 09:53
1. Где можно взять изображения насосов, задвижек и прочего, в стандартной версии (NET500) всего пара изображений ?

В интернете можно найти различные рисунки. В частности можно найти библиотеку с ресурсами из Symbol factory.



2. Объект цилиндр - необходимо в зависимости от уровня менять заливку, но в свойствах указывается только в процентах. В голову приходит использование расчета или можно другим способом ?

Через шкалы. Посмотрите видеопримеры - в них на этом акцентируется внимание:
http://www.masterscada.ru?additional_section_id=233



3. По поводу архивации, раньше работал с ifix - там график сохранялся каждый день (или несколько раз в день), задача например раз в год выдернуть архив и сохранит на носителе. Как можно такое реализовать ?
Сохранить в каком формате?
Можно отчет построить, можно через тренд в csv сохранить, можно в access экспортировать, в базы данных.

Oak
23.06.2016, 12:25
Кстати об экспорте.
Пытаемся экспортировать сообщения в mdb. В журнале объекта они есть. Экспорт через меню экспорта и фб экспорта (за период где точно есть сообщения) создают пустые базы.
В чем может быть проблема?

SCADAMaster
23.06.2016, 13:04
Указываете ли вы что экспортируете именно сообщения?
Тут также играет роль на каком уровне находятся сообщения и на каком производится экспорт. Если сообщения принадлежат одному объекту, а ФБ находится в другом, то конечно сообщений в сформированном файле не будет

Oak
23.06.2016, 13:43
Указываем экспорт сообщения. Журнал объекта - есть сообщения. ФБ в этом объекте и ручной экспорт из этого объекта - нет сообщений.
Кстати, какой период экспортируется при ручном экспорте?

SCADAMaster
23.06.2016, 14:52
Указываем экспорт сообщения. Журнал объекта - есть сообщения. ФБ в этом объекте и ручной экспорт из этого объекта - нет сообщений.

Вы можете приложить ваш проект вместе с данными и указать путь к проблемному объекту?



Кстати, какой период экспортируется при ручном экспорте?
При экспорте вручную - все.
При экспорте через ФБ можно указать начало и конец экспортируемого интервала

death132
24.06.2016, 17:33
Всем здравствуйте! Начинаю осваивать ПЛК Овен. Сейчас в работе ПЛК110-32РМ.
Подключил ПЛК(master) с панелью оператора СП307(slave) по RS-485, протокол MODBUS rtu. Оператор выбирает какой механизм включить на дисплее, ПЛК переодически считывает из панели биты состояния, вкл/откл выходы. Все хорошо, все работает.
Нужно из панели периодически считывать текущее время(PSW[300]-[306] ), вдруг оператор его изменил, и устанавливать это время в ПЛК, для корректного формирования своих лог файлов (какой механизм сколько работал и когда).

Сталкнулся со следующей проблемой:
В конфигураторе ПЛК добавляю Universal ModBus Device, добавляю в него 7 регистров, устанавливаю команду читать и период опроса 10сек (10000 мс).
Полусаю: считывает 1 регистр, проходит 10 сек, считывает другой регистр (не обязательно по порядку), прроходит 10 сек, и т.д....

КАК СДЕЛАТЬ ЧТО БЫ ПЛК СЧИТЫВАЛ ВСЕ 7 РЕГИСТРОВ ЗА 1 ЦИКЛ???

Т.Е. прочитал 7 регистров, прошло 10 сек, проситал опять все 7 регистров и т.д.
период опроса менял, таймаут тоже, без результатно....

25143

Пробовал настроить Universal ModBus Device by command - все тоже самое. 1 команда - 1 регистр, 1 команда - другой регистр (не обязательно по порядку).

Подскажите в чем дело? Или так и должно быть?

SCADAMaster
24.06.2016, 18:16
Вам нужно задать данный вопрос в разделе ПЛК

Александр N
27.06.2016, 16:13
Добрый день. При вычислениях необходимо сохранять промежуточный результат, подскажите при помощи чего это можно реализовать. Заранее спасибо.

SCADAMaster
27.06.2016, 16:30
Где именно вы производите вычисления? В расчете или скриптах?

Александр N
27.06.2016, 16:57
Вычисления производятся в расчете. В общем смысл следующий - система дозирования на базе плк304 и модулей для тензодатчиков овен, в плк предустановлен мастер плс, при расчетах необходимо запоминать вес тары. Среди стандартных функциональных блоков в мастерскаде ни регистров ни чего нибудь подобного не нашел.
поэтому обратился. Спасибо.

SCADAMaster
27.06.2016, 17:42
А тара у вас предварительно взвешивается отдельно? То есть сохранить ее значение нужно по некоему сигналу?
На верхнем уровне это делается с помощью действий, но в контроллерах они не работают. Можно сделать обходное решение - пример в приложении.

Александр N
27.06.2016, 18:41
Попробовал - получается. Конечно своеобразный метод, да главное чтобы работал. Единственное не совсем понял что значит в "контроллерах они не работают", т.е. мне эту операцию придется производить только на вернем уровне?

SCADAMaster
27.06.2016, 19:20
Вариант который мы выслали работает и на верхнем уровне и на контроллерах.
На верхнем уровне есть вариант проще - у команды, на вкладке "Действия" добавляете действие типа "Присвоить", которое присвоит значение одной переменной другой.

Александр N
27.06.2016, 20:05
Спасибо за помощь!

osc
04.07.2016, 15:35
Здравствуйте.

Стоит задача регистрировать действия операторов по изменению параметров настройки. Изменять настройки можно, как дистанционно из MasterSCADA, так и локально с панели оператора. В связи с этим вопросы:
1) В MasterSCADA имеется журнал действий. Однако в нём сохраняются только события входа и выхода пользователей из системы. Можно ли добавить к нему регистрацию других действий оператора?

2) Один из вариантов решения задачи - создать объект по примеру "Запись текста с мнемосхемы в журнал по изменению" из примеров скриптов Библиотеки. По этому способу есть вопросы:
а) Количество параметров настройки - около 500. В случае изменения структуры текста сообщения, каждый раз придётся изменять шаблон сообщения в 500 местах. Есть ли какой-то способ уменьшить объём этой работы?
б) В текст сообщения включается текущее и предыдущее значение параметра. При первом срабатывании события предыдущее значение отсутствует и поэтому в тексте сообщения на его месте пусто. Каким образом можно получить сигнал об отсутствии значения команды, чтобы его использовать в, например, блоке "Переключатель N к 1"?
в) Почему то для вызова события не получается использовать формулу "Текущее значение <> Предыдущее значение". Приходится использовать функциональный блок "A <> B" и его результат использовать в формуле вызова события.

3) Ещё один вариант - формировать текст сообщения в C# скрипте. В таком случае появляется больше возможностей, но остаются вопросы:
а) Проблема с большим объёмом работы при изменениях не исчезает. Можно ли каким-то образом обновить скрипт у всех использующих его объектов (например, поместив его в библиотеку)?
б) Для записи сообщений в журнал приходится использовать выходы скрипта, подключаемые к событию. Это приводит к троекратному увеличению количества лицензируемых связей. Имеется ли возможность добавить сообщение в журнал напрямую из C# скрипта?

SCADAMaster
04.07.2016, 15:53
Стоит задача регистрировать действия операторов по изменению параметров настройки. Изменять настройки можно, как дистанционно из MasterSCADA, так и локально с панели оператора. В связи с этим вопросы:
1) В MasterSCADA имеется журнал действий. Однако в нём сохраняются только события входа и выхода пользователей из системы. Можно ли добавить к нему регистрацию других действий оператора?

Можно. Нужно в правах доступа, у нужного оператора у нужного действия поставить галочку "Журнал".



а) Количество параметров настройки - около 500. В случае изменения структуры текста сообщения, каждый раз придётся изменять шаблон сообщения в 500 местах. Есть ли какой-то способ уменьшить объём этой работы?

Можно использовать шаблон-экземпляр.



в) Почему то для вызова события не получается использовать формулу "Текущее значение <> Предыдущее значение". Приходится использовать функциональный блок "A <> B" и его результат использовать в формуле вызова события.

В конкретно этом примере это связано с тем, что переменные строковые - событие и расчет со строками работать не могут.




3) Ещё один вариант - формировать текст сообщения в C# скрипте. В таком случае появляется больше возможностей, но остаются вопросы:
а) Проблема с большим объёмом работы при изменениях не исчезает. Можно ли каким-то образом обновить скрипт у всех использующих его объектов (например, поместив его в библиотеку)?

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



б) Для записи сообщений в журнал приходится использовать выходы скрипта, подключаемые к событию. Это приводит к троекратному увеличению количества лицензируемых связей. Имеется ли возможность добавить сообщение в журнал напрямую из C# скрипта?
Можно генерировать сообщение из скрипта, но от имени события. Так сделано в этом примере:
http://insat.ru/products/?category=1298

SokolovS
04.07.2016, 16:04
В версии 3.7 появилась возможность создавать библиотечные скрипты - у них один код на все скрипты.Интересно
Где можно почитать?
Скрипт будет один в рамках проекта или глобальный один и тот же для разных проектов?

SCADAMaster
04.07.2016, 16:33
Где можно почитать?

Вкратце - здесь:
http://blog.insat.ru/2015/11/masterscada-37.html
Подробнее в справке



Скрипт будет один в рамках проекта или глобальный один и тот же для разных проектов?
В рамках проекта.
Между проектами можно переносить через экспорт скрипта.

osc
04.07.2016, 17:38
Большое спасибо за оперативный ответ.

Всё понятно, единственное, что


В конкретно этом примере это связано с тем, что переменные строковые - событие и расчет со строками работать не могут.

для вещественных переменных происходит то же самое.

Выковырял из приведенного Вами примера генерацию сообщения из скрипта. Может кому-нибудь ещё пригодится:

//----------------------------------------------------------------------------------------------------------
using System;
using MasterSCADA.Script.FB;
using MasterSCADA.Hlp;
using FB;
using FB.FBAttributes;
using System.Linq;


using MasterSCADALib;
using MasterSCADA.Common.Events;

[FBRetain]
public partial class ФБ : ScriptBase
{
const uint OPC_QUALITY_GOOD = 192;
public override void Execute()
{
var alarmId = ((IFBEvents)HostFB.TreeItemHlp.Parent.GetChild("Событие").FBObject).AlarmID;
HostFB.TreeItemHlp.Project.AlarmManager.OnFBEventT imed(alarmId, "Текст сообщения", -1, (short)EventStatus.EventOn, OPC_QUALITY_GOOD, new DateTime());
}
}

SCADAMaster
04.07.2016, 18:12
Вам что в конечном счете нужно получить? Сообщение в момент изменения переменной?

osc
05.07.2016, 09:06
Вам что в конечном счете нужно получить? Сообщение в момент изменения переменной?

Да. При этом в сообщении должно содержаться новое и старое значение параметра.

U_Dimas
05.07.2016, 09:19
Здравствуйте

Вопрос по компоненту Задатчик, как сделать так чтобы при запуске шкала отображала значение параметра ?

SCADAMaster
05.07.2016, 10:48
Да. При этом в сообщении должно содержаться новое и старое значение параметра.
Пример в приложении.

SCADAMaster
05.07.2016, 10:49
Вопрос по компоненту Задатчик, как сделать так чтобы при запуске шкала отображала значение параметра ?
Вы имеете ввиду считанную из контроллера?
Используйте обратную связь - у команды на вкладке "Опрос выхода" есть такое поле. Перетащите в него ОРС переменную или выхд ФБ "Повторитель" (что лучше). Тогда в контроле будет отображаться то что приходит по обратной связи, а вводимые оператором значения идти на выход команды

osc
05.07.2016, 11:53
Пример в приложении.

Спасибо. Идея понятна

Naildjan
06.07.2016, 05:33
Извиняюсь за дурацкий вопрос,
у меня ТРМ ОВЕН 10 одноконтурный (одна цепь нагревательного элемента). у нас, в основном нагревательным шкафом на базе ОВЕН 10, эксплуатируют женщины предпенсионного возраста. им в течении смены необходимо менять уставку: то 135 Гр, то 200 Гр. Приходится мне подходить и в настройках менять уставку (задание). вопрос: нет ли способы упрощённо менять эту уставку - схемным методом переключателя например. переключатель "1", "2" каждый выбор соответствует заранее выбранной температуре. может существуют другие марки ОВЕН, где можно осуществить такую хотелку, кроме ТРМ148, где параллельно управляются 8 каналов (дорого и громоздко). спасибо.

SCADAMaster
06.07.2016, 09:01
Данный вопрос вам нужно задать в разделе Эксплуатация.

U_Dimas
08.07.2016, 10:11
Вы имеете ввиду считанную из контроллера?
Используйте обратную связь - у команды на вкладке "Опрос выхода" есть такое поле. Перетащите в него ОРС переменную или выхд ФБ "Повторитель" (что лучше). Тогда в контроле будет отображаться то что приходит по обратной связи, а вводимые оператором значения идти на выход команды

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

SCADAMaster
08.07.2016, 11:03
Убрать данный эффект нельзя - это передача значения обратной связи, вначале он не изменно, что и приводит к такому скачку.

Александр N
11.07.2016, 15:18
Добрый день, просьба подсказать. Возможно ли на мнемосхеме реализовать следующую функцию - при щелчке курсором мыши по какому-либо графическому элементу вызывать окно объекта?
Например, у меня созданы символы бункеров, на мнемосхеме бункеров много - я хочу чтобы при щелчке по каждому из них выходило окно управления выбранным бункером.
Заранее спасибо.

SCADAMaster
11.07.2016, 15:50
Можно - либо просто перетащив на мнемосхему объект, с документом и в настройках кнопки сделать ее прозрачной, либо делать изображение объекта.
В видеопримерах это рассматривалось:
http://www.masterscada.ru?additional_section_id=233

nenaika
12.07.2016, 09:09
Добрый день! Подбираем оборудование для удаленного доступа к приборам учета и наткнулись на оборудование фирмы TELEOFIS. Они предоставляют сервер для для организации беспроводных каналов связи между узлами диспетчеризации, который создаёт локальные TCP-порты, через которые осуществляется связь с программой диспетчеризации ("совместима с любым диспетчерским ПО, работающим по протоколу TCP" - как указано на их сайте). Подскажите, пожалуйста, MasterSCADA позволяет работать по протоколу TCP? И, если есть примеры, можно их где-нибудь посмотреть?

SCADAMaster
12.07.2016, 09:25
Какое оборудование вы планируете опрашивать? Если оборудование поддерживает Modbus, то используйте наш Modbus Universal MasterOPC сервер:
http://insat.ru/products/?category=399
Он может работать в режиме TCP клиент и TCP сервер. В данной инструкции описаны все варианты удаленных подключений, в том числе и в режиме TCP Server с модемами Teleofis:
http://www.insat.ru/products/Universal_MasterOPC/work_with_modem.pdf

nenaika
12.07.2016, 10:12
Грубо, на первом этапе счетчики воды с импульсными выходами. Использовать УСПД RTU102 с импульсными входами. Поэтому и интересен вариант подключения через их сервер в MasterSCADA, для возможности на втором этапе подключить узлы учета тепла и газа, используя уже OPC сервер приборов учета.

SCADAMaster
12.07.2016, 12:03
Тогда это уже зависит от ОРС сервера - сможет ли работать в таком режиме.
Но в принципе существуют утилиты которые могут преобразовать TCP соединение в COM, что позволит работать как если бы устройство было подключено через COM порт

Александр N
12.07.2016, 15:48
Добрый день. Вопрос можно ли в графическом редакторе МастерСкада при построении мнемосхемы изменять масштаб для более точной прорисовки?
Спасибо

SCADAMaster
12.07.2016, 16:26
Нет, масштабирование не поддерживается.

energvk
13.07.2016, 13:58
Добрый день! Не могу понять почему не выполняется расчет по формуле в приложенном скрине. Раньше такая конструкция работала

25383

SCADAMaster
13.07.2016, 14:04
Не выбрано от какой переменной наследовать отметку времени.
И не забудьте у расчета включить значение до опроса.
И обычно такую операцию делают в событии, а не в расчете

energvk
13.07.2016, 14:23
Пробовал и в событии и в расчете с наследованием метки времени и без. Попробую включить значение до опроса

С включением до опроса заработало. Спасибо.

energvk
15.07.2016, 02:20
Ещё вопрос появился: А что значит после запуска проекта стало появляться сообщение, что некоторые переменные "Не обслуживается"? Причем только у переменных ReadWrite.

SCADAMaster
15.07.2016, 08:23
Это такой признак качества. Посмотрите по каким переменным выдается сообщение, выделите эти переменные и посмотрите на вкладке "Данные входа" и "Данные выхода" что у них выдается - какой признак качества.

Pimpl
15.07.2016, 09:54
Как нарисовать дугу? нашёл только прямую линию

SCADAMaster
15.07.2016, 10:47
С помощью элемента Эллипс.
Задайте в свойствах начальный и конечный угол и прозрачную штриховку (см. приложение).

Evgenyi
18.07.2016, 10:04
Здравствуйте!
У меня такие вопросы
1 Есть температура от -30 до +10 как сделать шкалу оси y в этих пределах?
2 С OPC сервера берем переменные (к примеру TRM12), а хочу на графике видеть имя понятное пользователю, как изменить отображение имени переменной в скаде?

SCADAMaster
18.07.2016, 11:12
1 Есть температура от -30 до +10 как сделать шкалу оси y в этих пределах?

На вкладке Система - Шкалы.



2 С OPC сервера берем переменные (к примеру TRM12), а хочу на графике видеть имя понятное пользователю, как изменить отображение имени переменной в скаде?
Имена переменных в дереве системы изменить нельзя.
Вы можете сделать в дереве объектов значение, связанное с этой ОРС переменной, и уже у этого значения задавать нужное вам имя. Подробнее вы можете посмотреть в наших видеопримерах:
http://www.masterscada.ru?additional_section_id=233
Также можно в самом графике изменить имя пера (щелкнуть дважды на имя пера в легенде с небольшой паузой между нажатиями)

Эдуард_Н
25.07.2016, 16:37
Сейчас у меня к ОРС-серверу привязаны переменные которые используются и панелью (в слейве просто добавлен TCP к уже имеющемуся RS-232).
Вопрос, как по правильному к проекту прициплять верхний уровень?

SCADAMaster
25.07.2016, 18:24
Так ОРС у вас подключен по TCP или RS-232?
На самом деле делаете не обращая внимания на второй мастер. Раз разные интерфейсы, то они никак мешать друг другу не будут.

Эдуард_Н
25.07.2016, 18:59
Так ОРС у вас подключен по TCP или RS-232?
На самом деле делаете не обращая внимания на второй мастер. Раз разные интерфейсы, то они никак мешать друг другу не будут.

ОРС подключен по TCP, к RS-232 подключена панель оператора.
На разных то они да, но два мастера обращаются к одним и тем же переменным, вот это и смущает. А как правильно делать какой ни будь лёгкий примерчик посмотреть.

SCADAMaster
26.07.2016, 09:07
Это не играет роли поскольку интерфейсы разные. Судя по скриншоту у вас сделано правильно.
Пример работы ОВЕН и нашего ОРС есть в этой документации:
http://www.insat.ru/products/Universal_MasterOPC/OPC_To_Owen_PLC_1xx.pdf
http://www.insat.ru/products/Universal_MasterOPC/OPC_To_Owen_PLC_1xx_projects.zip

Oak
26.07.2016, 09:41
Имеется датчик скорости потока в литрах в минуту.
Необходимо подсчитывать текущий прошедший объем во время работы насоса, чтобы остановить насос по достижении заданного объема.
Как правильно и удобно это можно сделать? Интегрлаы, вроде не подходят, или не догадался как использовать.
Может ФБ расход воды? Но про него ничего в описании нет, только- возможно использовать при наличии доп опции, хотя MSRT-TE куплен.
Надо чтобы в контролере под мастерплк работало.

Спасибо

Придумалась вот такую формула вычисления. Вычисления с принудительным выполнением каждый такт.
ЕСЛИ( Сброс_счетчика,0,
ЕСЛИ( Насос_включен,Пред_итерация+Скорость_потока*ДЛИННА ТАКТА/60,Пред_итерация))
Где Пред_итерация - результат этого же выисления
Вопрос - откуда взять время такта?

продолжение
ДЛИННА ТАКТА = TimeStamp( Пред_итерация)-DateTime( )
Пошел проверять. Покритикуйте разумность и правильность решения.

SCADAMaster
26.07.2016, 13:28
Как правильно и удобно это можно сделать? Интегрлаы, вроде не подходят, или не догадался как использовать.

Именно интеграл и нужно использовать.
У нужной вам переменной включаете архивацию, задаете начало и конец с которого нужно вычислять архив и считаете.
Описание функции есть в справке.

Oak
26.07.2016, 14:25
Имеется ввиду интеграл по архиву?
Для получения текущих показаний счетчика на каждом такте придется считать интеграл по архиву? Это правильно?

Волшебная формула работает в скаде, а на контролере не работает - не дает значения совсем. В чем может быть проблема?

UPD - похоже, контролер не понимает функцию TimeStamp
UPD2 - разность между двумя величинами ДатаВремя отличающимися больше чем на секунду в ФБРасчет в контролере получается 0,000. Контролер под мастерплк. Что не так делаю?

SCADAMaster
26.07.2016, 17:10
Имеется ввиду интеграл по архиву?
Для получения текущих показаний счетчика на каждом такте придется считать интеграл по архиву? Это правильно?

Волшебная формула работает в скаде, а на контролере не работает - не дает значения совсем. В чем может быть проблема?

UPD - похоже, контролер не понимает функцию TimeStamp
UPD2 - разность между двумя величинами ДатаВремя отличающимися больше чем на секунду в ФБРасчет в контролере получается 0,000. Контролер под мастерплк. Что не так делаю?
Имелась ввиду функция расчета AbsArchIntegral.
В контроллере она работать не будет, так как функции работы с архивом в нем недоступны. Нужно данную задачу непременно реализовать на уровне контроллера?

Oak
26.07.2016, 18:26
Да, надо в контролере.
Неужели нельзя реализовать интегрирующий счетчик? Как определить интервал времени за такт, умножить на значение и прибавить к предыдущему показанию счетчика?
ФБ Расход воды не подойдет из MSRT-TE? Описания в хелпе нет.

Значение читаем из МВ110-8ас - есть метка времени. Не соображу :(как разницу найти между предыдущей и нынешней меткой времени. Подскажите.

UPD Сделал хранение предыдущей метки времени через отдельный ФБ расчет, стоящий после основного. Наверное есть более правильный метод? :)

SCADAMaster
27.07.2016, 09:10
Ваш метод нормальный.

Vitorgan
28.07.2016, 15:05
SCADAMaster, подскажите пожалуйста, возможно ли исправить ситуацию с ФБ "Сохранение в файл", пользуюсь данным ФБ, для выгрузки уставок, csv файл сохраняется не стандартно, для многих устройств и программ.

В "правильном" csv каждая строка заканчивается символами 0D 0A (CR и LF) т.е. перевод строки и возврат каретки по простому.
А в csv из Mastescada после каждой строки только 0A.

SCADAMaster
28.07.2016, 17:31
Мы вам ответили по почте

artamonov
29.07.2016, 13:51
Здравствуйте! Создал мнемосхему, на ней разместил группу из 30 линий. Перехожу в "динамизацию входных значений" свойства группы и в поле "Видимый элемент" привязываю значение из дерева объектов. Хочу в зависимости от значения менять видимость всей группы, но у меня либо ничего не видно, либо какая-то одна из линий. Как сделать так, чтобы при 1 были видны все линии группы, а при 0 ничего не видно?

SokolovS
29.07.2016, 14:52
Здравствуйте! Создал мнемосхему, на ней разместил группу из 30 линий. Перехожу в "динамизацию входных значений" свойства группы и в поле "Видимый элемент" привязываю значение из дерева объектов. Хочу в зависимости от значения менять видимость всей группы, но у меня либо ничего не видно, либо какая-то одна из линий. Как сделать так, чтобы при 1 были видны все линии группы, а при 0 ничего не видно?
Пробовали сгруппировать линии?

SCADAMaster
29.07.2016, 15:24
Да, нужно линии сгруппировать, или лучше сделать символ.

artamonov
30.07.2016, 08:38
Да, конечно, в том-то и дело, что сгруппировал их. И , повторюсь, что у этой группы есть входное значение "Видимый элемент", я туда перетащил переменную. Хочу чтобы при значении переменной, равной "0" у меня эта группа (все линии) не были видны, а при "1" наоборот были видны как надо настраивать динамизацию? Если пропишу "1", то видна одна линия, если "2" другая, если "3" третья, а как сделать так, чтоб все были видны?

SCADAMaster
30.07.2016, 10:20
Приложите ваш проект, а также несколько скриншотов описывающих ситуацию.

Vitorgan
31.07.2016, 12:06
SCADAMaster, не знаю, наверное не туда написал, но надеюсь поможете.
Есть ПК на предприятии, скада + инсатовский опс. При долгой работе ПК (больше 2-ух дней не выключается), начинаются непонятные проблемы:

При заходе в скаду, значения не появляются. при открытии опс, вижу что порты открыты, послан 1 запрос (синим цветом) и все.

Пробовал напрямую включать опс без скады, тоже самое. значения не отображаются. И еще бывает когда выходишь из опс, запущенном скадой, он "долго выходит" секунд 20 (просит время на закрытие). Но если без скады запускал опс, то он из рабочего режима выходит мгновенно. А при вышеописанной ошибке, от выходит с отчетом таймера, как будто закрывает соединение со скадой (но скада в данный момент не запущена). Помогает простая перезагрузка ПК.
Извиняюсь за сумбурное изложение проблемы, надеюсь поймете.

SCADAMaster
31.07.2016, 13:31
Долго выходит - означает что идет завершение потока. Поток может не завершаться из-за зависания порта.
Как у вас подключены устройства? По какому интерфейсу?

Vitorgan
31.07.2016, 17:38
2 ком-порта на мат. плате.

SCADAMaster
31.07.2016, 20:50
Смотрите по логу запросов - что происходит на шине в этот момент.
Если ошибка открытия порта - значит что-то с портом (можно попробовать включить реинициализацию).

Vitorgan
31.07.2016, 21:35
Ничего не происходит, просто 1 запрос первому модулю в списке, никаких ошибок, ответов. порт открыт.

SCADAMaster
31.07.2016, 22:07
А новые запросы формируются?
Пришлите лог обмена с устройством. Для этого в свойствах сервера включите запись журнала и всех его событий, размер лога задайте равным 10000. Запустите режим исполнения и воспроизведите ошибку. Лог пишется в папку:
c:\ProgramData\InSAT\MasterOPC Universal Modbus Server\SERVERLOGS\
Лог заархивируйте и вышлите нам, также пришлите вашу конфигурацию ОРС сервера.

Vitorgan
01.08.2016, 16:25
Как снова появиться, скину. Подскажите пожалуйста, как правильно вставлять исправленный удаленно проект, вместо того который работал (во время изменений), но чтобы все архивы значений сохранились.

SCADAMaster
01.08.2016, 16:58
На компьютере, на котором вносили правка выполните Проект - Экспортировать. Экспортированный проект не содержит архивов и его можно переносить на другой компьютер.
Внести на новый компьютер можно следующим образом. В режиме разработки:
1 вариант. Проект - Импортировать, выбираете "Папка с импортируемым проектом" и выбираете папку в которую вы экспортировали проект
2 вариант. Просто скопировать новый поверх старого с заменой. Архивы при этом затронуты не будут .

В режиме исполнения.
Нажмите Alt+F10 - показать проект. Выделите компьютер - закладка "Режим исполнения" - "Управление проектом". Выбираете импорт из папки, также выбираете папку в которую вы экспортировали проект, и нажимаете "Импортировать". Режим исполнения кратковременно остановится, затем автоматически запустится снова.

Amko
02.08.2016, 07:57
Добавил новый объект, в нем настроил "Изображение объекта", "Окно управления". Добавил внутрь объекта клеммник, завел выходы и входы клеммника на требуемые мне индикаторы на изображении и окне управления. Перетаскиваю ПКМ на главную мнемосхему объект -> вставляю изображение объекта. Во время режима исполнения при изменении входных сигналов индикаторы на изображении меняются, все ок. Как теперь открыть "Окно управления" тыкая мышкой на изображение объекта?
Если полученный символ разгруппировать и в кнопке настроить переход на "Окно управления" вместо мнемосхемы, то все ок. Но каждый раз разгруппировывать и группировывать символ обратно неудобно. Есть возможность задать по умолчанию нажатие на изображение объекта, чтобы открывалось окно управления?

artamonov
02.08.2016, 08:30
SCADAMaster, разобрался, в справке об этом ничего не написано. Пришлось долго разбираться, так как решение не интуитивно-понятное.

evg3798
02.08.2016, 08:49
Да, надо в контролере.
Неужели нельзя реализовать интегрирующий счетчик? Как определить интервал времени за такт, умножить на значение и прибавить к предыдущему показанию счетчика?
ФБ Расход воды не подойдет из MSRT-TE? Описания в хелпе нет.

Значение читаем из МВ110-8ас - есть метка времени. Не соображу :(как разницу найти между предыдущей и нынешней меткой времени. Подскажите.

UPD Сделал хранение предыдущей метки времени через отдельный ФБ расчет, стоящий после основного. Наверное есть более правильный метод? :)


Почему вы не хотите использовать интеграл из библиотеки Util (CDS 2). Останавливать насос лучше используя подсчет в контроллере, а затем считывать значения в MS.

SCADAMaster
02.08.2016, 09:47
Добавил новый объект, в нем настроил "Изображение объекта", "Окно управления". Добавил внутрь объекта клеммник, завел выходы и входы клеммника на требуемые мне индикаторы на изображении и окне управления. Перетаскиваю ПКМ на главную мнемосхему объект -> вставляю изображение объекта. Во время режима исполнения при изменении входных сигналов индикаторы на изображении меняются, все ок. Как теперь открыть "Окно управления" тыкая мышкой на изображение объекта?
Если полученный символ разгруппировать и в кнопке настроить переход на "Окно управления" вместо мнемосхемы, то все ок. Но каждый раз разгруппировывать и группировывать символ обратно неудобно. Есть возможность задать по умолчанию нажатие на изображение объекта, чтобы открывалось окно управления?
Система - Окна - в свойствах изображения объекта нужно указать к какому элементу будет привязана кнопка по умолчанию.
Изображение после этого нужно будет добавить снова.
Также можно сделать на изображении отдельную кнопку перехода на окно.

Amko
02.08.2016, 09:50
Система - Окна - в свойствах изображения объекта нужно указать к какому элементу будет привязана кнопка по умолчанию.
Изображение после этого нужно будет добавить снова.
Также можно сделать на изображении отдельную кнопку перехода на окно.
Да, сделал отдельной кнопкой. Т.е. сначала перенес на мнемосхему ПКМ изображение объекта, потом на него же положил ПКМ окно управления, но кнопку сделал прозрачной.
Нетривиальный подход, однако.

SCADAMaster
02.08.2016, 10:30
Да, сделал отдельной кнопкой. Т.е. сначала перенес на мнемосхему ПКМ изображение объекта, потом на него же положил ПКМ окно управления, но кнопку сделал прозрачной.

Это неправильно - нужно было положить кнопку в самом изображении объекта.
Ну или сделать через настройку системы.

Amko
02.08.2016, 11:23
Это неправильно - нужно было положить кнопку в самом изображении объекта.
Ну или сделать через настройку системы.

Да, не допер, что надо на изображение объекта перетаскивать ПКМ кнопку на собственный объект управления. Переделал, так проще.

vijavi
02.08.2016, 23:46
Подскажите пожалуйста:
- требуется подсчитать время простоя модулей вследствие ошибок в сети Modbus.
Имеется сигнал ошибки и сигнал: связь восстановлена. Нужно подсчитать время между сигналами, желательно в секундах, язык LD.

SCADAMaster
03.08.2016, 09:31
Как мы понимаем речь идет о контроллерах - поэтому вам нужно задать данный вопрос в разделе "Контроллеры".

Amko
16.08.2016, 10:04
Вопрос:
Мне надо задавать значение переменной (Real), находящейся в ПЛК с МастерСкады, но и иметь возможность менять эту переменную изнутри контроллера, чтобы на Скаде это новое значение отобразилось в поле ввода.
Я правильно понимаю, что для этого мне надо использовать "Команду", на обратную связь которой завести эту же самую переменную из ОРС сервера?

SCADAMaster
16.08.2016, 10:25
Да, все верно.

energvk
16.08.2016, 22:41
Добрый вечер! Подскажите, как можно определять с каким opc-сервером работать мастерскаде. Суть в чём, у меня стоит опс на 32-тэга для разработки мелких объектов или для тестирования. Если в систему ставить ключевой опс, то скада работает с ним. Но в случае когда ключ переносится на другой ПК для тестирования разрабатываемой конфигурации и т.п., то мастерскада также продолжает запускать ключевой опс, хотя мне нужно использовать на 32 тэга. Приходится удалять, а потом ставить заново. Нет ли других решений?

SCADAMaster
17.08.2016, 08:45
Нет, других решений нет.
Если проектов много, то купите себе специально ОРС для разработок.

Vitorgan
22.08.2016, 22:25
SCADAMaster, подскажите пожалуйста, а возможен экспорт вещественных значений в файл, не с запятой, а с точкой?

SCADAMaster
23.08.2016, 09:32
Если только скриптом - там можете любой разделитель делать.

Vitorgan
23.08.2016, 10:13
А есть готовый, или пример?

SCADAMaster
23.08.2016, 11:24
Пример обработки архива есть здесь:
http://blog.insat.ru/2015/09/Script-Archive.html
Вам нужно просто считать архивы значений приходящих на входы, а писать в файл.
По записи в файл примеры можно найти в интернете.

Oak
23.08.2016, 13:55
При открытии трендов в типе "новое окно" эти новые окна разворачиваются на весь экран не замечая панель задач виндов. В результате часть управляющих кнопок или скролы прячутся под панель задач.
Как это можно поправить? Может настройки какие?
Windws 10.

Спасибо.

Vahooka
23.08.2016, 15:41
Здравствуйте! Мы на предприятии разрабатываем сетевой проект. Где происходит архивация данных с узлов учета, а подключенные клиенты по нажатию на кнопку сформировать Report (с выбором параметров) получали данные из архива (архив в MSSQL). Если формировать Report прямо на сервере, время формирования 3-7 секунд, а если делать запрос с клиента то первый запрос (не зависимо от кол-во параметров) длится от 2 минут, а следующие запросы от 20 до 60 секунд. И еще, во время работы MasterScada через два дня она съедает всю оперативную память, есть ли где то ограничения?

SCADAMaster
23.08.2016, 15:52
При открытии трендов в типе "новое окно" эти новые окна разворачиваются на весь экран не замечая панель задач виндов. В результате часть управляющих кнопок или скролы прячутся под панель задач.
Как это можно поправить? Может настройки какие?
Windws 10.

Спасибо.
Не совсем понятно что вы имеете ввиду - перекрывают панель задач?
У нас данная проблема не проявляется, приложите скриншот проблемы и ваш проект.

SCADAMaster
23.08.2016, 15:54
Здравствуйте! Мы на предприятии разрабатываем сетевой проект. Где происходит архивация данных с узлов учета, а подключенные клиенты по нажатию на кнопку сформировать Report (с выбором параметров) получали данные из архива (архив в MSSQL). Если формировать Report прямо на сервере, время формирования 3-7 секунд, а если делать запрос с клиента то первый запрос (не зависимо от кол-во параметров) длится от 2 минут, а следующие запросы от 20 до 60 секунд.
Можно попробовать в настройках клиента включить "Запретить прямое подключение к сетевым БД" и посмотреть изменится ли что-либо.


И еще, во время работы MasterScada через два дня она съедает всю оперативную память, есть ли где то ограничения?
Ограничения стандартные 1.8 Гб в x86 системе, и 3.6 Гб в x64.
Сколько у вас установлено в компьютере?

Vahooka
23.08.2016, 16:15
"Запретить прямое подключение к сетевым БД" на сервере и у клиента стоит "Истина" - этим пробовали. Суть в чем Report выполняет выборку параметров из своего скрипта при команде на открытие, а там 128 параметров к выбору.

По памяти - Спасибо. Посмотрели журналы да постепенно доходит до 3, 5 Гб и на этом останавливается. Установлено 8 Гб. 4 Гб используют другие процессы.

SCADAMaster
23.08.2016, 16:42
"Запретить прямое подключение к сетевым БД" на сервере и у клиента стоит "Истина" - этим пробовали. Суть в чем Report выполняет выборку параметров из своего скрипта при команде на открытие, а там 128 параметров к выбору.

И что? Приложите ваш проект, и укажите путь к проблемному отчету.

Vahooka
23.08.2016, 16:55
https://cloud.mail.ru/public/7Mib/Khr1WFCUL
Объект 1 - Report - Отчеты - "Отчеты с выбором"

SCADAMaster
23.08.2016, 17:32
Указанного отчета в вашем проекте нет.

И архивация у вас настроена неправильно - у вас включена и периодическая архиваци, и по изменению, с нулевой мертвой зоной и с 0 временным шагом.
Вы очень быстро забьете себе базу, и при построении отчета будете загружать слишком много лишних данных.
Оставьте только архивацию по измениню, с мертвой зоной 0.1-0.25% от шкалы.

Oak
24.08.2016, 08:38
Не совсем понятно что вы имеете ввиду - перекрывают панель задач?
У нас данная проблема не проявляется, приложите скриншот проблемы и ваш проект.

Окна трендов перекрываются панелью задач, часть окна тренда при развертке на полный экран уходит под панель задач.
25924

SCADAMaster
24.08.2016, 09:35
Данная проблема проявилась. Мы с ней разберемся.
Пока что можете расположить панель задачу снизу или слева.

Oak
24.08.2016, 09:38
Когда панель задач и снизу и слева тоже часть окна прячется под панелью задач, и там тоже скрываются нужные кнопки.

SCADAMaster
24.08.2016, 10:13
Приложите скриншот.

Oak
24.08.2016, 11:20
при нижнем расположении скрывается выбор интервала времени
25933

SCADAMaster
24.08.2016, 21:11
Проблема проявилась. Мы с ней разберемся.

Oak
25.08.2016, 11:21
Проблема проявилась. Мы с ней разберемся.

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

Vitorgan
26.08.2016, 15:55
ScadaMaster, подскажите пожалуйста, возможно ли организовать увеличение значения по длительности нажатия кнопки? (например я нажимаю кнопку, и уставка начинает расти с определенной скоростью, прибавляю единицу каждую секунду)

SCADAMaster
26.08.2016, 16:40
Используйте ФБ "Кнопка" из закладки "Управление" у него выход находится во включенном состоянии пока оператор жмет кнопку.
Дальше уже с помощью модуля расчет, можно в формуле расчета прибавлять к его текущему значению нужное, пока кнопка нажата.

Vitorgan
26.08.2016, 16:51
А каким образом в расчете сделать прибавление шага за определенное время?

mkv
27.08.2016, 16:31
Добрый день. Возникла небольшая проблемка. Не пойму, как её исправить. В журнале аварий в закладке "сообщение", само сообщение сместилось вверх. Как это исправить? Вот картинка26037
Спасибо.

SCADAMaster
28.08.2016, 08:50
А каким образом в расчете сделать прибавление шага за определенное время?
Например в расчете - прибавляете к значению расчета число шага, когда нажата кнопка.

SCADAMaster
28.08.2016, 08:51
Добрый день. Возникла небольшая проблемка. Не пойму, как её исправить. В журнале аварий в закладке "сообщение", само сообщение сместилось вверх. Как это исправить? Вот картинка26037
Спасибо.
Непонятно в чем именно у вас проблема.
У вас сейчас включена сортировка по тексту сообщения.

mkv
28.08.2016, 14:24
Непонятно в чем именно у вас проблема.
У вас сейчас включена сортировка по тексту сообщения.
В данный момент разговор идёт не о сортировке. Обратите внимание на выделенную строку-там хорошо видно. Сам текст в ячейке "сообщения" расположен выше (не по центру строки), чем в ячейках "начало" и "конец". Подчеркните мысленно весь текст строки и сразу станет понятно. Как опустить текст ячейки "сообщение" на уровень ячеек "начало" и "конец". Вот ещё картинка: 26051
Спасибо.