Blocos Funcionais
Comparação
- EQ: EQUAL - IGUAL
- NE: NOT EQUAL - DIFERENTE
- LT - LESS THAN - MENOR QUE
- LE - LESS OR EQUAL - MENOR OU IGUAL
- GT - GREATER THAN - MAIOR QUE
- GE - GREATER OR EQUAL - MAIOR OU IGUAL
Tipos de dados suportados para as comparações
________
| COMP |
|-----------------------|EN |
| |----- Resultado
Valor_A ----| |
Valor_B ----|________|
Os blocos de comparação possuem três entradas e uma saída, sendo elas:
- EN: Entrada do tipo
bool
, que tem como função habilitar a comparação; - Resultado: Saída do tipo
bool
, que expressa o resultado da operação de comparação entre as duas entradasValor_A
eValor_B
; - Valor_A e Valor_B: Valores de comparação. Podem ser de vários tipos: BOOL, BYTE, WORD, DWORD, SINT, USINT, INT, UINT, DINT, UDINT, REAL, LREAL, TIME, DATE, TIME_OF_DAY, DATE_AND_TIME e STRING.
Podemos representar o comportamento do bloco COMP da seguinte forma:
O blocoCOMP
representa uma das operações lógicas de comparação.
1. Função EQ - EQUAL - IGUAL
2. Função NE - NOT EQUAL - DIFERENTE
________
| NE |
|-----------------------|EN |
| |----- Diferente
Valor_A ----| |
Valor_B ----|________|
3. Função LT - LESS THAN - MENOR QUE
________
| LT |
|-----------------------|EN |
| |----- Menor_Que
Valor_A ----| |
Valor_B ----|________|
4. Função LE - LESS OR EQUAL - MENOR OU IGUAL
________
| EQ |
|-----------------------|EN |
| |----- Menor_ou_Igual
Valor_A ----| |
Valor_B ----|________|
5. Função GT - GREATER THAN - MAIOR QUE
________
| GT |
|-----------------------|EN |
| |----- Maior_Que
Valor_A ----| |
Valor_B ----|________|
6. Função GE - GREATER OR EQUAL - MAIOR OU IGUAL
________
| GE |
|-----------------------|EN |
| |----- Maior_ou_Igual
Valor_A ----| |
Valor_B ----|________|
Aritméticos
- ADD: Adição
- SUB: Subtração
- ADD/SUB TIME: Adição e Subtração de tempo
- MUL: Multiplicação
- DIV: Divisão
- MOD: Módulo - Resto da Divisão
Tipos de dados suportados para as operações aritméticas
Os tipos de dados suportados pelas entradas Valor_A
e Valor_B
são:
BYTE, WORD, DWORD, SINT, USINT, INT, UINT, DINT, UDINT, REAL e LREAL;
________
|OPERACAO|
|-----------------------|EN |
| |----- Resultado
Valor_A ----| |
Valor_B ----|________|
As entradas Valor_A
e Valor_B
devem ser do mesmo tipo, que é o tipo do Resultado
.
O bloco OPERACAO
representa uma das operações aritméticas.
1. Função ADD - Adição
_________
| ADD |
|-----------------------|EN |
| |----- SOMA
Valor_A ----| |
Valor_B ----|_________|
2. Função SUB - Subtração
_________
| SUB |
|-----------------------|EN |
| |----- SUBTRACAO
Valor_A ----| |
Valor_B ----|_________|
3. Função ADD/SUB TIME - Adição e Subtração de tempo
_________
| ADD/SUB |
|-----------------------|EN |
| |----- ADD_SUB_TIME
Valor_A ----| |
Valor_B ----|_________|
O tipo de dado aqui suportado é apenas o tipo TIME
.
Ex: T#45s + T#50s = T#1m35s
4. Função MUL - Multiplicação
_________
| MUL |
|-----------------------|EN |
| |----- MULTIPLICACAO
Valor_A ----| |
Valor_B ----|_________|
5. Função DIV - Divisão
_________
| DIV |
|-----------------------|EN |
| |----- DIVISAO
Valor_A ----| |
Valor_B ----|_________|
Funções DIV
com os seguintes nomes:
CheckDivByte
, CheckDivWord
, CheckDivDWord
e CheckDivReal
realizam o teste no divisor para evitar divisão por zero.
6. Função MOD - Módulo - Resto da Divisão
_________
| MOD |
|-----------------------|EN |
| |----- RESTO
Valor_A ----| |
Valor_B ----|_________|
Seleção
- MOVE: Mover
- MIN: Menor valor
- MAX: Maior valor
- LIMIT: Limitadores
- SEL: Seleção
- MUX: Multiplexação
1. Função MOVE - Mover
2. Função MIN - Menor valor
________
| MIN |
|-----------------------|EN |
| |----- MENOR_VALOR
VALOR_A ----| |
VALOR_B ----|________|
3. Função MAX - Maior valor
________
| MAX |
|-----------------------|EN |
| |----- MAIOR_VALOR
VALOR_A ----| |
VALOR_B ----|________|
4. Função LIMIT - Limitadores
_________
| LIMIT |
|-----------------------|EN |
VALOR_MIN --| |
VALOR_DE_ENTRADA --| |----- VALOR_LIMITADO
VALOR_MAX --|_________|
5. Função SEL - Seleção
_________
| SEL |
|-----------------------|EN |
SELECAO --| |
ENTRADA_0 --| |----- VALOR_SELECIONADO
ENTRADA_1 --|_________|
6. Função MUX - Multiplexação
_________
| MUX |
|-----------------------|EN |
SELECAO --| |
ENTRADA_0 --| |----- VALOR_MULTIPLEXADO
ENTRADA_1 --|_________|