IEC 61131-3 e a programação CLP: qual sua importância?
Automação Industrial

IEC 61131-3 e a programação CLP: qual sua importância?

A norma IEC 61131-3 é um padrão internacional muito importante no campo da automação industrial e estabelece diretrizes para a programação de Controladores Lógico Programáveis (CLPs).

Essa padronização ajuda a aumentar a eficiência dos sistemas, possibilitando que equipamentos de fabricantes distintos atuem de forma harmônica.

Neste artigo, você entenderá a importância da norma, sua estrutura, finalidades e as principais linguagens que ela define.

Bom aprendizado!

O que é a norma IEC 61131-3?

A IEC 61131-3 é uma das partes da norma internacional IEC 61131 e padroniza o tipo de linguagem que deve ser adotado na programação de Controladores Lógico Programáveis (CLPs).

Seguida em todo o mundo, a diretriz ajuda a garantir a interoperabilidade, segurança, bom funcionamento e manutenção descomplicada de equipamentos e sistemas de automação industrial.

Para isso, define 5 linguagens de programação padrão para estruturar programas e serem utilizadas em CLPs de qualquer fabricante.

Como funciona a IEC 61131-3?

A IEC 61131-3 atua como um guia para criar e estruturar programas de CLP, definindo as linguagens de programação e os métodos para controle e automação. É essencial para o trabalho na indústria, pois facilita a elaboração de programas claros, modulares e interoperáveis.

Com uma abordagem padronizada, especificando como organizar e estruturar códigos, a norma permite aos engenheiros e programadores desenvolverem e manterem sistemas complexos de forma mais eficiente e consistente.

Ela permite a criação de blocos de função reutilizáveis, garantindo a compatibilidade e a portabilidade entre diferentes sistemas e ferramentas de desenvolvimento.

pessoa programando em computador representando a norma iec 61131 3

Estrutura da norma

A norma IEC 61131-3 tem aproximadamente 200 páginas de texto e dezenas de tabelas, sendo dividida em duas grandes partes: Elementos Comuns e Linguagens de Programação. Traz seções que detalham aspectos específicos da programação de CLPs, como:

  • Definições e Escopo: estabelece os termos técnicos, conceitos e o alcance da norma, garantindo uma compreensão comum entre os profissionais da área;
  • Linguagens de Programação: especifica as principais linguagens de programação e suas características;
  • Modelos de Dados: define como os dados devem ser organizados e manipulados, incluindo os princípios básicos de design e implementação;
  • Funcionalidades dos Controladores: estabelece as capacidades que os controladores devem suportar, e explica a criação e o uso de funções e blocos de função.

Qual é o objetivo da IEC 61131-3?

O principal objetivo da norma é padronizar a programação de Controladores Lógico Programáveis para assegurar a compatibilidade e a eficiência de sistemas de controle industrial.

Seu papel é fornecer metodologias de criação de lógicas de programação estruturadas e modulares, de forma que seja possível a organização dos programas em partes gerenciáveis.

Importância da IEC 61131-3 para a programação CLP

A norma é considerada um avanço para o desenvolvimento dos trabalhos de automação industrial em todo o mundo, visto que é independente de empresas e padroniza as linguagens de programação de CLPs.

Não se trata de uma diretriz engessada, mas passível de evolução ao longo dos anos, conforme o natural progresso da tecnologia.

Suas áreas de aplicação são vastas: a IEC 61131-3 já atende a diferentes produtos motion control, pacotes SCADA, sistemas de controle baseados em PC e muito mais, além dos CLPs convencionais, é claro.

Isso contribui para que sistemas e componentes trabalhem juntos de maneira eficaz; facilita o aprendizado e o uso para programadores e engenheiros; e melhora a qualidade e a consistência dos programas de controle.

banner para CLPs da Kalatec

Elementos fundamentais definidos na IEC 61131-3

A norma IEC 61131-3 traz vários elementos fundamentais para a programação de CLPs, que garantem que os programas sejam estruturados de maneira clara, permitindo o controle e a automação industrial:

  • Variáveis – dados de Entradas e Saídas (que entram e saem do CLP), informações internas que armazenam valores temporários, e informações de estado, que representam o status do sistema em diferentes momentos;
  • Estrutura do Programa – organização dos programas em diferentes blocos e funções;
  • Funções e Blocos de Função – componentes reutilizáveis para a implementação de lógica de controle. Enquanto as funções se referem a operações que realizam cálculos ou outras ações específicas e retornam um valor, os Blocos de Função encapsulam um conjunto de operações, possibilitando modularidade e reutilização do código;
  • Programas e Tarefas – Os programas são um conjunto de instruções e blocos de função que define a lógica de controle. As tarefas definem como e quando os programas devem ser executados, incluindo a periodicidade e o tempo de execução; etc.

Quais são as principais linguagens de programação segundo a norma IEC 61131-3?

A diretriz estabelece cinco principais linguagens de programação para os CLPs, separadas em duas modalidades: linguagens textuais e linguagens gráficas.

