로그인
사이드바
컴파일 온라인 사용설명서
검색
Comfile Studio
Comfile Studio 다운로드
샘플 프로젝트 모음
Comfile Studio 화면구성
프로젝트 생성
프로젝트 속성 수정
프로젝트 전송(다운로드)
프로젝트 초기화
PC에서 실행하기
화면추가및 속성편집
도형및 위젯 그리기
도형및 위젯 정렬하기
도형및 위젯 위치/크기 조정
공통사항
위젯, 목적지, 수식
문자열 처리
고정 글꼴 (다국어 지원)
위젯
제어 버튼
목적지 설정
주소 입력창
속성 설정
램프 효과
화면 전환 버튼
멀티 액션 버튼
숫자 입력기
전처리 연산
램프
토글 스위치
멀티 캡션
숫자
표시 위치 설정
텍스트
실시간 글꼴 변경
시간
연속텍스트
숫자키패드
멀티키패드
막대그래프
슬라이더바
로그 표시기
이력 알람 표시기
노브
트렌드 그래프
액션
직접 기록
외부장치에서 읽어오기
파일 기록 (원격 기록 지원)
파일 제어
대량 저장/불러오기
사용자 액션 그룹 실행
사용자 액션 그룹 반복 중지
음성/부저 출력
스크립트
동적 키패드 실행
내부 문자열 변수 제어
HTTP 요청
특수 기능
조건 분기
이벤트
전역 이벤트
화면 이벤트
사용자 액션그룹
시스템 함수
시스템 함수
도형및 그래픽 편집
직선,사각형,원
표
타이틀 바
이미지
간접 이미지
리소스 관리
텍스트 리소스
색상 리소스
이미지 리소스
주소 리소스
시스템 함수
시스템 함수
원격 제어 및 네트워크 기능
PC로 원격 화면 제어
모바일 원격 제어
웹 브라우저 원격 제어
독립 실행형 원격 제어 파일 생성
원격 데이터 액세스
원격 스크립트
Web API
Web FTP
편의 기능
겹친 위젯 선택
겹친 위젯 위치 변경
위젯 겹침 설정
특수 문자 입력
그룹화/해제
사이트 도구
최근 바뀜
미디어 관리자
사이트맵
로그인
문서 도구
문서 보기
이전 판
역링크
Fold/unfold all
맨 위로
추적:
이 문서는 읽기 전용입니다. 원본을 볼 수는 있지만 바꿀 수는 없습니다. 문제가 있다고 생각하면 관리자에게 문의하세요.
====== 위젯과 목적지 (내부 영역, 수식 설명) ====== 이 문서는 Comfile Studio에서 사용하는 위젯, 목적지, 내부 변수, 내부 메모리, 수식/조건식의 개념을 설명합니다. ===== 위젯이란? ===== 위젯(Widget)은 화면에서 사용자가 직접 조작하거나 값을 표시하는 기능 요소입니다. 예: * 제어 버튼 * 램프 * 숫자 표시기 * 입력창 * 슬라이더 {{ :comfilestudio:fomula:objectlist.png?nolink |}} 위젯은 단순한 그림이 아니라, 외부 장치 또는 내부 변수와 연결되어 실제 동작을 수행하는 제어 요소입니다. ===== 목적지란? ===== 위젯은 반드시 “목적지”와 연결되어야 동작합니다. 목적지는 위젯이 읽거나 쓰는 대상입니다. {{ :comfilestudio:fomula:internal_external.png?nolink |}} 목적지는 2가지 종류가 있습니다. * 내부 영역 (HMI 또는 PC 내부) * 외부 영역 (PLC 등 외부 장치) ====== 내부 영역 ====== 내부 영역은 HMI 또는 PC 내부에 존재하는 기억 공간입니다. 외부 장치 없이도 사용할 수 있습니다. ※ 내부 영역은 기본적으로 휘발성입니다. 전원이 꺼지면 값이 보존되지 않습니다. ===== 내부 변수 ===== 내부 변수는 별도의 선언 없이 이름만 사용하면 바로 생성됩니다. 예: 모터상태 Motor1 온도값 특징: * 모든 내부 변수는 전역 변수입니다. * 같은 이름이면 모든 화면에서 공유됩니다. * 64비트 정수 및 실수 저장 가능 * 대소문자 구분 * 한글 사용 가능 이름 규칙: * 첫 글자는 문자 또는 언더바 * 숫자로 시작 불가 * 공백 사용 불가 좋은 예: 모터상태 Motor1 나쁜 예: 123abc 대한 민국 (공백 존재) ===== 내부 메모리 ===== 내부 메모리는 번지를 지정하여 사용하는 배열형 기억 공간입니다. {{ :comfilestudio:fomula:arrayexplain.png?nolink |}} 기본 범위: 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 언어와 동일): <code> < <= == >= > != && || </code> 예: <code> 모터상태 > 1 히터1 == 0 히터1 != 0 </code> ===== 산술 연산자 ===== <code> + - * / % </code> 예: <code> 모터상태 + 1 </code> ===== 비트 쉬프트 ===== <code> << >> </code> 예: <code> 모터상태 << 2 </code> ===== 자주 발생하는 질문 ===== Q. 위젯이 동작하지 않습니다. → 목적지가 설정되지 않았거나, 외부 장치가 응답하지 않는 경우입니다. Q. 값이 전원 껐다 켜면 사라집니다. → 내부 영역은 기본적으로 휘발성입니다. Q. 여러 화면에서 같은 변수를 쓰고 싶습니다. → 내부 변수는 전역 변수이므로 같은 이름을 사용하면 됩니다. ---- 키워드: Comfile Studio 위젯, 목적지 설정, 내부 변수, 내부 메모리, mem 함수, set_mem, 조건식, 수식 사용법 [[comfilestudio:index#화면 편집|상위 페이지로 가기]]