Щелкаю везде, и по графику, и по названию пера.
Версия на 32 точки.
Вид для печати
Щелкаю везде, и по графику, и по названию пера.
Версия на 32 точки.
Шкалу получаю, но она без названия. Удивительно, но сегодня поднялась такая же тема с 2011 года.
Это ошибка - мы ее исправили.
Исправление будет доступно в следующей стабильной версии.
Как можно в редакторе формул (у элемента событие) сделать так:
Если перем = 0 Тогда
перем1 = 0,
перем2 = 0,
перем3 = 0
КонецЕсли?
Расчет не может присваивать значения - он может только возвращать значения на свой выход.
Какую именно задачу вам нужно решить?
У меня есть 3 события и 1 значение.Когда значение равно 1 включается 1 событие, 2-2 событие,3-3 событие.Но когда значение становиться равным 0, тогда все события должны выключаться.
В смысле если значение равно 1, то включается Событие 1, если 2, то Событие 1 и Событие 2, если 3, то событие 1, 2 и 3?
Пропишите в формулах. У События 1:
Значение>=1
У события 2:
Значение>=2
У события 3:
Значение>=3
Спасибо я разобрался.Просто мне надо было если значение равно 1,то выполняется Событие 1, при этом 2 и 3 отключены
если значение 2, то выполняется событие 2,при этом 1 и 3 событие отключены
если значение 3, то выполняется событие 3, при этом 1 и 2 событие отключены.
если значение равно 0, то отключены все события
Здравствуйте, не буду плодить темы и спрошу здесь. Подскажите как решить два вопроса:
1. Как в режиме Run time осуществлять смену пользователей. Т.е. нужна кнопка, по нажатию на которую будет выводиться форма, в которую операторы будут вводить свой логин и пароль. Верхняя панель в режиме исполнения скрыта.
2. Как в трендах осуществить выбор тегов среди тех переменных, которые имеют аналоговый шаблон архивирования. Т.е. хочется избежать выбора определенных тегов из всего дерева объектов. Можно ли как-то реализовать заранее определенные группы перьев, которые так же можно выбирать с использованием combobox.
Создайте команду типа "Дискретный", перейдите на закладку "Действия". Создайте действия типа "Системное" - "Завершение сеанса".
Команду можно вытащить на мнемосхему - нажатие на нее в режиме исполнения, приведет к завершению сеанса пользователя и появится окно с выбором оператора
Пока что нельзя настроить в тренде фильтрацию по шаблону архивирования - только по имени.
У конкретной переменной, на закладке "общие" можно снять галочку видимости в тренде.
Спасибо за оперативность)
Хотел уточнить один вопрос:
Создал шкалу тип перечислимый и значения:
0 общая авария
1 авария насоса
Создал значение1 тип выбрал созданную шкалу.Затем создал значение2 и связал ее со значением 1.При отладке все нормально.Если значение2 = 0, то значение1= общая авария и т.д.Теперь потребовалось, чтобы в значении1 выводилась пустая строка, когда значение2 = 2.Пробывал создать в шкалах пустую строку, но тогда при значении2 = 2, значение 1 = 0.Как можно сделать что при значении2 = 2, выводилась пустая строка?
Пропишите не пустую строку, а поставьте в строку "Пробел".
С пробелами появляется полоса внизу.Ну если по другому не получается, то придется сделать с пробелами.
По другому пока что нельзя.
В будущем мы поправим эту ошибку.
Здравствуйте, подскажите как сделать:
в мастер скада есть переменная, которая считает импульсы со счетчика электроэнергии, т.е. фактически ее значение - это есть показание счетчика электроэнергии (активная мощность в кВт*ч). По показаниям счетчика, например за час, я хочу узнать подключенную активную мощность, которая будет определятьсяпо временным срезам за час, за полчаса.., примерно так:
Ра = Пок-е счетчика (15-00) - Показание счетчика (14-00)
или так
Ра=(Пок-е счетчика (15-00) - Показание счетчика (14-30))*2
Так вот, 1-й вопрос - как мне достать из архива скады значение этой переменной например в 15-00 или в 14-00, чтобы вычислить у них разницу. Информация будет отображаться графически в виде тренда, поэтому текстовый отчет не нужен. Думал сделать расчет, понимаю, что это как-то очень просто, но ни как не соображу. И 2-й вопрос: не много не понял как в формуле расчета использовать условие ЕСЛИ. Все время выскакивает ошибка синтаксиса. Как правильно писать условия с ЕСЛИ?
Информацию нужно выводить на монитор, или же сохранять куда либо в файл?
Обычно требуется месячный отчет профиля мощности, с почасовым срезом. Недавно мы выпустили ОРС сервер для счетчика "Меркурий", к которому также выпустили проект-шаблон MasterSCADA для построения систем АСКУЭ, в котором в том числе есть отчет профиля мощности. Посмотрите - вероятно вам это требуется.
http://www.insat.ru/products/?category=1250
В общем виде:
ЕСЛИ (условие, возвращаемое_значение_если_условие_истинно, возвращаемое_значение_если_условие_ложно)
Например
ЕСЛИ (значение=10, 20, 30)
Если значение будет равно 10, то на выходе расчета будет 20, иначе 30.
ого, спасибо, вот это тема.
но, у меня уже стоит универсальный инсатовский модбас сервер на 2,5к, им я опрашиваю плк-100, и давно рассматриваю вопрос подключение меркурия к плк не по импульсному выходу как сейчас, а через CAN. Если использовать этот опс, то ПЛК как промежуточное звено вообще выпадает, так?
Да, он больше будет не нужен.
Насчет CAN - там только через преобразователь, который поставляет Меркурий. Либо используйте модели с RS-485.
вот в этом то и проблема, что к плк подцеплены еще счетчик газа и воды. ПЛК считает их импульсы, переводя их потом в объемы потребления и передает по сети, физически разбросанной на неск. километров и без плк никак.
Адаптер меркурий 221 у меня есть, подключался им выборочно к счетчикам, программку использовал штатную, шла в комплекте, здесь не проблема.
А вот контроллеров у меня уже более 200 штук (если помните), на каждого адаптером не запасешься, тем более что его цена одного кажется в районе 2-х тыс. руб. кажется, т.е. как пол-счетчика.
все разобрался, нашел функциональный блок звено запаздывания, подаю на его вход импульсы со счетчика электроэнергии, ставлю время задержки равное времени за которое хочу подсчитать мощность, например 5 мин., получаю на выходе кол-во импульсов, которое было 5 минут назад. Считаю разность между текущим значением количества импульсов и количеством импульсов 5 мин. назад , получаю расход электроэнергии за 5 мин. , далее умножаю полученное значение на 20 и получаю активную мощность которая была бы за час в этом пяти-минутном срезе.
Нашел в библиотеке скрипт, который квитирует все события данного объекта. А можно ли как-то квититровать все события в дереве объектов (включая события во всех вложенных объектах)? Возможно тривиальный вопрос, но увы не силен в c#.
Скрипт из библиотеки квитирует сообщения которые находятся в объекте, в котором находится скрипт, а также сообщения из всех вложенных объектов.
Просто положите этот скрипт в объект первого уровня
Здравствуйте!
Можно ли сделать в трендах одну динамическую шкалу для всех перьев, которая будет менять диапазон в зависимости от максимальных и минимальных значений перьев?
А использование автомасштаба вас не устраивает?
Здравствуйте, Я хочу узнать, а где OPC-сервер от второго видеоурока, где насосы с баками??
Можно мне на все видеоуроки, которые там есть OPC-сервера и все их конфигурации.
На странице с видеопримерами, помимо самих видеопримеров есть и готовые проекты MasterSCADA и OPC конфигурации.
OPC сервер можно использовать Modbus Universal MasterOPC Server
http://www.masteropc.ru/products/?category=399
Бесплатную версию на 32 точки, а также видеопримеры по созданию конфигурации можно скачать здесь:
http://www.masteropc.ru/prices/info.php?pid=6944
Спасибо огромное!!
Здравствуйте,
Возможно, нам понадобится внешнее управление реле при помощи скада, чтобы протестировать набрали формулу
ЕСЛИ( темп <> уставка, r_oUt=1 , r_oUt=0)
не корректно работает - когда уставка=темп происходит постоянное переключение с 0 на 1
режим работы выставлен r-L=1 т.е на ручном управлении ...
значения темп и уставка целые
когда значении не равны реле срабатывает нормально
Как мы понимаем вы используете модуль "Расчет". В модуле расчет нельзя выполнять присваивание переменным. ЕСЛИ возвращает результат на выход расчета, поэтому писать r_out=1 неверно.
Во вторых, неправильно писать темп <> уставка - должен быть хоть какой нибудь гистерезис.
Если вам нужно получить "Истина" если значение отклонилось от уставки, и "Ложь" если оно в нужных пределах, то тогда используйте не модуль "Расчет", а модуль "Событие", а формула будет такая:
темп<уставка-1 ИЛИ темп>уставка+1
+1 и -1, это примерные значения гистерезиса - задайте те, которые вам нужны
Спасибо, поменяв на событие все нормально заработало
Здравствуйте!
Подскажите можно ли как-то менять логику отображения сообщений(жирный шрифт, курсив, величину кегля)?
Возможно всё правиться в общих настройках журнала сообщений, но если открыть журнал сообщений на продвинутом уровне, в панели настроек кликнуть общие настройки, то ничего не происходит.
Есть такая ошибка - в продвинутом уровне, при нажатии на "Общие настройки" настройки не появляются.
Активизируйте панель "Графики" - тогда она появится.
В общих настройках в разделе "Таблица сообщений" есть настройки шрифта (его размер).
Управлять курсивом и жирным шрифтом нельзя - стилями определяется статус сообщения
Спасибо! Всё заработало!
а как в OPC-сервере в скрипте паузу в миллисекундах реализовать?
PS: os.time() миллисекунды не возвращает
Зачем вам вообще нужна пауза?
os.time возвращает количество секунд
делаю паузу в опросе между приборами, ибо если вести опрос подряд опрос нередко "затыкается" из-за неответа одного из приборов, не знаю с чем связано, но введя 2сек через os.time() паузу это явление пропадает. При том на деле такая задержка не 2 сек, а от 1 до 2 сек, как повезёт, а я бы хотел и 0,5сек уметь делать и 0,1.
Видел функции про timestamp, они из готовой строки могут извлечь кол-во мс, но откуда взять строку с текущим временем неясно.