This is an old revision of the document!


위젯과 목적지 (내부 영역, 수식 설명)

이 문서는 Comfile Studio에서 사용하는 위젯, 목적지, 내부 변수, 내부 메모리, 수식/조건식의 개념을 설명합니다.

위젯이란?

위젯(Widget)은 화면에서 사용자가 직접 조작하거나 값을 표시하는 기능 요소입니다.

예:

  • 제어 버튼
  • 램프
  • 숫자 표시기
  • 입력창
  • 슬라이더

위젯은 단순한 그림이 아니라, 외부 장치 또는 내부 변수와 연결되어 실제 동작을 수행하는 제어 요소입니다.

목적지란?

위젯은 반드시 “목적지”와 연결되어야 동작합니다.

목적지는 위젯이 읽거나 쓰는 대상입니다.

목적지는 2가지 종류가 있습니다.

  • 내부 영역 (HMI 또는 PC 내부)
  • 외부 영역 (PLC 등 외부 장치)

내부 영역

내부 영역은 HMI 또는 PC 내부에 존재하는 기억 공간입니다. 외부 장치 없이도 사용할 수 있습니다.

※ 내부 영역은 기본적으로 휘발성입니다. 전원이 꺼지면 값이 보존되지 않습니다.


내부 변수

내부 변수는 별도의 선언 없이 이름만 사용하면 바로 생성됩니다.

예:

모터상태
Motor1
온도값

특징:

  • 모든 내부 변수는 전역 변수입니다.
  • 같은 이름이면 모든 화면에서 공유됩니다.
  • 64비트 정수 및 실수 저장 가능
  • 대소문자 구분
  • 한글 사용 가능

이름 규칙:

  • 첫 글자는 문자 또는 언더바
  • 숫자로 시작 불가
  • 공백 사용 불가

좋은 예:

모터상태
Motor1

나쁜 예:

123abc
대한 민국 (공백 존재)

내부 메모리

내부 메모리는 번지를 지정하여 사용하는 배열형 기억 공간입니다.

기본 범위:

0 ~ 1023

확장 방법:

set_mem_size(20000)
  • 메모리 크기가 20000개로 확장됨
  • 확장 시 모든 값은 0으로 초기화됨
  • 최대 1,000,000개까지 확장 가능

각 번지에는 64비트 정수 및 실수 저장 가능

참조 방법:

mem(0)

예:

mem(0) > 10

값 기록:

set_mem(번지,값)

여러 값 연속 기록:

set_mem(번지,값1,값2,값3…)

내부 변수를 번지로 사용 가능:

mem(index)

※ 내부 메모리는 데이터 버퍼, 로그 임시 저장, 계산 중간값 저장 등에 적합합니다.


수식 / 조건식

내부 변수, 내부 메모리, 시스템 함수는 수식 및 조건식에서 사용할 수 있습니다.


조건식

비교 연산자 (C 언어와 동일):

<
<=
==
>=
>
!=
&&
||

예:

모터상태 > 1
히터1 == 0
히터1 != 0

산술 연산자

+
-
*
/
%

예:

모터상태 + 1

비트 쉬프트

<<
>>

예:

모터상태 << 2

자주 발생하는 질문

Q. 위젯이 동작하지 않습니다. → 목적지가 설정되지 않았거나, 외부 장치가 응답하지 않는 경우입니다.

Q. 값이 전원 껐다 켜면 사라집니다. → 내부 영역은 기본적으로 휘발성입니다.

Q. 여러 화면에서 같은 변수를 쓰고 싶습니다. → 내부 변수는 전역 변수이므로 같은 이름을 사용하면 됩니다.


키워드: Comfile Studio 위젯, 목적지 설정, 내부 변수, 내부 메모리, mem 함수, set_mem, 조건식, 수식 사용법

상위 페이지로 가기