Есть много способов сделать это (если я вас правильно понял).
Вот два способа, например:
1. Создать переменную, которая имеетрезультат условия и использовать переменную.Вы должны назначить переменную в начале, а затем вы можете использовать переменную вместо этого длинного кода.
VAR
EnginesOK : BOOL;
END_VAR
//Check engines
EnginesOK := (A = TRUE AND B = TRUE AND C = TRUE AND D = TRUE);
//.. Later ..
IF EnginesOK THEN
//Do something
END_IF
2. Создайте функцию, например F_VerifyEngines
, которая содержитпроверяет и возвращает состояние как BOOL
.Примечание. В этом примере A, B, C и D должны быть глобальными переменными.Вы также можете передать их в качестве параметров для функции.
FUNCTION F_VerifyEngines : BOOL
VAR_INPUT
//Add A,B,C,D here if needed
END_VAR
VAR
END_VAR
//Return the result
F_VerifyEngines := (A = TRUE AND B = TRUE AND C = TRUE AND D = TRUE);
Затем вы можете использовать функцию в коде:
IF F_VerifyEngines() THEN
//Do something
END_IF
Второй способ, вероятно, тот, о котором вы думали.
Кстати, не нужно писать A = TRUE AND B = TRUE AND C = TRUE AND D = TRUE
, на мой взгляд, читать удобнее, когда вместо него используется A AND B AND C AND D
.