부호 없는 DOUBLE INTEGER를 STRING으로 변환
UDINT_TO_STRING 펑션은UDINT 데이터 형식의 값을 STRING 데이터 형식의 값으로 변환합니다.
오른쪽으로 정렬된 10진수 형식의 결과 문자열이 생성됩니다. 이 결과 문자열의 선행 스페이스는 사전 정의된 최대 문자수로 채워집니다.입력
출력
FP-e 또는 FP0와 같이 값이 작은 PLC가 있는 STRING 데이터 형식을 사용하는 경우, 결과 문자열의 길이가 소스 문자열의 길이와 같거나 큰 지 확인하십시오.
사용된 펑션 |
정의된 String1 |
결과 |
---|---|---|
String1:= UDINT_TO_STRING(-12345678) |
STRING[2] |
'78' |
STRING[4] |
'5678' |
|
STRING[6] |
'345678' |
|
STRING[8] |
'12345678' |
|
STRING[10] |
||
STRING[12] |
'
|
|
등등 |
이 펑션 프로그램 시 사용한 모든 입력과 출력 변수는 POU 헤더에서 선언되었습니다. 모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.
VAR
input_string: UDINT:=12345678;
(*example value*)
result_string: STRING[11]:='';
(*result: here '12345678'*)
END_VAR
UDINT 데이터 형식의 input_value 입력 변수는 12345678 값으로 초기화됩니다. result_string 출력 변수는 STRING[11] 데이터 형식의 출력 변수입니다. 최대 11문자를 저장할 수 있습니다. input_value 변수를 사용하지 않고 본문에서 기능 입력 정수에 직접 정수를 입력할 수 있습니다.
DINT 데이터 형식의 input_value가 STRING[11]로 변환됩니다. 변환된 값은 result_string에 작성됩니다. input_value 변수가 12345678이면 result_string에 '12345678'이 표시됩니다.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_F,UDINT_TO_STRING!,,14,1,24,3,,?D?C);
B(B_VARIN,,input_string,12,1,14,3,);
B(B_VAROUT,,result_string,24,1,26,3,);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
result_string:=UDINT_TO_STRING(input_value);