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

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

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

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


Сообщения - Серега

Страницы: 1 ... 14 15 [16] 17
226
Добрый день!
Кратко о ситуации.
Было:
arOPC: переменная var_120.
SimpleScada: внеш. переменная Var_120. Адрес в ОРС var_120. ID переменной 2103 (Возможно был другой. См. вопросы). Архивация настроена
По стечению обстоятельств необходимо было поменять и в ОРС и в скаде имя переменной на var_121.
После изменений:
arOPC: переменная var_121.
SimpleScada: внеш. переменная var_121. Адрес в ОРС var_121. ID переменной 2103.
Пропали данные архивирования переменной за диапазон времени.
Вопрос№1. Может ли изменяться id переменной?
Вопрос№2. Можно ли проверять целостность базы данных средствами скады?

227
Ваши вопросы / Re: Текст внутри SQL запроса
« : 02 Ноября 2018, 14:51:06 »
Спасибо за решения. В понедельник проверим на объекте.

228
Ваши вопросы / Re: Текст внутри SQL запроса
« : 02 Ноября 2018, 14:19:39 »
Товарищи!
Терпение и труд все перетрут.
Решение после ряда экспериментов нашел следующее (может кому и пригодиться) :
Код: (delphi)
var
  aQuery: string;
  var:string;
begin
  var:='test';
  { Формируем запрос к БД }
  aQuery := 'SELECT * FROM  recipes WHERE ID = ' + Chr(39) + var + Chr(39) +';';
  { Отправляем запрос на выполнение c тегом = 1}
  RunSQL(aQuery, nil, 1);
end.
В предыдущей записи в конце забыл поставить ;.
Если вместо var использовать внешнею переменную можно разработать интересные скрипты с заменой.
Тема закрыта.

229
Ваши вопросы / Текст внутри SQL запроса
« : 02 Ноября 2018, 13:23:44 »
Добрый день!
Вопрос. База MySQL.
Запрос:
SELECT * FROM recipes WHERE ID = 'test'
В базе выполняется. Результат то что нужно. При переносе в скаду возникает затык с кавычками. Т.е.:
Код: (delphi)
var
  aQuery: string;
begin
  { Формируем запрос к БД }
  aQuery := 'SELECT * FROM  recipes WHERE ID = 'test';'
  { Отправляем запрос на выполнение c тегом = 1}
  RunSQL(aQuery, nil, 1);
end.
В примерах используется переменная типа string. Но это если надо подставить, а нужно подставить текст в кавычки внутрь запроса, который сам в кавычках.
Подскажите куда смотреть.


230
Ваши вопросы / Re: Побитовое AND
« : 02 Октября 2018, 15:53:59 »
Ребята зря Вас тревожил.
Данный пример работать будет.
У меня был косяк в определении индексов для case.
Вопрос закрыт.

231
Ваши вопросы / Побитовое AND
« : 02 Октября 2018, 13:51:25 »
Добрый день!
Столкнулся со "странной" работой оператора AND.
Есть ряд переменных.
1 группа - тестовые, заведены в симуляцию в arOPC и скаду. val1 и val2, тип smallint.
2 группа - реальные, из ПЛК, заведены в arOPC и скаду. val1_1 и val2_1, тип smallint.
3 группа - одна переменная для вывода значения функции, summa:longword и одна переменная временная test:smallint.
Есть 1 секундный скрипт. В нем ряд действий.
1-ое. Определение функции и ее вызов.
2-ое. Сложение двух переменных через AND
Код: (delphi)
  function Read (Place:smallint; Ready:smallint):longword;
  var
    PlaceReady := longword;
    medium: integer;
  begin
    medium := Place AND Ready;
    PlaceReady := medium Shl 24;
    if (Ready > 0) AND (Place > 0) then
      Result:= PlaceReady
    else
      Result:= 0;
  end;
begin
  count := count +1;
  if count = 5 then count := 0;
  case count of
    1: summa.value := Read (val1.value, val2.value);
    2: summa.value := Read (val1_1.value, val2_1.value);
  end;
  test.value := val1.value AND val2.value;                           // [b]2-ое[/b]
  test.value := val1_1.value AND val2_1.value;                       // [b]действие[/b]
