STRING_TO_UDINT

Converte o conteúdo de uma STRING em um valor numérico do tipo UDINT, se possível. É uma função pura (sem estado; retorna o resultado diretamente).

Biblioteca: IEC_STD · Namespace: IEC · Tipo: função

Função

            STRING_TO_UDINT
           +-------------+
STRING ----|S            |---- UDINT
           +-------------+

Esta função tenta converter o conteúdo da STRING recebida em S para um valor numérico do tipo UDINT. Se o conteúdo não for um valor numérico válido, a função retorna 0 e seta a variável de erro de sistema com o valor HILS.FAIL (1). Esse valor pode ser obtido através da função GET_SYSTEM_ERR ( ).

Nota

É de responsabilidade do usuário garantir que o valor numérico da string possa ser representado dentro da faixa de valores suportada pelo tipo de dado UDINT.

Parâmetros

Nome

Direção

Tipo

Faixa / Unidade

Descrição

S

IN

STRING

—

String a ser convertida.

Retorno / Saídas

Tipo

Faixa / Unidade

Descrição

UDINT

—

Valor numérico da string fornecida em S, se a conversão for possível. Se a conversão falhar, retorna 0 e seta a variável de erro de sistema (SYSTEM_ERR).

Observações

  • Se a conversão falhar, a variável de erro de sistema recebe HILS.FAIL (1), obtida através de GET_SYSTEM_ERR ( ).

Exemplo

Clique aqui para baixar a tabela de variáveis

Código ST

VAR
    str   : STRING := '123'; (* string de teste *)
    i_val : UDINT;           (* valor convertido *)
END_VAR

(* Exemplo de ativação da função dentro da POU *)
(* ... *)
i_val := STRING_TO_UDINT(str);
IF (HILS.GET_SYSTEM_ERR() = HILS.SUCCESS) THEN
    (* conversão com sucesso: i_val recebe o valor 123 da string de teste *)

ELSE
    (* conversão com falha: i_val retorna 0 *)

END_IF;
(* ... *)