Instruções TIA Portal

Operações de Conversão
Escalonamento & Tipos

A conversão de dados é a ponte entre o mundo físico e o código digital. Domine o escalonamento de sinais analógicos e a transformação de tipos de dados.

O que são operações de conversão no TIA Portal?

As operações de conversão permitem transformar um valor de um tipo de dados para outro (ex: um Inteiro para um Real) ou manipular a precisão dos números de vírgula flutuante. Incluem também ferramentas de normalização e escalonamento, indispensáveis para processar sinais analógicos de sensores industriais.

O TIA Portal oferece instruções modernas e de alto desempenho como SCALE_X e NORM_X que substituem vantajosamente os antigos blocos SCALE/UNSCALE dos sistemas S7-300, oferecendo maior flexibilidade e melhor precisão matemática.

Conversão de Tipo

Transformação e arredondamento de formatos numéricos

CONVERT — Converter valor

CONV

O que faz

Converte um valor de um tipo de dados de origem para um tipo de dados de destino. Gere conversões entre inteiros, reais, caracteres, tempo e strings.

Quando usar

Preparar um inteiro para cálculos matemáticos complexos convertendo-o para Real, ou converter um código de erro para String para exibição em HMI.

Dicas Pro

No LAD, clique nos tipos de dados do bloco para selecionar a origem e o destino.

No SCL: myReal := INT_TO_REAL(myInt);

Cuidado com perdas de precisão ao converter tipos grandes para tipos mais curtos.

ROUND / TRUNC

ROUND

O que fazem

ROUND arredonda um número flutuante para o inteiro mais próximo. TRUNC simplesmente remove a parte decimal (truncagem).

Quando usar

Exibir uma medição física como um inteiro simples, ou converter um resultado de cálculo Real para um índice de array (Int).

Dicas Pro

Se a parte decimal for exatamente .5, ROUND arredonda para o inteiro par mais próximo (norma IEC).

TRUNC é preferível se pretender apenas ignorar os decimais sem cálculo de arredondamento.

Ambos aceitam Real/LReal e devolvem geralmente um DInt.

CEIL / FLOOR

CEIL

O que fazem

CEIL (Teto) gera o inteiro superior ou igual. FLOOR (Chão) gera o inteiro inferior ou igual.

Quando usar

Calcular o número de caixas necessárias (arredondar sempre para cima com CEIL).

Dicas Pro

CEIL(10.1) = 11 ; FLOOR(10.9) = 10.

Essencial para algoritmos de logística.

Útil para garantir que um valor permaneça em limites inteiros estritos.

Escalonamento (Scaling)

Tratamento de sinais analógicos e grandezas físicas

NORM_X — Normalizar

NORM_X

O que faz

Transforma um valor situado num intervalo [MIN..MAX] para um valor normalizado entre 0.0 e 1.0. É a primeira etapa do tratamento analógico.

Quando usar

Ler uma entrada analógica bruta (ex: 0-27648) e transformá-la numa percentagem.

Dicas Pro

Geralmente seguido imediatamente por um bloco SCALE_X.

Se a entrada exceder os limites, a saída excederá 0.0 ou 1.0.

Certifique-se de que MIN é diferente de MAX para evitar divisão por zero.

SCALE_X — Escalonar

SCALE_X

O que faz

Recebe um valor normalizado [0.0..1.0] e projeta-o num intervalo físico definido por MIN e MAX (ex: 0-100°C).

Quando usar

Converter o resultado de NORM_X numa unidade de engenharia legível pelo operador.

Dicas Pro

A combinação NORM_X + SCALE_X é o padrão Siemens moderno.

Permite mudar gamas de sensores facilmente.

Também pode ser usado para o inverso: enviar um setpoint físico para uma saída analógica.

Instruções Legacy

Compatibilidade S7-300 (FC105 / FC106)

SCALE / UNSCALE

O que faz

Antigos blocos (Legacy) que efetuam a conversão direta num único passo.

Quando usar

Manutenção de programas migrados do Step 7 Classic.

Consejos Pro

SCALE corresponde ao antigo FC105.

Utilize BIPOLAR para sinais negativos (+/- 10V).

Prefira NORM_X/SCALE_X para novos desenvolvimentos.

Comparação de métodos

Escolher a instrução certa para a sua necessidade

Você quer...RecomendadaExemplo
Mudar tipo (Int -> Real)CONVERTCálculo preciso
Remover decimaisTRUNCVisualização simples
ArredondarROUNDEstatísticas
Sensor 4-20mANORM_X + SCALE_XPressão 0-16 bar
Arredondamento superiorCEILCálculo de paletes
Código S7-300SCALE (FC105)Migração

Perguntas Frequentes

Porque usar NORM_X e SCALE_X em vez de um único bloco?

Permite maior flexibilidade para filtrar ou limitar o valor normalizado antes de escaloná-lo.

Qual é o valor de entrada padrão para entradas analógicas Siemens?

Tipicamente 0 a 27648 para sinais unipolares.

Como converter para String?

CONVERT faz isso nativamente, ou use VAL_STRG para mais controlo.

Diferença entre ROUND e TRUNC?

ROUND arredonda para o mais próximo, TRUNC simplesmente corta os decimais.

Otimize os seus cálculos analógicos

T-IA Connect gerará as suas redes de escalonamento otimizadas.