IS_NAN
Retorna TRUE quando o valor real de entrada é um número inválido (NAN — Not A Number). É uma função (sem estado; retorno imediato).
Biblioteca: HI_STD · Namespace: HILS · Tipo: função
Nota
Esta função foi classificada como obsoleta e é mantida na biblioteca apenas para compatibilidade com aplicações legadas.
Para novos projetos utilize a função IS_VALID, disponível na biblioteca IEC_STD.
Note que IS_VALID retorna TRUE quando o valor é válido (lógica invertida em relação a IS_NAN).
Função
IS_NAN
+--------------+
| |
ANY_REAL ----|in |---- BOOL
| |
+--------------+
A função avalia o parâmetro in e retorna TRUE se ele representar um valor real
inválido (NAN), resultante, por exemplo, de operações matemáticas indefinidas como a
divisão por zero. Caso o valor seja um número real válido, retorna FALSE.
Parâmetros
Nome |
Direção |
Tipo |
Padrão |
Faixa / Unidade |
Descrição |
|---|---|---|---|---|---|
in |
IN |
REAL |
— |
— |
Valor real a ser validado. |
Retorno / Saídas
Tipo |
Descrição |
|---|---|
BOOL |
TRUE se |
Observações
Função obsoleta: prefira IS_VALID (IEC_STD) em novos projetos, atentando para a inversão da lógica de retorno.
Ver também
Exemplo
Clique aqui para baixar a tabela de variáveis
Código ST
VAR
r_val : REAL := 3.14; (* Variavel a ser avaliada *)
END_VAR
(* Exemplo de ativação da função dentro da POU *)
(* ... *)
IF NOT (HILS.IS_NAN(r_val)) THEN
// r_val é um valor válido
r_val := r_val / 0;
IF (HILS.IS_NAN(r_val)) THEN
// r_val é um valor inválido
// erro
END_IF;
END_IF;