Linguagens textuais

Como o nome sugere, essas linguagens escrevem código usando texto, possibilitando a programação dos CLPs.

São flexíveis e bastante aplicadas em atividades da automação industrial, pois são ideais para atuar com algoritmos complexos e processamento de dados, oferecendo diferentes níveis de controle.

Texto Estruturado (ST)

Essa linguagem textual, de características modernas e semelhante a linguagens como Pascal ou C, também é chamada de Structured Text (ST).

Pode atuar com diferentes tipos de valores digitais e analógicos, possui estrutura em blocos e contém instruções interacionais (FOR, WHILE e REPEAT) e condicionais (IF-THEN-ELSE e CASE OF).

Muito utilizada em aplicações de alto nível, permite a  administração de dados como duração de tempo, datas e horas. É especialmente útil em sistemas que envolvem manipulação de dados, operações matemáticas, Inteligência Artificial, etc.

Lista de Instruções (IL)

Esse tipo de programação em CLP também é conhecido como Instruction List (IL) e aparece de forma sequencial. Atende diretamente aos comandos do computador e geralmente é aplicado em partes de um sistema ou em sistemas de pequeno porte, manipulando diretamente o hardware do CLP.

Sua estrutura contém um acumulador para armazenar resultados parciais. Neste modelo, cada instrução fica em uma linha e deve ser precedida de um rótulo (etiqueta) e, depois, devem ser inseridos dois pontos (:).

Aceita a inclusão de modificadores, comentários e/ou linhas em branco. Não é tão aplicada como as demais linguagens, pois tem baixa legibilidade e suporte em sistemas modernos.

Linguagem gráfica

Esse tipo de linguagem se refere a formas visuais de programação de CLPs, que usa ícones e diagramas para facilitar a criação de programas para automação industrial. Com ela, é possível representar processos e lógicas de controle de forma simplificada.

Diagrama Ladder (LD)

Linguagem mais popular, o Diagrama Ladder ou Ladder Diagram (LD) recebe esse nome pois se assemelha a uma escada, com barras verticais e paralelas.

Usa lógica de relés e contatos elétricos, gerando circuitos de comando. Com funcionamento simples, é o modelo mais indicado para os iniciantes em programação.

Nesta linguagem, cada linha representa uma ação específica controlada pelo CLP, começando com uma ou mais entradas (contatos) que resultam em uma saída (bobina).

É amplamente utilizada na indústria e ajuda a mostrar, por exemplo, a lógica para acionamento de um motor quando um botão é pressionado.

Diagrama de Blocos Funcionais (FBD)

Linguagem famosa na Europa, também é conhecida pelo seu nome em inglês Function Block Diagram (FBD). A partir de blocos funcionais interligados, permite um desenvolvimento hierárquico, adequada para aplicações com troca de dados entre elementos de controle.

Flexível, apresenta blocos elementares de funções, com entradas e saídas conectadas no bloco por meio de linhas. Permite o uso de blocos pré-programados, como contadores, lógicas booleanas e temporizadores.

Além disso, blocos podem ser criados da maneira que o usuário quiser, com a técnica de encapsulamento. É especialmente útil para visualização e criação de processos de controle mais complexos e modulares.

Sequenciamento gráfico de funções 

Chamada também de Sequential Function Chart (SFC) ou Grafcet, esta linguagem gráfica é aplicada em operações sequenciais, descrevendo atividades paralelas e alternativas. Exibe uma representação (em forma de diagrama) das sequências do processo controlado.

Ela divide um problema de controle, proporcionando uma visão global da operação e facilitando os diagnósticos. É uma boa opção para ser usado em CLPs de grande porte.

banner Kalatec

Conclusão

A norma IEC 61131-3 é fundamental para a programação de CLPs, estabelecendo um padrão que melhora a eficiência, a interoperabilidade e a qualidade dos sistemas de automação industrial.

Ao definir linguagens de programação textuais e gráficas, a norma facilita tanto a implementação quanto a manutenção de sistemas complexos.

E o amplo uso de CLPs em todo o mundo torna necessária essa padronização que auxilia a correta programação, trazendo inúmeros benefícios para o negócio, como elevação da disponibilidade do maquinário.

Para saber mais sobre programação de CLP e assuntos relacionados, leia outros conteúdos aqui no blog, torne-se cliente Kalatec e participe de nossos treinamentos periódicos, tanto teóricos quanto práticos.

Um grande abraço e até mais!

Edilson Cravo

Edilson Cravo

Engenheiro de Aplicação da KALATEC, 23 anos de experiência com mais de 5000 visitas únicas em Indústrias. Especialista em Automação Industrial e apaixonado por Servos Motores, foi treinado nas fábricas EMERSON MOTION CONTROL, YASKAWA, WEG, DELTA, HNC, LEADSHINE e ESTUN. Foi consultor de projetos no Instituto Nuclear Brasileiro, Embraer, Rede Globo, USP (Projeto Inspire) entre outros.