end.
Вопрос следующий.
2-ое действие работает и с переменными из 1-ой группы и со 2-ой группы
1-ое действие работает только с 1-ой группой переменных.
Подскажите что делаю не так?

232
Ваши вопросы / Внутренние и внешние теги
« : 12 Сентября 2018, 18:28:45 »
Добрый день!
Возможно тема не для этой ветки. Можно смело переносить.
Вопрос следующий.
Дано:
arOPC. Симуляция. 3 переменные (var1, var2, result : word). Диапазон изменения var1 и var2 0..12.
SCADA: те же переменные, объявлены как внешние с привязкой к OPC. Переменная result1 объявлена как внутренняя.
Надо:
При установке любого бита в переменных var1 и var2 установить соответствующие биты в result либо в 1 либо в 0 согласно правилу. Например var1 принимает значение 210 (102) и var2 принимает 010. Соответственно result должен из значения 1111 1111 1111 11112 принять значение 1111 1111 1111 11012.
Простой скрипт (односекудный):
begin
result1.value := NOT (var1.Value or var2.Value); (так же пробовали и с .AsInt)
result.value := NOT (var1.Value or var2.Value);
end;
Вопросы:
1. result1.value := NOT (var1 or var2); - работает, но есть вопрос №2. result.value := NOT (var1 or var2); - не работает.
2. Все переменные типа word (согласно руководству Word 16 бит Положительные целые числа 0…65535). НО result1 = -1. Почему?
Проверьте у себя. Возможно что- то делаю не так. Жду Ваших ответов или вопросов.

233
Добрый день!
Ситуация следующая. При импорте переменных из arOPC переменные скады формируются по деволту. Одно из свойств это архиация и его значение "Не архивировать". Но у нас есть механизм экспорт\импорт и быстро в excel это можно поправить. Но есть несколько НО...
1. Экспортируются все переменные из проекта.
Предложение№1. Если переменные распределены по группам (например цех№1, цех№2, гидростанция) и надо обновить поле архивации переменных только из группы гидростанция. Можно сделать только экспорт этой группы?
2. Нюансы с клавишей Shift при импорте. При удалении всех групп, подгрупп и переменных из проекта импорт проходит на ура. При импорте для обновления переменных (опять же всех переменных проекта, а не какой-то конкретной группы) зажимаем Shift, нажимаем импортировать, в следующем окне идет подтверждение что надо сделать (импортировать группы, переменные и т.д.). Если не удалять группы, подгруппы и переменные, то добавляются пустые группы и подгруппы, которые можно удалить ручками, но как то это не то. Переменные обновляются как надо.
Предложение№2. Проверьте у себя на стенде. 
Жду ответа.

234
Ваши вопросы / Re: Про связь с OPC
« : 16 Августа 2018, 09:54:54 »
Здравствуйте!
Да помогло.
Для информации и анализа. При регистрации в клиенте под доменым юзером Оператор3 восклицательного знака не было. Но при регистрации локальным юзером Оператор знаки отображались. Поэтому вопрос и возник.

235
Ваши вопросы / Про связь с OPC
« : 15 Августа 2018, 13:46:05 »
Добрый день!
На одном из клиентов не отображаются восклицательные знаки, говорящие об отсутствии связи с OPC сервером. Подскажите с чем может быть это связанно?

236
Ваши вопросы / Про логирование
« : 15 Августа 2018, 11:59:26 »
Добрый день!
Товарищи разработчики могли бы Вы более подробно описать или дать ссылку как работает процесс логирования.
Дано. Есть сервак, 3 клиента и инженерка. Локально в настройках на каждом клиенте включено логирование. На инженерной станции включено логировавание работы эдитора.
Утверждение №1. Логи работы клиентов пишутся локально. Логи инженерки пишутся на сервер.
Вопрос№1. Логи работы клиентов можно писать на сервер через сетевой доступ под именами клиентов?
Утверждение№2. Если клиент включен, файл лога занят данным процессом.
Вопрос№2. Могут 3 клиента одновременно писать в один файл?

