Вопросы и предложения по Simple-Scada 2

Автор Simple-Scada, 11 мая 2015, 20:34:39

Simple-Scada

Здравствуйте. Похоже на первое событие OnDataChange для тега, но странно почему даётся такая отметка времени. 31.12.1899 соответствует 0, если взять его значение как число. Мы внесём дополнительные проверки в ближайшем обновлении.

emoxristov

#691
Как я могу защитить мои проект не будет открыт в редакторе ?

Simple-Scada

#692
emoxristov, Вы можете установить пароль на проект. См. меню "Проект --> Настройки --> Пароль на проект".

Teodor

Цитата: emoxristov от 13 августа 2017, 19:03:42Как я могу защитить мои проект не будет открыт в редакторе ?
Не дать доступ до редактора. Запускать клиента из папки где нету проекта.

Teodor

Если, можно еще раз напомните, как работать с битами внешней переменной. Я что-то упустил что уже поправили в последней версии, а что нет.

Есть 10 кнопок меняющие биты одного внешнего тега (без каких-либо скриптов). Снаружи приходит составная переменная статуса кнопок, они подсвечваются и тут-же гаснут, т.к. переменная скидывается в 0, что вообще не есть хорошо. Контроллер, наученный что так не бывает (контрольный бит всегда в 1) восстанавливает предыдущее состояние и начинается "дискотека" с миганием.

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

Simple-Scada

С битами как и раньше, ставится кнопка с фиксацией и у кнопки включается работа с битами и указывается номер бита. Нажатие на кнопку записывает в указанный бит 1, повторное нажатие 0.

ЦитироватьСнаружи приходит составная переменная статуса кнопок, они подсвечваются и тут-же гаснут, т.к. переменная скидывается в 0, что вообще не есть хорошо.
Кнопки могут влиять только на основную переменную. Если статусная переменная у них задана как дополнительная, то они её точно не будут сбрасывать. Может ещё в каких-то скриптах проходит сброс этой переменной?

Teodor

Не, так я за то и спросил, что можно ли статусную основной делать и работать с ней прямо, или все-же доп. и основная локальная. У меня вообще цирк вышел. Я пробовал через основную и свойство бит, а скриптом отдельно выставлял контрольный бит. Но переменная в ОПС успевала передаться еще до того как контрольный бит устанавливался, и собсно отправить ее на контроллер, который восстанавливал состояние до предыдущего.

Simple_Scada

Когда требуется, чтобы кнопка при нажатии изменяла значения одной переменной и, например меняла свой цвет по другой переменной, то правильно будет сделать так, как это описано в примере "Кнопка по двум переменным". Если у Вас так и сделано и при этом, как Вы писали переменная статуса(доп. переменная) по какой-то причине сбрасывается на 0, то это означает что либо она сбрасывается на контроллере, либо в каких-то скриптах. Дополнительная переменная никак не зависит от кнопки и не может менять свое значение от состояний кнопки, если только это не прописано где-нибудь в скрипте.

Serhioormano

Нужно сделать типа базы скриптов готовых. Ну типа бибилотека. как NPM. Ну что бы можно было искать скрипт и загружать себе в бибилиотеку проекта. Что бы можно было свой скрипт опубликовать и что бы другие могли им пользоваться. Как расширения Visual Studio Code. Как менеджер макросов Segnetics SMLogix, или как менеджер макросов Owen Logic.

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

urqagun

Доброго дня! существует ли такая возможность разместить в среде таймер у которого были бы события, чтобы управлять объектами по времени, не прибегая к задействованию тегов

VLAD

Здравствуйте. Бьюсь над проблемой по имени "CoDeSys.OPC.02 (localhost) ошибка при добавлении новых тегов: Unspecified error". Уже несколько раз - всё работает как надо, выключил компютер, на следующий день при включении с ПЛК не связывается, SCADA теги не видит. Что за наваждение?

deldemo

Цитата: VLAD от 19 августа 2017, 18:29:52Здравствуйте. Бьюсь над проблемой по имени "CoDeSys.OPC.02 (localhost) ошибка при добавлении новых тегов: Unspecified error". Уже несколько раз - всё работает как надо, выключил компютер, на следующий день при включении с ПЛК не связывается, SCADA теги не видит. Что за наваждение?
Во всем виноват OPC server(если Вы конечно "родной" используете"). Нужно пересоздать соединение с проектом в CoDeSys OPC Configurator

VLAD

#702
ЦитироватьВо всем виноват OPC server(если Вы конечно "родной" используете"). Нужно пересоздать соединение с проектом в CoDeSys OPC Configurator
Я так и понимаю... на всякий случай снёс кодесис, ставлю самый свежий с их сайта. Спасибо.

Simple-Scada

Цитата: urqagun от 19 августа 2017, 14:16:20Доброго дня! существует ли такая возможность разместить в среде таймер у которого были бы события, чтобы управлять объектами по времени, не прибегая к задействованию тегов
Здравствуйте. Отдельного компонента для таймера нет и создать таймер сейчас можно только на основе тегов (можно использовать внутренние теги, они не ограничены). Вот последовательность действий для создания таймера:

1. Создаем виртуальную переменную "vrTimer" с типом данных DateTime.
2. В меню скриптов создаем новый скрипт с типом события "Прошла секунда" с таким кодом:

Код: pascal
const
  INTERVAL = 60;  // Интервал таймера в секундах
var
  aSeconds: Int64;
begin
  { если vrTimer ещё не инициализирована, то инициализируем её и прерываем скрипт }
  if vrTimer.Value < 1 then vrTimer.Value := Now;

  { получаем кол-во секунд с последнего срабатывания таймера }
  aSeconds := SecondsBetween(Now, vrTimer.AsDateTime);

  { если прошло больше, чем INTERVAL секунд с последнего срабатывания таймера }
  if aSeconds >= INTERVAL then
  begin
    // КОД РАЗМЕЩЕННЫЙ ЗДЕСЬ БУДЕТ ВЫПОЛНЯТЬСЯ ПО ТАЙМЕРУ

    vrTimer.Value := Now;
  end;
end.

Готов таймер с интервалом 60 секунд. Значение константы INTERVAL определяет интервал таймера в секундах.

urqagun