Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

경우에 따라 오브젝트의 동작을 설정할 때, 간단한 스크립트를 사용해야 하는 경우가 발생합니다. 예를 들어 다음 그림과 같이 터치 설정의 오브젝트 동작에 조건과 명령식을 입력할 수 있습니다. 표현 방법은 스크립트 프로그램 방법과 동일합니다.

...

(1) 조건식의 표현

연산자

기능

표현예시

설명

&&

Logical AND

A && B

A와 B가 모두 참인 경우 1, 그밖의 경우에는 0 입니다.

||

Logical OR

A || B

A와 B가 모두 거짓인 경우 0, 그밖의 경우에는 1 입니다.

작다

A < B

A가 B보다 작으면 1, 아니면 0 입니다.

크다

A > B

A가 B보다 크면 1, 아니면 0 입니다.

<= or =<

작거나 같다

A <= B

A가 B보다 작거나 같으면 1, 아니면 0 입니다.

>= or =>

크거나 같다

A >= B

A가 B보다 크거나 같으면 1, 아니면 0 입니다.

==

같다

A == B

A가 B이면 1, 아니면 0 입니다.

!=

같지 않다

A != B

A가 B가 아니면 1, 같으면 0 입니다.

 

다음은 오브젝트 동작 설정 시 사용 가능한 조건 표현 예제입니다.

입력 예

설명

(Tag_A != 1) && (Tab_B == 10)

Tag_A의 값이 1이 아니고 Tag_B의 값이 10일 경우 결과로 1을 반환, 아닐 경우 0을 반환합니다.

Sin(Tag_A) == 1

Tag_A의 Sin 값이 1일 경우 결과로 1을 반환, 아닐 경우 0을 반환합니다.

Tag_A < 100

Tag_A가 100보다 작으면 1, 아니면 0 을 반환합니다.

(Tag_A + Tag_B) < (Tag_A + Tag_C)

Tag_A와 Tag_B를 더한 값이 Tag_와 Tag_C를 더한 값보다 작으면 1, 아니면 0 을 반환합니다.

(2) 명령식

Xpanel에서 명령식의 사용은 하나로 제한되지 않고 여러 개의 목록으로 작성될 수 있습니다. 즉, 명령식은 특별한 스크립트프로그램으로 생각할 수 있습니다. 스크립트에 사용되는 함수들은 명령식에서도 사용할 수 있습니다.

명령식의 우선순위는 스크립트와 다릅니다. 오브젝트의 터치 동작이나 기타 다른 방법으로 명령식의 실행 조건이 성립되면 명령식은 최우선으로 실행됩니다. 즉, 명령식이 실행되는 동안에는 다른 오브젝트의 동작 처리가 진행되지 않고, 명령식이 종료될때까지 대기하게 됩니다. 특히, 명령식을 통해 호출된 함수의 경우 호출된 함수는 명령식이 우선순위와 동일하게 취급됩니다.

예시로, 명령식에서 스크립트를 실행하기 위하여 RunScript 함수를 사용할 수 있으며, 병렬처리의 형태로 동작합니다. 스크립트가 호출되어 실행되면, 명령식은 스크립트의 처리가 완료될때까지 기다리지 않고 다음 명령식을 처리합니다.

다음은 명령식의 예제입니다.

입력 예

설명

Tag_A = 100;

PageOpen(“NewPage”);

Tag_A의 값을 100으로 변경하고, “NewPage”로 지정된 페이지를 엽니다.

Tag_B = Tab_B + 1

Tag_B의 값을 1 증가시킵니다.

Tag_A = 100;

Tag_B = 1;

RunScript MyLoop();

MakeCsv(“LogModel”,1);

Tag_A 와 Tag_B의 값을 각각 100과 1로 변경하고 MyLoop() 으로 작성된 스크립트를 실행합니다. 스크립트가 실행되면 스크립트의 실행 종료와 관계없이 데이터 수집모델 “LogModel”의 데이터를 CSV 파일 형식으로 SD메모리에 저장합니다.