For maintenance

사이몬 스카다 연산자 사용 본문

터치패널/Cimon Scada

사이몬 스카다 연산자 사용

New life 2021. 4. 30. 18:33
반응형

연산자

기능

표현방법

주석

=

대입연산자

TAG_A = 3 + 4

3+4한 결과(7)를 TAG_A에 대입합니다.

~

1의 보수

~TAG_A

TAG_A가 00110101b인 경우, 결과는 11001010b

!

논리 NOT

!TAG_A

TAG_A가 0이면 1, 0이 아니면 0

+

더하기

TAG_A+4

"ABC" + "123"

TAG_A와 4를 더한 값

두 문자열은 연결한 값 "ABC123"

-

빼기

TAG_A – 4

TAG_A에서 4를 뺀값

*

곱하기

TAG_A * 7

TAG_A와 7을 곱한 값

/

나누기

TAG_A / 7

TAG_A를 7로 나눈 값

%

나머지

TAG_A % 7

TAG_A를 7로 나눈 나머지 값

&

Bitwise AND

TAG_A & 0101b

TAG_A가 0011b인 경우, 결과는 0001b

|

Bitwise OR

TAG_A | 0101b

TAG_A가 0011b인 경우, 결과는 0111b

^

Bitwise XOR

TAG_A ^ 0101b

TAG_A가 0011b인 경우, 결과는 0110b

&&

Logical AND

수식1 && 수식2

수식1과 수식2가 모두 참인 경우 1, 그밖의 경우에는 0

||

Logical OR

수식1 || 수식2

수식1과 수식2가 모두 거짓인 경우 0, 그밖의 경우에는 1

<<

좌측 Shift

TAG_A << 3

TAG_A의 값을 좌측으로 3Bit이동한 값 우측은 0으로 채워짐

TAG_A가 00110101b인 경우 결과는 10101000b

>>

우측

TAG_A >> 3

TAG_A의 값을 우측으로 3Bit이동한 값 좌측은 0으로 채워짐

TAG_A가 00110101b인 경우 결과는 0000110b

<

작다

TAG_A < 7

TAG_A가 7보다 작으면 1, 아니면 0

>

크다

TAG_A > 7

TAG_A가 7보다 크면 1, 아니면 0

<=

작거나 같습니다

TAG_A <= 7

TAG_A가 7보다 작거나 같으면 1, 아니면 0

>=

크거나 같습니다

TAG_A >= 7

TAG_A가 7보다 크거나 같으면 1, 아니면 0

==

같습니다

TAG_A == 7

TAG_A가 7이면 1, 아니면 0

!=

같지 않다

TAG_A != 7

TAG_A가 7이 아니면 1, 같으면 0

 

 

**연산자의 사용 예

연산자는 CIMON-SCADA 내부에서 수식이 들어갈 수 있는 모든 부분에서 사용이 가능합니다.  연산자의 사용법에 대한 이해를 돕고자 그래픽 오브젝트에 적용한 몇가지 예를 살펴봅니다.

[예제 1]

디지털태그 DIG_1가 1이고 DIG_2가 0일때 오브젝트를 보이도록 하려면, 오브젝트의 출몰 기능의 태그이름 부분에 다음과 같이 입력합니다.

DIG_1 && !DIG_2

[예제 2]

디지털태그 DIG_1가 1이고 아날로그태그 ANA_1이 5일때 오브젝트를 보이도록 하려면, 오브젝트의 출몰 기능의 태그이름 부분에 다음과 같이 입력합니다.

 DIG_1 && (ANA_1 == 5)

 

 [예제 3]

아날로그 태그 ANA_1의 하위 Byte 부분만 화면에 값으로 표시하려면, 태그값 표시 오브젝트의 태그이름란에 다음과 같이 입력합니다.

 ANA_1 & 16#00FF

 [예제 4]

현재의 날짜를 1999년/02월/10일 수요일 과 같은 형태로 표시하려면, 태그값 표시 오브젝트의 태그이름란에 다음과 같이 입력합니다.

 

TimeStr(12) + " " + TimeStr(64)

 

연산자는 스크립트에서는 사용할 수 없습니다.

스크립트에서는 Basic 언어에서 제공하는 연산자를 사용하여야 합니다.

 

* 사이몬 스카다 도움말에서 연산자를 검색하시면 위 내용을 확인할 수 있습니다.