스위치/램프 예제
예제: 숫자 세는 동작
스위치/램프 구성
- 태그 두 개를 만듭니다. 태그 하나는 "Status"로 이름을, 데이터 종류는 BOOL 로 지정합니다. 다른 태그는 "Counter"로 이름을, 데이터 종류는 INT16로 지정합니다.
- 스위치/램프 오브젝트와 숫자 레이블 오브젝트를 만듭니다. 도구에서 삽입>스위치/램프 또는 스위치/램프 삽입 아이콘을 클릭합니다. 페이지를 클릭하고 드래그하여 스위치/램프 오브젝트를 표시합니다. 도구에서 삽입>숫자 레이블 또는 숫자 레이블 아이콘을 클릭합니다. 페이지를 클릭하고 드래그하여 숫자 레이블 오브젝트를 표시합니다.
-
"Status" 태그를 스위치/램프 오브젝트에 연결합니다. "Status" 태그를 클릭하고 그대로 스위치/램그 오브젝트로 드래그합니다. 마우스 버튼을 놓고 태그를 스위치/램프 오브젝트에 연결합니다. 다른 방법은 스위치/램프 오브젝트를 클릭하고 기본 속성 탭으로 이동하여 Status의 체인 버튼을 클릭하는 것입니다. "Status" 태그를 선택하고 확인을 클릭합니다.
-
"Counter" 태그를 숫자 레이블 오브젝트에 연결합니다. "Counter" 태그를 클릭하여 숫자 레이블 오브젝트로 드래그합니다. 마우스 버튼을 놓고 숫자 레이블 오브젝트에 태그를 연결합니다. 다른 방법은 숫자 레이블 오브젝트를 클릭하고 기본 속성 탭으로 이동한 다음 값의 체인 버튼을 클릭하는 것입니다. "Counter" 태그를 선택하고 확인을 클릭합니다.
- "Counter" 태그의 숫자를 카운트할 스크립트를 만듭니다. 도구>스크립트 편집기를 클릭하여 스크립트 편집기를 엽니다. 새 스크립트를 클릭하여 새 스크립트를 만듭니다. 스크립트 이름은 "Counter 활성화"으로 지정하고 확인을 클릭합니다. 스크립트는 수동 스크립트여야 합니다. 아래 코드를 복사하여 스크립트에 붙여넣습니다.
tag.write("Status", !tag.read("Status"));
thread.msleep(100);
while(tag.read("Status")){
tag.write("Counter", tag.read("Status") + 1);
thread.msleep(300);
}
- 스위치/램프에서 동작탭으로 이동합니다. 누를 때에서 동작 옆에 목록에서 Counter 활성화 스크립트를 선택하고 확인을 클릭합니다.
스위치/램프 런타임
- 도구>시뮬레이터 실행을 클릭하여 Canvas Simulator를 시행합니다.
- 스위치/램프 오브젝트를 클릭하여 "Counter" 태그를 전환합니다. 숫자 레이블 오브젝트는 스위치/램프 오브젝트를 전환할 때마다 하나씩 증가해야 합니다.
- 카운터를 중지하려면 스위치/램프 오브젝트를 다시 클릭하여 "Counter" 태그를 끄세요
- Counter 값을 임의의 수로 변경하여 초기값을 변경합니다.
- 스위치/램프 오브젝트를 클릭하여 "Counter" 태그를 전환합니다. Counter 값은 마지막으로 설정된 수보다 증가해야 합니다.