Escolar Documentos
Profissional Documentos
Cultura Documentos
Controladores
Lógicos
Programáveis
• Linguagens de programação: Criando projetos em linguagem Ladder (LAD) e Statement List (STL);
• Instruções básicas de programação: instruções booleanas (manipulação binaria), temporizadores, contadores,
comparadores, funções lógicas e funções matemáticas;
• Monitoramento de variáveis e diagnóstico de programas;
• Bloco de programação organizacional (OB’s): detalhamento e aplicações;
• Estudo da rede Profinet: principais características do protocolo, estrutura da rede, meio físico, configuração e
aplicações;
• Ferramentas de teste e diagnóstico.
Controladores Lógicos Programáveis - CLP
• Temporizadores
- temporizador na energização;
- temporizador na desernegização;
- temporizador de pulso.
• Contadores
- Contador Crescente;
- Contador Decrescente ;
- adição; • Comparação;
- divisão;
- multiplicação;
- raiz quadrada.
Constituição do CLP
• Fonte de Alimentação;
• Memórias;
• Requisitos elétricos;
• Circuitos de saída;
• Requisitos de memória;
• Velocidade da operação;
• Comunicação;
• Interfaces de operação.
Características Funcionais
Siemens: família S7-300 Um total de até 32 módulos de expansão pode ser utilizado em uma
configuração centralizada.
Características Funcionais
CPU compacta com I/O’s integrados e um total de até 8 módulos de
expansão.
Módulos de I/O:
• Digitais
• Analógicos
Comunicação:
• Profinet (integrado)
• Profibus DP mestre e escravo
• AS-i
Instalação
Trilho
DIN
PS - fonte de alimentação
0 Vdc
Terra
N
24Vdc
L
Esquema elétrico – CPU DC/DC/DC
Esquema elétrico – CPU AC/DC/Relay
Esquema elétrico – CPU AC/DC/Relay
PS Fonte de alimentação
CP Comunicação
• Profinet, RS485, PROFIBUS-DP, AS-i
CPU Controladores
CPU
Módulos Fieldbus Módulos de I/O
Siemens: família S7-1500 Características Funcionais
Um total de até 30 módulos de expansão pode ser utilizado em uma
configuração centralizada.
Módulos de I/O:
• Digitais (24Vdc, 120/230VAC, saídas à transistor de até 2A)
• Analógicos
Comunicação:
• Ethernet/Profinet
• Profibus DP
• IHM integrada para configuração e diagnóstico das funções da CPU
• OPC-UA e Web server
Funções tecnológicas:
• Motion control
• PID Control
• PWM
• Entradas e saídas rápidas
• Entradas para encoders
•Fail-Safe
Configuração do Rack de montagem
Configuração do Rack de montagem
Instalação Bus connector
Módulos de I/O
Rack
Conector para
cabeamento de
I/O’s
Instalação
7 6 5 4 3 2 1 0
Byte 0
Byte 0 Byte 1
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Word 0
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Double Word 0
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
{
{
{
{
...
Word0 Word1 Word2 Word3
Conflito no endereçamento
Byte 0 Byte 1
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Word 0
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Byte 1 Byte 2
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Word 1
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Tipos de Variáveis
Sinal Analógico
Um Sinal Analógico apresenta uma variação contínua ao longo do tempo, podendo ter características de amplitude
e frequência bastante variáveis.
Sinal Digital Binário
Um Sinal Digital do tipo Binário é uma sequencia de dois níveis de impulsos com amplitude definida, e sucedendo-
se a intervalos de tempo regulares.
CPU: processamento
Conceito de Scan
TIA Portal
Autorização da licença (License Manager)
Criando um novo endereço de IP para uma CPU nunca utilizada
Criando um endereço de IP para uma CPU nunca utilizada
Criando um endereço de IP para uma CPU nunca utilizada
Criando um endereço de IP para uma CPU nunca utilizada
Criando um novo projeto
Deve-se clicar na opção “Project view” e dessa forma começar um novo projeto
Criando um novo projeto
Para criar um novo projeto, clicar na opção “Create new project”
Criando um novo projeto
Digitar o nome do Projeto no espaço reservado com a indicação“Project name”
Adicionando uma nova estação (CPU, IHM,...)
Para adicionar o dispositivo, clicar na opção “Configure device”
Configurando o Hardware
Configurando o Hardware
Clique no link Detect
para que o software
encontre a CPU
automaticamente.
Configurando o Hardware
Deve-se aguardar o aparecimento do CLP que deseja detectar a configuração da CPU e fazer o upload.
Configurando o Hardware
Quando a CPU for encontrada clique no botão
Detect novamente.
Ambiente TIA Portal
Barra de ferramentas e menu
Mostrar dispositivos Dividir janela
Download para accessíveis na rede na horizontal
Novo Compilar objeto
Projeto CPU
Carregar projeto da CPU
(Upload)
Referência
CPU online Start CPU cruzada
Árvore de projeto
Expandir janela
(expand)
Esconder janela
(collapse)
Ambiente TIA Portal
Trabalhando com janelas
Indica que há mensagens disponíveis
Conforme as janelas são abertas para cada objeto, atalhos são inseridos na parte
inferior do software para acessa-las de forma rápida.
Criando novo programa
Na árvore de projeto
dentro da pasta “Program
blocks” dê um duplo
clique em “Main (OB1)”
para abrir o programa
Main do Siemens.
Editando um novo
programa no “Main
(OB1)”.
Linguagens de programação
Ladder
Linguagens de programação
FBD
Linguagens de programação – Inserindo blocos
FBD
Escrever no endereço
o RLO
RLO=0
Saída Q0.0 é desativada
Linguagem LADDER – Instruções Retentivas
A barra “Favorites” pode ser editada para um rápido e fácil acesso às instruções mais utilizadas pelo usuário.
Para habilitá-la clique no ícone mostrado na figura.
Você pode inserir novas instruções neste campo, para isso, basta clicar segurar e arrastar novas instruções...
Inserindo um contato em paralelo
Selecione
A linha
Inserindo Tag’s
É possível acessar a CPU e monitorar seus dados em tempo real utilizando seu web
server por meio de um navegador.
O web server
permite acesso
às variáveis
processadas pela
CPU assim como
o buffer de
diagnóstico,
entre outros
recursos...
Web Server
EN - Habilita Entrada
ENO -Habilita Saída
IN - Valor de Entrada
(Tamanho de todos os tipos
de dados 8, 16, 32 bit )
OUT - Target address
(Tamanho de todos os tipos
de dados 8, 16, 32 bit )
OPÇÕES DE COMPARAÇÃO:
== IGUAL A
<> NÃO IGUAL A
> MAIOR QUE
< MENOR QUE
>= MAIOR QUE OU IGUAL A
<= MENOR QUE OU IGUAL A
Flanco Positivo
Contatos impulsionais
Flanco Negativo
Monitorando e forçando variáveis
Para monitorar as variáveis de um programa basta entrar “online” na CPU. Para isso, deve-se abrir o projeto desejado,
de acordo com o programa que está em execução na CPU e na barra de ferramentas deve-se clicar no ícone “Go online”
em seguida configurar a comunicação com a CPU desejada.
“Force all”
Data Blocks
Os data blocks (DB’s) ou blocos de dados são blocos utilizados para armazenar dados, como memórias.
Diferentemente dos blocos de programas, como os que serão apresentados a seguir, os blocos de dados não possuem
instruções e portanto não executam rotinas de programa, eles apenas armazenam dados das variáveis dos blocos de
programas, como OB’s, FC’s e FB’s.
Os data blocks podem ser criados em dois formatos: Instance Data Blocks (DB instance) ou Data Blocks Global
(Global DB).
Um Global DB é um DB que pode ser acessado e compartilhado por qualquer bloco de programa criado pelo usuário.
Qualquer bloco de programa (OB, FC ou FB) pode ler e escrever dados nas variáveis da Global DB.
Uma DB instance é um DB dedicado a um Function Block FB. Todos os dados e parâmetros das variáveis locais do FB
são armazenados no seu DB instance, que passa a ser uma “memória particular” deste FB. A denominação ‘instance’
representa um bloco FB chamado, por exemplo, se um bloco FB10 for chamado 3 vezes haverá 3 instâncias deste bloco,
cada uma com um Data Block. Esse tipo de DB é criado automaticamente e vincula ao FB no momento de sua criação.
Criando Data Blocks
Na árvore de projeto clique na opção “Add new block”.
Nome da variável
Criando Data Blocks
As variáveis tipo Array são declaradas definindo-se as quantidade de variáveis que deverão compor a matriz e o
tipo de variável.
Criando Data Blocks
Neste exemplo serão criadas 4 variáveis tipo byte no formato array.
Exemplo: Array [1 .. 4] of Byte
Clicando sobre a “seta” do lado do nome “Array” a estrutura das variáveis que foram criadas é mostrada.
Criando Data Blocks
É possível ainda cria uma estrutura de variáveis com diferentes “data types”, criando uma variável tipo STRUCT.
Criando Data Blocks
Por fim, o data block deverá ser compilado para efetivar todas as edições.
Criando Data Blocks
O programa ao lado mostra como
acessar as variáveis do data block
para escrita e leitura de dados.
Programação estruturada
O Step7 300 permite a criação de blocos de programas orientados como sub-rotinas de um programa principal. Eles estão
abaixo dos organization blocks (OB’s) na hierarquia de programa e podem ser chamados como sub-rotinas dos OB’s
quantas vezes for necessário.
A utilização de sub-rotinas torna o programa de usuário mais organizado evitando a repetição de lógicas de controle
dentro do programa principal, facilitando sua criação bem como sua interpretação.
No Step7 existem duas estruturas distintas de blocos de programas, denominadas como Functions (FC’s) e Functions
Blocks (FB’s). Ambas estão abaixo das OB’s na hierarquia de programa e devem ser acessadas por meio uma instrução de
chamada dentro dos OB’s.
Criando uma Function - FC
No exemplo a seguir será mostrado como implementar um bloco de programa do tipo FC como rotina padrão para executar
uma operação matemática de média aritmética. O bloco deverá possuir três entradas reais para receber os valores e o
resultado deverá ser mostrado em sua saída.
Para isto o bloco deverá ser criado com variáveis locais, que permitem a transferência dos sinais dos endereços absolutos
de OB1 para o bloco, assim como do bloco para OB1.
As variáveis locais das FC’s podem ser do tipo IN, OUT, IN/OUT ou TEMP. Essas variáveis podem ainda ter o formato BOOL
(booleanas, variáveis discretas 0 ou 1), informações do tipo BYTE, WORD, DWORD (Double Word), INT (números inteiros),
REAL (números reais com ponto flutuante), S5TIME (variáveis de tempo no formato Siemens), dentre outras.
A FC pode ainda possuir uma variável tipo RETURN, que é uma variável de retorno da dados. Essa variável recebe o
resultado de uma operação e passa essa informação para o programa.
A figura abaixo mostra como criar as variáveis locais da FC para esta aplicação.
Criando uma Function - FC
A instrução de soma é
inserida conforme figura
ao lado.
Clicando no ícone em
destaque na parte inferior
do bloco pode-se inserir
novas entradas.
Criando uma Function - FC
As variáveis locais criadas são configuradas nas entradas e saídas dos blocos.
Os Functions Blocks ou FB’s são blocos de programas que possuem uma área de memória dedicada do tipo Data Block ou
DB designado para armazenar permanentemente os dados de suas variáveis durante e após a sua execução. Essas
memórias são do tipo Instance Data Block, pois são dedicadas ao bloco de programa a que estão associadas.
Além das variáveis locais que existiam nas FC’s (IN, OUT, IN/OUT ou TEMP) os FB’s possuem também variáveis
denominadas STATIC. Essas variáveis são utilizadas para armazenar dados permanentemente nos data blocks (DB) das
FB’s. Variáveis tipo Static ocupam espaço na DB do bloco.
Assim como as Functions (FC), os FB’s são blocos de programa criados como sub-rotinas de OB1 ou de outros blocos.
Cada Functions Block criado e chamado dentro de OB1, por exemplo, necessita de um Data Block (DB) para o
armazenamento dos dados processados pelo bloco.
Criando um Function Block - FB
Nessa estrutura, cada FB tem uma área de memória do tipo Data Block reservada e dedicada a ele, para armazenar as
variáveis processadas pelo bloco.
OB1
DB1
FB1
DB2
FB1
DB3
FB1
Criando um Function Block - FB
Como exemplo de aplicação será criado um programa para a partida direta de motores.
Ainda no FB1, desenvolva o programa para esta aplicação e nomeie as instruções com as variáveis locais previamente
criadas.
Criando um Function Block - FB
Controle
Campo
Comunicação com S7-1500 – PROFINET - Introdução
Os dispositivos conectados através de rede Profinet são identificados por meio de um nome e um endereço de IP.
Atendendo o modelo ISO/OSI de camadas para um protocolo de rede de comunicação, o protocolo PROFINET é
especificado para as quatro primeiras camadas, assim como as redes Ethernet convencionais e também para a sétima
camada, onde são definidos algumas características da comunicação, como a definição da hierarquia e a especificação
dos nomes dos participantes.
Comunicação com S7-1500 – Possibilidades de comunicação em PROFINET
Comunicação com S7-1500 – Possibilidades de comunicação em PROFINET
Comunicação com S7-1500 – Possibilidades de comunicação em PROFINET
Comunicação com S7-1500 – Diagnóstico
Comunicação com S7-1500 – Fail Safe
Comunicação com S7-1500 – TIA Portal (Comunicação ente CPU e Remota Profinet)
Crie um novo projeto e configure uma CPU S7-1200.
Comunicação com S7-1500 – TIA Portal (Comunicação ente CPU e Remota Profinet)
A versão do firmware desta CPU deverá ser V2.0 ou maior.
Comunicação com S7-1500 – TIA Portal (Comunicação ente CPU e Remota Profinet)
Dê um duplo clique na opção “Devices & Networks” na árvore de projeto do lado direito.
Por fim, desmarque a opção “Highlight IO Systen” para atribuir as configurações de rede.
Comunicação com S7-1500 – TIA Portal (Comunicação ente CPU e Remota Profinet)
Neste exemplo será mostrado como estabelecer comunicação entre duas CPU’s S7-1200 em Profinet, utilizando as
instruções PUT e GET para uma comunicação em uma única via.
Crie um projeto e configure duas CPU’s S7-1200, conforme figura abaixo.
Comunicação com S7-1500 – TIA Portal (Comunicação PROFINET CPU/CPU)
Na opção “Network view” Clique no botão no botão “Connections” e selecione a opção “S7 connection” . Crie o
barramento conectando as duas CPU’s.
Comunicação com S7-1500 – TIA Portal (Comunicação PROFINET CPU/CPU)
Selecione a CPU e configure o endereço de IP na aba “Properties” na janela de configurações do software.
Comunicação com S7-1500 – TIA Portal (Comunicação PROFINET CPU/CPU)
Exemplo:
PLC_1 Local
IP: 192.168.0.2
PLC_2 Partner
IP: 192.168.0.3