입력 변수 값 트리거는 값이 디스플레이 장치에서 선택한 변수로 입력될 때 작업을 실행합니다.
이 트리거는 입력 값이 현재 값과 같은 경우에도 발생합니다.
onVariableInput(VARIABLE, ()=>{
1
});
1: 변수
값이 디스플레이 장치 표시기가 아닌 외부 장치의 장치 주소에서 직접 외부 변수에 입력되면 트리거가 실행되지 않습니다.
외부 변수 품질 상태가 양호하지 않으면 외부 변수에 값을 입력하더라도 트리거가 실행되지 않습니다. 소스 속성(<변수 이름>.Quality)에서 변수 품질 상태를 모니터링할 수 있습니다.
변수
(예)
onVariableInput(DINT1, ()=>{
DINT2 += 20;
});
[Input Variable Value] 트리거와 기능이 유사한 [Value Change] 트리거를 사용할 수도 있습니다. [Input Variable Value] 트리거가 요구 사항을 충족하지 않는 경우 [Value Change] 트리거의 사용을 고려하십시오.
다음은 두 트리거 간의 차이점에 대해 설명합니다.
[Input Variable Value] | [Value Change] | |
트리거 대상 | 변수만 | 변수 및 소스 속성 |
값이 장치 주소에서 직접 외부 변수에 입력되는 경우: | 트리거가 실행되지 않습니다. | 트리거가 실행됩니다. |
현재값과 동일한 값을 입력하는 경우: | 트리거가 실행됩니다. | 트리거가 실행되지 않습니다. |
슬레이브 장치 드라이버가 [Input Variable Value] 트리거 및 연결된 블록에 할당된 것 이외의 동일한 외부 변수를 사용하는 경우, 입력 값이 아닌 현재 값이 연결된 블록에서 참조될 수도 있습니다.
onVariableInput(Var1, ()=>{
$GraphicObject.NumericDisplay2.CurrentValue = Var1;
});
변수 유형 | 드라이버 | 비동기식 작업 사용*2 | 연결된 블록에서 참조된 변수 값 |
내부 변수 | - | 예 | 값 입력 |
아니요 | 값 입력 | ||
외부 변수 | 슬레이브 장치 드라이버 *1 | 예 | 값 입력 |
아니요 | 값 입력 | ||
슬레이브 장치 드라이버 이외 | 예 | 값 입력 | |
아니요 | 현재값(값을 입력하기 전) |
*1 슬레이브 장치 드라이버에는 다음이 포함됩니다.
*2 [Input Variable Value] 트리거와 대상 작업 사이에 비동기식 연산을 삽입하는 경우.
onVariableInput(Var1, ()=>{
exportAlarmData(false, false, $Enums.AlarmMode.Log);
$GraphicObject.NumericDisplay2.CurrentValue = Var1;
});
비동기식 작업에 대한 자세한 내용은 다음을 참조하십시오.
동작 블록
테이블 하단의 항목에 해당하는 경우 [Input Variable Value] 트리거 대신 [Value Change] 트리거를 사용할 수 있는지 여부를 고려하십시오.
[Value Change] 트리거와 [변수값 입력] 트리거 간의 차이점에 대한 자세한 내용은 이 항목의 “[Input Variable Value] 및 [Value Change] 트리거 간의 차이점”을 참조하십시오.
[Value Change] 트리거에 대한 자세한 내용은 다음을 참조하십시오.
값 변경