조건 트리거는 지정된 조건에 따라 작업을 실행합니다.
이 트리거는 조건이 충족되면 한 번 발생합니다. 조건 충족 여부는 조건에 설정된 값이 변경될 때 결정됩니다.
onCondition(SOURCE < CONSTANT1&&SOURCE > CONSTANT2,
1 4 1 5
{enableDelay:false,enableDeadband:false,delayValue:0,deadBandValue:0},
3 2 3 2
()=>{
});
1: Condition Source
2: Deadband
3: Hold Delay
[Hold Delay]가 사용하도록 설정되어 있으면 설정된 시간이 지나면 작업이 실행됩니다.
4: 조건 1
5: 조건 2
(예제 1)
BOOL 변수 BOOL2 값이 ON으로 설정되면 트리거가 발생합니다.
변수 블록 | 조건 |
변수 블록에서 BOOL2를 선택합니다. |
조건을 [==]으로 설정합니다. 상수 블록에서 [Bool]을 선택하고 확인란을 선택합니다. |
블록![]() 텍스트onCondition(BOOL2 == true,{enableDelay:false,enableDeadband:false,delayValue:0,deadBandValue:0}, ()=>{ }); |
(예제 2)
정수 변수 INT2 값이 20을 초과하면 트리거가 발생합니다.
변수 블록 | 조건 |
변수 블록에서 INT2 변수를 선택합니다. |
조건을 [>]으로 설정합니다. 상수 블록에서 [Int]를 선택하고 20을 설정합니다. |
블록![]() 텍스트onCondition(INT2 > 20,{enableDelay:false,enableDeadband:false,delayValue:0,deadBandValue:0}, ()=>{ }); |
(예제 3)
문자열 변수 STRING2 값이 ABC가 되면 트리거가 발생합니다.
변수 블록 | 조건 |
변수 블록에서 STRING2 변수를 선택합니다. |
조건을 [==]으로 설정합니다. 상수 블록에서 [STRING]을 선택하고 ABC를 입력합니다. |
블록![]() 텍스트onCondition(STRING2 == "ABC",{enableDelay:false,enableDeadband:false,delayValue:0,deadBandValue:0}, ()=>{ }); |
(예제 4)
그래픽 개체 Rectangle2의 높이가 15~20이면 트리거가 발생합니다.
그래픽 오브젝트가 Screen1에 그려집니다.
화면 오브젝트 블록 | 조건 |
화면 오브젝트 블록에서 Rectangle2.Height를 선택합니다. |
상수 블록에서 [Int]를 선택하고 15을 설정합니다. 조건을 [<=]으로 설정합니다. 기타 조건을 [<=]로 설정합니다. 상수 블록에서 [Int]를 선택하고 20을 설정합니다. |
블록![]() 텍스트onCondition(15 <= $GraphicObject.Rectangle2.Height && $GraphicObject.Rectangle2.Height <= 20,{enableDelay:false,enableDeadband:false,delayValue:0,deadBandValue:0}, ()=>{ }); |
[==] | 같음 부호 |
[!=] | 같지 않음 부호 |
[<=] | 작거나 같음 부호 |
[>=] | 크거나 같음 부호 |
[<] | 보다 작음 부호 |
[>] | 보다 큼 부호 |
알람을 트리거할 값과 알람을 복구할 값 사이의 값 범위를 Deadband라고 합니다.
(예)
조건이 X>20 이고 Deadband가 5라고 가정합니다.
다음 차트를 참조하십시오. A 지점에서는 입력값이 처음으로 20을 초과하므로 트리거가 발생합니다. B 지점에서는 입력값이 15 미만으로 떨어지지 않으므로 트리거가 발생하지 않습니다. C 지점에서는 입력값이 15 미만이었다가 20을 초과하게 되므로 트리거가 발생합니다.
onCondition(Var1 > 20,{enableDelay:false,enableDeadband:true,delayValue:0,deadBandValue:5}, ()=>{
});
아래 표는 다양한 조건에서의 Deadband를 보여줍니다:
예 | 설명 |
X<5, Deadband = 1 |
입력값이 5 미만이면 항상 트리거가 발생합니다. 입력값이 처음으로 5 미만일 때 트리거가 발생합니다. 다음 트리거는 입력값이 6 이상으로 오르거나 5 미만으로 내려갈 때 발생합니다. ![]() |
X<=5, Deadband = 1 |
입력값이 5 이하이면 항상 트리거가 발생합니다. 입력값이 처음으로 5 이하일 때 트리거가 발생합니다. 다음 트리거는 입력값이 6 이상으로 오르거나 5로 내려갈 때 발생합니다.![]() |
X==5, Deadband = 1 |
입력값이 5가 되면 항상 트리거가 발생합니다. 입력값이 처음으로 5가 될 때 트리거가 발생합니다. 다음 트리거는 입력값이 6 이상으로 오르거나 4 이하로 내려간 다음 다시 5에 이를 때 발생합니다. ![]() |
X!=5, Deadband = 1 Deadband는 설정해도 [!=] 조건을 지원하지 않습니다. |
입력값이 5가 아닐 때 항상 트리거가 발생합니다. 입력값이 처음으로 5가 아닐 때 트리거가 발생합니다. 입력값이 5에 도달한 후 다른 값으로 변경될 때 다음 번 트리거가 발생합니다. ![]() |
4<=X<=6, Deadband = 1 |
입력값이 4 ~ 6일 때 항상 트리거가 발생합니다. 입력값이 처음으로 4 ~ 6일 때 트리거가 발생합니다. 다음 트리거는 입력값이 7 이상으로 오른 다음 4~6 사이의 겂에 이를 때 발생합니다. 트리거는 입력값이 3 이하로 내려간 다음 4~6 사이의 값에 이를 때도 발생합니다.![]() |