MOD
Calcula o resto da divisão de dois valores. É uma função pura (sem estado; retorna o resultado diretamente).
Biblioteca: IEC_STD · Namespace: IEC · Tipo: função
Função
MOD
+-------------+
ANY_NUM ----|IN1 |---- ANY_NUM
| |
ANY_NUM ----|IN2 |
+-------------+
Esta função aceita como parâmetros dois valores do grupo ANY_NUM
(ver Grupos de tipos de dados para a lista completa de tipos suportados).
O tipo de retorno é sempre o mesmo dos tipos de entrada.
Nota
Todos os parâmetros de entrada e o valor de retorno devem ser do mesmo tipo de dados.
Parâmetros
Nome |
Direção |
Tipo |
Faixa / Unidade |
Descrição |
|---|---|---|---|---|
IN1 |
IN |
ANY_NUM |
— |
Operando 1 (dividendo). |
IN2 |
IN |
ANY_NUM |
— |
Operando 2 (divisor). |
Retorno / Saídas
Tipo |
Faixa / Unidade |
Descrição |
|---|---|---|
ANY_NUM |
— |
Resto da divisão de |
Observações
O firmware do equipamento pode não suportar todos os tipos de dados definidos no padrão IEC 61131-3. Consulte Recursos dependentes de implementação da norma IEC61131-3 para restrições de implementação específicas de cada firmware.
Exemplo
Clique aqui para baixar a tabela de variáveis
Código ST
VAR
value_inp1 : INT; (* operando 1 *)
value_inp2 : INT; (* operando 2 *)
value_out : INT; (* valor resultante da função matemática *)
END_VAR
(* Exemplo de ativação da função dentro da POU *)
(* ... *)
value_inp1 := 100; (* primeiro operando *)
value_inp2 := 3; (* segundo operando *)
value_out := MOD(IN1 := value_inp1, IN2 := value_inp2); (* calcula o resto da divisão *)
(* resultado value_out = 1 *)
(* ... *)
value_out := MOD(value_inp1, 19); (* calcula o resto da divisão *)
(* resultado value_out = 5 *)
(* ... *)
value_out := MOD(-100, 19); (* calcula o resto da divisão *)
(* resultado value_out = -5 *)
(* ... *)