Caminho:  Equipamentos (Dispositivos) > RUW100 > Ladder > Math > Math Basic >

NEG

Oposto Matemático

Previous pageReturn to chapter overviewNext page

Bloco que calcula o oposto (ou seja, o produto com -1) de um valor passado por Value, armazenando o resultado em Result.

 

Representação Ladder

 

NEG_block

 

Estrutura do Bloco

 

Tipo de Variável

Nome

Tipo de Dado

Descrição

VAR_INPUT

EN

BOOL

Habilitação do bloco

Value

BYTE USINT SINT WORD UINT INT DWORD UDINT DINT REAL

Variável de referência para a operação

VAR_OUTPUT

Done

BOOL

Fim de operação

Result

BYTE USINT SINT WORD UINT INT DWORD UDINT DINT REAL

Variável que armazena o resultado da operação

 

Funcionamento

 

Este bloco, quando tem um valor TRUE em EN, envia para a saída Result o oposto da variável Value. Não havendo erros, a variável Done é setada. Caso haja algum erro na operação, Done não é setado, permanecendo em estado FALSE, enquanto Result permanece com seu valor inalterado.

 

Quando EN possui valor FALSE, Result permanece inalterado e Done permanece em FALSE.

 

Fluxograma do Bloco

 

NEG_flowchart

 

Exemplo em Ladder

 

NEG_example01

 

O exemplo acima calcula o oposto da variável VALUE, cujo valor inicial é 21, armazenando o resultado final, -21, em RESULT.

 

NEG_example02

 

O exemplo acima calcula o oposto da variável VALUE, cujo valor inicial é -56, armazenando o resultado final, 56, em RESULT.

 

NEG_example03]

 

O exemplo acima calcula o oposto da variável VALUE, cujo valor inicial é -128. O resultado final, 128, não pode ser armazenado em RESULT, pois ele está fora dos limites de valores aceitos pelo tipo SINT. Por isso, RESULT permanece inalterado e a saída fica desabilitada.

 

Exemplo em ST

 

 O exemplo abaixo, exibe as instruções para aplicação do exemplo acima na linguagem ST.

 

 

VAR

   VALUE : SINT := -56;

   RESULT : SINT;

END_VAR

 

RESULT := FB_NEG(EN:=DI1, Value:=VALUE, Done=>DO1);