Table of Contents
문자열 관련 기능
이 문서는 Comfile Studio에서 문자열을 저장, 표시, 전송하는 방법을 설명합니다.
문자열은 외부 장치(PLC) 또는 내부 메모리, 내부 문자열 변수에 저장할 수 있습니다.
문자열이란?
문자열(String)은 유니코드 데이터의 집합이며, 반드시 마지막에 종료코드 0이 포함되어야 합니다.
한 문자당 1워드를 사용합니다.
예: “ABC”
즉, 총 4워드로 구성됩니다.
외부 장치에 문자열 기록하기
제어 버튼을 눌렀을 때 외부 장치(PLC)에 문자열을 기록하는 방법입니다.
설정 예:
- 목적지 종류 → 문자열 주소
- 시작 주소 → D3
- 출발지 → 텍스트 직접 지정
- 내용 → “COMFILE”
버튼을 터치하면 다음과 같이 저장됩니다.
D3 : 'C' D4 : 'O' D5 : 'M' D6 : 'F' D7 : 'I' D8 : 'L' D9 : 'E' D10 : 0
실제 저장값:
D3 : 0x0043 D4 : 0x004F D5 : 0x004D D6 : 0x0046 D7 : 0x0049 D8 : 0x004C D9 : 0x0045 D10 : 0
내부 메모리에 문자열 기록하기
외부 장치 대신 내부 메모리에도 문자열을 저장할 수 있습니다.
내부 메모리 시작 주소를 0으로 지정하면:
0 : 'C' 1 : 'O' 2 : 'M' 3 : 'F' 4 : 'I' 5 : 'L' 6 : 'E' 7 : 0
※ 실제로는 각 위치에 유니코드 값이 저장됩니다.
내부 문자열 변수
내부 문자열 변수는 문자열 전용 저장 공간입니다.
- 반드시 $로 시작해야 합니다.
- 대소문자 구분
- 한글 사용 가능
예:
$str1 = "아름다운우리나라"
내부 변수/내부 메모리는 숫자 저장용이고, 내부 문자열 변수는 문자열 전용 공간입니다.
내부 문자열 변수를 외부 장치에 기록하기
버튼을 누르면 내부 문자열 변수 $str1의 내용이 지정한 PLC 주소에 기록됩니다.
스크립트에서 문자열 사용
멀티 액션 버튼에서 <스크립트>를 추가합니다.
예:
예시 수식:
$a = $b $a = $b + $c $a = "korea" + $b
잘못된 예:
$a = 3 (문자열 변수에 숫자 대입 불가) a = "b" (숫자 변수에 문자열 대입 불가) $a = $b + 2 (문자열 + 숫자 결합 불가)
문자열 관련 함수
- text_to_num(문자열) → 문자열을 숫자로 변환
- num_to_text_int(수치) → 정수형 문자열 변환
- num_to_text_int(수치,자리수) → 자리수 고정 정수 문자열
- num_to_text_hex(수치) → 16진수 문자열
- num_to_text_hex(수치,자리수) → 자리수 고정 16진수 문자열
- num_to_text_dec(수치,소수자리수) → 소수 자리 고정 문자열
예:
text_to_num("32.1") → 32.1
num_to_text_int(32.1) → "32"
num_to_text_hex(10) → "A"
멀티액션에서 내부 문자열 변수 제어
<내부 문자열 변수 제어> 액션을 통해
- 문자열 대입
- 삽입
- 삭제
- 형변환
등을 수행할 수 있습니다.
키워드: Comfile Studio 문자열, 내부 문자열 변수, 문자열 PLC 기록, text_to_num, num_to_text, 유니코드 저장, 문자열 주소
