WORD_TO_STRING

WORD in STRING

La funzione WORD_TO_STRING converte un valore del tipo di dato WORD in un valore del tipo di dato STRING.

Genera una stringa risultato in rappresentazione decimale allineata a destra, riempita con spazi iniziali fino al numero massimo predefinito di caratteri.

Parametri

Ingresso

Unnamed input (WORD)
Tipo di dato di ingresso

Uscita

Unnamed output (STRING)
Risultato della conversione

Note

In caso di utilizzo del tipo di dato STRING con PLC piccoli come FP-e o FP0, assicuratevi che la lunghezza della stringa risultato sia uguale o maggiore della lunghezza della stringa di origine.

Esempio

Ingresso

Uscita definita come

Risulta in

16#ABCD

STRING[1]

'D'

STRING[2]

'CD'

STRING[3]

'BCD'

STRING[4]

'ABCD'

STRING[5]

'0ABCD'

STRING[6]

'00ABCD'

e così via...

Esempio

Intestazione del POU

Tutte le variabili di ingresso e uscita utilizzate per programmare questa funzione sono state dichiarate nell'intestazione del POU. La stessa intestazione del POU è utilizzata per tutti i linguaggi di programmazione.

	VAR
		input_value: WORD:=0;
		result_string: STRING;

La variabile di ingresso input_value del tipo di dato WORD è inizializzata dal valore 16#ABCD. La variabile di uscita result_string presenta il tipo di dato STRING[6]. Può memorizzare un massimo di 6 caratteri. Anziché utilizzare la variabile input_value, potete inserire una costante direttamente nel contatto di ingresso della funzione nel corpo.

Corpo del POU

input_value del tipo di dato WORD viene convertito in STRING[6]. Il valore convertito viene scritto in result_string. Quando la variabile input_value = 16#ABCD, result_string mostra '00ABCD'.

Corpo LD

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 2 ;
        NETWORK_BODY
B(B_F,WORD_TO_STRING!,Instance,11,0,21,2,,?D?C);
B(B_VARIN,,input_value,9,0,11,2,);
B(B_VAROUT,,result_string,21,0,23,2,);
L(1,0,1,2);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Corpo ST

result_string:=WORD_TO_STRING(input_value);

Corpo IL

Esempio

Intestazione del POU

Questo esempio illustra come creare una STRING[4] dal tipo di dato WORD in cui la parte iniziale della stringa '16#' sia eliminata.

Tutte le variabili di ingresso e uscita utilizzate per programmare questa funzione sono state dichiarate nell'intestazione del POU.La stessa intestazione del POU è utilizzata per tutti i linguaggi di programmazione.

	VAR
		input_value: WORD:=16#1234;
			(*example value*)
		result_string1: STRING[7]:='';
			(*result: here '0001234'*)
		result_string: STRING[4]:='';
			(*result: here '1234'*)
END_VAR

In questo esempio sono dichiarate sia una variabile di ingresso input_value del tipo di dato WORD sia una variabile di uscita result_string del tipo di dato STRING[4].

Corpo del POU

Nell'esecuzione dell'operazione in questione, la funzione standard RIGHT viene collegata alla funzione WORD_TO_STRING. RIGHT crea una stringa di caratteri giustificata a destra di lunghezza L.

Nell'esempio, la stringa di uscita della funzione WORD_TO_STRING viene aggiunta all'ingresso della funzione RIGHT. All'ingresso L di RIGHT, la costante INT 4 determina la lunghezza del valore STRING da sostituire. Partendo dalla variabile input_value = 0001234, result_string 1234 risulta dalla conversione del tipo di dato e dalla funzione RIGHT.

Corpo LD

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 2 ;
        NETWORK_BODY
B(B_F,WORD_TO_STRING!,Instance,11,0,21,2,,?D?C);
B(B_VARIN,,input_value,9,0,11,2,);
B(B_VAROUT,,result_string1,21,0,23,2,);
L(1,0,1,2);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_VARIN,,result_string1,10,2,12,4,);
B(B_VAROUT,,result_string,17,2,19,4,);
B(B_F,RIGHT!,Instance,12,1,17,5,,?DIN?DL?C);
B(B_VARIN,,4,10,3,12,5,);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Corpo IL

L'ultima revisione: 2021-06-22Feedback su questa paginaPanasonic hotline