Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - Pavell

Страницы: [1] 2
1
я понял пока для таких условий Simple Scada не подходит.(
почему-то мне казалось сначала, что можно решить подобную задачу и закладывалась именно Simple Scada.
теперь надо судорожно искать что подойдет)

2
Цитировать
Такой подход как Вы описали используется крайне редко, т.к. если объектов 10, то и цена будет в 10 раз дороже (ведь придется приобрести 10 серверов скады). Плюс проблемы с объединением данных и т.п. У Вас объекты полностью отделены друг от друга и находятся в разных сетях?
вообще объектов 15 :) по поводу цены понятно и предварительно закладывалась покупка сервера скады на каждый объект.
объекты полностью отделены друг от друга и географически находятся в разных местах и часто имеют не очень стабильный мобильный интернет.
Сейчас часть тех. процесса регистрируется ASC Manager
там с синхронизацией все норм - данные с устройства собираются в локальную базу, которая по мере появления интернета синхронизируется с облачной базой и в результате доступна всем заинтересованным людям, но проблема в том, что мы не можем расширять , модифицировать систему, получать удобные отчеты, подключать дополнительные устройства.
Цитировать
Такой подход как Вы описали используется крайне редко
ну не знаю. по сути это довольно большой рынок буровых компаний т.к. там отдельные буровые бригады в разных местах и информацию по которым надо анализировать в одном месте. и с деньгами там все норм)

3
Ваши вопросы / Глобальный сбор данных.
« : 16 Ноября 2017, 16:11:37 »
К примеру есть 10 похожих объектов. На каждом установлена Simple Scada. Как получить сводную информацию по объектам на компе главного руководителя?
Сделать клиент для подключения к нескольким серверам похоже нельзя.
Если каждый объект будет отправлять отчеты, то нужно будет вручную их в один объединять?
Вы обдумывали подобное решение?

4
Простите. Это вы просто выдрали кусок из кода для примера, или просто так усложнили?
ну это так - набросок..
а можно без локальной переменной типа TM_Field обойтись или обязательно надо? В автодополнении у Sender не выходит Variable также в автодополнении не выходят типы почему-то TM_Field, TM_Text  и т.д.

5
да. действительно.. теперь работает автодополнение. перезагрузить наверное надо было после обновления.
не дополняет конечно имена локальных переменных, но это не беда т.к. методы им все равно добавляет.
что-то никак не найду описание этих строковых функций в Руководстве по скриптам .. они там в разделе Глобальные процедуры и функции?  И поиска в строке нет?
ну по строкам ладно.. это пока не актуально.. ведь для задумки можно использовать теги.

6
Вопрос по редактору конечно, но задам его тут...
Код
var
fld: TM_Field;
begin
if Sender is TM_Field then
begin
fld:=Sender as TM_Field;
if not fld.Variable.IsGoodQuality  then
ImageCSGO.FlashColor:=clRed
else
ImageCSGO.FlashColor:=clNone
end;
end.
вот такой у меня скрипт, который компилируется нормально и работает , НО внутри второго begin не работает автодополнение...в чем у меня ошибка?

7
Teodor,Simple-Scada большое спасибо за помощь!
особенно за примеры. Путь реализации примерно вырисовывается. Вот оказывается как использовать тег.
А то что-то сходу не нашел функций для обработки строк  (хотя они наверное есть, я надеюсь) и начал нервничать:)

8
Ну хорошо. Теперь я надеюсь сделать универсальный скрипт для этого.
Как я себе это представляю:
Я получаю имя переменной прикрепленной к сендеру как строку.
Нахожу позицию вхождения в имя например знака нижнего подчеркивания , после которого идет цифра.
Достаю эту цифру , перевожу ее из текста в число.
и если переменная имеет плохое качество, либо вышла за границы, то я выставляю в виртуальной переменной бит с номером полученным из имени переменной и соответственно при нормальных условиях очищаю этот бит.
Это возможно?
Сейчас в редакторе скриптов ввожу имя поля, нажимаю точку, нажимаю Ctrl+Пробел и ничего.. никаких автодополнений не выходит. Это нормально или нет? По идее должны предложиться возможные свойства объекта. У меня что-то не работает?

9
Ага. А имена клиентов где брать? А то, как я понимаю, GoToPageAll вызовет переход на всех подключенных клиентах..
Т.е. если два человека подключены к серверу каждый со своего клиента, то нажатие кнопки одним человеком выполнит открытие страницы и на клиенте другого человека а он например не хотел открывать эту страницу.
Можно ли открывать страницу только на том клиенте на котором вызвана команда GoToPage..?

10
Понял, спасибо. Геморненько)

11
Есть желание связать объект с группой переменных - например на одной странице отображается общий вид техпроцесса. На общем виде есть объект с текстурой например агрегат (генератор), с генератора приходит на ОРС сервер много переменных. и как сделать так чтобы объект с текстурой на общем виде начинал мигать например при выходе одной из этих переменных за границы, либо если пропала связь с тем же генератором (плохое качество переменных) (мы тыкаем по объекту и попадаем на страницу, подстраницу или окно где видим что конкретно заставило его мигать). и прекращал мигать когда все пришло в норму?
Так не получится?

12
По щелчку на объект можно открывать окно, но в окне нельзя открывать нужную группу трендов.
думал типа что-то Page1.Subpage2.open.. но такого нет.
также не нашел GoToPage(Subpage).
Как быть?
 

13
Ясно. я думал запятая сдвигается у значения а не у шкалы...сейчас попробую. Спасибо.

14
Столкнулся со странной проблемой.
Переменная поступает с ОPC и ей настроена шкала -50 до 100 единица измерения С. сдвиг запятой -1.
т.е. с опк сервера приходит 205 , в поле отображается 20.5 как и должно быть.  В базу данных пишется 20.5 как и должно быть, НО в окне отображения трендов при включении шкалы отображается шкала от -5 до 10 и тренды соответственно не видны если не попадают в этот диапазон.
Почему так? где я туплю?
Масштабирования в трендах как я понял нет?

15
Кстати, вопрос по сабжу... Локальный массив, он-же уничтожается после окончания скрипта? То-есть читать в него НЕ вариант...

А как насчет на ОРС сотворить переменных, подтянуть их в скаду и столь же муторно сравнивать по очереди?
наверное надо отдельный топик по массивам создавать)

Страницы: [1] 2