Simple-Scada forum

Simple-Scada 2 => Ваши вопросы => Тема начата: Юрий от 25 Июня 2017, 07:42:00

Название: Граничные значения переменной
Отправлено: Юрий от 25 Июня 2017, 07:42:00
Добрый день!

Вопрос в следующем, имеется поле с отображением значения переменной, поступающей из контроллера и имеются уставки мин и мах, которые также задаются с контроллера. Можно ли, при выходе значения переменной за уставки менять цвет поля, например на красный. Если можно, то как. Уставки могут меняться в любой момент с панели контроллера оператором вручную.
Пытался сделать запись граничный значений HighAlarm и LowAlarm с помощью секундного скрипта, но проблема тогда в следующем, пока значение переменной не изменится хотя бы один раз, граничные значения не устанавливаются.
Название: Re: Граничные значения переменной
Отправлено: deldemo от 25 Июня 2017, 22:15:04
Здравствуйте
Привязываем к полю скрипт, что ниже, по событию OnDataChange.
vREAL - переменная с текущем значением из ПЛК привязанная к полю Field1
vMAX - переменная с значением уставки MAX из ПЛК
vMIN - переменная с значением уставки MIN из ПЛК
Код
begin
  if vREAL.AsInt > vMAX.AsInt then    // сравниваем уставку MAX и текущие показания
    Field1.BorderColor := clRed       // меняем бордюр на красный цвет если больше
  else
    if vREAL.AsInt < vMIN.AsInt then  // сравниваем уставку MIN и текущие показания
      Field1.BorderColor := clYellow  // меняем бордюр на желтый цвет если меньше
    else
      Field1.BorderColor := clGray;   // если не выходим за границы то меняем цвет на серый
end.

Скрипт будет менять цвет бордюра поля. Если нужно менять цвет всего поля то вместо BorderColor нужно вписать Color
Название: Re: Граничные значения переменной
Отправлено: Юрий от 27 Июня 2017, 17:59:58
Спасибо!!!