237
Добрый день!
Опять возвращаемся к остановке клиента и его зависанию.
Цитировать
1. У Вас стабильная сеть между ПК клиента и сервера?
Да. Одно из условий реализации проекта. Админы следят постоянно.
Цитировать
2. Не меняется ли IP-адрес сервера периодически?
Все клиенты и сервера в отдельной сети. У всех статические IP адреса.
Цитировать
3. Если включить пинг сервера, то он стабилен? ...
Идет стабильный пинг без сучка и задоринки.
Цитировать
3. .... Выводятся ли на клиенте на клиенте окна о потере связи с сервером?
Да выводятся, но окно "Проект приостановлен" , когда останавливаем Simple-Scada Server
Цитировать
4. По логам также видно, что клиент в первом случае проработал 18093481ms (5 часов), во втором 19232228ms (5.3 часа). У Вас проблема возникает всегда с этим периодом времени? Или всегда по разному?
Да время практически всегда одно и тоже, приблизительно 5 часов с минутами. Об этом писал выше.
Цитировать
5. ПК клиента не переходит в спящий режим и работает стабильно?
Одно из условий проекта без спящих режимов 24 часа/7 дней.
Так же повторюсь, что ради эксперимента запустил пустой проект(без скриптов, без подключения к БД, без подключения к arOPC) и ситуация повторилась.
Выслать проект не могу по ряду причин.
Все скрипты в основном следующие:
1. если слово состояний изменилось присвоить переменной внутренней значение бита
Скрипт типа "Изменилась переменная" GlobalVar (тип DWord).
var1.Value := GetBit (GlobalVar.AsInt64, 0); //тип boolean
var2.Value := GetBit (GlobalVar.AsInt64, 1); //тип boolean
var3.Value := GetBit (GlobalVar.AsInt64, 2); //тип boolean
и т.д.
2. Скрипт типа "Прошла одна секунда". Но это обсуждается в другой теме и проблем не вызывает
3. Скрипты типа "Универсальный". Взятые из хэлпа примеры и адаптированны к текущему проекту.
Все подозрительные и экспериментальные почистил. Но сегодня опять произошел вылет.
В Client.log вот такое сообщение обраружил:
[00005595ms] ошибка при попытке запуска Simple-Scada Server!System Error.  Code: 2.Не удается найти указанный файл
Спрашивайте буду отвечать.


238
Добрый день!
Приятно помогать. Но одно уточнение.
Цитировать
Цитировать

    Вопрос №1. Свойства кнопки перепутаны надписи?

Нет. Первое состояние называется "Отпущена" и после запуска проекта кнопка находится в этом состоянии. При нажатии на кнопку выполняется переход ко второму состоянию "Нажата" и т.д.

Кнопка без фиксации:

Editor:
TM_Button > Состояние "Отпущена" > Значение = 1
TM_Button > Состояние "Нажата" > Значение = 0

В режиме исполнения:
Нажимаем кнопку > Переменная принимает значение = 1
Отпускаем кнопку > Переменная принимает значение = 0

Почему?

239
Добрый день!
Решил поделиться свои наблюдениями.
Предложение№1. Добавить свойство кнопки "Расположение иконки". Состояния: слева от текста, справа от текста, вместо текста
Предложение№2. Если объекты одинаковые (поле, круг и т.д.) и выделены только они можно менять их ширину, высоту.
Предложение№3. В меню создания окон добавьте функцию создания хотя бы 2 уровня групп, например как в трендах.
Предложение№4. Разработайте функцию архивирования проекта и все, что в него входит картинки, логи, звуки. Но это предложение возникло месяца 2 назад. И на форуме читал вроде Вы над этим уже работаете. Если моно просто потвержите да/нет.
Предложение№5. При удалении тренда из группы довольно часто вылетает проект с ошибкой записи в память для чтения.
Предложение№6. Элемент "Окно сообщений" сделать для отдельных групп когда они сформированы, например есть группа №1 и №2 в окне №1 отображается группа №1, а в  окне 2 группа №2
Вопрос №1. Свойства кнопки перепутаны надписи?
Вопрос №2. В хелпе в описании команды SetBit написан тип int64, в эдиторе описание longint (хотя logint = int64). Наверное это опечатка?

240
Ну товарищи разработчики вы оперативно работаете. Респекта и уважухи +100500. ;D
Будем ждать обновления.

Страницы: 1 ... 14 15 [16] 17