Conversioni STRING_TO

Informazioni generali

Per suggerimenti generici da considerare durante la conversione di tipo, consultare il capitolo Funzioni di conversione di tipo.

Definizione

Operatore IEC per le conversioni dal tipo di variabile STRING a un tipo differente.

Sintassi

STRING_TO_<tipo dati>

Specifica dei valori

Specificare l'operando di tipo STRING corrispondente allo standard IEC61131-3. Il valore deve corrispondere a una costante (letterale) valida del tipo di destinazione.

Le stringhe convertibili possono contenere:

  • Numero con prefisso del tipo (esempio: '16#FFFFFFFF')

  • Numero con caratteri di raggruppamento (esempio: '2#1111_1111')

    NOTA: Utilizzare il carattere di sottolineatura, in quanto il carattere internazionale di raggruppamento (spazio sottile) del peso e della misura non è consentito.
  • Numero a virgola mobile, anche in notazione esponenziale (ad esempio: '9.876' o '1.2E-34')

    NOTA: I numeri a virgola mobile non sono convertibili. La virgola viene trattata come un carattere seguente e quindi troncata.
  • Specifica di ora, ora del giorno e data con prefisso e dimensioni (esempio: 'T#2h', 'DT#2019-9-9-12:30:30.9')

  • Valori infiniti (esempio: '1.7E+400')

  • Carattere aggiuntivo dopo un numero (esempio: '2m' o '3.14') sono troncati. Non sono consentiti caratteri aggiuntivi prima di un numero.

  • Spazi precedenti (esempio: ' 3.14')

L'operando deve rappresentare un valore valido del tipo dati di destinazione.

NOTA: Se il tipo di dati dell'operando non corrisponde al tipo di destinazione, oppure se il valore supera l'intervallo del tipo dati di destinazione, il risultato dipende dal tipo di processore ed è quindi indefinito.

Le conversioni da tipi di maggiori dimensioni a tipi di dimensioni minori può causare la perdita di informazioni.

 ATTENZIONE
PERDITA DI DATI
Quando si convertono tipi di dati discordanti o quando il valore da convertire è più grande del tipo dati di destinazione, accertarsi che il risultato venga convalidato nell'applicazione.
Il mancato rispetto di queste istruzioni può provocare infortuni o danni alle apparecchiature.

Esempio in IL

Esempio

Risultato conversione

LD 'TRUE'
STRING_TO_BOOL
ST b

TRUE

Esempi in ST

Esempio

Risultato conversione

b := STRING_TO_BOOL('TRUE');

TRUE

w := STRING_TO_WORD('abc34');

0

w := STRING_TO_WORD('34abc');

34

t := STRING_TO_TIME('T#127ms');

T#127ms

r := STRING_TO_REAL('1.234');

1.234

bv := STRING_TO_BYTE('500');

244

Esempio in FBD

Esempio

Risultato conversione

TRUE