Escolar Documentos
Profissional Documentos
Cultura Documentos
Programação Básica
CLPs com IHM Incorporada
Apostila | Programação Básica CLPs com IHM Incorporada
ÍNDICE
GLOSSÁRIO ..................................................................................................................................................................... 19
1. O QUE É UM CLP?
Um CLP (controlador lógico programável) é um computador digital usado para automação industrial para automatizar
diferentes processos eletromecânicos. Foi introduzido para eliminar problemas como o alto consumo de energia
decorrente do uso de relés para controlar os processos de fabricação.
O controlador lógico programável recebe informações dos dispositivos e sensores de entrada conectados, processa os
dados recebidos e aciona as saídas necessárias de acordo com seus parâmetros pré-programados. Com base em suas
entradas e saídas, um CLP pode facilmente monitorar e registrar dados de tempo de execução, como temperatura
operacional, produtividade da máquina, geração de alarmes quando uma máquina falha, processos automáticos de
partida e parada e muito mais. Isso significa que os CLPs são soluções de controle de processo de fabricação robustas
e flexíveis, adaptáveis à maioria das aplicações.
• CPU: verifica regularmente o CLP para evitar erros e executa funções como operações aritméticas e
operações lógicas.
• Memória: a ROM do sistema armazena permanentemente dados fixos usados pela CPU, enquanto a RAM
armazena as informações do dispositivo de entrada e saída, valores do temporizador, contadores e outros
dispositivos internos.
• Módulo de Saída: esta seção fornece controle de saída sobre dispositivos como bombas, solenóides, luzes de
sinalização, motores e outros atuadores.
• Módulo de Entrada: uma seção de entrada que rastreia dispositivos de campo, como chaves comutadoras,
botões e sensores.
• Fonte de alimentação: embora a maioria dos CLPs trabalhe em 24 Vcc ou 220 Vca, alguns possuem fontes de
alimentação isoladas.
No passado, diferentes fabricantes tinham conceitos e metodologias de programação diferentes, o que levava à
incompatibilidade entre os sistemas os tornando menos confiáveis e consumindo muito tempo e esforço na
programação e manutenção dos sistemas de máquinas e processos. O padrão IEC fornece padrões de programação
independente do fabricante, deixando o projeto mais flexível e também podendo reutilizar parte do código em outros
programas como uma espécie de biblioteca
Com os avanços no campo da ciência e tecnologia; as técnicas de hardware e software (programação) também foram
avançadas para atender aos requisitos do mercado. A IEC 61131-3 é a terceira parte da norma IEC 61131; é um padrão
para a programação de sistemas de controle industrial com controladores lógicos programáveis. A IEC 61131-3
especifica a sintaxe e a semântica de duas linguagens de programação textuais, Lista de instruções (IL) e Texto
estruturado (ST), e duas linguagens gráficas, diagrama em Ladder (LD) e diagrama de blocos de funções (FBD) e uma
linguagem em gráfico de funções sequenciais (SFC).
LISTA DE INSTRUÇÕES
Se assemelha ao assembly que é uma linguagem muito utilizada no desenvolvimento de programa para
microcontroladores, pois define mneumônicos, é considerada uma linguegem de baixo nível. Ideal para programas com
poucas quebras no fluxo de execução, para resolução de problemas pequenos e, consequentemente, adequadas
para CLPs de mesmo porte.
TEXTO ESTRUTURADO
De forma geral a linguagem de texto estruturado é muito parecida com o PASCAL e o BASIC . Assim como PASCAL e o
BASIC, ela também não é case sensitive, o que significa que letras maiúsculas não são diferenciadas de letras
minúsculas. Os programas começam com comando PROGRAM e terminam com END_PROGRAM, a maioria dos
comandos são finalizados com ponto e virgula. Por ser uma linguagem textual e de alto nível, possibilita a solução de
problemas mais complexos, usando comandos básicos da programação como laços de repetição e condicionais.
É uma linguagem gráfica em que os elementos são interligados de forma análoga a circuitos elétricos na qual permite
ao usuário tanto utilizar blocos pré-programados, como por exemplo contadores, temporizadores e lógicas booleanas,
quanto criar seus próprios blocos da maneira que lhe for conveniente (encapsulamento). Estes blocos criados podem
ser programados em outras linguagens, e os softwares de desenvolvimento geralmente contam com bibliotecas de
funções FBD, o que faz com que a linguagem seja extremamente flexível e recomendada.
LINGUAGEM LADDER
A linguagem Ladder foi originalmente desenvolvida para construir e melhor documentar circuitos a relés, utilizados em
processos de produção. Todos os dispositivos dos circuitos elétricos como botões, válvulas e solenoides podem ser
representados em símbolos nos Diagramas Ladder, incluindo suas conexões. Por isso é uma linguagem gráfica que
muito se assemelha aos diagramas elétricos, e muitas vezes é chamada de Diagrama de Contatos.
DIAGRAMA DE FLUXO
O diagrama de fluxo sequencial – SFC (Sequential Flow Chart) também chamado de Grafcet permite descrever os
comportamentos de um automatismo em função das informações que recebe. A linguagem SFC não pretende minimizar
as funções lógicas que representam a dinâmica do sistema, pelo contrário o seu potencial reside na imposição de um
funcionamento rigoroso, evitando desta forma incoerências, bloqueios ou conflitos durante o funcionamento do mesmo.
• Oferece uma metodologia de programação estruturada, "Top-Down" (de forma descendente) que permite o
desenvolvimento conceptual do geral para o particular.
Neste treinamento iremos dar enfoque maior a programação em linguagem Ladder e diagrama de Blocos, no software
Cscape, utilizado para a programação dos controladores das famílias X e XL em modo de programação “Ladder
Avançado”.
3. LINGUAGEM LADDER
Anteriormente a evolução da eletrônica e seus componentes, a automação de máquinas e processos era realizada
através do intertravamento entre os acionamentos de relés, esse tipo de controle era conhecido como Lógica de Relés.
Com a criação dos primeiros CLPs a linguagem implementada para sua programação foi baseada na antiga lógica de
relés, nascia então a Linguagem Ladder que segue sendo utilizada para programação de CLPs até os dias atuais, pois
os princípios fundamentais da lógica de controle de máquinas e processos ainda são os mesmos.
Na programação de CLPs, Ladder é uma linguagem de programação usada para desenvolver expressões lógicas para
automatizar tarefas. Os recentes avanços na tecnologia de software significam que a programação de CLPs usando
lógica ladder foi estendida para contagem, tempo, aritmética, sequenciadores, controle PID, funções de manipulação de
dados e muito mais. Ao longo dos anos, a lógica ladder se tornou uma poderosa linguagem de programação PLC.
A lógica ladder é amplamente utilizada para programar CLPs em diversas aplicações de automação industrial, como:
• Sistema de transporte de manuseio de materiais.
• Sistemas de paletização.
• Transporte e Classificação de Pacotes Logísticos.
• Sistemas de dosagem.
• Envase e rotulagem de bebidas.
• Controle de nível em reservatórios.
A maneira simples de descrever um diagrama Ladder é como uma linguagem de programação gráfica que usa uma
série de trilhos e degraus contendo símbolos lógicos que são combinados para formar expressões de tomada de
decisão, por isso em tradução direta temos Ladder como uma Linguagem “Escada”. Os trilhos em um diagrama Ladder
representam os fios de alimentação de um circuito de controle lógico de relés. Há um trilho de alimentação de tensão
positivo no lado esquerdo e um trilho de tensão zero no lado direito. Em um diagrama de escada, o fluxo lógico é do
trilho esquerdo para o trilho direito.
1. Trilhos - Existem dois trilhos em um diagrama de escada que são desenhados como linhas verticais que
percorrem as extremidades mais distantes da página. Se eles estivessem em um circuito lógico de relés,
representariam as conexões ativa e de zero volt da fonte de alimentação, onde o fluxo de energia passa do
lado esquerdo para o lado direito.
2. Degraus - Os degraus são desenhados como linhas horizontais e conectam os trilhos às expressões
lógicas. Se eles estivessem em um circuito lógico de relé, representariam os fios que conectam a fonte de
alimentação aos componentes de comutação e relé.
3. Entradas - As entradas são ações de controle externo, como um botão pressionado ou uma chave fim-de-
curso sendo acionados. As entradas são fisicamente conectadas aos terminais do CLP e representadas no
diagrama ladder por um símbolo de contato normalmente aberto (NO) ou normalmente fechado (NC).
4. Saídas - As saídas são dispositivos externos que estão sendo ligados e desligados, como um motor elétrico ou
uma válvula solenóide. As saídas também são conectadas aos terminais do CLP e são representadas no
diagrama ladder por um símbolo de bobina de relé.
5. Expressões lógicas - As expressões lógicas são usadas em combinação com as entradas e saídas para
formular as operações de controle desejadas.
7. Comentários - Por último, mas não menos importante, os comentários são uma parte extremamente
importante de um diagrama Ladder. Os comentários são exibidos no início de cada linha e são usados para
descrever as expressões lógicas e as operações de controle que a linha ou grupos de linhas estão executando.
FAMÍLIA XL & X
Controladores Lógicos Programáveis
com IHM Incorporada
4. CONTROLADORES TUDO EM UM
As famílias X e XL são compostas por controladores programáveis robustos e confiáveis com IHM incorporada,
apresentando uma interface gráfica, I/O integrado e ampla conectividade, com diversos protocolos de comunicação
disponíveis. Todos os modelos permitem programação em Ladder avançado ou IEC-61131-3 e podem ter a memória
expandida por cartão MicroSD para registro de dados de processo.
O objetivo deste guia rápido é nos familiarizarmos com os recursos e funcionalidades do software de programação
Cscape.
Equipamentos necessários:
• Criar um novo programa clicando no ícone correspondente na barra de ferramentas que se encontra no topo da
tela.
• Salvar um programa via menu File ou clicando no ícone correspondente na barra de ferramentas.
➢ Abrindo um programa:
• Podemos abrir um programa via menu File, via seu ícone correspondente na barra de ferramentas.
• Configurar manualmente clicando no botão config ao lado do desenho do controlador em questão e selecionando
em uma lista que lhe será apresentada.
Não se esqueça que, usando o Auto Config System, você ira perder qualquer configuração que você já tenha feito.
Apostila | Programação Básica CLPs com IHM Incorporada
➢ Barras de ferramentas são usadas para selecionar elementos de ladder e suas funções.
• Project Toolbox – Este menu permite ao programador selecionar entre os diversos elementos de ladder,
separados por grupo de função (item 1 na imagem abaixo).
• Menu Toolbar Selection – O programador pode selecionar para mostrar múltiplas barras de ferramentas, basta
acessar o menu View → Toolbars (item 2).
• User – O campo User indica qual usuário esta atualmente logado no programa usando o recurso de segurança,
caso apresente NONE, não há usuário logado.
• Program Equality – Indica se o programa que esta na tela esta igual ao que esta no controlador.
• Local and Target – O “Local ID” indica qual equipamento esta ligado ao PC e o “Target ID” indica qual
equipamento esta vinculado ao programa.
• Adicionando um contato – Um novo rung pode ser criado adicionando um contato na coluna A da área de ladder.
Para verificar se o rung esta ok, deve ser observado se na margem esquerda da área de ladder tem um símbolo
de parafuso (item 5 na imagem acima). Outro cuidado a ser tomado é que, quando queremos um contato em
paralelo, devemos adicionar um branch (braço) antes de adicionar o contato paralelo.
➢ Data Watch habilita o usuário a monitorar memorias e bits dentro do controlador (item 6). Data Watch pode ser
selecionada via ícone de lupa na barra de ferramentas, ou selecionando no menu Controller.
➢ Project navigator – Neste menu você consegue acessar os principais pontos mais importantes referentes ao seu
projeto e seu controlador, facilitando assim a sua programação.
O objetivo deste cápitulo é prover o conhecimento para usar o Cscape e criar um programa básico, incluindo
configuração de hardware, ladder e telas.
Quando começamos com um novo programa no Cscape o primeiro cuidado a ser tomado é configurar o Controlador e o
IO correto. Desta forma o Cscape saberá que tipo de IO que precisa ser mapeado, o tamanho de tela e etc.
Procedimento:
Passo 1
➢ Conectar o XLx ao PC. Podemos programar o controlador com diversas portas, em nosso treinamento usaremos a
RS232 para comunicar com Xle e a ethernet para comunicar com o Xl4.
Passo 2
➢ Iniciando o Cscape no PC. Abra o Cscape no PC, no menu connection wizard que aparecerá selecione o modo de
comunicação que usaremos neste exercício, que no caso é ethernet. Caso tenha algum projeto aberto vamos fecha-
lo clicando em File → Close. Agora clique em File New. Selecione a opção Advanced Ladder Editor.
Passo 3
Passo 4
➢ Configurando o XL
Como estamos ligados ao controlador iremos clicar em “Auto Config System” e o Cscape irá ler o Controlador conectado
na porta que selecionamos anteriormente. Neste caso iremos pular para o passo 5, caso não tenha usado o auto config
execute as instruções abaixo.
2. Selecione a serie XL correspondente, e em seguida selecione o Modelo de hardware que estamos usando, neste
treinamento usaremos o HEXC1E2.
Passo 5
➢ Salve o programa.
Clicando no ícone ‘Save’ na barra de ferramentas , ou clicando no menu File e selecionando Save.
Passo 6
Clique no menu Program e selecione I/O Names, você pode acessar também pelo Project Navigator.
Figura 11
Passo 7
Passo 8
3. Clique em OK.
Passo 9
1. Abriremos o editor de telas clicando no item Graphics no menu project navigator, ou clicando no ícone na
barra de ferramentas.
2. Vamos selecionar o item indicator, representado pelo ícone , e iremos clicar na tela, segurar e mover o
mouse até uma posição que lhe agrade.
3. Agora de um duplo clique no element indicator na tela e configuraremos como na imagem abaixo.
4. Clicando em Legend >>>> iremos definir o texto que fica em cima do indicator.
5. Clique em OK e em OK novamente, você terá uma tela como a abaixo, lembre-se que não precisamos fazer
telas idênticas, pode criar o seu design à vontade.
Passo 10
➢ Salve o programa.
Passo 11
Nota: Não é necessário colocar o controlador em STOP, o próprio Cscape fará isso, e após enviar o programa irá
colocar em RUN.
3. Clique em ‘OK’.
Assim que finalizar o envio, certifique-se que seu controlador esteja em Run mode, observe os ícones de semáforo, o
Passo 12
➢ Debugar o programa
Figura 16
Parabéns! Você finalizou seu primeiro programa na linha Xl, agora vamos para o LAB 2 para desenvolvermos novas
habilidades.
Glossário
Tipos de Dados
BOOL – BOOL/Booleano; um único bit. Ele pode conter valores “0” ou “1”, também representado por “FALSE” ou
“TRUE” ou ainda “FALSO” ou “VERDADEIRO”.
WORD – WORD/Palavra, uma sequência de 16 bits. Word é usado para a maioria dos dados em um CLP.
DWORD - Double Word/ duas palavras; Uma sequência de 32 bits. Dword usa 2 words consecutivas no CLP.
INT – Integer/Inteiro; Um valor de 16-bit com sinal. Inteiros atendem a faixa de -32767 a +32768
DINT - Double Integer/Inteiro duplo ; Um valor de 32 bits com sinal, comporta um valor de -2,147,483,648 a
+2,147,483,647.
UINT - Unsigned Integer/Inteiro sem sinal ;um valor de 16 bits sem sinal, o range comporta os valores de 0 (zero) a
65,535.
UDINT - Unsigned Double Integer/ Duplo inteiro sem sinal; Um valor de 32 bits sem sinal, comporta o range de 0 (zero)
a 4,294,967,296.
REAL - Floating Point/Ponto Flutuante; Um valor de 32 bits. Os valores são armazenados na especificação da IEEE
(seis dígitos), os valores atendem um range de -3.40282E+38 a +3.40282E+38.
STRING – String/sequência de Caracteres; Uma sequência de caracteres de tamanho variável, cada byte representa
um caractere.
Tipos de registradores
%I Entradas digitais, sensors, botões, chaves, fins de curso Boleano SIM 2048
%AI Entradas analogicas de campo; Temopares, 4 a 20mA, 0 a 10V WORD SIM 512
%AQ Saidas analogicas de campo; valvulas proporcionais, 4 a 20mA WORD NÃO 512
%IG Entradas discretas vinda de outro Controlador Boleano SIM 64 per node
%QG Saida discreta direcionada a outro Controlador Boleano NÃO 64 per node
%AIG Entrada analogical global, vinda de outro Controlador WORD SIM 32 per node
%AQG Saida analogical global, indo para outro controlador WORD NÃO 32 per node
%T Bits internos temporarios, usado em logicas não retentivas Boleano NÃO 2048
%D Bits de tela indica qual tela esta ativa… Boleano NÃO 1023
Bits de Sistema
%S03 T_10MS 10mS pulse %S09 PAUSING_SCN Pause 'n Load soon
%S04 T_100MS 100mS pulse %S10 RESUMED_SCN Pause 'n load done
Registradores de sistema
Para detalhes do funcionamento dos Bits e Registros de Sistema consulte o Help do Cscape.
Anotações
Anotações
Anotações