begin
//Скважина 1
if Danfoss_disconnect_flag.AsBool = TRUE then
begin
AddMessage(Now, mkMessage, 'Зв''язок з перетворювачем частоти відновлено [Свердловина 1]', TRUE, FALSE);
end
else
AddMessage(Now, mkAlarm, 'Зв''язок з перетворювачем частоти втрачено [Свердловина 1]', TRUE, FALSE);
//Скважина 2
if Danfoss_disconnect_flag_1.AsBool = TRUE then
begin
AddMessage(Now, mkMessage, 'Зв''язок з перетворювачем частоти відновлено [Свердловина 2]', TRUE, FALSE);
end
else
AddMessage(Now, mkAlarm, 'Зв''язок з перетворювачем частоти втрачено [Свердловина 2]', TRUE, FALSE);
//Скважина 3
if Danfoss_disconnect_flag_2.AsBool = TRUE then
begin
AddMessage(Now, mkMessage, 'Зв''язок з перетворювачем частоти відновлено [Свердловина 3]', TRUE, FALSE);
end
else
AddMessage(Now, mkAlarm, 'Зв''язок з перетворювачем частоти втрачено [Свердловина 3]', TRUE, FALSE);
//Скважина 8
if Danfoss_disconnect_flag_3.AsBool = TRUE then
begin
AddMessage(Now, mkMessage, 'Зв''язок з перетворювачем частоти відновлено [Свердловина 8]', TRUE, FALSE);
end
else
AddMessage(Now, mkAlarm, 'Зв''язок з перетворювачем частоти втрачено [Свердловина 8]', TRUE, FALSE);
end.
. . .
//Скважина 1
if Variable.Name = 'Danfoss_disconnect_flag' then // проверка на "свою" переменную
if Danfoss_disconnect_flag.AsBool then
AddMessage(Now, mkMessage, 'Зв''язок з перетворювачем частоти відновлено [Свердловина 1]', TRUE, FALSE)
else
AddMessage(Now, mkAlarm, 'Зв''язок з перетворювачем частоти втрачено [Свердловина 1]', TRUE, FALSE);
. . .
Каждый оператор IF должен выполнятся только при изменении "своей" переменной, например:Именно, иначе будут выдаваться лишние сообщения. Но проверять лучше по указателю на переменную, например так:
. . .
//Скважина 1
if Variable = Danfoss_disconnect_flag then // проверка на "свою" переменную
if Danfoss_disconnect_flag.AsBool then
AddMessage(Now, mkMessage, 'Зв''язок з перетворювачем частоти відновлено [Свердловина 1]', TRUE, FALSE)
else
AddMessage(Now, mkAlarm, 'Зв''язок з перетворювачем частоти втрачено [Свердловина 1]', TRUE, FALSE);
. . .
Тэг Danfoss_disconnect_flag является булевой переменной и в зависимости от его состояния я вывожу ту или иную информацию.Вам нужно создать сообщение в редакторе сообщений (https://simple-scada.com/help/manual/edit-message.html) и добавить в него два состояния (https://simple-scada.com/help/manual/index.html?edit-message.html#prop_sost): для значения переменной 0(False) и 1(True) - см. скриншот во вложении.
Там есть свойства такие как: Значение (от) и Значение (до) и если я Вас правильно понял, то по тэгу Danfoss_disconnect_flag я могу выставить значения ОТ 0 и ДО 1?Значение (до) – используется для указания диапазона значений или битов для данного состояния. "-1" - не использовать диапазон. В Вашем случае переменная типа Boolean может принимать два значения(0/1), значит свойство "Значение (до)" не нужно использовать. В первом состоянии в свойстве "Значение (от)" нужно указать 0 и задать необходимый текст сообщения, во втором состоянии указать 1 - см. скриншот.
Скада сможет определить true и false как 1 и 0?Да, 1 соответствует True, 0 соответствует False.