Programação básica - Apostilas técnicas

Transcription

Programação básica - Apostilas técnicas
CLP Siemens S7
Programação básica
VOLKSWAGEN do Brasil Ltda.
SENAI-SP
São Paulo
2001
Programação básica
CLP Siemens S7
© SIEMENS AG
Material desenvolvido pela SIEMENS
e readequado pelo Departamento Regional do SENAI de São Paulo
para atendimento às solicitações da Volkswagen do Brasil do Ltda.
Equipe de revisão e
adaptação
Apoio
Carlos Gonçalves da Silva
João Batista de Oliveira
Fausto Hironobu Kobayashi
José Roberto Marques
José Rogério Chavier
Marcio Corazzim
Renato Cesar Carreira Apolonio
Ricardo Ladeira
José Jorge de Andrade
Marcos Luesch Reis
VOLKSWAGEN do Brasil Ltda.
Conjunto Industrial Anchieta
Via Anchieta, km 23,5
09823-990 – São Bernardo do
Campo – SP
http://www.volkswagen.com.br
SENAI - SP
Departamento Regional de São Paulo
Av. Paulista, 1313
01311-923
http://www.sp.senai.br
[email protected]
Programação básica
Sumário
Página
3
5
21
33
57
75
107
125
149
163
185
201
213
225
245
273
283
295
313
329
347
363
Introdução
Família SIMATIC
Instalando o STEP 7
Introdução ao Hardware S7
O Software STEP 7
Configurando e parametrizando o S7
Princípios básicos
O editor de programas
Operações lógicas básicas
Temporizadores, Contadores e Comparadores
Conversão, operação lógica digital, matemática,
deslocamento
Ferramentas para testes e depuração
Funções, parâmetros e dados locais
Programação simbólica
Blocos de dados e de funções
Processamento de palavra analógica
Informações do Sistema S7
Diagnosticando e corrigindo problemas
Técnicas especiais de programação
Documentando e salvando programas
Global Data e PROFIBUS-DP
Respostas dos exercícios
SENAI - SIEMENS - VW
Programação avançada
4
SENAI - SIEMENS - VW
Programação avançada
Introdução
Este é o material que você vai utilizar durante o curso de CLP.
Trata-se de um conjunto de textos extraídos de conteúdos do próprio SENAI-SP e de
materiais da Siemens/Volkswagen.
Os assuntos são apresentados em uma ordem que vai do mais simples ao mais
complexo. A ligação entre cada parte será feita pelo seu instrutor.
Tudo aquilo que o instrutor disser e que você ache importante manter pode ser
anotado diretamente neste material, em outro caderno ou em folhas isoladas.
Tenha bom proveito do curso!
SENAI - SIEMENS - VW
3
Programação avançada
4
SENAI - SIEMENS - VW
Programação básica
Família SIMATIC
Família SIMATIC S7
SIEMENS
SIMATIC
S7-200
SF
RUN
STOP
I0.0
I0.1
I0.2
I0.3
I0.4
I0.5
I0.6
I0.7
Q 0 . 0 M i cr o PLC 21 2
Q0.1
Q0.2
Q0.3
Q0.4
Q0.5
X 2
3 4
S7-200
S7-300
S7-400
SIMATIC S7
Siemens AG 1996. All rights reserved.
Date :
07/10/00
Version : 3.1
File No. : pro1_1.1
Conhecimento em Automação
Training Center
SIMATIC
A família SIMATIC representa não somente uma linha de CLP’s, e sim toda uma linha
de produtos de AUTOMAÇÃO TOTALMENTE INTEGRADA.
SIMATIC S7
Os Controladores Lógicos Programáveis da família SIMATIC S7 podem ser divididos
em: Micro PLC (S7-200), pequeno/médio porte (S7-300) e médio/grande porte
(S7-400).
SIMATIC M7
O CLP M7 é um computador PC-AT compatível, com o mesmo desempenho, a
mesma funcionalidade e o ambiente de programação de um microcomputador.
SENAI - SIEMENS - VW
5
Programação básica
SIMATIC C7
Este é um sistema completo, é a combinação do CLP ( S7-300) e um painel de
operação (HMI Operator Interface) em uma única unidade.
Software
O SIMATIC Software é um projeto modular. Ele consiste do Software Básico STEP 7 e
Pacotes Opcionais, instalados a parte. Os Pacotes Opcionais podem ser linguagens de
programação adicionais tais como S7-GRAPH, SCL, CFC, SFC e pacotes para
diagnósticos, simulações, documentação e Teleservice.
Terminais de Programação
São PC’s AT compatíveis com todas as interfaces necessárias e softwares básicos de
programação pré-instalados. Disponíveis desde laptop até desktop.
Redes de Comunicação
As redesAS-I, Profibus e Industrial Ethernet estão disponíveis para troca de dados
entre sistemas de PLC’s.
I/O Distribuídos
Para economizar em cabos, existe a possibilidade da utilização de I/O’s remotos em
um projeto distribuído. Uma configuração distribuída, no que se refere à sua
parametrização/programação, não difere de um configuração central.
Interface Homem-Máquina
Para comunicação Homem-Máquina, existe a Interface de Operação SIMATIC
HMI. Estas interfaces são totalmente integráveis à toda família SIMATIC.
6
SENAI - SIEMENS - VW
Programação básica
A família SIMATIC
modular
Grande Porte
Médio Porte
modular
SIMATIC
S7 - 400
Pequeno Porte
SIMATIC
M7 - 400
modular
modular
SIMATIC
S7 - 300
Micro - PLC
SIMATIC
M7 - 300
complete
SIMATIC
C7 - 620
compacto
SIMATIC
S7 - 200
SIEMENS
PG740
Software
SIMATIC S7
Siemens AG 1996. All rights reserved.
Terminal de Programação
Redes de
Comunicação
I/O distribuída
Date :
07/10/00
Version : 3.1
File No. : pro1_1.2
Interface HomemMáquina
UEBER_T1D
Conhecimento em Automação
Training Center
S7-200
O S7-200 é o micro-CLP da família SIMATIC S7.
Características
O S7-200 tem as seguintes características e funções:
-
baixo preço
-
“Totalmente compacto” com fonte de alimentação, CPU e entradas/saídas
integradas em um único dispositivo.
-
"Micro PLC" com funções integradas
-
Pode ser expandido em até sete módulos
-
Software baseado em DOS ou Windows (STEP 7 MICRO/DOS ou STEP 7
MICRO/WIN)
SENAI - SIEMENS - VW
7
Programação básica
Funções
-
Alimentação das entradas digitais (sensores) integrada
-
Forçar entradas e saídas
-
Acesso direto às entradas/saídas
-
Relógio de tempo real integrado 1
-
Dois potenciômetros analógicos integrados 1
-
Duas saídas em pulsos integradas 1
-
Entradas digitais comandadas por interrupções
-
Contadores de alta velocidade integrados (7 a 20kHz).
1
8
CPU 214 ou maior
SENAI - SIEMENS - VW
Programação básica
S7- 200 Características
Micro PLC 212
SF
SIEMENS
RUN
STOP
I.0
I.1
I.2
I.3
I.4
I.5
EM 221
Q.0
Q.1
Q.2
DI 8 x DC24V
I.0
I.1
I.2
I.3
Q.3
Q.4
Q.5
I.4
I.5
I.6
I.7
I.6
I.7
SIMATIC
S7-200
Módulo de Expansão
digital/analógica
CPU
TD 200
SIEMENS
Target Position
Axle Ready
F5
F1
F6
F2
125 mm
F7
F3
F8
F4
SHIFT
ESC
ENTER
Painel de Operação TD 200
SIMATIC S7
Siemens AG 1996. All rights reserved.
Date :
07/10/00
Version : 3.1
File No. : pro1_1.3
Conhecimento em Automação
Training Center
S7-200
O S7-200 é o micro-CLP da família SIMATIC S7.
Características
O S7-200 tem as seguintes características e funções:
-
baixo preço
-
“Totalmente compacto” com fonte de alimentação, CPU e entradas/saídas
integradas em um único dispositivo.
-
"Micro PLC" com funções integradas
-
Pode ser expandido em até sete módulos
-
Software baseado em DOS ou Windows (STEP 7 MICRO/DOS ou STEP 7
MICRO/WIN)
SENAI - SIEMENS - VW
9
Programação básica
Funções
-
Alimentação das entradas digitais (sensores) integrada
-
Forçar entradas e saídas
-
Acesso direto às entradas/saídas
-
Relógio de tempo real integrado 1
-
Dois potenciômetros analógicos integrados 1
-
Duas saídas em pulsos integradas 1
-
Entradas digitais comandadas por interrupções
-
Contadores de alta velocidade integrados (7 a 20kHz).
1
CPU 214 ou maior
10
SENAI - SIEMENS - VW
Programação básica
S7- 300 Características
SIMATIC S7
Date :
07/10/00
Version : 3.1
File No. : pro1_1.4
Siemens AG 1996. All rights reserved.
Conhecimento em Automação
Training Center
S7-300
O S7-300 é o pequeno e totalmente modular CLP da família SIMATIC S7.
Características
-
Diversas CPU’s com diferentes capacidades.
-
Extensivo espectro de módulos.
-
Pode ser expandido em até 32 módulos.
-
Módulos integrados em barramento backplane
-
Pode ser ligado em rede com interface multi-point (MPI), PROFIBUS e Industrial
Ethernet.
-
Conexão central com PC acessa todos os módulos (FM e CP).
-
Sem regras para alocação das placas.
-
Configuração e parametrização via software STEP 7.
SENAI - SIEMENS - VW
11
Programação básica
S7- 400 Características
SIMATIC S7
Siemens AG 1996. All rights reserved.
Date :
07/10/00
Version : 3.1
File No. : pro1_1.5
Conhecimento em Automação
Training Center
S7-400
O controlador lógico programável S7-400 abrange aplicações de médio e grande porte.
A família da CPU S7-400 tem um set de instruções poderoso (igual ao do S7-300) e
esquema de endereçamento simples.
Memória de Trabalho
A partir de 48 KB até 2 Mega.
Sinais Digitais
A partir de 64K até 256K.
12
SENAI - SIEMENS - VW
Programação básica
Sinais Analógicos
A partir de 4K até 16K.
Memory Markers
Flags - A partir de 4K até 16K.
Tempo de Ciclo
A partir de 0,08 µs até 0,2 µs por instrução binária.
Multiprocessamento
Até quatro CPUs podem ser usadas no rack central.
Comunicação
Via MPI, ponto-a-ponto, PROFIBUS e Industrial Ethernet .
SENAI - SIEMENS - VW
13
Programação básica
Multi-point Interface (MPI)
S7-300
S7-300
CPU 1
CP
FM
CPU 2
MPI como um K-Bus
conexão do PG via MPI
CP
FM
MPI como um K-Bus
conexão de CLP’s via MPI
conexão do OP via MPI
P
G720
SIMATIC S7
Siemens AG 1996. All rights reserved.
Date :
07/10/00
Version : 3.1
File No. : pro1_1.6
Conhecimento em Automação
Training Center
MPI
A Multi-Point Interface, MPI tem como objetivo conectar o CLP ao terminal de
programação ou à interface de operação, ou ainda a outros controladores lógicos
programáveis (PLC’s). Na unidade central de processamento (CPU), existe somente
uma interface MPI, porém é possível acessar através dela todos os outros módulos
programáveis, tais com FM’s.
Possibilidades de Conexão
Vários dispositivos podem estabelecer simultaneamente conexão de dados com a
CPU. Isto significa que o terminal de programação e o painel de operação podem ser
operados simultaneamente, e ainda outros PLC’s adicionais podem ser conectados. As
quantidades de conexões que podem ser operadas simultaneamente dependem da
14
SENAI - SIEMENS - VW
Programação básica
CPU. Exemplo: são possíveis quatro conexões de comunicação ativa por nó para a
CPU 314.
Características da MPI
A interface MPI suporta displays, painéis de operação e terminais de programação
Siemens. A MPI oferece as seguintes possibilidades:
-
Programação de CPU’s e módulos inteligente
-
Funções de monitoração do sistema e funções de informações
-
Troca de dados entre controladores lógicos programáveis
-
Troca de programas entre CPU e terminal de programação
Dados Técnicos da MPI
As mais importantes características da interface MPI são:
-
Padrão RS 485 e taxa de transmissão de 187.5 Kbaud
-
Distâncias até 50 m ou até 9100 m com repetidores
-
Componentes padrões do PROFIBUS DP (cabo , conector, e repetidor)
SENAI - SIEMENS - VW
15
Programação básica
Redes de Comunicação
TISTAR
Op . Int.
SIMATIC HMI
S5/TI
PG/PC
Industrial Ethernet
S7-400
S7-300
S7-200
PS CPUFM CP
CPU FMCP
Communications bus
CP
Communications bus
S5/TI
PROFIBUS-FMS
Field
Devices
PG/PC
S5/TI
PROFIBUS-DP
PPI
PG/PC
TD/OP
S7-200
CPU 215
PG/PC
Field
Devices
TD/OP
ET 200
S7-200
MPI
PG/PC
SIMATIC S7
Siemens AG 1996. All rights reserved.
Date :
07/10/00
Version : 3.1
File No. : pro1_1.7
TD/OP
S7-CPU
Conhecimento em Automação
Training Center
Redes
A figura acima exibe as várias possibilidades de rede para a comunicação entre
produtos já existentes e a família S7. Os termos usados no slide são explicados a
seguir:
S5/TI
Controladores lógicos programáveis SIMATIC S5 e SIMATIC TI
SIMATIC HMI
Equipamentos de Interface Homem Máquina
16
SENAI - SIEMENS - VW
Programação básica
TISTAR
SCADA = (Supervisory Control and Data Acquisition ) controle de interface de
operação do sistema
PG/PC
Terminais de programação (Siemens PG) ou Computadores Pessoais
Ind. Ethernet
Rede Industrial da Siemens
TD/OP
Text Display e Operator Panel
PPI
Interface Point-to-Point
MPI
Interface Multipoint
Field Devices
Hardware para ent./output (por exemplo, chaves, bombas, e motores)
PROFIBUS DP
Rede de controle distribuído fieldbus da Siemens
SENAI - SIEMENS - VW
17
Programação básica
Terminais de Programação PG720/740
SIEMENS
PG 740
PG740
PG720
SIMATIC S7
Siemens AG 1996. All rights reserved.
Date :
07/10/00
Version : 3.1
File No. : pro1_1.8
Conhecimento em Automação
Training Center
PG720PII
A PG 720PII (Pentium II) tem as seguintes características:
-
Pouco Peso (aproximadamente 4.5 kg)
-
Dimensões pequenas
-
Interface Integrada (MPI, EPROM, MEMORY CARD, e PLC)
-
Boa resolução
-
Expansão para Teleservice (MODEM) via PCMCIA, tipo 3
-
Teclado removível, conexão possível para monitor externo Multisync.
-
Expansível para redes (Novell, etc.), transmissão de dados, FAX (modem) via
PCMCIA - tipo 3
18
SENAI - SIEMENS - VW
Programação básica
PG740PIII
A PG 740PIII (Pentium III) tem as seguintes características:
-
Boa resolução gráfica para Windows 98
-
Excelente tela de exibição (TFT display, 13.3", 34 cm)
-
Teclado removível, possível conexões para monitores externos com alta resolução.
-
Interface integrada (MPI, EPROM, MEMORY CARD, SIMATIC S5, e impressora)
-
Expansível para redes (Novell, etc.), transmissão de dados, FAX e modem
-
Portátil (aproximadamente 7 kg)
SENAI - SIEMENS - VW
19
Programação básica
20
SENAI - SIEMENS - VW
Programação básica
Instalando o STEP 7
Softwares para S7/C7/M7
Pacotes Padrões e
Opcionais para o
S7, C7 and M7
CFC
S7-SCL
M7-DDE-Server
S7-GRAPH
M7-ProC/C
S7-HiGraph
Borland C/C
STEP 7 MINI
++
++
STEP 7 BASIC
SIMATIC Manager
SIMATIC Manager
Symbol Editor
Symbol Editor
STEP 7 MICRO
Hardware Config.
HW-Konfiguration
Symbol Editor
(Synonyms)
Communications Config.
LAD/STL
S7-200
S7 - 200
Hardware Configuration
Communication Configuration
LAD/STL
LAD/STL/FBD
S7-300, C7
SIMATIC S7
Siemens AG 1996. All rights reserved .
S7-300/400, C7
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_2.2
M7-SYS
M7-300/400
Conhecimento em Automação
Training Center
STEP7 Micro:
Este é o software para elaboração de programas exclusivamente para o S7-200.
Possui duas versões: MICRO/DOS e MICRO/Win, que rodam nos sistemas DOS e
Windows 3.x respectivamente.
STEP 7
O STEP 7 é a ferramenta de automação da família SIMATIC S7 (exceção do S7-200).
Através dela se configura e parametriza-se todo o hardware, edita-se o programa,
testa-o, faz-se o comissionamento e a procura de defeitos, além de toda a
documentação necessária. Com o auxílio de pacotes opcionais pode-se ainda
SENAI - SIEMENS - VW
21
Programação básica
configurar redes locais, utilizar linguagens de alto-nível ou orientada à tecnologia,
utilizar Teleservice, etc.
STEP7 Mini
O STEP 7 é um sub-set do pacote STEP 7, ideal para se iniciar na automação com
aplicações stand-alone do S7-300. Em relação ao pacote normal não permite a
configuração do S7-400, de global-data (troca de dados) e nem o uso de pacotes
opcionais.
Options:
São pacotes opcionais para S7 e M7 para geração de programas em outras
linguagens, configuração de rede, etc. Estes pacotes permitem por exemplo a escolha
da linguagem de programação mais fácil ou apropriada a cada aplicação:
SCL
- Linguagem de alto-nível, baseada em Pascal. Ideal para organização e
manutenção de grande quantidade de dados, cálculos e algoritmos
complexos.
GRAPH - Linguagem para processos seqüenciais, baseados em estado e transição.
Em vez de se programar um sistema, faz-se a descrição de seus passos.
HiGraph- Linguagem para descrição de estados (não necessariamente seqüenciais). A
partir de um diagrama de estados faz-se a descrição do processo.
CFC
- Programação orientada tecnologicamente, onde se desenvolve graficamente
todo o processo.
22
SENAI - SIEMENS - VW
Programação básica
Pré-requisitos para Instalação do STEP 7
Hardware/Software
Pré-requisitos
Processador
Pentium 200 MHz
Hard drive (disponível)
400 MB (STEP 7+ projetos + área arqs. temp.)
RAM
>= 32 MB, 128 MB recomendado
Interface
MPI ou cabo PC/MPI
Monitor
SVGA, VGA ,EGA, ou TIGA
Mouse
Sim
Sistema Operacional
Windows 95/NT
CD-ROM
Sim
MPI = Multipoint Interface
SIMATIC S7
Siemens AG 1996. All rights reserved .
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_2.3
Conhecimento em Automação
Training Center
Pré-requisitos
PC-Compatíveis que atendam os pré-requisitos acima, podem ser utilizados sem
restrições. Para a comunicação com o CLP é necessário uma interface MPI (cartão
MPI-ISA ou PCMCIA) ou um cabo de conversão PC/MPI (para ser ligado à interface
serial).
F-EPROM
Para a gravação de F-EPROM é necessário um gravador de EPROM externo (os PG’s
Siemens já o possuem). A partir da nova versão do STEP 7 e das novas versões de
CPU, as F-EPROM poderão ser gravadas diretamente na CPU.
SENAI - SIEMENS - VW
23
Programação básica
Observação
Um upgrade de um versão antiga dos PG Siemens não é uma solução
economicamente viável. PG’s e PC’s usando um processador 80386 são
extremamente lentos.
24
SENAI - SIEMENS - VW
Programação básica
Instalação do STEP 7
SIEMENS
or
PG 740
1.
2.
3.
4.
5.
6.
Ativar o Setup.exe no “Win95 - System Monitoring Software.
Selecione a opção.
Selecione a linguagem.
Troque os discos.
O disco de autorização é solicitado.
Um Re-boot é solicitado.
SIMATIC S7
Siemens AG 1996. All rights reserved .
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_2.4
Conhecimento em Automação
Training Center
Instalação
Como todo o aplicativo W95, o software deverá ser instalado via a função
“Adicionar/Remover Programas” do W95, que executará o programa SETUP do
STEP 7.
Instalando Drivers
Durante a instalação do STEP 7, deve-se integrar drivers para a comunicação com o
CLP (cabo ou cartão) e para F-EPROM’s. Pode-se também mudar as definições
padrões de interrupção e endereços se necessários .
SENAI - SIEMENS - VW
25
Programação básica
As seguintes opções podem ser setadas durante a instalação do STEP 7:
-
Escopo da instalação (normal, mínima, definida pelo usuário)
-
Língua
-
Definições de interface PG/PC
-
Opções de EPROM
Proteção de Software
O software STEP 7 é provido com uma proteção contra cópia e pode ser operada em
somente um terminal de programação por vez. O software não pode ser usado até ser
autorizado pelo disquete de autorização. Este disquete transfere uma autorização para
o hard disk depois que a instalação do software foi concluída.
Autorização
Antes de utilizar o software em outro terminal de programação é necessário executar a
transferência de autorização.
Por favor o leia o conteúdo do arquivo README.TXT no disco de autorização. Sem
seguir estas informações existe risco que a autorização seja irrecuperavelmente
perdida.
Leia também o folheto Product Information que acompanha o software.
26
SENAI - SIEMENS - VW
Programação básica
A Ferramenta STEP 7
SIMATIC S7
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_2.5
Siemens AG 1996. All rights reserved .
Conhecimento em Automação
Training Center
Memory Card Parameter Assignment
Define os parâmetros para a programação de cartões de memória.
Setting the PG-PC Interface
Define os parâmetros da interface de comunicação PG-PC (ex.: o tipo de interface, cabo ou
placa, a interrupção de comunicação ou endereço MPI).
Readme (Product Information)
Fornece informações detalhadas sobre o STEP 7: versão, procedimento de instalação, etc.
SENAI - SIEMENS - VW
27
Programação básica
Converting S5 Files
Com o auxílio do conversor S5/S7, pode-se converter programas STEP 5 em programas
STEP 7.
Program. S7 Blocks
O Editor de Programas habilita você a escrever o seu programa com uma das linguagens de
programação STEP 7: Ladder Diagram (LAD), Statement List (STL) ou Function Blocks (FBD)
SIMATIC Manager
Esta é a principal aplicação, que também aparece como um ícone no DESKTOP do WINDOWS
95. Através dela é que se inicia a execução do projeto: configuração, edição, testes, etc.
É chamada de Manager, pois terá a função de gerenciar todo o projeto.
28
SENAI - SIEMENS - VW
Programação básica
Selecionando o Idioma para a Programação
Antes do bloco ser aberto para edição, os mnemônicos da linguagem para o
Editor de Programas devem ser selecionados. Pode-se selecionar entre
mnemônicos IEC (Internacional/Inglês) ou SIMATIC (Alemão).
SIMATIC Manager...
Options...
Customize
Language > SIMATIC
SIMATIC S7
Siemens AG 1996. All rights reserved .
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_2.6
Conhecimento em Automação
Training Center
Selecionando
1. Ative o comando de menu Options --> Customize
2. Selecione a pasta de Linguagem
3. Selecione a linguagem desejada:
-
SIMATIC = alemão;
-
IEC = Internacional (inglês)
Importante
Existem duas seleções independentes:
-
Língua do Editor -> seleciona o idioma da ferramenta STEP 7
(inglês/alemão/espanhol/italiano/francês)
-
Língua dos Mnemônicos -> seleciona o idioma em que o programa do usuário será
escrito (inglês/alemão)
SENAI - SIEMENS - VW
29
Programação básica
Exercício 2.1: Checando a Interface com a CPU
SIMATIC S7
Siemens AG 1996. All rights reserved .
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_2.7
Conhecimento em Automação
Training Center
Meta
Checar a parametrização correta da interface da PG.
Procedimento
-
Clique na barra de tarefas Iniciar
-
Selecionar SIMATIC ==> STEP 7 ==> Setting the PG/PC Interface
-
Depois de você ter selecionado “Cartão PC/MPI” clique no botão “Properties”
-
Checar se o endereço local da PG está setado para 0.
30
SENAI - SIEMENS - VW
Programação básica
Exercício 2.2: Definindo os Mnemônicos
Antes de você abrir um bloco de programa ou programa ...
Mnemônicos
SIMATIC (Alemão)
IEC (Internacional)
...selecione a linguagem
para a edição
em LAD/STL/FBD
SIMATIC S7
Siemens AG 1996. All rights reserved .
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_2.8
Conhecimento em Automação
Training Center
Mnemônicos
Antes de editar um programa, é necessário escolher entre 2 opções de mnemônicos
para exibição das instruções no editor de programa.
Pode-se escolher entre IEC (Internacional/Inglês) ou SIMATIC (Alemão).
Meta
Selecionar os mnemônicos desejados.
SENAI - SIEMENS - VW
31
Programação básica
Procedimento
1. Inicie o SIMATIC Manager.
2. Selecione no menu de comandos Options ⇒ Customize.
3. Escolha a Language.
4. Escolha a linguagem mnemônicos desejada e confirme com “OK”
Resultado
Quando programando, um dos seguintes modos será exibido:
-
Exemplo de instruções STL em linguagem Internacional:
A I 1.0
-
Exemplo de instruções STL em linguagem SIMATIC:
U E 1.0
32
//AND Entrada (Input) 1.0
//UND Entrada (Eingang) 1.0
SENAI - SIEMENS - VW
Programação básica
Introdução ao Hardware S7
S7-200 - Dados Técnicos (CPU 21x)
SIEMENS
SF
RUN
STOP
I0.0
I0.1
I0.2
I0.3
I0.4
I0.5
I0.6
I0.7
I1.0
I1.1
I1.2
I1.3
I1.4
I1.5
Q0.0
Q0.1
Q0.2
Q0.3
Q0.4
Q0.5
Q0.6
Q0.7
Q1.0
Q1.1
CPU 214
SIMATIC
S7-200
UEBER_T1D
SIMATIC S7
Conhecimento em Automação
Training Center
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_3.2
Siemens AG 1996. All rights reserved.
Dimensões
CPU212
CPU214
CPU215
CPU216
160x80x62 mm
197x80x62 mm
218x80x62mm
218x80x62mm
Memória:
de Trabalho (RAM)
1 KByte
4 KByte
8KByte
8KByte
de Instruções
185 instruções
2K
4k
4k
Registradores de Dados
0.5k words
2k words
2.5k words
5k words
I/O on-board
8 DI / 6 DO
14 DI / 10 DO
14 DI / 10 DO
SENAI - SIEMENS - VW
24 DI / 16 DO
33
Programação básica
Capacidade de Expansão
2 módulos de expansão
--------------------------
7 Módulos de expansão
--------------------------
Interrupções
1 ent. inter., 1 contad.
4 ent. inter., 3 contad.
4 ent. inter., 3 contad.----------------
interrup. (2 kHz)
interrup. (2x 7 kHz; 1x 2 kHz)
interrup. (2x 20 kHz; 1x 2 kHz)-----
Contadores/Temporizadores
64/64
128/128
128/256
256/256
0.8 ms
0.8ms
Tempo de Execução(por 1K/instruções)
1.2 ms
0.8 ms
Comunicação
1x PPI / Freeport
1x PPI/ Freeport / MPI 1x PPI
1x Profibus
1x PPI /Freeport
1x PPI
Manutenção
-------------------------------- Livre de Manutenção, não necessita de bateria
--------------------------------
Set de operações:
Básicas, standard, operações especiais, PID integrado , receive +PID, funções de receive,
funções aritiméticas (operações em ponto fixo e ponto flutuante), funções de jump, funções de
loop, funções de conversão de código.
Modelos
Cada CPU por sua vez possue diferentes modelos para as diferentes tensão dos I/O’s.
34
SENAI - SIEMENS - VW
Programação básica
S7-200 - Dados Técnicos (CPU 22x)
SIEMENS
SF
RUN
STOP
I0.0
I0.1
I0.2
I0.3
I0.4
I0.5
I0.6
I0.7
I1.0
I1.1
I1.2
I1.3
I1.4
I1.5
Q0.0
Q0.1
Q0.2
Q0.3
Q0.4
Q0.5
Q0.6
Q0.7
Q1.0
Q1.1
CPU 214
SIMATIC
S7-200
UEBER_T1D
SIMATIC S7
Conhecimento em Automação
Training Center
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_3.3
Siemens AG 1996. All rights reserved.
Dimensões
CPU221
CPU222
CPU224
CPU226
90x80x62 mm
90x80x62 mm
120.5x80x62mm
196x80x62mm
Memória:
de Trabalho (RAM)
4 kByte
4 kByte
8KByte
8KByte
de Instruções
1.3 k
1.3 k
2.6 k
2.6k
Registradores de Dados
1k words
1k words
2.5k words
8 DI / 6 DO
14 DI / 10 DO
2.5k words
I/O on-board
6 DI / 4 DO
SENAI - SIEMENS - VW
24 DI / 16 DO
35
Programação básica
Capacidade de Expansão
Nenhum módulo
2 módulos
---------- 7 módulos de expansão
4 ent. inter., 4 contad.
4 ent. inter., 4 contad.
--------- 4 ent. inter., 6 contad.
----------
interrup. (30 kHz)
interrup. (30 kHz)
---------
----------
Interrupções
interrup. (30 kHz)
Contadores/Temporizadores
256/256
256/256
256/256
256/256
0.37 ms
0.37ms
Tempo de Execução (por 1K/instruções)
0.37 ms
0.37 ms
Comunicação
--------------------------------- 1x PPI/ Freeport / MPI
--------------------------------- 2x PPI /
Freeport / MPI
Manutenção
-------------------------------- Livre de Manutenção, não necessita de bateria
--------------------------------
Set de operações
Básicas, standard, operações especiais, PID integrado , receive +PID, funções de receive,
funções aritiméticas (operações em ponto fixo e ponto flutuante), funções de jump, funções de
loop, funções de conversão de código.
Modelos
Cada CPU por sua vez possue diferentes modelos para as diferentes tensão dos I/O’s.
36
SENAI - SIEMENS - VW
Programação básica
Espectro de Módulos
PS:
Entrada:
120/230 V ~
Saída:
24 V -
IM:
- Send
- Receive
- Send/Receive
SM:
DI / DQ
- 24 V - 120/230 V ~
- Relê
AI/AQ
- Tensão
- Corrente
- Resistência
- Termo elemento
SIMATIC S7
Siemens AG 1996. All rights reserved.
FM:
CP:
- Contadores
- Posicionadores - Ponto
a ponto
- Controle em
malha fechada - AS-i
- PROFIBUS
FMS/DP
- Industrial
Ethernet
PS = Fonte de tensão
IM = Módulo de interface
SM =Módulo de sinal
FM = Módulo de função
CP =Processador de comunicação
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_3.4
Conhecimento em Automação
Training Center
Mód. de Sinal SM
O módulo de sinal recebe do campo os sinais elétricos e os adapta aos vários níveis
de sinais dos módulos:
-
Entrada/saída digital
-
Entrada/saída analógica (tensão, corrente, resistência, termoelementos)
-
Acessórios: conectores frontais
Mód. de Interface IM
O módulo de interface torna possível a configuração de vários trilhos /bastidores de
expansão. Estes módulos fazem a conexão entre os trilhos / bastidores:
-
Módulo de Transmissão, conectado no Rack Central.
-
Módulo de Recepção, conectado no Rack de Expansão.
SENAI - SIEMENS - VW
37
Programação básica
-
O módulo combinado Send/Receive é uma solução econômica para configuração
com dois trilhos; neste caso no trilho de expansão são permitidos somente módulos
de I/O (SM). Por ex. IM365 no S7-300.
Mód. de Funções FM
O módulo de função oferece “funções especiais”:
-
Contagem
-
Posicionamento
-
Regulação em malha fechada
Mód. de Comunicação CP
Módulos de comunicação oferecem as seguintes possibilidades de rede:
-
Comunicação ponto a ponto
-
PROFIBUS
-
Industrial Ethernet
38
SENAI - SIEMENS - VW
Programação básica
S7-300 - Endereçamento de Módulos/Slot
Fonte de
alimentação CPU
IM
SM
SM
SM
SM
SM
SM
5
6
7
8
9
SM SM
s
Slot:
1
2
3
4
10
11
No S7-300 o endereçamento dos módulos é slot-orientado, isto é, dependem da
posição do módulo no trilho
SIMATIC S7
Siemens AG 1996. All rights reserved.
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_3.5
Conhecimento em Automação
Training Center
No S7-300 o endereçamento dos módulos de I/O, CP e FM são slot-orientados, isto é,
o seu endereço depende da posição do módulo no trilho. Alguns slots são reservados:
PS, CPU e IM.
Slot 1:
PS - Fonte de alimentação. Obrigatoriamente no primeiro slot. Não é associado
nenhum endereço para a fonte de alimentação.
Slot 2:
CPU; deverá estar localizada próxima a fonte de alimentação. Não é associado
nenhum endereço para a CPU (veremos mais tarde endereço MPI).
SENAI - SIEMENS - VW
39
Programação básica
Slot 3:
Módulo de interface (IM). Para conectar racks de expansão. Não é associado nenhum
endereço para a IM. Até mesmo se a IM não estiver presente, ela deverá ser
considerada no esquema de endereçamento do slot. O slot 3 é logicamente reservado
pela CPU para a IM.
Slots 4 - 11:
Módulos de sinais. Slot 4 é considerado o primeiro slot para módulos de entrada e
saída (ou CP ou FM). Um exemplo de endereçamento é exibido abaixo para um cartão
de digital (entrada = I, saída = Q):
Importante
A CPU 315-2DP permite que os endereços sejam livremente definidos.
40
SENAI - SIEMENS - VW
Programação básica
S7-300 - Endereçamento de I/O - Digital
Slot #
3
Rack
3
Fonte
IM
de
(Receive )
Tensão
Rack
2
Fonte
IM
de
(Receive )
Tensão
Rack
1
IM
Fonte
de
(Receive )
Tensão
Rack
0
CPU
e
Fonte
de
Tensão
IM
(Send)
4
5
6
7
8
9
10
96.0
to
99.7
100.0 104.0
to
to
103.7 107.7
108.0 112.0
to
to
111.7 115.7
116.0 120.0 124.0
to
to
to
119.7 123.7 127.7
64.0
to
67.7
68.0
to
70.7
72.0
to
75.7
76.0
to
79.7
84.0
to
87.7
88.0
to
91.7
32.0
to
35.7
36.0
to
39.7
40.0
to
43.7
44.0
to
47.7
48.0
to
51.7
52.0
to
55.7
56.0
to
59.7
60.0
to
63.7
0.0
to
3.7
4.0
to
7.7
8.0
to
11.7
12.0
to
15.7
16.0
to
19.7
20.0
to
23.7
24.0
to
27.7
28.0
to
31.7
SIMATIC S7
Siemens AG 1996. All rights reserved.
80.0
to
83.7
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_3.6
11
92.0
to
95.7
Conhecimento em Automação
Training Center
Endereçamento Digital
O endereçamento das entradas (I) e saídas (Q) digitais começa com o endereço 0 para
o módulo de sinal localizado no slot 4 (1° slot para SM). A relação entre o slot físico e o
endereço do módulo é exibida acima. Cada módulo digital ocupa 4 bytes de endereços
independente do número de pontos.
Tabela Imagem da Periferia
Aos sinais digitais do CLP corresponde uma área na CPU que contém o estado atual
das entradas e saídas. Esta área, denominada Tabela Imagem da Periferia de Entrada
(PII) e de Saída (PIQ) são atualizadas automaticamente pela CPU a cada início e fim
de ciclo respectivamente. Pode-se acessar estas áreas (I e Q) em bits, bytes, words
ou double words, como mostrado nos exemplos a seguir:
SENAI - SIEMENS - VW
41
Programação básica
-
Q4.0 é um dado que é arquivado no primeiro bit (bit 0) do byte 4 na tabela imagem
da periferia de saída (usando a numeração padrão das I/O do diagrama acima, isto
corresponde ao primeiro ponto no módulo 2)
-
QB100 refere-se ao dado no byte 100 da tabela imagem da periferia de saída.
-
IW100 refere-se ao dado que é arquivado nos bytes 100 e 101 da tabela imagem
da periferia de entrada.
-
QD24 refere-se ao dado que é arquivado nos bytes 24, 25, 26, 27 da tabela
imagem da periferia de saída.
Endereçamento Digital do S7-400
O S7-400 permite a definição pelo usuário do endereçamento dos módulos. Caso não
seja definido pelo usuário, o CLP assume um endereçamento default para os módulos,
cada módulo ocupando 4 bytes (32 bits). O endereçamento digital segue o seguinte
padrão:
-
Inicio Endereçamento Digital = ( número do slot físico - 1) x 4
-
Exemplo : Endereço inicial do módulo digital no slot 4 é 12.0
42
SENAI - SIEMENS - VW
Programação básica
S7-300 - Endereçamento de I/O - Analógico
Slot #
3
Rack
3
Fonte
IM
de
(Receive )
Tensão
Rack
2
Fonte
IM
de
(Receive )
Tensão
Rack
1
Fonte
IM
de
(Receive )
Tensão
Rack
0
CPU
e
Fonte
de
Tensão
IM
(Send)
4
5
640
to
654
656
to
670
672
to
686
688
to
702
704
to
718
720
to
734
736
to
750
752
to
766
512
to
526
528
to
542
544
to
558
560
to
574
576
to
590
592
to
606
608
to
622
624
to
638
384
to
398
400
to
414
416
to
430
432
to
446
448
to
462
464
to
478
480
to
494
496
to
510
256
to
270
272
to
286
288
to
302
304
to
318
320
to
334
336
to
350
352
to
366
368
to
382
SIMATIC S7
Siemens AG 1996. All rights reserved.
6
7
8
9
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_3.7
10
11
Conhecimento em Automação
Training Center
Endereçamento Analógico
O endereçamento das entradas e saídas analógicas começa no endereço 256 para o
módulo de sinal localizado no slot 4 (1o slot para SM). A figura acima mostra o
esquema de endereçamento dos módulos analógicos. Cada módulo analógico ocupa
16 bytes de endereços, independente do tipo de módulo, sendo que cada canal
analógico ocupa dois bytes de dados.
Acesso aos Sinais Analógicos
As I/O analógicas acessam uma área de memória denominada Periferia (PI e PQ) da
CPU. Os sinais analógicos, ao contrário dos sinais digitais, não possuem uma tabela
imagem (PII ou PIQ), atualizados a cada ciclo. Ao invés disto, você define quando os
dados serão atualizados (lidos/escritos) usando simplesmente o endereço analógico no
SENAI - SIEMENS - VW
43
Programação básica
seu programa. O endereço identificador para uma entrada analógica é PIW e para
saída analógica é PQW.
No S7-300 o endereçamento para sinais analógicos começa com 256, sendo portanto
que o primeiro canal no primeiro módulo no primeiro rack irá então ser PIW256. O
último endereço analógico é 766 (para o S7-300).
Exemplo:
Para acessar os dados do segundo canal no primeiro módulo no rack 2, o endereço da
entrada analógica e PIW514.
Endereçamento Analógico no S7-400
O S7-400 também suporta opcionalmente endereçamento padrão para módulos
analógicos. O endereçamento analógico default segue o seguinte padrão:
-
Endereço Inicial Analógico = (número do slot físico - 1) x 64 + 512
-
Exemplo: Endereço inicial de um módulo analógico no slot 4 é 704.
44
SENAI - SIEMENS - VW
Programação básica
S7-300 - Dados Técnicos
CPU
312IFM
CPU
313
CPU
314
CPU
314IFM
- de trabalho
6 kB
12 kB
24 kB
32 kB
48 kB
64 kB
128 kB
512 kB
- de carga integrada (RAM)
20 kB
20 kB
40 kB
48 kB
80 kB
96 kB
192 kB
64 kB
- de trabalho externa (FEPROM)
-
4 MB
4 MB
4 MB
4 MB
4 MB
4 MB
4 MB
Tempo de Excução
(por 1k de instruções binárias)
0.6 ms
0.6 ms
0.3 ms
0.3 ms
0.3 ms
0.3 ms
0.3 ms
0.1 ms
ED / SD:
128
128
512
512
1024
2048
4096
16384
EA / AS:
32
32
64
64
128
256
512
2048
ED / SD
10 / 6
-
-
20 / 16
-
-
-
-
EA / AS
-
-
-
4/1
-
-
-
-
Operandos:
- Memory Markers (flags)
1 k
2 k
2 k
2 k
2 k
2 k
2 k
8 k
- Contadores
32
64
64
64
64
64
64
512
- Temporizadores
64
128
128
128
128
128
128
512
Número de Blocos Máximo:
- FB
32
128
128
128
192
192
256
1024
- FC
32
128
128
128
192
192
512
1024
- DB
63
127
127
127
255
255
511
2047
Funções Integradas
sim
não
não
sim
não
não
não
não
Número de Trilhos / Módulos
1/8
1/8
4 / 32
4 / 32
4 / 32
4 / 32
4 / 32
4 / 32
Máximo de conexões ativas por
4
4
4
4
4
4
4
32
MPI
MPI
MPI
MPI
MPI
MPI, DP
MPI
MPI, DP
Memória
CPU
315
CPU
315-2 DP
CPU
316
CPU
318-2 DP
I/O's Integradas
(por exemplo contadores)
interface MPI
Interface Integrada
SIMATIC S7
Siemens AG 1996. All rights reserved.
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_3.8
Conhecimento em Automação
Training Center
Dados Técnicos
A família S7-300 suporta um set de instruções e endereçamento comuns. A figura
mostra as especificações técnicas mais importantes para as CPU’s 312 a 315.
Números de Blocos
Diferenças nas quantidade de números de blocos (FB, FC, DB).
-
CPU 312
CPU 315
-
32 FB
192 FB
-
32FC
192 FC
-
63 DB
255 DB
SENAI - SIEMENS - VW
45
Programação básica
è FB Blocos de Funções
è FC Funções
è DB Blocos de Dados
CPU 3xx IFM
As CPU’s IFM são caracterizadas não somente por possuírem entradas/saídas
integradas na CPU (on-board) como também funções especiais incorporadas.
Trilhos (1)
Para as CPU’s 312/313, é possível a montagem em somente um trilho (sem
expansão)
Trilhos (2)
As CPU’s 314 a 318 suportam até quatro trilhos ( 3 trilhos de expansão).
Conexão DP
Os S7’s 315-2 DP / 318-2 DP possuem uma interface adicional para PROFIBUS DP
(Periferia Distribuída) e permitem a livre escolha do endereçamento dos módulos de
I/O.
46
SENAI - SIEMENS - VW
Programação básica
S7-400 - Dados Técnicos
CPU
CPU
412-1
412-1
CPU
CPU
412-2
412-2
CPU
CPU
414-2
414-2
CPU
CPU
414-3
414-3
CPU
CPU
416-2
416-2
CPU
CPU
416-3
416-3
CPU
CPU
417-4
417-4
CPU
CPU
417H
417H
Memória
- de trabalho
- de carga integrada (RAM)
48 kB
256 kB
72 kB
256 kB
128 kB
256 kB
384 kB
256 kB
0,8 MB
256 kB
1,6 MB
256 kB
2 MB
256 kB
2 MB
256 kB
- de trabalho externa (FEPROM)
64 MB
64 MB
64 MB
64 MB
64 MB
64 MB
64 MB
64 MB
Tempo de Excução
(por 1k de instruções binárias)
0.2 us
0.2 us
0.1 us
0.1 us
0.08 us
0.08 us
0.1 us
0.1 us
Área máx. endereço I/O
4 kB
4 kB
8 kB
8 kB
16 kB
16 kB
16 kB
16 kB
- Memory Markers (flags)
4 k
4 k
8 k
8 k
16 k
16 k
16 k
16 k
- Contadores
- Temporizadores
256
256
256
256
256
256
256
256
512
512
512
512
512
512
512
512
- FB
- FC
256
256
256
256
1024
1024
1024
1024
2048
2048
2048
2048
6144
6144
6144
6144
- D B
512
512
1024
1024
4096
4096
8192
8192
Máximo de conexões ativas por
interface MPI
16
16
32
32
44
44
44
44
Interface Integrada
MPI/DP
MPI/DP
MPI/DP,
MPI/DP,
MPI/DP,
MPI/DP,
MPI/DP,
MPI/DP,
DP
DP
DP
DP
DP, +2x
Freeport
DP
Operandos:
Número de Blocos Máximo:
SIMATIC S7
Siemens AG 1996. All rights reserved.
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_3.9
Conhecimento em Automação
Training Center
Tipos de CPU:
Um range completo de CPU’s supre todas as exigências de desempenho individuais no
que se refere a tempo de execução, tamanho da memória de trabalho e número de
blocos.
E ainda mais, as CPU’s 400 possuem integrada pelo menos uma interface MPI /
PROFIBUS-DP (mestre).
P e C-BUS
Cada S7-400 é equipado com um barramento paralelo 1,5 µsec/Byte (P-bus) para
acesso de I/O em alta velocidade e um barramento de comunicação serial com 10,5
SENAI - SIEMENS - VW
47
Programação básica
MBaud para troca de dados via MPI com módulos de apoio, tais como CPU’s, OP’s,
FM’s, etc.
SFB / CFB
E ainda, é possível transferir dados entre CPU’s, FM’s e CP’s com o funções especiais
como System Function Blocks (SFB’s ) e Communication Function Blocks (CFB’s).
48
SENAI - SIEMENS - VW
Programação básica
S7-300 - Elementos da CPU
LEDs de Status
da CPU
CPU314
SF
BATF
DC5V
FRCE
RUN
STOP
SIEMENS
Seleção do Modo
de Operaçao
Slot para o Cartão de
Memória
RUN-P
RUN
STOP
M RES
SIMATIC
S7-300
Interface MPI
Battery
SIMATIC S7
Siemens AG 1996. All rights reserved.
MPI
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_3.10
Conhecimento em Automação
Training Center
Modo de Operação
Chave para seleção manual do modo de operação da CPU
- MRES = Reset da memória (overall reset)
- STOP = o programa não é executado.
- RUN
= O programa é processado porém o programa não pode ser alterado pelo
Terminal de Programação (só lido).
- RUN-P = A CPU está processando o programa, e o Terminal de programação pode
acessar/alterar o programa e o modo de operação (não existe trava).
SENAI - SIEMENS - VW
49
Programação básica
Status da CPU (LEDS)
SF
= erro interno na CPU ou erro de diagnóstico nos módulos.
BATF = sem bateria ou carga baixa .
DC5V = fonte +5V
- acesa : indica tensão DC Ok
- piscando: sobrecarga.
FRCE = indica que pelo menos uma entrada ou saída está forçada (consulte versão
de CPU)
RUN
= piscando durante a inicialização da CPU, acesa quando a CPU está em
modo RUN (processando o programa).
STOP = pisca se um reset da memória é necessário, acesa indica que a CPU está no
modo STOP (programa não está sendo executado).
Encaixe do Módulo de Memória
O módulo de memória (memory card) é inserido neste local. O módulo é utilizado para
arquivar o programa como segurança para o caso de falta de alimentação e ausência
da bateria
Encaixe da Bateria
Existe um local para bateria de lithium abaixo da tampa. A bateria salva o conteúdo da
memória RAM no caso de uma falha na alimentação da CPU.
Interface MPI
O conector de 9-pinos sob a tampa é a conexão da multipoint interface (MPI). Esta é a
porta de programação da CPU do S7-300, e pode ser utilizada para a conexão de
OP’s, PC’s e outros CLP’s.
50
SENAI - SIEMENS - VW
Programação básica
S7-400 - Elementos da CPU
DI 32xDC24V
CPU 414- 2
X2
3 4
421 - 1BL00- 0AA0
INTF
EXTF
LEDs de Status
da CPU
X2
3 4
414 - 2XG00- 0AB0
INTF
EXTF
DP
LEDs de Satus
da Interface DP
Integrada
INTF
EXTF
BUSF
FRCE
CRST
FRCE
CRST
RUN
Seleçao tipo
de Start-up
STOP
CRST
WRST
RUN-P
RUN
RUN
STOP
CRST
WRST
RUN-P
RUN
Seleção do Modo
de Operaçao
STOP
CMRES
STOP
CMRES
Interface DP
Slot para o Cartão de
Memória
X3
Interface MPI
X1
EXT.-BATT.
X1
Bateria Externa
5...15V DC
SIMATIC S7
Siemens AG 1996. All rights reserved.
EXT.-BATT.
5...15V DC
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_3.11
Conhecimento em Automação
Training Center
Soquete da Bateria
Soquete (“banana”, 2,5mm) para a conexão de uma fonte de tensão/bateria externa,
de 5 ... 15VDC para backup da RAM no caso de ser necessário substituir a fonte de
tensão do bastidor (sem perda de dados).
Interface MPI
Conexão para CPU’s, OP’s, FM’s, etc com o terminal de programação. Também
utilizada para comunicação via dados globais (GD) com outras CPU’s.
SENAI - SIEMENS - VW
51
Programação básica
Interface DP
As CPU’s têm como característica a interface DP para conexão de I/O’s distribuídas
integrada diretamente na CPU. O S7-400 é mestre para conexões com ET200M,
ET200U (B/C), S7-300, etc.
Encaixe do Módulo de Memória
Os cartões FLASH-RAM- ou -EPROM podem (devem) ser inseridos no S7-400 para
aumentar a capacidade de memória de carga de acordo com a exigência da aplicação:
-
os dados da memória F-RAM com 64 KB, 256 KB, 1 MB, 2 MB são sustentados
na CPU pela bateria.
-
os dados da memória F-EPROM com até 64 MB são sustentados pela EEPROM
integrada, não necessitando de bateria.
Modo de Operação
MRES = Reset da memória (overall reset)
STOP = o programa não é executado.
FRCE = indica que pelo menos uma entrada ou saída está forçada (consulte versão
de CPU)
RUN
= O programa é processado, mas pode somente ser lido (não é permitido
alterá-lo).
RUN-P = A CPU está processando o programa, e o Terminal de Programação pode
alterar o programa e o modo de operação (não existe trava).
Modo Start-Up
CRST = (ColdReSTart) o programa re-inicia sempre a partir da 1. instrução
WRST = (Warm ReSTart) o programa re-inicia no mesmo ponto em que havia parado
A CPU indica o modo start-up através do LED de status
52
SENAI - SIEMENS - VW
Programação básica
Faixa de Endereçamento Máximo*1 no STEP 7
Área de endereço
Imagem do Processo I/Q
Tipo de Acesso
Operando Endereçam. máx.
bit entrada/saída
I/Q
0.0 to 65535.7
byte entrada/saída
IB / QB
0 a 65535
word entrada/saída
IW / QW
0 a 65534
double word entrada/saída
ID / QD
0 a 65532
bit de memória
M
0.0 a 16383.7
byte de memória
MB
0 a 16383
word de memória
MW
0 a 16382
double word de memória
MD
0 a 16380
byte I/Q , periferia
PIB / PQB
0 a 65535
word I/Q, periferia
PIW/PQW
0 a 65534
double word I/Q , periferia
PID/PQD
0 a 65532
Temporizadores
Temporizadores (T)
T
0 a 512
Contadores
Contadores (C)
C
0 a 512
Blocos de dados
Bloco de dados (DB)
Aberto com OPN DB
Bit, byte, word, double
word
Aberto com OPN DI
Bit, byte, word, double
word
DB
1 a 8192
DBX,DBB
DBW,DBD
0 a 65532
DIX,DIB
DIW,DID
0 a 65532
Memory markers (Flags)
Entrada/saída analógica
(ou sem imagem de processo)
Dados em blocos de dados
1) Veja end. permitido para cada CPU.
SIMATIC S7
Siemens AG 1996. All rights reserved .
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_3.1 2
I
Entrada
Q
Saída
B
Byte (8 bits)
W
Word (16 bits)
D
Double word (32 bits)
M
Memória (flag)
P
Periferia (acesso direto- PIW/PQW)
T
Temporizadores
C
Contadores
Conhecimento em Automação
Training Center
DB Data block
DI
Data Block (usado em Bloco de Dados Instance)
Importante
Verifique os dados técnicos da CPU utilizada para verificar sua capacidade de
endereçamento.
SENAI - SIEMENS - VW
53
Programação básica
Demonstração: Monitorando e Modificando Variáveis
SIMATIC S7
Siemens AG 1996. All rights reserved.
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_3.13
Conhecimento em Automação
Training Center
Esta é uma demonstração para auxiliar você a entender como endereçar I/Q no S7300.
Através da ferramenta SIMATIC Manager, o instrutor irá mostrar a relação entre
endereçamento lógico e endereçamento físico.
A tabela de entradas e saídas no rack é criada com auxílio de “Modify and Monitor
Status Variables”. A tabela é então ativada.
54
SENAI - SIEMENS - VW
Programação básica
Exercício 3.1: Resetando a Memória da CPU
Passos
Procedimentros
Resultados
1
2
Posicionar a chave na posição STOP.
A CPU irá para STOP.
Gire a chave em direção a posição MRES.
Permaneça nesta posição até que o LED
STOP (amarelo) pisque 2 vezes.
O LED STOP (amarelo) irá apagar e tornará
a acender depois de aproximadamente 3
segundos .
3
Girar a chave para posição STOP
imediatamente depois que o LED STOP
piscar a 2 vez, e torne a girar para a
posição MRES. Retornar a chave para a
posição STOP novamente.
O LED amarelo irá piscar por
aproximadamente 3 segundos e então
ficará acesa constantemente.
4
Inicie o STEP 7 e ative a função Acessible
Nodes
Todas as CPU’s conectadas ao PG/PC são
mostradas (MPI=....)
5
Selecione a CPU que foi resetada.
Os blocos da CPU serão exibidos.
6
Baseado na lista de blocos, determine
quais blocos ainda estão presentes na
CPU. Somente os blocos de sistema
podem estar presentes (SDB, SFC e SFB).
Não poderá aparecer OB’s, DB’s FB’s ou
FC’s no diretório do SIMATIC Manager.
SIMATIC S7
Siemens AG 1996. All rights reserved.
Data :
07/10/00
Versão : 3.1
Arquivo : pro1_3.14
Conhecimento em Automação
Training Center
Meta
Apagar todos os blocos da CPU através de um reset geral.
Procedimentos
Siga os passos da figura acima.
Acontecimentos Durante um Reset da Memória da CPU
Quando é executado um reset na CPU, ocorre o seguinte:
-
Deleção dos dados na memória de trabalho e memória de carga.
-
Deleção do back-up da memória (áreas retentivas).
-
Teste de Hardware.
-
Inicialização do hardware e transferência dos parâmetros básicos para CPU.
SENAI - SIEMENS - VW
55
Programação básica
-
Cópia do programa do cartão de memória para a memória interna da CPU, se o
cartão de memória estiver plugado.
Endereço MPI
Se não estiver plugado o cartão de memória, os endereços MPI setados serão retidos
durante o reset da CPU. Se o cartão de memória estiver plugado, os endereços
arquivados no cartão serão transferidos.
Buffer de Memória
O conteúdo do buffer de diagnóstico fica retido quando é feito um reset na CPU.
Reset da Memória via PG/PC
É possível também resetar a CPU via o Terminal de Programação. Gire a chave para
a posição RUN/P, e proceda da seguinte forma:
-
Inicie o SIMATIC Manager.
-
Selecione a função Acessible Nodes.
-
Selecione a CPU.
-
Comando de menu PLC ⇒ Operating Mode. Use o símbolo STOP para passar
para STOP
-
56
Selecione no menu de comando PLC ⇒ Memory Reset.
SENAI - SIEMENS - VW
Programação básica
O Software STEP 7
Iniciando o STEP 7
Para Iniciar...
SIMATIC S7
Siemens AG 1995. All rights reserved .
double-click
Date:
07/11/00
Version: 3.1
File No.: pro1_4.2
Conhecimento em Automação
Training-Center
Iniciando o STEP 7
No ícone SIMATIC Manager que aparece no Windows 95 ou no menu Start (Iniciar),
acima do grupo “Programs”. Como em todas aplicações WINDOWS 95, o programa é
ativado com um double-click no símbolo SIMATIC Manager ou via menu
Start ⇒ SIMATIC ⇒ STEP 7 ⇒ SIMATIC Manager
SENAI - SIEMENS - VW
57
Programação básica
Menu e Barra de Ferramentas do Editor de Programas
Sistema de menu
(abrir/fechar etc.)
Título da janela
ativa
Botões de Comando
Minimizar/Maximizar/fechar
Barra de Títulos
Barra de Menu
Barra de
Ferramentas
Área de
Trabalho
Barra
de Status
SIMATIC S7
Siemens AG 1995. All rights reserved .
Date:
07/11/00
Version: 3.1
File No.: pro1_4.3
Conhecimento em Automação
Training-Center
Janela do STEP 7
•
Barra de título:
-
•
Barra de menu:
-
•
área na qual você digita ou seleciona programa/informações.
Barra de Status:
-
58
contém funções e ícones de uso freqüente do menu de comandos.
Área de trabalho:
-
•
contém todos os menus disponíveis para a janela corrente.
Barra de ferramentas:
-
•
contém o título da aplicação e da ferramenta ativada na janela
Exibe o status e informações adicionais sobre os dados selecionados.
SENAI - SIEMENS - VW
Programação básica
Barra de ferramentas e de menu
•
File:
-
•
Edit:
-
•
muda a visualização da tela.
Options:
-
•
corta, copia, apaga, cola, seleciona itens.
View:
-
•
abre, cria, salva, e imprime arquivos ou blocos
seta várias telas ou opções da aplicação.
Window:
-
seleciona o organiza as janelas; sobrepondo, lado a lado, tamanho da janela ou
fechar janela.
•
Help:
-
acesso ao help on-line e Tutorial.
SENAI - SIEMENS - VW
59
Programação básica
Usando o Help do STEP 7
SIMATIC S7
Siemens AG 1995. All rights reserved .
Date:
07/11/00
Version: 3.1
File No.: pro1_4.4
Conhecimento em Automação
Training-Center
Sistema
Cada parte do STEP 7 possui um sistema de help (ajuda) completo. O sistema
consiste de:
-
Help - Menu
O menu é uma tabela de conteúdos e dicionário de palavras que conduz a vários
tópicos de ajuda. O glossário fornece definições para os termos usados.
-
Help - Botões de comando
Os botões de comando são localizados em vários campos de diálogo. O conteúdo
relacionado ao help é exibido em vários campos de diálogo.
60
SENAI - SIEMENS - VW
Programação básica
Palavras de Comandos
Certas palavras são especialmente marcadas no texto do help. Quando você clicar
nestas palavras, um help adicional com uma definição detalhada do termo é exibido.
F1
O sistema de help pode ser chamado a qualquer momento com a tecla F1 (help
sensível ao contexto).
Pesquisa
É possível procurar uma informação específica sobre um termo usando a função
Pesquisa (Search).
Imprimir
Pode-se imprimir (Print) uma cópia do tópico selecionado.
Notas
O usuário pode inserir seus próprios comentários no help. Estes comentários são
identificados no texto de help pelo “paper tips”(dicas) (Edit ⇒ Comment).
Marcas
Uma vez encontrado o texto específico do help, você pode marcar a localização
setando como uma marca. Para definir uma marca para futura referência, selecione
Bookmark ⇒ Define.
Navegação
Botões de controle << e >> facilitam o avanço ou o retorno para outros tópicos do help.
SENAI - SIEMENS - VW
61
Programação básica
Estrutura de Projeto no SIMATIC Manager
Projeto
Estação HW
Programação da CPU do S7-300
Programas S7/M7 (associado à um HW)
Programa do usuário em arquivos fontes (STL)
Programa do usuário com blocos S7
OBs, FBs, FCs, DBs, etc.
Programa S7/M7 (não associado à um HW)
Programa do usuário em arquivos fontes
Programa do usuário em blocos S7
OBs, FBs, FCs, DBs, etc.
SIMATIC S7
Siemens AG 1995. All rights reserved .
Date:
07/11/00
Version: 3.1
File No.: pro1_4.5
Conhecimento em Automação
Training-Center
Projeto
A estrutura do projeto de automação se inicia pelo ícone de projeto, localizado no primeiro nível.
O ícone é identificado pelo nome do projeto.
Estação de HW
Para definir e parametrizar o hardware deve-se criar a estação de hardware(S7-300/ S7-400). A
estação criada (S7-x00 Station) pode ter seu nome alterado pelo usuário, e seus módulos são
definidos através da ferramenta Station Configuration. Ao se definir os módulos, o sistema
automaticamente cria os sub-diretórios respctivos (CPU, Programa, Blocks, etc.)
62
SENAI - SIEMENS - VW
Programação básica
Programas S7/M7
O programa de usuário referente à um CLP propriamente dito, é localizado sob o diretório S7Programs. Este diretório pode estar ou não associado à uma estação específica criada.
Associada à um HW, o diretório se encontra subordinado `a CPU. Caso contrário fica
subordinado diretamente ao Projeto.
Nos sub-diretórios Source e Blocks estão localizados os programas do usuário, em arquivos
fontes ou em blocos S7 respectivamente.
Programa S7
(S7-Programms)
Blocos de Programa
(blocks)
Blocos S7 OBs, FBs, FCs, etc.
Arquivos fonte
(source files)
Diagramas
(CFC)
Arquivos fonte:
STL, SCL, GRAPH, HiGraph,
Diagrama CFC
Diagrama SFC
Tabela de símbolos
(Symbol)
SENAI - SIEMENS - VW
63
Programação básica
Objetos do STEP 7
SÍMBOLO
OBJETO
Projeto
Estação
Módulo Programável
(CPU, CP ou FM)
Programa S7
(offline)
Blocos de Programa
(Blocks)
Programa S7
(online)
Bloco
Tabela de Simbólicos
Conexão
SIMATIC S7
Siemens AG 1995. All rights reserved .
DESCRIÇÃO
Representa o ïcone Principal:
Projeto de Automação
Representa um HW configurado, ao
qual está subordinado o programa
Representa módulo que contém
programa ou parametrização
Contém todos os elementos
referentes à programação: blocos,
arq. fontes, simbólicos.
Representa o diretório que contém os
blocos de programa: OBs, FBs, DBs
Contém os elementos referentes ao
programa on-line.
Representa o bloco de programa:
OB1, FB10, FC34, ...
Representa o editor dos simbólicos
Representa o Editor de Conexões de
Comunicação
Date:
07/11/00
Version: 3.1
File No.: pro1_4.6
SUBORDINADO A
Arquivo
Projeto
Estação
Módulo Programável ou
Projeto
Programa S7
(online ou offline)
Módulo Programável ou
Projeto
Blocos de Programa
(online ou offline)
Programa S7
(offline)
Programa S7
(offline)
Conhecimento em Automação
Training-Center
Objetos
Como uma linguagem moderna, o STEP 7 não poderia deixar de abusar de objetos
para tornar o uso do software intuitivo e user-friendly. Assim uma série de objetos
representam as diferentes ferramentas, arquivos e funções disponíveis.
Estrutura
A estrutura do projeto já explicada anteriormente, mostra que o projeto é hierarquizado,
tendo-se acesso aos diferentes objetos conforme se avança na estrutura (subordinado
a ....).
64
SENAI - SIEMENS - VW
Programação básica
Programas S7 online e offline
As pastas de programa de usuário (S7-Programs) diferem entre si nos modos online e
offline. No modo online está se acessando diretamente o programa na CPU, portanto
só se encontram lá os blocos realmente relevantes para o funcionamento do CLP.
Assim, objetos como Tabela de Simbólicos e Arquivos fontes só são encontrados no
modo off-line.
Outros Objetos
Além dos objetos listados acima existem outros que representam outras funções.
Alguns destes objetos são encontrados somente se instalados outros pacotes
opcionais:
Arquivos Fontes - Subordinado a Source Files
Parametrização da Rede (MPI, Profibus, etc.) - Subordinado ao Projeto
Estações externas para configuração de comunicação - Subordinado ao Projeto
Tela de OP - Subordinado ao Projeto - Opcional PROTOOL
Pasta de Diagramas CFC - Subordinado a Programa S7 - Opcional CFC
SENAI - SIEMENS - VW
65
Programação básica
Blocos do STEP7
Projeto
SIMATIC S7
Date:
07/11/00
Version: 3.1
File No.: pro1_4.7
Siemens AG 1995. All rights reserved .
Conhecimento em Automação
Training-Center
Blocos
Blocos são partes funcionais do programa do usuário. Eles diferem em função, uso e
estruturas. Blocos representam o código executável do programa.
O ambiente STEP 7 suporta os seguintes tipos de blocos:
•
66
Blocos lógicos:
-
OBs
- Blocos de organização
-
FCs
- funções
-
FBs
- blocos de funções
-
SFCs - Funções de sistema
-
SFBs - blocos de função de sistema
SENAI - SIEMENS - VW
Programação básica
•
Blocos de dados:
-
DBs
- Blocos de dados
-
SDBs - Blocos de dados de sistema
•
Tipos de dados definidos pelo usuário:
•
UDTs
VAT
VAT (Tabela para monitoração/modificação de variáveis) não são blocos, mas são
arquivadas no programa do usuário.
SENAI - SIEMENS - VW
67
Programação básica
Navegando no STEP 7
SIMATIC S7
Siemens AG 1995. All rights reserved .
Date:
07/11/00
Version: 3.1
File No.: pro1_4.8
Conhecimento em Automação
Training-Center
A navegação dentro do STEP 7 é muito parecida com a navegação do
Windows Explorer . É possível inclusive abrir vários projetos, ou visualizar offline e
online ao mesmo tempo, como mostrado na figura acima. Para obter isto utilize
Window ⇒ Arrange.
Na Janela Direita
A janela exibe um projeto no modo offline, com toda a estrutura já vista anteriormente.
Na Janela Esquerda
Esta janela exibe o conteúdo da CPU, acessada pela função Acessible Nodes. Na
janela estão listados todos os blocos contidos na CPU (FC, OB, SFC, etc)
68
SENAI - SIEMENS - VW
Programação básica
Wizard
7TOP_T1D
SIMATIC S7
Siemens AG 1995.All rights reserved.
Date:
07/11/00
Version : 3.1
File No.: pro1_4.9
Conhecimento em Automação
Training -Center
Wizard
Wizard é um assistente que auxilia a criação do projeto. Para iniciá-lo utilize a opção
File ⇒ New Project Wizard.
Passos
O Wizard vai auxiliando nos passos necessários para a criação do projeto. Tipo de
CPU, blocos OB a serem criados e nome do projeto. O usuário tem ainda a opção de
criar os blocos OB’s no modo texto. Como se nota, o Wizard cria sempre um projeto
com estação de hardware e programa.
Programa do Usuário
Ao usuário cabe apenas a criação do seu programa. O Hardware criado contém
somente a CPU, devendo-se complementar o hardware e parametrizá-lo se
necessário.
SENAI - SIEMENS - VW
69
Programação básica
Exercício 4.1: Criando um Projeto
Iniciar o SIMATIC Manager (diretamente do WINDOWS95)
Então selecione File => New => Project
ou click o ícone “ New” .
SIMATIC S7
Siemens AG 1995. All rights reserved .
Date:
07/11/00
Version: 3.1
File No.: pro1_4.10
Conhecimento em Automação
Training-Center
O projeto contém todos os programas e dados para as tarefas do controlador lógico
programável. Este projeto pode conter um ou vários programas que são usados em
uma ou várias CPU’s. Um projeto é uma estrutura localizado no diretório raiz do seu
dispositivo de programação.
Metas
Apagando e criando um projeto.
Procedimentos
1. inicie o SIMATIC Manager.
2. Selecione no menu de comando File ⇒ Delete ⇒ Project.
3. Selecione “PRO1” 1) na lista de projetos e confirme com “OK”.
70
SENAI - SIEMENS - VW
Programação básica
4. Depois do projeto apagado, selecione no menu de comando
File ⇒ New ⇒ Project.
3. Digite o nome do projeto "PRO1"no campo indicado.
4. Confirme com “OK”.
Resultado
Quando você selecionar o projeto no SIMATIC Manager , o nome do seu projeto será
exibido próximo ao símbolo de projeto. Projetos no SIMATIC Manager tem o seguinte
símbolo:
1) Deletar o programa “PRO1” somente se existente.
SENAI - SIEMENS - VW
71
Programação básica
Exercício 4.2: Criando um Programa S7
Use Insert => Program => S7 Program para criar uma
nova CPU de programas.
DICA DO WINDOWS95 :
Use o botão esquerdo do mouse para destacar o projeto
e então pressione o botão da direita. Aparece o menu
com o qual você pode criar mais rápido um novo
programa S7 via Insert New Object => S7 Program.
SIMATIC S7
Siemens AG 1995. All rights reserved .
Date:
07/11/00
Version: 3.1
File No.: pro1_4.11
Conhecimento em Automação
Training-Center
Um programa S7 é uma combinação de blocos de programas, bloco de dados,
comentários e símbolos que são ligados a uma aplicação. Criando este programa,
está-se criando uma estrutura na qual todos estes componentes de programa são
combinados.
Metas
Criar um novo programa S7.
Procedimentos
1. Inicie o SIMATIC Manager.
2. Clique no projeto PRO1.
72
SENAI - SIEMENS - VW
Programação básica
3. Selecione no menu de comando Insert => Program => S7 Program (ou use o
botão da direita do mouse como descrito acima).
4. Um novo programa S7 com o nome "S7 Program 1" é criado.
5. Selecionar o programa com o botão da esquerda do mouse e então com o botão da
esquerda clique em "S7 Program 1" novamente.
6. Especifique o nome como PROGA .
7. Nesta pasta você pode encontrar o programa atual com o nome dos blocos
(programa do usuário), Source (programas fonte) e a pasta de simbólicos com a
lista de símbolos.
8. Confirme com “OK”.
Resultado
Um novo programa S7 é criado com o projeto PRO1. O programa S7, programa do
usuário, é automaticamente criado nesta pasta.
Usando o SIMATIC Manager você pode ver o subdiretório PROG1. Um bloco OB1
vazio é automaticamente criado no programa do usuário.
SENAI - SIEMENS - VW
73
Programação básica
74
SENAI - SIEMENS - VW
Programação básica
Configurando e
parametrizando o S7
Introdução
Chamando o
Configurador de HW
Configurando o
rack
KONF_T1D
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.2
Conhecimento em Automação
Training Center
Configuração de H/W
Com esta ferramenta, é possível:
-
definir os módulos utilizados (CPU, I/O, FM) e a sua parametrização. Ex.: tipo de
medição do módulo analógico de entrada.
-
ler a configuração da CPU. Ex. designação dos módulos no rack
-
ler diagnóstico de dados referentes a módulos (system diagnostics)
A janela on-line (diagnóstico de hardware) mostra a configuração da estação que está
acessível on-line. Informações de status ou estado de operação de cada módulo são
mostradas no relatório simbólico do módulo (=system diagnostics)
SENAI - SIEMENS - VW
75
Programação básica
A tecla F5 atualiza a exibição. Para obter mais informações, dar um double-click no
símbolo.
A ferramenta é iniciada, por exemplo, pela seleção de uma estação de hardware no
SIMATIC Manager ou via comando de menu Edit ⇒ Open Object
Configurando
O usuário especifica a posição dos módulos no rack e os endereços são definidos
automaticamente ( nas CPU315-2 e do S7-400 o usuário pode alterar os endereços). À
esta configuração denominaremos configuração parametrizada.
Durante o start-up, a CPU checa a distribuição dos módulos existente, que é
denominada configuração real.
No caso do S7-400, é possível comparar a configuração real com a configuração
parametrizada. Existindo divergências, o start-up pode ser abortado, se desejado pelo
usuário.
Setando Parâmetros
Ao invés de setar chaves nos módulos, todos os parâmetros são definidos via
software. Pode-se definir parâmetros para a CPU e para determinados módulos de I/O,
tais como módulos analógicos.
Nos parâmetros da CPU estão incluídos, entre outros, o tempo de supervisão de
duração de ciclo ou o intervalo de tempo para execução de partes do programa.
Trocando Módulos
Durante um restart completo, a CPU distribui os parâmetros para todos os módulos
existentes. Assim, quando se substitui um módulo defeituoso, a parametrização para o
novo módulo ainda estará disponível, armazenada na CPU.
76
SENAI - SIEMENS - VW
Programação básica
Configurador de Hardware - Menus
Barra de Ferramentas
Barra de Ferramentas
Menu de “Edição”
Menu de “Edição”
Upload
(le o CLP)
Download
(transfere p/ CPU)
Ativa o
Catálogo
Menu da “Estação”
Menu da “Estação”
Menu de “Visualização”
Menu de “Visualização”
Menu do “PLC”
Menu do “PLC”
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.3
Conhecimento em Automação
Training Center
Station (estação)
O menu Station serve para selecionar o CLP a ser editado, salvar a configuração,
imprimir, etc. É comparável ao menu de edição de um Processador de Texto como por
exemplo: O Microsoft Word. É possível entre outras funções:
-
New - criar uma nova estação
-
Open e Open Online - editar uma configuração existente no PG/PC ou na CPU.
-
Save - salvar a configuração corrente. Ao se salvar uma configuração pela 1a. vez,
o STEP 7 criará na estrutura automaticamente um Módulo Programável (por ex. a
CPU) e a pasta S7-Programs subordinada à este módulo, além de gerar o bloco de
configuração (SDB).
-
Consistency Check - verifica se a configuração de hardware está correta, porém
não gera o bloco de configuração (SDB) nem as pastas de CPU e programa.
SENAI - SIEMENS - VW
77
Programação básica
-
Compile - é o mesmo que save. Checa a consistência, gravando ao bloco de
configuração de hardware na respectiva pasta CPU/Programa já criada.
View
O menu View é utilizado para selecionar a maneira que se quer visualizar a
configuração, simplificada ou em detalhes (com MLFB, endereço, etc), além de tornar
ativo ou não a barra de ferramentas e a linha de status.
A linha de status serve como um pequeno help online, mostrando sempre um pequeno
texto sobre a função selecionada, além do modo de operação ativo Offline ou Online.
PLC
O menu PLC é utilizado para ler ou transferir a configuração editada do PG para o
CLP (também possível pelo ícone da barra de ferramentas). A transferência só pode
ser feita se a CPU estiver conectada ao Terminal de Programação. No modo online
estão ainda disponíveis funções de informação e de diagnóstico, além de se poder
alterar o modo de operação da CPU.
78
SENAI - SIEMENS - VW
Programação básica
Configuração Real
Configuração Real
Lendo a Configuração Real
P G 72 0
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.4
Conhecimento em Automação
Training Center
Configuração Real
A CPU gera uma configuração interna real durante a energização. Isto é, a CPU
verifica a disposição dos módulos existentes, e caso não exista o bloco de
parametrização, distribui os endereços de acordo com um algoritmo fixo.
Se não existe parametrização, os parâmetros default são usados. A CPU arquiva esta
configuração real no bloco de dados do sistema.
No PG/PC, você pode ler esta configuração real para servir como base (template) para
adicionar e/ou re-parametrizar os módulos usando o HW Configuration.
SENAI - SIEMENS - VW
79
Programação básica
Procedimento
A configuração real é gerada usando o ícone Upload.
80
SENAI - SIEMENS - VW
Programação básica
Configurando o Hardware
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.5
Conhecimento em Automação
Training Center
Dá-se o nome de Configuração Parametrizada à configuração de hardware criada pelo
usuário, determinando os módulos existentes e a sua localização, bem como a
parametrização destes módulos.
Configurando
A configuração é executada pela ferramenta Configurador de Hardware. A partir do
catálogo, seleciona-se os módulos utilizados, posicionando-os no slot respectivo do
trilho/bastidor. Naturalmente inicia-se a configuração com o trilho/bastidor para então
se posicionar os outros módulos. Ao se posicionar um módulo, o sistema
automaticamente designa um endereço para o módulo. A CPU315-2 e toda a família
S7-400 permitem que este endereço seja alterado pelo usuário.
SENAI - SIEMENS - VW
81
Programação básica
A parametrização dos módulos é realizada dando-se um double-click sobre o módulo
desejado. Uma tela de configuração referente ao módulo aparecerá, permitindo a
alteração dos parâmetros.
Durante o start-up do controlador lógico programável S7-400, pode haver um check
para verificar se a configuração real (existente) e a configuração parametrizada estão
de acordo.
Catálogo Eletrônico
O catálogo eletrônico contém toda a lista de módulos existente do S7. Quando você
clicar na tecla “+”, você terá disponível os módulos do grupo selecionado.
Atualizações deste catálogo (novas placas) estarão sempre disponíveis via Internet ou
via o Distribuidor local.
82
SENAI - SIEMENS - VW
Programação básica
Parâmetros e Propriedades da CPU
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.6
Conhecimento em Automação
Training Center
Setando Parâmetros da CPU
Entre outros, os seguintes parâmetros podem ser setados na CPU:
-
endereço da interface MPI
-
características de start-up/ciclo: tempo máximo de ciclo, ciclo de carga para
comunicação, auto teste cíclico e auto teste depois da energização.
-
interrupção cíclica (Watchdog): OB 35
-
memória retentiva: markers de memória (flags), temporizadores, contadores e
bloco de dados.
-
clock de memória: reduzir a freqüência de byte de memória
-
diagnóstico de sistema: enviar mensagens de diagnóstico, detalhar registros no
buffer de diagnóstico.
SENAI - SIEMENS - VW
83
Programação básica
Se o usuário não definir nenhum parâmetro, os parâmetros default serão utilizados na
CPU.
Depois de setar os parâmetros, deve-se transferir os novos parâmetros com o
comando de menu PLC ⇒ Download. A CPU deverá estar no modo STOP.
Endereço MPI
Se você desejar conectar vários controladores lógicos programáveis via interface MPI,
você deverá setar diferentes endereços MPI para cada CPU.
84
SENAI - SIEMENS - VW
Programação básica
CPU - Características de Start-Up
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.7
Conhecimento em Automação
Training Center
Setpoint and Actual Configuration
Para o S7-300 com a CPU 315-2 e o S7-400, quando você desativa este
campo, você pode fazer com que a CPU vá para STOP se a configuração real
(existente) não for igual a configuração parametrizada.
Delete PIQ on Restart
No restart, a imagem de entradas/saídas do processo é normalmente deletada. Se
você não deseja que isto aconteça , você pode desativar este item (válido para o S7400).
Hardware Test
Quando esta função é ativada, a RAM interna da CPU é testada durante o start-up
SENAI - SIEMENS - VW
85
Programação básica
Automatic Startup after "Network On"
Para o S7-400, você pode escolher entre:
-
Restart completo (deletando as áreas não retentivas e o programa inicia com a
primeira instrução no bloco OB1)
-
Restart (todas as áreas de memória são retidas, e o programa continua no local da
interrupção).
Watchdog Time
Os seguintes tempos podem ser especificados:
-
Tempo máximo para passar parâmetros para os módulos parametrizáveis.
-
Tempo máximo para o sinal completo do módulo.
-
Para o S7-400, o tempo máximo de interrupção (falta de energia ou chave do modo
de operação) após o qual um restart (warm) ainda é possível. Após este tempo
será executado um complete restart.
86
SENAI - SIEMENS - VW
Programação básica
CPU - Retentividade
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.8
Siemens AG 1995. All rights reserved .
Conhecimento em Automação
Training Center
Áreas Retentivas
As áreas de memória retentivas permanecem inalteradas mesmo depois da falta de
energia ou de um restart completo.
Os seguintes itens podem ser retentivos:
-
Memory markers
-
Temporizadores
-
Contadores
-
Bloco de Dados
As áreas que você especifica nesta tela são retidas no caso de falha de energia
mesmo não existindo bateria de backup.
SENAI - SIEMENS - VW
87
Programação básica
Para ser utilizado sem bateria, o programa deverá ser arquivado no módulo de
memória (memory card).
DB´s Retentivos
Este parâmetro só tem sentido no caso da não existência de bateria. Quando a bateria
é usada, todos os blocos de dados são retentivos.
Outros blocos de dados que devem permanecer retidos devem também ser salvos no
módulo de memória.
Depois da falta de energia sem a bateria, os blocos de dados parametrizados como
retentivos são retidos, e os outros blocos recebem os valores arquivados no módulo de
memória.
88
SENAI - SIEMENS - VW
Programação básica
CPU - Ciclo/Clock de Memória
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.9
Conhecimento em Automação
Training Center
Cycle
Opções:
-
tempo de monitoração do tempo de ciclo, quando este tempo é ultrapassado, a
CPU vai para STOP, se o OB80 de erro não foi programado.
-
tempo mínimo de ciclo para o S7-400 para implementar tempo de ciclo
-
constante
-
porcentagem do tempo de ciclo de programa que será reservado (no máx.) para
tarefas de comunicação ou para auto teste cíclico.
Clock Memory
Caso seja utilizado no programa algum tipo de pisca-pisca, pode-se deixar o sistema
gerá-lo automaticamente. Ative o campo e especifique qual o byte de memória a ser
usado para este fim
SENAI - SIEMENS - VW
89
Programação básica
O byte de memória especificado piscará nas seguintes freqüências, cada uma
associado à um bit deste byte:
Bit
7
6
5
4
3
2
1
0
Período/
2
1,6
1
0,8
0,5
0,4
0,2
0,1
Freqüência
0,5
0,625
1
1,25
2
2,5
5
(Hz)
90
SENAI - SIEMENS - VW
10
Programação básica
CPU - Proteção de Acesso
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.10
Conhecimento em Automação
Training Center
Protection Levels
O programa na CPU pode ser protegido contra um acesso não autorizado por meio de
designação de uma senha. As correções de programa ou modificação de dados só
podem ser executados se a senha correta for digitada.
Os níveis de proteção tem os seguintes significados:
-
1: Sem proteção
-
2: Proteção contra a escrita (somente leitura ou status de blocos.)
-
3: Proteção contra leitura/escrita
SENAI - SIEMENS - VW
91
Programação básica
CPU - Interrupções
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.11
Conhecimento em Automação
Training Center
Hardware interrupts(int. de hardware)
São geradas por módulos que tenham capacidade de diagnóstico. Na parametrização
default, todos as interrupções de hardware são processadas pelo OB40.
Time-delay interrupts (int. tempo-decorrido)
São geradas a partir do programa do usuário (SFC 32 ⇒ SRT_DINT) após decorrido o
tempo programado quando a função está habilitada.
Communication int. (int. de comunicação)
Para as CPU´s S7-300 e S7-400 as interrupções de comunicação geralmente
não são disponíveis.
92
SENAI - SIEMENS - VW
Programação básica
Priorities (prioridade)
A prioridade de execução de um bloco só é considerada quando dois blocos OB’s
devam ser executados ao mesmo tempo. Assim será executado o bloco de maior
prioridade, sendo que o de menor prioridade aguarda o fim da execução do outro para
ser executado.
Então, pode-se especificar a seqüência de processamento para quando duas ou mais
interrupções estejam presentes simultaneamente.
No S7-300 não é possível mudar as prioridades default.
SENAI - SIEMENS - VW
93
Programação básica
CPU - Interrupções Time-of-Day
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.12
Conhecimento em Automação
Training Center
Time-of-day int. (int. datada)
São blocos que serão executados exatamente na data e hora em que foram
parametrizados. Pode-se selecionar inclusive a freqüência com que serão executados
após esta data: uma única vez, a cada minuto, a cada hora, mês, dia, ano.
94
SENAI - SIEMENS - VW
Programação básica
CPU - Interrupção Cíclica
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.13
Conhecimento em Automação
Training Center
Cyclic interrupt (int. cíclica)
Caso se deseje que parte do programa da CPU seja executada a intervalos
regulares de tempo, pode-se utilizar o OB de interrupção cíclica. Este OB será então
executado toda a vez que o intervalo de tempo parametrizado tenha sido decorrido.
Isto habilita a implementação de tarefas de controle de malha fechada, por exemplo,
que devem ser processados em intervalos de tempo programados
O S7-300 possui para esta função somente no OB35, o qual é processado a cada
100ms como default. A base de tempo pode ser setada na faixa de 1 a 60000ms.
O S7-400 possui vários OB’s de interrupções cíclicas com diferentes intervalos de
tempo. Para garantir que estes OB’s não sejam executados ao mesmo tempo, no caso
SENAI - SIEMENS - VW
95
Programação básica
dos intervalos de tempo coincidirem, pode-se usar um offset, que as interrupções
ocorrem defasadas entre si.
Importante: OB1
O principal bloco do programa S7 é o OB1. Este OB é um OB cíclico, porém diferente
de um OB de interrupção cíclica. Ao atingir a sua última instrução, o OB1 se reinicia
imediatamente na 1a. instrução. Como a chamada de blocos pode variar de um ciclo
para outro, não se pode garantir que o tempo de execução da cada ciclo do OB1 seja
constante.
96
SENAI - SIEMENS - VW
Programação básica
CPU - Diagnóstico/Clock
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.14
Conhecimento em Automação
Training Center
System diagnostics
Uma poderosa ferramenta na depuração do programa e procura de falhas é o
Diagnóstico Buffer. Este é um buffer que registra todas as ocorrências anormais do
CLP, inclusive com data e hora. Esta função, que deve sempre ser deixada ativa, além
de registrar as ocorrências que levaram a CPU para STOP (Dysplay cause of STOP),
pode ainda ser incrementada com outras ocorrências (Extended Functional Scope).
Com a opção “Extended Functional Scope” ativa todos as chamadas de OB´s de
interrupção são registradas no buffer de diagnóstico. Isto é útil por exemplo na hora de
depurar o SW ou na procura de um defeito específico do sistema. Não deve ser porém
deixada ativa, pois o buffer de diagnóstico será preenchido como uma série de
SENAI - SIEMENS - VW
97
Programação básica
registros dificultando uma eventual análise do motivo de parada da CPU (mensagens
importantes podem ser sobrescritas).
Clock
Se está sendo utilizado vários módulos com clocks em um CLP, pode-se definir quais
módulos vão ser escravos e mestres. O mestre sincroniza outros clocks de acordo
com o intervalo de tempo setado.
O fator de correção corrige variações do relógio do mestre diariamente, sendo
expresso em ms.
98
SENAI - SIEMENS - VW
Programação básica
Setando Parâmetros em Módulos de Sinais
Parâmetros nos módulos de sinais são variáveis que contém os ajustes da
resposta dos níveis de sinais dos módulos (um ou mais por módulos). Todos
os módulos tem ajustes default. Os ajustes para a maioria dos módulos S7
podem ser modificados usando o S7 Hardware Configuration ou por meio de
SFC’s no programa do usuário.
Existem dois tipos de parâmetros para estes módulos:
¦
Parâmetros Estáticos - Ajuste dos módulos podem ser modificados com
o S7 Hardware Configuration, mas não com SFC’s no seu programa.
¦ Parâmetros Dinâmicos - Ajuste dos módulos podem ser modificados no
programa do usuário, mesmo se elas forem feitas com o STEP 7.
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.15
Conhecimento em Automação
Training Center
Ajustes Default da Auto-Configuração
O sistema S7 fornece facilidades para a configuração automática do endereçamento
de I/O e parametrização de blocos. Quando o hardware e I/O’s são instaladas, o
sistema S7 se auto-configura.
Modificando os Parâmetros com o S7 Hardware Configuration
A alteração das características funcionais default dos módulos é feita no configurador
de Hardware. O acesso à estes parâmetros é feito da mesma maneira que o acesso
aos parâmetros da CPU.
Selecionando-se o módulo e clicando-se o mouse duas vezes aparece a tela de
parâmetros do módulo (note que nem todos os módulos tem parâmetros que podem
SENAI - SIEMENS - VW
99
Programação básica
ser alterados). Toda a parametrização feita, dos módulos e da CPU, são armazenadas
em um bloco denominado SDB, que é transferido para a CPU ao se dar um Download
(Transferência para a CPU). Este bloco também é arquivado no PG/PC, na respectiva
pasta de programa S7, sob o nome SDB, ao se salvar a configuração.
Este armazenamento da parametrização em um SDB, torna possível a troca de
qualquer módulo do CLP sem a necessidade de ajuste, já que a parametrização do
novo módulo é transferida automaticamente da CPU para o novo módulo.
Modificando os Parâmetros com o Programa do Usuário
É possível alterar a parametrização de um módulo dinamicamente, isto é, pelo
programa de usuário na CPU. Isto é feito com o auxílio das funções de sistema
(SFC55-59). Estes SFC´s tem acesso de leitura e escrita nos registros de dados dos
módulos.
100
SENAI - SIEMENS - VW
Programação básica
Módulo Analógico - Parametrização
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.16
Conhecimento em Automação
Training Center
Setando Parâmetros dos Módulos
Os seguintes parâmetros podem ser setados nos módulos analógicos
-
tipo de medição, tais como tensão ou corrente
-
faixa de medição, tais como 0 a 10V
-
teste de fonte de tensão
-
supervisão de quebra-de-fio;
-
valores substitutos de saída (tomar último valor)
-
habilitar interrupção de diagnóstico (OB82) originada por falha.
-
interrupção fim do ciclo de leitura, depois que todos os valores de medição
-
tenham sido processados (processamento de canais individuais ou um após o
outro) . Isto pode ser útil para se assegurar que o valor real de medição é o que
está sendo considerado no programa
SENAI - SIEMENS - VW
101
Programação básica
Importante
1) Verifique quais os parâmetros disponíveis para o módulo que está sendo utilizado.
2) Para a faixa de medição, além da parametrização via SW é necessário posicionar a
caixa de medição na placa (pos. A, B, C ou D).
102
SENAI - SIEMENS - VW
Programação básica
Exercício 5.1: Configurando uma Estação de Hardware
Chamando o
Configurador de HW
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.17
Conhecimento em Automação
Training Center
Objetivo
Criar uma estação de HW
Configurar o Hardware
Procedimento
1. Destaque a pasta de projeto PRO1
2. Selecione no menu o comando Insert ⇒ Station ⇒ SIMATIC 300 Station (ou use
o botão direito do mouse e o comando Insert New Object => SIMATIC 300
Station.
3. Uma nova estação S7-300 é criada.
4 . Destaque a pasta da estação recém criada (SIMATIC 300 Station (1)) e dê um
clique duplo sobre o ícone Hardware.
SENAI - SIEMENS - VW
103
Programação básica
5. O Configurador de Hardware é aberto.
6. Selecione no catálogo todos os módulos existentes no seu rack de treinamento
(comece obrigatoriamente com o trilho (rack)).
7. Salve a configuração no harddisk.
Resultado
Uma estrutura CPU, Programa, Blocos, etc. é criada subordinada à pasta de estação.
104
SENAI - SIEMENS - VW
Programação básica
Exercício 5.2: Parametrizando a CPU - Retentividade
Ícone para transferir a configuração
para a CPU (Download)
Click-duplo sobre
a CPU
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo.: pro1_5.18
Conhecimento em Automação
Training Center
Objetivo
Parametrizar um módulo (CPU)
Testar a característica Retentividade
Procedimento
1. Inicie o Configurador de Hardware
2. Dê um click-duplo sobre a linha que contém á CPU (ou destaque a linha da CPU e
com o botão direito do mouse selecione a função Object Properties).
3. Selecione a Pasta Retentive Memory.
4. Parametrize os Memory markes de 0 a 4 como retentivos (MB0 a MB4).
5. Selecione a pasta Cicle / Clock Memory
SENAI - SIEMENS - VW
105
Programação básica
6. Parametrize o clock memory com o memory marker 100 (MB100)
7. Confirme a parametrização com o botão OK.
8. Salve a configuração.
9. Dê um Download da configuração para a CPU (lembre-se a CPU tem que estar em
Stop).
10. Escreve um programa no OB1 transferindo os dados do clock-memory para MB4 e
MB5:
L MB100
T MB4
T MB5
11. Coloque a CPU de STOP -> Run e observe com a função Monitor Variables os
memory markes MB4 e MB5.
12. Delete as instruções do OB1 (ou o próprio OB1).
13. Repita o passo 11.
Resultado
O que aconteceu com o MB4 e o MB5 no 2. start da CPU ? Por que não possuem o
mesmo conteúdo ?
106
SENAI - SIEMENS - VW
Programação básica
Princípios básicos
Norma IEC 1131
qParte
1: Informações Gerais
de termos para o PLC e glossário
¦Características gerais das funções do PLC
qParte 2: Itens Exigidos
¦Exigências elétricas, mecânicas, e funcionais
¦Informações do fabricante
¦Normas reguladoras a ser cumpridas (conformance)
¦Definições
èParte 3: Linguagem de Programação
¦Diagrama
Ladder, Diagrama de Blocos de Funções, Lista de Instruções,
Funções Seqüenciais e Texto Estruturado
qParte 4: Diretrizes para Usuários
¦Especificações e análises de sistemas
¦Seleção e aplicação de PLC´s
¦Segurança e proteção, instalação e manutenção
qParte 5: Comunicação
¦Modelos, blocos de comunicação, mapeação em protocolo ISO Modul : IEC_T1D.
SIMATIC S7
Siemens AG 1996. All rights reserved .
Data: 07/11/00
Versão: 3.1
Arquivo: pro1_6.2
Conhecimento em Automação
Training Center
Introdução
A norma IEC1131 é um documento escrito por um consórcio de fabricantes de PLC´s,
casas de sistemas e instituições direcionadas a desenvolver plataformas para níveis de
padronizações na automação industrial.
Parte 1
Contém características de funções e definições de termos gerais comuns para PLC´s.
Por exemplo, processamento cíclico, imagem de processo, divisões de tarefas entre
dispositivos de programação, PLC Interface Homem máquina.
SENAI - SIEMENS - VW
107
Programação básica
Parte 2
Especifica funções elétricas e mecânicas e exigências funcionais dos dispositivos e
definições de tipos de testes. As seguintes exigências são definidas: temperatura,
umidade, imunidade a interferências, faixa de tensão de sinais binários, rigidez
mecânica.
Parte 3
Especificações para linguagem de programação. As linguagens de programação foram
harmonizadas e novos elementos foram incluídos. Além de STL, LAD e FBD o “texto
estruturado” foi incluído como a quarta linguagem.
Parte 4
Contém as diretrizes para os usuários de PLC. Informações para todos os estágios do
projeto estão disponíveis, tais como: iniciando análise do sistema, fase de
especificação, seleção e manutenção de dispositivos.
Parte 5
Descreve a comunicação entre os PLC´s de vários fabricantes e entre PLC´s e outros
dispositivos. Baseado na norma MAP, os utilitários de comunicação do PLC são
definidos com normas suplementares para ISO/IEC 9506-1/2. Blocos de comunicação
são descritos em conjunto com operações padronizadas de leitura e escrita.
108
SENAI - SIEMENS - VW
Programação básica
Ciclo de Processamento da CPU
Bloco de inicialização (OB 100/OB 101), processa
uma vez depois de energizada a CPU, por exemplo.
Ciclo de scan da CPU
Inicialização da monitoração do tempo de ciclo
Lê o estado dos sinais dos módulos de entradas e
salva os dados na tabela imagem das entradas
do processo (PII)
Executa o programa OB 1 (processamento cíclico)
Eventos (Interrupção de tempo, interrupção de
hardware, etc.)
Chama outros OB’s, FB’s, FC’s, etc.
Transfere os dados da tabela imagem das saídas
do processo (PIQ) para os módulos de saída.
SIMATIC S7
Siemens AG 1996. All rights reserved .
Data: 07/11/00
Versão: 3.1
Arquivo: pro1_6.3
Módulo de Entrada
OB1
A I0.1
A I0.2
= Q8.0
Módulo de Saída
Conhecimento em Automação
Training Center
Start-Up
Quando você muda de STOP ==> RUN, a CPU executa um restart simples ou
completo (S7-300 só completo), também denominado com Cold-restart ou Warmrestart. Para um completo restart, o sistema operacional deleta os memory markers
não retentivos, temporizadores e contadores, deleta a pilha de interrupções e pilha de
blocos, reseta todas as interrupções de hardware salvas e interrupções de diagnóstico,
e inicializa a supervisão do tempo de ciclo.
O S7-400 tem um tipo de start-up adicional, Restart. No restart, todos os dados são
retidos e o processamento do programa continua depois do ponto de interrupção.
SENAI - SIEMENS - VW
109
Programação básica
Ciclo de Programa
Como mostrado na figura acima, a operação cíclica da CPU consiste de 3
componentes principais:
-
A CPU atualiza o estado dos sinais de entrada na tabela imagem das entradas
(PII).
-
A CPU executa o programa do usuário com as respectivas operações.
-
A CPU escreve os valores da tabela imagem das saídas (PIQ) no módulo de
saídas.
110
SENAI - SIEMENS - VW
Programação básica
Start-Up da CPU e OBs
Restart Completo
Restart Completo
Manual: STOP --> RUN para S7-400
CRST ativado
Automático: Power ON
Restart
Restart
Pre requisitos: Seta parâmetros para restart
Manual: STOP --> RUN e ativa WRST
Execução do OB 101
Deleta o imagens do
processo, não retentiva
M, T, C
Executando o ciclo residual
Executando o OB 100
Deletando PIQ(parametrizável)
Habilita saídas
Sim
Para
Lê em PII
Falha tensão
tempo excedido?
Não
Executa OB 1
Habilita saídas
Lê em PII
Saída PIQ
Executa OB 1 atualiza
PIQ no final
SIMATIC S7
Siemens AG 1996. All rights reserved .
Data: 07/11/00
Versão: 3.1
Arquivo: pro1_6.4
Conhecimento em Automação
Training Center
Restart Completo
A CPU executa um completo restart quando vai do modo STOP para RUN,
processo este denominado START-UP (inicialização).
Durante o Start-up são executadas as seguintes tarefas:
-
-zera as áreas retentivas da memória: markers, temporizadores e contadores; zera
as pilhas de interrupção e bloco; deleta todas as interrupções e diagnósticos de
interrupção, zera a imagem do processo de I/O´s.
-
transfere os parâmetros para os módulos.
-
lê as configurações de I/O e compara o estado atual das I/O´s com o estado
esperado.
-
OB executa o completo restart (OB100).
-
habilita saídas.
SENAI - SIEMENS - VW
111
Programação básica
Restart
As CPU’s do S7-400 tem a capacidade de executar um Restart (warm restart) quando
ocorre um Start-up. O modo do Restart, completo ou warm, é selecionado nestas
CPU’s por uma chave na CPU (sob certas condições). Quando um RESTART ocorre,
a CPU executa o seguinte:
-
executa o OB de warm restart (OB101)
-
executa o ciclo residual
-
deleta a PIQ a área de saída (parametrizável)
-
habilita saídas
112
SENAI - SIEMENS - VW
Programação básica
Imagem de Processo
I2.7
I2.0
I0.5
I0.3
Q4.3
SM
SM
Saída
digital
Entrada
digital
PII
Byte 0
Byte 1
Byte 2
.
.
.
.
PIQ
1
Programa
do usuário
Bit 7
SIMATIC S7
Siemens AG 1996. All rights reserved .
Bit 0
A
AN
AN
AN
=
I 2.0
I 2.7
I 0.5
I 0.3
Q 4.3
Byte 0
Byte 1
Byte 2
.
.
.
.
1
Bit 7
Data: 07/11/00
Versão: 3.1
Arquivo: pro1_6.5
Bit 0
Conhecimento em Automação
Training Center
Definição
Denomina-se Imagem de Processo à uma área da CPU onde os estados das entradas
e saídas binárias são a cada ciclo armazenadas. Existem áreas distintas para as
entradas e para as saídas: PII e PIQ. Normalmente o programa de usuário quando
acessa uma entrada ou saída digital está lendo na realidade esta área.
PII
A tabela imagem das entradas do processo é o local onde o estado das entradas
digitais são arquivadas na CPU. Antes do início de cada ciclo de programa, a CPU lê a
periferia (módulos de entrada digital) e transfere os estados dos sinais digitais para
esta área.
SENAI - SIEMENS - VW
113
Programação básica
PIQ
A tabela imagem das saídas contém o valor das saídas resultantes do processamento
do programa. Somente no final do ciclo de programa, estes valores de saída são
transferidos para os módulos de saídas (Q).
Programa do Usuário
Quando você lê uma entrada no programa (como A I 2.0 por exemplo), o último
estado da PII é utilizado na lógica do programa. Isto garante que um mesmo estado do
sinal é fornecido durante um ciclo de scan.
114
SENAI - SIEMENS - VW
Programação básica
Tipos de Blocos de Programa
Ciclo
OB
Tempo
Processo
FB
FC
SFB
FB
FB
SFC
Bloco de
Organização
Erro
Modo de operação sistema
Legenda:
OB = Bloco de Organização
FB = Bloco de Função
FC = Função
SFB = Bloco de Função do Sistema
SFC = Função do Sistema
SDB = Bloco de Dados do Sistema
DB = Bloco de Dados
SIMATIC S7
Siemens AG 1996. All rights reserved .
Bloco de dados
Instance
Data: 07/11/00
Versão: 3.1
Arquivo: pro1_6. 6
Conhecimento em Automação
Training Center
Blocos de Sistema
Blocos de sistema são funções pré-definidas ou blocos de função integradas ao
sistema operacional da CPU. Estes blocos não ocupam nenhum espaço adicional na
memória do usuário. Os blocos de sistema são chamados pelo programas do usuário.
Estes blocos tem a mesma interface, a mesma designação, e mesmo número em todo
o sistema (S7-300/400). Então, você pode facilmente portar o programa do usuário
entre várias CPU´s.
Blocos do Usuário
Os blocos de usuário são áreas providas para administrar o código e os dados para
seu programa. Baseado nas necessidades do seu processo, você pode estruturar seu
programa com várias opções de blocos de usuário. Alguns desses blocos podem ser
executados ciclicamente, enquanto outros blocos podem ser executados somente
quando necessitado. Blocos de usuário são também chamados de blocos de
programa.
SENAI - SIEMENS - VW
115
Programação básica
Blocos de Usuário
Tipo de Blocos
Características
Bloco de Organização
- Interface do usuário entre sistema e o programa (OB)
- Níveis de prioridades (1 a 26)
- Informações especiais de inicialização na pilha de dados locais
Bloco de Função (FB)
- Parametrizável / retentivo
- Não parametrizável / retentivo
- Não parametrizável / não retentivo
Função (FC)
- Um valor de retorno será transferido.
(parâmetros devem ser designados para a chamada.)
- Não retentivo
- Parametrizável
Bloco de Dados (DB)
- Estruturado, arquiva dados locais (DB instance)
- Estruturado, Arquiva dados globais
(válido no programa inteiro)
SIMATIC S7
Siemens AG 1996. All rights reserved .
Data: 07/11/00
Versão: 3.1
Arquivo: pro1_6.7
Conhecimento em Automação
Training Center
Blocos de Organização (OB)
Forma a interface entre a CPU e o programa do usuário. Pode-se escrever um
programa inteiro no OB1 e deixá-lo processando a cada ciclo. Pode-se porém escrever
um programa em diferentes blocos e usar o OB 1 para chamar estes blocos quando
necessário. Além do OB 1, o sistema operacional pode chamar outros OB’s que
reagem a certos eventos, tais como :
-
Interrupção Data Programada
-
Interrupção de tempo de ciclo
-
Interrupção de Diagnostico
-
Interrupção de hardware
-
Interrupção de Erros
-
Start-up do Hardware
116
SENAI - SIEMENS - VW
Programação básica
Bloco de Função (FB)
Um bloco de função é uma função ou uma seqüência de comandos armazenadas em
um bloco lógico, onde os parâmetros podem ser arquivados em uma memória. O FB
utiliza esta memória adicional na forma de um “Bloco de Dados Instance”. Parâmetros
passados para o FB, e alguns dos dados locais são arquivados neste blocos de dados
associado (Instance DB). Outros dados temporários são arquivados na pilha local (L
stack). Dados arquivados em Instance DB são retidos quando o bloco de função é
fechado. Dados arquivados na pilha L stack não são retidos.
Funções (FC)
A função é um bloco de operação lógica similar ao bloco de função para o qual não é
designado área de memória. Um FC não necessita de um bloco de dados instance. As
variáveis locais são arquivadas na pilha local (L stack) até que a função esteja
concluída, sendo perdidos quando o FC termina a execução.
Bloco de Dados (DB)
Um bloco de dados é uma área de dados permanente na qual dados ou informações
que outras funções coletaram são armazenados. Bloco de dados são área de
leitura/escrita que podem ser carregadas na CPU como parte de seu programa.
SENAI - SIEMENS - VW
117
Programação básica
Blocos de Sistema
Tipo de Bloco
Características
Função de Sistema
(SFC)
- Arquivados no sistema operacional das CPU’s
- Usuário pode chamar esta função
(sem memória).
Bloco de Função
de Sistema (SFB)
- Arquivados no sistema operacional das CPU’s
- Usuário pode chamar esta função
(com memória).
Bloco de Dados
de Sistema (SDB)
- Blocos de dados para configuração de dados
e parâmetros
SIMATIC S7
Siemens AG 1996. All rights reserved .
Data: 07/11/00
Versão: 3.1
Arquivo: pro1_6.8
Conhecimento em Automação
Training Center
Função de Sistema
Função de sistema é uma função pré-programada e testada que é (SFC) integrada na
CPU. Algumas das tarefas suportadas por estas funções são setar parâmetros dos
módulos, comunicação de dados, funções de cópia, etc. Uma SFC pode ser chamada
pelo programa, porém sem fazer parte dele (não ocupa memória de trabalho).
Blocos de Função de Sistema (SFB)
Um bloco de Função de sistema é parte integral da CPU. Você pode utilizar um SFB
em seu programa, sem carregar como parte de seu programa porque os SFB’s são
parte do sistema operacional. SFB’s devem ser associados a um DB, o qual deverá
ser transferido para a CPU como parte do seu programa.
118
SENAI - SIEMENS - VW
Programação básica
Bloco de Dados de Sistema (SDB)
Um bloco de dados de sistema é uma área de memória que a ferramenta STEP 7 gera
para arquivar dados necessários para o controle de operações. Informações, tais como
dados de configuração, conexões de comunicação e parâmetros são salvos em SDB’s.
SENAI - SIEMENS - VW
119
Programação básica
Estrutura de Programa
O STEP 7 fornece 3 possibilidades para o desenvolvimento de seus programas. Baseado nesta
diretriz, você pode decidir qual é a estrutura de programa mais apropriada para a sua aplicação
Linear
Particionado
Estruturado
Recipiente A
OB1
OB1
Recipiente B
OB1
Misturador
Bomba
Exaustor
Exaustor
Programa Linear:
Todas as instruções estão
contidas em um bloco
(normalmente no OB1)
SIMATIC S7
Siemens AG 1996. All rights reserved .
Programa Particionado :
Instruções para cada dispositivo
estão contidos em blocos
individuais. OB 1 chama cada
bloco em seqüência.
Programa Estruturado:
Códigos reutilizáveis estão em blocos
individuais. O OB1 (ou outro bloco)
chama esses blocos e passa os dados
relevantes (parâmetros).
Data: 07/11/00
Versão: 3.1
Arquivo: pro1_6.9
Conhecimento em Automação
Training Center
Programa Linear
O programa inteiro reside em um único bloco de instrução contínuo. Esta estrutura é
semelhante a um circuito de relés substituído por um controlador lógico programável. O
sistema processa instruções individuais sucessivamente.
Programa Particionado
O programa é dividido em blocos, cada bloco contém uma lógica específica para
dispositivos ou tarefas. As informações residentes no bloco de organização (OB1)
determinam a ordem de execução dos blocos a serem processados. Um programa
particionado pode, por exemplo, conter blocos de instruções com os quais os modos
de operações individuais de um processo industrial são controlados.
120
SENAI - SIEMENS - VW
Programação básica
Programa Estruturado
Um programa estruturado contém blocos de instruções com parâmetros definidos pelo
usuário (blocos parametrizados). Estes blocos são projetados de forma que possam
ser usados universalmente. Os parâmetros atuais (os endereços de entradas e saídas)
são especificados durante a chamada do bloco. Exemplos de blocos parametrizáveis:
-
bloco “BOMBA" contém instruções para uma bomba, com um set de entradas e
saídas exigidas para qualquer bomba usada no processo.
-
bloco lógico responsável pelo controle específico das bombas, chama (abre) o
bloco “BOMBA” e fornece informações para identificar qual bomba irá ser
controlada.
-
Quando o bloco completa a execução das instruções, o programa retorna ao bloco
de chamada (por exemplo OB 1), o qual conclui as instruções.
SENAI - SIEMENS - VW
121
Programação básica
Programação Estruturada
FC 1
OB 1
Motor 1
Motor 1
FC 1
Motor 2
Motor 2
FC 1
Motor 3
Motor 3
SIMATIC S7
Siemens AG 1996. All rights reserved .
Data: 07/11/00
Versão: 3.1
Arquivo: pro1_6.10
Conhecimento em Automação
Training Center
O que é Programação Estruturada ?
A programação estruturada identifica tipos similares ou repetitivos de funções
solicitadas pelo processo e fornece soluções genéricas que podem ser usadas
por várias outras tarefas. Fornecendo informações específicas ( em forma de
parâmetros) para os blocos de instruções, o programa estruturado é capaz de usar de
novo estes blocos genéricos.
Pode considerar-se como exemplo destes blocos:
-
Blocos que contenham lógicas comuns para todos os motores AC no sistema do
transportador
-
Blocos que contenham lógicas comuns a todas as solenóides na máquina.
122
SENAI - SIEMENS - VW
Programação básica
-
Blocos que contenham lógicas comuns a todos os acionamentos da máquina.
Como é executado?
O programa dentro do OB1 (ou outro bloco) chama estes blocos genéricos para a
execução. Assim dados e códigos considerados comuns podem ser compartilhados.
Quais Vantagens e Desvantagens?
Ao invés de repetir estas instruções e então substituir os diferentes endereços para os
específicos equipamentos, você pode escrever as instruções no bloco e ter um
programa para passar os parâmetros (tais como endereços específicos de
equipamentos ou dados) para o bloco. Isto permite a você escrever blocos genéricos
que mais que um dispositivo ou processo possa usar. Quando usar uma programação
estruturada você tem que gerenciar os dados que são arquivados e utilizados pelo
programa.
SENAI - SIEMENS - VW
123
Programação básica
124
SENAI - SIEMENS - VW
Programação básica
O editor de programas
Selecionando um Bloco para Editar
Editando um bloco existente:
- selecione a pasta que contém o
bloco;
- click duas vezes sobre o bloco.
SIMATIC S7
Editando um novo bloco:
- selecione a pasta que deverá conter o
bloco;
- pressione o botão direito do mouse;
- selecione ‘Insert New Object”e o tipo de
bloco desejado;
- click duas vezes sobre o bloco criado.
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_7.2
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Para editar um bloco, siga os passos abaixo:
Selecione a pasta que contém o bloco existente ou a pasta na qual o novo bloco será
armazenado.
SENAI - SIEMENS - VW
125
Programação básica
Os blocos existentes são listados na janela à direita.
Selecione o bloco a ser editado, clicando duas vezes sobre ele. Alternativamente podese editá-lo selecionando-o e então com o botão direito do mouse ativando-se a função
“Open Object”.
Para se criar um bloco, seleciona-se a pasta na qual o bloco será armazenado, e com
o auxílio do botão direito do mouse seleciona-se a função ‘Insert New Object” e o tipo
de bloco desejado.
Clica-se duas vezes sobre o ícone do novo bloco criado que o editor de programa será
aberto
126
SENAI - SIEMENS - VW
Programação básica
Selecionando uma Linguagem de Edição
Pode-se editar o programa STEP 7 em 3 linguagem diferentes:
Diagrama de Contatos (LAD), Diagrama de Blocos Funcionais (FBD)
ou Lista de Instruções (STL).
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_7.3
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Seleção
Usando a opção “VIEW” na barra de menu, pode-se selecionar a linguagem de edição
entre diagrama de contados (LAD), blocos funcionais (FBD) ou lista de instruções
(STL). Esta opção está disponível desde que um bloco esteja aberto.
LAD -> STL
Blocos originalmente criados em diagrama de contatos podem ser convertidos sempre
para lista de instruções. Note que a conversão não necessariamente resulta em
código de programa eficiente em lista de instruções.
SENAI - SIEMENS - VW
127
Programação básica
STL -> LAD ou FBD
Blocos criados originalmente em lista de instruções nem sempre são convertidos
totalmente em diagrama de contatos ou blocos funcionais. Ao se fazer esta opção de
conversão, através da opção “View”, o Editor de Programa converterá todos os
segmentos de programa que podem ser convertidos. Segmentos de programa não
“conversíveis” se mantém na linguagem lista de instruções Esta “não conversão” não
significa que haverá problemas de execução do programa, sendo somente
conseqüência da sintaxe de visualização de cada linguagem. Para garantir que a
conversão seja sempre realizada, o usuário deverá tomar certos cuidados durante a
edição (ex.: escrever uma única lógica por segmento).
128
SENAI - SIEMENS - VW
Programação básica
Seções do Editor de Programas
Tabela de Declarações
Tabela de Declarações
Título do
Bloco
Segmento
SIMATIC S7
Seção de Instruções
Seção de Instruções
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_7.4
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
O Editor de Programas possui duas áreas com funções bem definidas: tabela de
declarações e a seção de instruções.
Tabela de Declarações
Esta tabela serve para declarar variáveis e parâmetros para o bloco. As variáveis
locais (temporárias) são definidas para uso no bloco nesta tabela.
A parametrização torna possível passar variáveis entre blocos para que sejam usados
universalmente.
SENAI - SIEMENS - VW
129
Programação básica
Seção de Instruções
Nesta área é especificado a seqüência e a lógica do programa (instruções).
Durante a edição dos operandos, a sintaxe é checada, destacando imediatamente
qualquer erro.
Cada pequena lógica do programa é definida dentro de um segmento (Network).
Entende-se como lógica, a combinação de blocos que resultará numa saída/flag sendo
ou não acionado.
Nas linguagens LAD/FBD o próprio Editor não permite que seja realizado mais que
uma lógica por segmento. No modo STL é possível ter várias lógicas por segmento,
porém se compromete a capacidade de se visualizar em outras linguagens (LAD/FBD).
Comentários
O editor permite ainda o acréscimo de comentários: título e comentário do bloco e título
e comentário para cada segmento. Através da função View ⇒ Commentar pode-se
visualizar ou não estes comentários.
130
SENAI - SIEMENS - VW
Programação básica
Editando em Diagrama de Contatos - LAD
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_7.5
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Introdução
A edição do programa em diagrama de contatos é feita basicamente com o auxílio do
mouse. Basta posicionar o ponto e selecionar o elemento que deve ser inserido no
programa. Após isto, digita-se o endereço dos operandos (por ex. I0.0, M43.5). Os
elementos lógicos são encontrados ou na barra de ferramentas na forma de ícone ou
através de um catálogo de instruções, como mostrado na figura acima.
Elementos Comuns com Seus Ícones
F2 - Scan para sinal "1" (contato fechado)
F3 - Scan para sinal "0" (contato aberto)
F4 - Output coil (saída)
F8 - Ramificação para baixo (abrindo)
F9 - Ramificação para cima(fechando)
SENAI - SIEMENS - VW
131
Programação básica
Catálogo de Instruções
Outros elementos (instruções) são acessadas pelo catálogo de instruções, acessado
pelo ícone ao lado ou pela combinação das teclas Ctlr+K
132
SENAI - SIEMENS - VW
Programação básica
Editando em Blocos Funcionais - FBD
PRGG_T2D
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_7.6
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Introdução
Semelhante ao modo LADDER, a edição em blocos funcionais é feita com o auxílio do
mouse. Selecione o ponto em que deve ser inserido o elemento e a partir do catálogo
de instruções ou da barra de ferramentas selecione o elemento desejado. Para
endereçar os operandos, selecione o campo apropriado e digite o operando (ex. Q2.6,
M4.5).
Este ícone dá acesso ao catálogo com todas as instruções FBD.
SENAI - SIEMENS - VW
133
Programação básica
Comentários
Os comentários são editados como no modo diagrama de contatos.
Correções
Posicione o cursor do mouse sobre o elemento e pressione a tecla DEL.
Regras
-
Blocos padrões (flipflops, contadores, temporizadores, operações matemáticas
etc.) podem também ter um outro bloco com operações lógicas binárias ( &, >=1,
XOR) associado. A exceção para esta regra são os blocos de comparação.
-
Em um único segmento, não é possível programar operações que são separadas
por saídas.
É possível, entretanto, com o auxílio do T-branch, que a uma lógica estejam
associadas diversas saídas.
-
Deletando um bloco, todas as ramificações que são conectadas com a entrada
booleana, com exceção da ramificação principal, são deletadas.
-
modo de sobre-escrever é disponível para troca simples de elementos do
-
mesmo tipo.
134
SENAI - SIEMENS - VW
Programação básica
Demonstração:
Editando e Depurando um Bloco de Programa
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_7.7
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Esta demonstração auxilia a familiarizar-se com os itens de menu para a edição e
depuração do seu bloco. Estas ferramentas são necessárias quando você for escrever
o seu programa no próximo exercício.
Será demonstrado o seguinte:
-
edição de um bloco pré-existente
-
seleção de uma linguagem de programação - LAD/FBD/STL
-
criar segmentos (networks)
-
usar os elementos da barra de ferramentas
-
usar os elementos do catálogo de instruções
-
salvar um bloco de programas
-
transferir um bloco de programa para o PLC
-
selecionar o modo on-line
-
exibir o status do programa
SENAI - SIEMENS - VW
135
Programação básica
Exercício 7.1: Editando o OB1
Click duas vezes sobre
o ícone do bloco
Modo off-line
Selecione a
pasta Blocks
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_7.8
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Objetivo
Editar o OB1 (criado automaticamente sem instruções).
Procedimento
1. Destaque a pasta Blocks do S7 Program, subordinado à estação de Hardware.
2. Selecione no campo de diálogo View ==> Off-line .
3. Selecione OB1 (double click).
4. Com ajuda dos símbolos na barra de ferramentas, digite o seguinte programa em
ladder.
136
SENAI - SIEMENS - VW
Programação básica
Resultado
Notas
-
Para posicionar o primeiro elemento, aponte o cursor para a linha da network.
-
Use os símbolos de programa da barra de ferramentas.
-
Posicione o cursor em cima do símbolo(tecla TAB ou mouse) para digitar o
endereço
-
Use a tecla TAB para saltar entre os elementos.
SENAI - SIEMENS - VW
137
Programação básica
Exercício 7.2: Selecionando o Método de Representação
Depois de você ter aberto o bloco ...
...selecione o método de representação
que você que usar.
Ladder Diagram (Diagrama Ladder)
Statement List (Lista de Instruções)
Function Block Diagram (Blocos de Função)
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_7.9
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Depois do bloco aberto, pode-se escolher entre os métodos de representação LAD
(Diagrama Ladder), FBD (Blocos de Função) e STL (Lista de instruções). Todas as
instruções são sempre convertidas para STL, porém a conversão para LAD/FBD nem
sempre ocorre em todos os segmentos.
Objetivo
Selecionar a linguagem de programação para edição do bloco.
138
SENAI - SIEMENS - VW
Programação básica
Procedimento
1. Abrir um bloco para edição (por ex. o OB1 do exercício anterior)
2. Seclecionar o modo de edição/visualização:
-
LAD, selecionar no menu de comando View ⇒ LAD.
-
STL, selecionar no menu de comando View ⇒ STL.
-
FBD, selecionar no menu de comando View ⇒ FBD.
Resultado
Seu program é representado em um dos seguintes tipo de representação:
Diagrama Ladder:
SENAI - SIEMENS - VW
139
Programação básica
Exercício 7.3: Salvando um Bloco
Para salvar, sem mudar
o nome do bloco ou
do arquivo usar :
File ==> Save
...ou
click
Para salvar o bloco
com um nome diferente
ou uma localização diferente:
File ==> Save As
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_7.10
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Como qualquer editor de programas/textos, é necessário salvar seu trabalho após a
edição. Isto é como um “Save” normal do Windows, o qual pode ser usado com os dois
procedimentos exibidos acima.
Quando usado o comando de menu File ⇒ Save As, deve-se especificar o projeto,
programa e e nome do bloco para este arquivo.
Depois de salvo, este bloco se encontra como um ícone na pasta Blocks do
projeto/programa em que foi salvo. Pode-se utilizar o SIMATIC Manager como o
“Explorer” para copiar ou mover o bloco para outros projetos, CPU’s, etc.
140
SENAI - SIEMENS - VW
Programação básica
Objetivo
Salvar um bloco de programa.
Procedimento
1. Selecionar no menu de comando File ⇒ Save ou clique no ícone Save.
2. Ou selecione no menu de comando File ⇒ Save As e especifique o arquivo de
destino.
Resultado
1. Salva o bloco de programa com o nome especificado quando o bloco está aberto
2. Com "Save As" o bloco de programa é salvo com o nome que você digitar.
Nota
O programa não é copiado para a CPU através do procedimento “Save”.
SENAI - SIEMENS - VW
141
Programação básica
Exercício 7.4: Transferindo um Bloco para a CPU
Para transferir um bloco para a CPU...
Download
SIMATIC S7
...ou click no ícone
Download...
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_7.11
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Depois editado o programa, o próximo passo é transferir o bloco para a CPU. Usando
o Editor LAD/STL/FBD pode-se transferir um bloco individualmente enquanto ele
estiver aberto, ou pode-se usar alternativamente o SIMATIC Manager para transferir o
bloco. O procedimento para usar o SIMATIC Manager é descrito nos próximos
exercícios (transferindo o programa)
Objetivo
Transferir um bloco (OB1) para a CPU com o editor LAD/STL/FBD.
142
SENAI - SIEMENS - VW
Programação básica
Procedimento
Quando o editor LAD/STL/FBD está aberto ....
1. Selecionar o menu de comando PLC ⇒ Download
(um click no ícone Download exibido acima.)
(responda as questões no menu de exibição).
Quando você responde com “Yes” , o bloco presente na CPU é sobre escrito.
Quando você responde com “No” , o bloco original permanece na CPU, e seu bloco
não é transferido. Para este exercício selecione “Yes”, porque você deseja usar um
novo bloco por você editado, e não o bloco antigo.
Resultado
Seu novo programa é escrito na CPU.
SENAI - SIEMENS - VW
143
Programação básica
Exercício 7.5: Estabelecendo Conexão On-line
Usando o SIMATIC
Manager
Usando o Editor
de Programa
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_7.12
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
On-line significa que os objetos exibidos são os blocos residentes na CPU. Esta
conexão não depende da CPU estar em modo RUN ou modo STOP. Com o STEP 7
você pode estabelecer conexão de dois métodos:
Objetivo
Usar o Editor LAD/STL/FBD para estabelecer conexão com a CPU.
Procedimento
Use o o Editor S 7 LAD/STL/FBD para abrir ou editar o bloco na CPU.
1. Selecione “Program S7 Blocks (LAD/STL/FBD)”
2. Selecione no menu de comando File-⇒
⇒ Open.
3. Selecione a opção View ⇒ On-line da lista drop-down.
144
SENAI - SIEMENS - VW
Programação básica
Depois que foi selecionado “On-line”, o dispositivo de programação seta a conexão. Os
blocos localizados na CPU são exibidos no menu. Para editar ou depurar um desses
blocos, selecione o bloco pertinente na lista. É possível ter mais que um bloco aberto
simultaneamente. Quando você executar este procedimento e selecionar a opção
“Arrange” no item Window do menu, você pode ver os dois blocos simultaneamente
Objetivo
Usar o SIMATIC Manager para estabelecer a conexão com a CPU
Procedimento
O SIMATIC Manager pode também ser usado para abrir ou editar blocos na CPU (o
Editor LAD/STL/FBD é iniciado automaticamente).
1. Inicie o SIMATIC Manager.
2. Selecione no menu de comando View ⇒ On-line .
Quando você selecionar o diretório da CPU, o SIMATIC Manager exibe os nome de
todos blocos localizados na CPU. Você também pode usar este menu para abrir blocos
para edição e depuração de programas.
SENAI - SIEMENS - VW
145
Programação básica
Exercício 7.6: Exibindo o Status do Programa
MW2
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_7.13
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
O bloco deve ser aberto on-line para que o processo seja monitorado. A seção de
instrução dos blocos exibe o estado de operação quando os valores mudam. Em LAD,
um código de cores exibe o fluxo de corrente, e contatos abertos ou elementos são
representados por linha pontilhada. Entre outras coisas, as cores e os tipos de linhas
podem ser mudados via a função do menu Options ⇒ Customize ⇒ LAD/STL/FBD.
Objetivo
Depurar o bloco enquanto ele está sendo processado pela CPU.
146
SENAI - SIEMENS - VW
Programação básica
Procedimento
1. Use um dos procedimentos do exercício anterior para selecionar o bloco que
deseja testar (modo on-line).
2. Selecione o método de representação View ⇒ LAD/STL ou FBD.
3. Selecione no menu de comando Debug ⇒ Monitor.
Resultado
Os elementos do programa e os símbolos são exibidos e ativados se logicamente
verdadeiros. Os valores que não são “Logicamente Verdadeiros” não são destacados.
SENAI - SIEMENS - VW
147
Programação básica
148
SENAI - SIEMENS - VW
Programação básica
Operações lógicas básicas
Instruções de BIT
Instrução
FBD
LAD
I 1.0
STL
I 1.0
Scan para Sinal "1"
A I 1.0
I 1.1
I 1.1
Scan para Sinal "0"
Q 4.1
Q 4.1
( )
Assign Output (saída)
Q 5.0
(S)
R
(R)
I 0.1
SR_FF
S
Q
I 0.1
SR_FF
S
Q
R
I 0.2
R
I 0.2
SIMATIC S7
Siemens AG 1995. All rights reserved .
R Q 5.0
M 10.0
M 10.0
Seta/ Reseta Flip Flop
S Q 5.0
S
Q 5.0
Q 5.0
Reseta Saída
= Q4.1
=
Q 5.0
Seta Saída
AN I 1.1
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_8.2
A I 0.1
S M 10.0
A I 0.2
R M 10.0
Conhecimento em Automação
Training Center
Geral
As instruções de BIT trabalham com dois valores, 1 e 0. Com instrução na forma de um
contato ou de uma saída, 1 indica ativado ou energizado; 0 indica desativado ou
desenergizado. Instruções de BIT interpretam o estado do sinal 0 ou 1 e o combina de
acordo com a lógica booleana. O resultado destas combinações é 0 ou 1, denominado
como “Resultado da Operação Lógica” (RLO).
Instruções de bit:
-
Scan para Sinal “1”
-
Scan para Sinal “0”
-
Saída
-
Conector
SENAI - SIEMENS - VW
149
Programação básica
-
Setar Saída
-
Resetar Saída
-
Setar/Resetar Flip Flop
-
Resetar/Setar Flip Flop
-
RLO Negado
-
Salvar RLO
150
SENAI - SIEMENS - VW
Programação básica
AND, OR, XOR
LAD
FBD
I0.0
STL
AND
AND
AND
I0.1
Q4.0
I 0.0
I 0.1
&
I 0.2
I 0.3
>=
Q 4.0
A I0.0
A I0.1
= Q4.0
OR
OR
Q4.1
I0.2
I0.3
OR
Q 4.1
XOR
I 0.4
XOR
&
XOR
>=
I 0.5
I0.4
I0.5
I0.4
I0.5
Q4.3
I 0.4
I 0.5
I 0.4
I 0.5
SIMATIC S7
Siemens AG 1995. All rights reserved.
O I0.2
O I0.3
= Q4.1
&
Q 4.3
XOR
...or
Q 4.3
A I0.4
ANI0.5
O
ANI0.4
A I0.5
= Q4.3
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_8.3
X I0.4
X I0.5
= Q4.3
Conhecimento em Automação
Training Center
A descrição das instruções é baseado nos exemplos acima.
AND
Se e somente se o estado do sinal I0.0 = 1 e I0.1 = 1, o resultado da operação lógica
(RLO) é 1, e a saída Q4.0 torna-se 1. Se uma ou ambas as entradas tem sinal 0, o
RLO é 0 e a saída torna-se 0.
OR
Se o estado do sinal I0.2 = 1 ou I0.3 = 1, o RLO é 1 e a saída Q4.1 torna-se 1. Se
nenhuma das entradas for 1, o RLO = 0, e a saída torna-se 0.
XOR
SENAI - SIEMENS - VW
151
Programação básica
A instrução XOR torna o RLO 1 se e somente se uma das entradas for 1. Se nenhuma
das entradas for 1 ou se ambas forem 1, o RLO é 0, e a saída torna-se 0.
Resultado de Operações Lógicas, First Check
RLO
A
AN
A
=
A
I 1.0
I 1.1
M
Q4.0
I 2.0
SIMATIC S7
Siemens AG 1995. All rights reserved .
....
....
4.0 ....
....
Estado do Sinal
....
....
....
....
First Check
First Check
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_8.4
Conhecimento em Automação
Training Center
RLO
As instruções vistas até agora tratam principalmente de checks e designações. Isto
significa: O scan processa o estado do sinal de entrada, saída, memory markers (flag),
e designa um estado de sinal para saída ou memory markers (flag).
Dois ou mais bits que forem checados em função de uma associação qualquer geram
uma operação lógica. O resultado desses checks é o resultado da operação lógica
(RLO). O resultado da operação lógica de uma AND ou uma OR pode então ser
designado a uma saída ou a uma memória (flag).
152
SENAI - SIEMENS - VW
Programação básica
First Check
O termo first check (primeira checagem) indica que está sendo executada a primeira
instrução de uma lógica. Isto significa que uma nova operação lógica se iniciou, e que
o resultado (RLO) da operação lógica anterior não será considerado.
Isto torna sem importância, qual instrução (por ex. AND ou OR) está sendo utilizada
como primeira instrução de uma lógica escrita em STL.
O “first check” é gerado automaticamente pelo CLP sempre que uma lógica foi
encerrada (por ex. uma saída foi setada) ou um novo bloco foi iniciado.
SENAI - SIEMENS - VW
153
Programação básica
Instruções para Setar, Resetar e Salvar
FBD
LAD
Set
I1.0
Q5.0
S
Reset
I1.1
Q5.0
&
I1.0
Set/reset
Flip flop
I1.2
Q5.2
I1.3
R
Reset/set
Flip flop
I1.4
M0.2
RS_FF
R
Q
I1.1
I1.5
S
SIMATIC S7
Siemens AG 1995. All rights reserved .
Q5.0
R
I1.2
M0.0
SR_FF
S
Q
I1.3
R
I1.4
M0.2
RS_FF
Q
R
I1.5
S
Q5.3
Q5.0
S
&
R
M0.0
SR_FF
S
Q
STL
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_8.5
Q5.2
=
Q5.3
=
A I1.0
S Q5.0
A I1.1
R Q5.0
A
S
A
R
A
=
I1.2
M0.0
I1.3
M0.0
M0.0
Q5.2
A
R
A
S
A
=
I1.4
M0.2
I1.5
M0.2
M0.2
Q5.3
Conhecimento em Automação
Training Center
Geral
A função “flip-flop” consiste de operações de SET e RESET. As operações de Set e
Reset somente são executadas quando RLO=1. Quando o RLO=0, o estado atual
permanece inalterado. Se a condição para ambos, set e reset são verdadeiros
simultaneamente, então em STL, a instrução programada por último tem prioridade.
Em LAD e FBD é possível selecionar o bloco com prioridade na entrada setar ou na
entrada resetar.
Set
Quando o RLO=1, o endereço é setado e permanece inalterado até a condição de
reset ser executada. Se, neste exemplo, o estado do sinal de I1.0=1, mesmo por um
154
SENAI - SIEMENS - VW
Programação básica
único ciclo, a saída Q5.0 torna-se 1 e permanece até que seja resetado por outra
instrução.
Reset
Quando o RLO=1, o endereço é resetado. Se, neste exemplo, o estado do sinal de
I1.1=1, mesmo por um único ciclo, a saída Q5.0 torna-se 0.
Flip-flop Set/Reset
Se o estado do sinal de entrada S=1, e a entrada R=0, o endereço (bloco acima) é
setado .
Reset dominante: se o estado do sinal R torna-se “1”, o endereço setado anteriormente
é resetado para 0, independente do estado da entrada S (reset dominante)
Flip-flop Reset/Set
Com este tipo de bloco, o set é dominante.
SENAI - SIEMENS - VW
155
Programação básica
Instruções que Influenciam o RLO
LAD
NOT
I0.0
STL
FBD
NOT
I0.1
Q5.0
I0.0
I0.1
NOT
&
Q5.0
CLR/SET
CLR/SET
Não é exibido em LAD
Não é exibido em FBD
A I0.0
A I0.1
NOT
= Q5.0
CLR/SET
CLR
Não é exibido em LAD
Não é exibido em FBD
SET
NOT
SAVE
SAVE
I1.6
SAVE
(SAVE)
BR
I1.6
Siemens AG 1995. All rights reserved .
&
Q5.1
SAVE
Q5.1
BR
( )
SIMATIC S7
=
=
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_8.6
A I1.6
SAVE
A BR
= Q 5.1
Conhecimento em Automação
Training Center
NOT
NOT é uma instrução para inverter o RLO. Se o RLO precedente a instrução NOT for
0, este é negado para 1. Reciprocamente, tornará-se zero se o RLO for 1.
CLR
O RLO torna-se 0 com a instrução CLEAR, independente da condição anterior
SET
A instrução SET faz com que o RLO se torne 1.
è LAD/FBD não suportam estas duas instruções (CLR/SET).
156
SENAI - SIEMENS - VW
Programação básica
SAVE
Com a instrução de memória SAVE, o conteúdo do RLO é arquivado no bit
BINARY RESULT (BR) da palavra de status.
A BR
O RLO arquivado pode ser checado novamente usando a instrução A BR
SENAI - SIEMENS - VW
157
Programação básica
Flanco de Impulso (Degrau)
Diagrama de Status do Sinal
Flanco Positivo
Flanco Negativo
I 1.0
RLO
1
M 1.0
0
Time
Q 5.0
um scan
LAD
I1.0
M1.0
P
FBD
Q5.0
SIMATIC S7
Siemens AG 1995. All rights reserved .
&
I1.0
STL
M1.0
Q5.0
P
=
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_8.7
A I 1.0
FP M 1.0
= Q 5.0
Conhecimento em Automação
Training Center
A avaliação do flanco de impulso é freqüentemente necessária em um programa, na
realidade, sempre quando no programa uma entrada muda para ON ou para OFF, ou
quando o endereço é setado ou resetado.
Flanco de Impulso Positivo
Quando a entrada I1.0 muda seu estado de 0 para 1, como mostrado na figura
acima, a instrução FP identifica esta mudança de estado, denominada de flanco de
impulso positivo, e resulta em um RLO=“1” por somente um ciclo, ocorrendo um pulso
de largura de um ciclo na saída Q5.0.
158
SENAI - SIEMENS - VW
Programação básica
Para uma instrução FP, uma memória auxiliar (flag) deve ser especificada (pode
também ser bit de dados) no qual o estado do RLO é arquivado. Esta é a maneira pela
qual uma mudança de sinal pode ser identificada no próximo ciclo.
Flanco de Impulso Negativo
Para um flanco de impulso negativo, o pulso de scan ocorre quando o RLO muda
de “1” para “0”.
O símbolo para isto em STL é o “FN”, e em LAD, existe a letra “N” no símbolo de
saída.
SENAI - SIEMENS - VW
159
Programação básica
Exercício 8.1: Declarações de Operações Lógicas
Network 1
I0.0
I0.1
Network 2
I0.0
I0.1
Network 3
I0.2
AND
AND negada
Q4.0
Q4.1
OR
Q4.2
SIMATIC S7
Siemens AG 1995. All rights reserved .
Network 7
I0.2
I0.4
( R)
Latch selar
Q4.5
Conector
Network 8
I0.5
M0.0 I0.7 Q4.6
I0.6
#
OR antes AND
Q4.3
Network 9
M0.0
Bit de memória
Network 10
I1.0
I1.1
I0.3
Network 5
I0.5
Q4.4
Reset
Q4.5
I0.3
Network 4
I0.2
I0.4
Network 6
I0.6
Set
Q4.4
I1.0
XOR
Q4.7
Q5.0
I1.1
(S)
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_8.8
Conhecimento em Automação
Training Center
Objetivo
Entender os elementos lógicos comuns e combinações de operações lógicas binárias,
e começar familiarizar-se com o Editor S7 LAD/STL/FBD digitando operações lógicas.
Procedimento
1. Editar um OB1 (se existente, deletar o seu conteúdo).
2. Digitar as operações lógicas mostradas. Usar uma network para cada função
3. Salvar, carregar e depurar blocos na CPU.
(Quando carregando, especificar se o OB1 irá sobrescrever o da CPU)
Resultado
No modo Debug, pode-se visualizar o resultado das operações lógicas.
160
SENAI - SIEMENS - VW
Programação básica
Exercício 8.2: Máquina de Carimbar - Modo de Operação e Operação
Manual
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_8.9
Conhecimento em Automação
Training Center
Objetivo
Programe o modo de operação dos componentes para a máquina de carimbar de
acordo com as especificações abaixo:
O sistema é iniciado através da entrada I1.1 (botão ligar, contato NA)
O sistema é desligado através da entrada I1.2(botão com trava, contato NF)
A saída Q4.5 acende a lâmpada quando o sistema está ligado.
Quando o sistema é ligado, o modo de operação pode ser selecionado:
-
Com I 1.3=0 a operação manual é selecionada e com I1.3=1 a operação
automática é selecionada.
SENAI - SIEMENS - VW
161
Programação básica
-
Com o pulso na entrada I1.4, o modo de operação é aceita.
O modo de operação deverá ser sinalizado por lâmpadas(manual=Q4.6, automático=
Q4.7).
Durante a operação manual, a esteira pode ser movimentada para frente com os
botões não retentivos I1.5 (Q4.0) e para trás com I1.6 (Q4.1) respectivamente.
Procedimento
Desenvolva um programa para o controle do modo de operação.
1. Use os endereços I/Q e os dispositivos mostrados acima.
2. Criar um programa S7 com o nome ”MAQ_CARIMBAR" no projeto PRO1.
3. Escreva um programa para implementar as partes desta aplicação no FC15 e
chame o FC15 no OB1.
4. Salve, transfira e depure seu programa no dispositivo de treinamento.
Resultado
Teste o funcionamento no simulador, selecionando o modo de operação.
Teste a operação em Manual (ligar para frente/trás).
162
SENAI - SIEMENS - VW
Programação básica
Temporizadores, Contadores
e Comparadores
Temporizadores com Retardo na Energização/Desenergização
I0.7
S5T#35s
I0.5
I1.7
S5T#55s
I1.5
LAD
FBD
T4
T4
MW0
R
MW2
BCD
T5
S_OFFDT
Q
S
I1.7
R
BCD
MW6
R
BI
Q5.5
MW0
BCD
MW2
S5T#55s
I1.5
S_OFFDT
Q
S
TV
BI
Q5.6
MW4
R
BCD
MW6
T6
S_ODTS
I1.3
MW10
BCD
MW12
Siemens AG 1995. All rights reserved .
R
Q5.7
Q
BI
SIMATIC S7
I0.5
Q
S
TV
T5
MW4
S
TV
S5T#35s
Q5.6
BI
T6
S_ODTS
S_ODT
I0.7
TV
I1.3
S5T#105s
I1.4
Q5.5
S_ODT
Q
S
TV
BI
STL
S5T#105s
S
TV
BI
Q5.7
MW10
R
BCD
MW12
I1.4
Q
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_9.2
Exemplo:
Entrada com
atraso
S_ODT
A
L
SD
A
R
L
T
LC
T
A
=
I0.7
S5T#35s
T4
I0.5
T4
T4
MW0
T4
MW2
T4
Q5.5
Conhecimento em Automação
Training Center
O S7 oferece três opções de temporizadores com atraso (delay timer):
On-Delay Timer S_ODT
Retardo na Energização
SENAI - SIEMENS - VW
163
Programação básica
Off-Delay Timer S_OFFDT
Retardo na Desenergização
Retentive On-Delay S_ODTS
Retardo na Energização com Retenção
164
SENAI - SIEMENS - VW
Programação básica
Temporizadores de Pulsos
LAD
FBD
T2
T2
I0.0
Q4.0
S_PULSE
S
S5T#45s
I0.1
Q
I0.0
BI
MW5
S5T#45s
R
BCD
MW7
I0.1
S
Q
BI
MW5
R
BCD
MW7
T9
S_PEXT
S
Q4.1
BI
MW9
R
BCD
MW11
Siemens AG 1995. All rights reserved .
S_PEXT
I0.2
Q
TV
SIMATIC S7
Q4.0
TV
T9
S5T#85s
I0.3
S_PULSE
S_PULSE
TV
I0.2
STL
S5T#85s
I0.3
S
Q4.1
Q
TV
BI
MW9
R
BCD
MW11
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_9.3
A
L
SP
A
R
L
T
LC
T
A
=
I0.0
S5T#45s
T2
I0.1
T2
T2
MW5
T2
MW7
T2
Q4.0
Conhecimento em Automação
Training Center
O S7 oferece duas opções de temporizadores de pulso:
Pulse
S_PULSE Pulso
SENAI - SIEMENS - VW
165
Programação básica
Extended Pulse
S_PEXT
Pulso Extendido
166
SENAI - SIEMENS - VW
Programação básica
Contadores
FBD
LAD
C3
I0.2
C3
S_CU
I0.0
CU
Q
I0.0
CU
I0.2
S
SC
CV
MW0
C#12
CV_BCD
MW2
I0.1
SC
R
S_CU
Q5.0
S
C#12
I0.1
R
C5
Q5.3
CU
I0.5
CD
I0.3
S
CV
MW4
C#20
SC
CV_BCD
MW7
I0.7
Q
I0.5
CD
I0.3
S
C#20
I0.7
SC
R
Q5.0
CV
MW0
CV_BCD
MW2
S_CUD
I0.4
CU
Q
C5
S_CUD
I0.4
STL
SIMATIC S7
Siemens AG 1995. All rights reserved .
R
Q
Q5.3
CV
MW4
CV_BCD
MW7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_9.4
Exemplo:
CONTADORES
A I0.4
CU C5
A I0.5
CD C5
A I0.3
L C#20
S C5
A I0.7
R C5
L C5
T MW4
LC C5
T MW7
A C5
= Q5.3
Conhecimento em Automação
Training Center
As três opções de contadores existentes são descritos a seguir. Uma área de memória
é reservada para os contadores. Esta área de memória reserva uma palavra de 16 bits
para cada endereço de contador até 256 (dependendo da capacidade da CPU). O
valor máximo presetado é 999 (BCD).
Contador Crescente S_CU
Com um “flanco de impulso” positivo na entrada S, o contador é setado com o valor da
entrada SC. Iniciando com 0 ou SC, o contador conta crescentemente a cada vez que
existe um flanco de impulso positivo na entrada CU. A saída Q é sempre 1, enquanto o
valor de CV não for igual a 0. Se houver um flanco de impulso positivo na entrada R o
contador é resetado, isto é, o contador é setado com o valor 0.
SENAI - SIEMENS - VW
167
Programação básica
Contador Decrescente S_CD
Com um “flanco de impulso” positivo na entrada S, o contador é setado com o valor da
entrada SC. Iniciando com 0 ou SC, o contador conta decrescentemente a cada vez
que existir um flanco de impulso positivo na entrada CD. A saída Q é sempre 1,
enquanto o valor CV não for igual a 0. Se houver um flanco de impulso positivo na
entrada R o contador é resetado, isto é, o contador é setado com o valor 0.
Up / Down Counter S_CUD
Combinação de contadores crescente e decrescente.
168
SENAI - SIEMENS - VW
Programação básica
Instruções de Temporização e Contagem para Bits
FBD
LAD
I0.0
T5
( SD )
I0.1
I0.2
I0.3
S5T#25s
T9
( SF )
S5T#15600mS
T2
( SP )
S5T#12S
T6
( SE )
S5T#500ms
I0.4
T10
( SS )
S5T#20ms
I0.5
C14
CU)
(
I0.6
SIMATIC S7
Siemens AG 1995. All rights reserved .
C17
( CD )
STL
T5
I0.0
&
I0.1
&
I0.2
&
I0.3
&
I0.4
&
I0.5
&
SD
S5T#25s
SD
T9
SF
SF
S5T#15600ms
T2
SP
S5T#12s
T6
SE
S5T#500ms
T10
SS
CU
CU
C17
&
SE
SS
S5T#20ms
C14
I0.6
SP
CD
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_9.5
CD
A
L
SD
A
L
SF
A
L
SP
A
L
SE
A
L
SS
A
CU
A
CD
I0.0
S5T#25s
T5
I0.1
S5T#15600ms
T9
I0.2
S5T#12s
T2
I0.3
S5T#500ms
T6
I0.4
S5T#20ms
T10
I0.5
C14
I0.6
C17
Conhecimento em Automação
Training Center
Temp. On-Delay SD
Se o RLO mudar de 0 para 1, o temporizador SD é inicializado. Se o temporizador
estiver funcionando, e o RLO mudar de 1 para 0, o temporizador para.
Temp. Off-Delay SF
Se o RLO muda de 1 para 0, o temporizador SF é inicializado. Se o RLO mudar de 0
para 1, o temporizador é resetado. O temporizador não é completamente reinicializado
até que até que o RLO mude de 1 para 0.
Temp. de Pulso SP
Se o RLO muda de 0 para 1, o temporizador SP recebe o valor do tempo. O
temporizador funciona com tempo específico, contanto que RLO = 1. Se o RLO mudar
de 1 para 0 com o temporizador funcionando, o temporizador para.
SENAI - SIEMENS - VW
169
Programação básica
Temp. Pulso Extendido SE
Se o RLO muda de 0 para 1, o temporizador SE recebe o valor do tempo. O
temporizador funciona por um período específico, até mesmo se o RLO
mudar para 0 antes que o temporizador pare. Se o RLO muda de 0 para 1, o
temporizador é setado novamente. O estado do sinal do tempo de scan resulta em
RLO = 1, contanto que o temporizador esteja funcionando.
Temp. On-Delay Retentivo SS
Se o RLO muda de 0 para 1, o temporizador SS recebe o valor de tempo. O
temporizador funciona com o tempo especificado, até mesmo se o RLO mudar
novamente para 0 antes que o temporizador pare de funcionar. Se o RLO mudar de 0
para 1, o temporizador é setado novamente. O estado do sinal do tempo de scan
resulta em RLO = 1, contanto que o temporizador esteja funcionando.
Contador Crescente CU
A bobina CU incrementa de 1 o valor de um contador específico, se o RLO mudar de 0
para 1.
Contador Decrescente CD
A bobina CD decrementa de 1 o valor de um contador específico, se o RLO mudar de
0 para 1.
170
SENAI - SIEMENS - VW
Programação básica
Acumuladores
Instrução para Carga no Conteúdo do Accu 1
31
24
23
24
23
24
16
15
23
7
16
15
0
IB 0
8
7
IB 0
MB 1
MB 0
8
0000
0000
0000
31
15
0000
0000
31
16
L IB 0
0
L IW 0
IB 1
8
7
MB 2
0
L MD 0
MB 3
Instrução de Transferência
31
24
MB 0
23
16
MB 1
T QD 4
SIMATIC S7
Siemens AG 1995. All rights reserved .
15
8
7
MB 2
T QW 4
0
MB 3
T QB 4
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_9.6
Conhecimento em Automação
Training Center
Geral
Acumuladores são memórias auxiliares na CPU para troca de dados entre vários
endereços, para comparação e operações matemáticas. O S7-300 tem dois ACCU’s
(acumuladores) com 32 bits cada, e o S7-400 tem quatro acumuladores com 32 bits
cada.
Operação de Carga LOAD
As operações de carga sempre usam o ACCU1. Quando o valor é carregado no
ACCU1, o valor é arquivado posicionado a direita, e as posições não utilizadas são
deletadas. O valor anterior do ACCU1 é deslocado para o ACCU2 durante a carga.
SENAI - SIEMENS - VW
171
Programação básica
Operação de Transferência Transfer
Durante a transferência, o conteúdo do ACCU1 é copiado para área de memória de
destino (o conteúdo permanece no ACCU1). Se somente um byte é transferido, os oito
bits da direita são usados (ver figura).
RLO
As instruções de load e transfer são independentes do RLO e são portanto sempre
executadas. Em LAD e FBD, é possível carregar e transferir condicionalmente
utilzando-se a entrada EN do bloco MOVE.
Em STL, você pode implementar isto com jumps condicionais
172
SENAI - SIEMENS - VW
Programação básica
Carregando e Transferindo Dados
5
LAD/FBD
STL
MOVE
L - Load
T - Transfer
(Todos os tipos de dados com 8, 16, 32 bits)
EN
ENO
IN
O
MB 5
EN - Habilita Entrada
ENO -Habilita Saída
IN - Valor de Entrada
(Tamanho de todos os tipos
de dados 8, 16, 32 bit )
O - Target address
(Tamanho de todos os tipos
de dados 8, 16, 32 bit )
SIMATIC S7
Siemens AG 1995. All rights reserved .
Exemplos:
L +5
// Carrega uma constante 16-bit
L L#523123 // Carrega uma constante 32-bit
L B#16#EF // Carrega byte em hexadecimal
L 2#0001_0110_1110_0011
// Carrega valor binário 16-bit
L TOD#1:10:3.3
// Carrega tempo com 32-bit
T MB0
T QD256
// Transfere valor para byte de
memória 0
// Transfere valor para double
word 256
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_9.7
Conhecimento em Automação
Training Center
MOVE (LAD/FBD)
A instrução MOVE torna possível designar valores a variáveis. Se a entrada EN é
ativada, o valor presente na entrada IN é copiado para o endereço
especificado para saída O. ENO tem o mesmo estado do sinal que EN.
L and T (STL)
As instruções Load e Transfer permitem programar troca de dados entre áreas de
memória. Load e Transfer são executados incondicionalmente e independentemente
do RLO. A troca de dados é feita via acumulador.
A instrução Load transfere o conteúdo do endereço para o acumulador 1. Quando isto
acontece o conteúdo do acumulador 1 é transferido para o acumulador 2.
A instrução Transfer copia o conteúdo do acumulador 1 para o endereço destino.
SENAI - SIEMENS - VW
173
Programação básica
Funções de Comparação
LAD
M0.0
IW0
IW2
FBD
STL
==I
CMP ==I
Q5.7
CMP
==I
M0.0
IN1
IN2
IW0
IW2
IN1
IN2
OPÇÕES DE COMPARAÇÃO:
==
<>
>
<
>=
<=
Q5.7
A
A(
L
L
==I
)
=
M0.0
IW0
IW2
Q5.7
IGUAL A
NÃO IGUAL A
MAIOR QUE
MENOR QUE
MAIOR QUE OU IGUAL A
MENOR QUE OU IGUAL A
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_9.8
Conhecimento em Automação
Training Center
Comparação
Com as instruções de comparação, você pode comparar os seguintes pares de valores
numéricos.
-
dois inteiros (cada um com 16 bits)
-
dois inteiros duplos (cada um com 32 bits)
-
dois números reais (IEEE número de ponto flutuante, cada um com 32 bits)
Relação
Todas as instruções de comparação comparam os valores IN1 e IN2 baseados nas
seguintes relações:
-
IN1 é igual a (==) IN2.
-
IN1 é diferente de (<>) IN2
174
SENAI - SIEMENS - VW
Programação básica
-
IN1 é maior que (>) IN2
-
IN1 é menor que (<) IN2
-
IN1 é maior que ou igual a (>=) IN2
-
IN1 é menor que ou igual a (<=) IN2
RLO
Se a comparação é satisfeita, o resultado da operação lógica é 1.
SENAI - SIEMENS - VW
175
Programação básica
Instruções de Jump Incondicional
Os Jump incondicionais são executados independente de qualquer condição;
Este Jump não lê ou afeta os bits da palavra de status.
FBD
LAD
NEW1
Network 1
(
STL
NEW1
JMP )
JMP
JU NEW1
.
.
.
.
.
.
Network X
.
NEW1: A I0.2
A I0.3
= Q4.1
Network 2
Network 2
Network X
Network X
NEW1
NEW1
I0.2
Network 1
I0.3
Q4.1
( )
SIMATIC S7
Siemens AG 1995. All rights reserved .
I 0.2
I 0.3
&
Q4.1
=
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_9.9
Conhecimento em Automação
Training Center
Salto Incondicional
A instrução Jump Incondicional interrompe o fluxo normal da lógica de controle e provoca
o salto de programa para a posição marcada pelo rótulo (label). O label é representado
em LAD/FBD de maneira parecida ao elemento de saída, porém com as letras JMP e o
nome do rótulo destino associado; em STL o label é localizado atrás da instrução JU.
LAD “label”
--( JMP )
FBD
“label”
JMP
STL JU “label”
176
SENAI - SIEMENS - VW
Programação básica
Rótulos (labels)
O label marca o ponto onde o programa irá continuar a execução, após o salto.
Instruções ou segmentos localizadas entre o jump e o label não serão executadas.
O label obrigatoriamente deve estar localizado no mesmo bloco (OB,FB,FC) que a
instrução jump a que está associada.
SENAI - SIEMENS - VW
177
Programação básica
Jump Condicional, baseado em RLO
O bit “Resultado da Operação Lógica” (RLO) na palavra de status determina
quando estes jumps condicionais serão executados. Duas dessas instruções
também salvam o RLO no bit do resultado binário (BR).
LAD
FBD
STL
Jump if RLO = 1
I0.0
I1.0
Is RLO=1?
(
NEW1
JMP )
I0.0
I1.0
NEW1
JMP
&
A I0.0
A I1.0
JC NEW1
Jump if RLO = 0
REC2
I0.0
I1.0
Is RLO=0?
(
REC2
JMPN )
SIMATIC S7
Siemens AG 1995. All rights reserved .
I0.0
I1.0
JMPN
&
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_9.10
A I0.0
A I1.0
JCN REC2
Conhecimento em Automação
Training Center
Introdução
Saltos condicionais ocorrem sempre em função do estado do RLO.
Salto Condicional RLO = 1 (JC)
O jump condicional JC é executado se e somente se o RLO for 1. Estando o RLO=1 a
instrução se comporta da mesma maneira que um jump incondicional. Porém se o
RLO=0 a instrução jump é ignorada e a execução do programa continua a partir da
instrução seguinte.
Salto Condicional RLO =0 (JCN)
O jump condicional JCN é executado se e somente se o RLO = 0. Estando o RLO=0 a
instrução se comporta da mesma maneira que um jump incondicional. Porém se o
178
SENAI - SIEMENS - VW
Programação básica
RLO=1 a instrução jump é ignorada e a execução do programa continua a partir da
instrução seguinte.
JCB/JNB
Além das instruções acima, existe duas outras opções em STL que são a combinação
do RLO e o bit BR:
-
Jump se RLO = 1 com RLO armazenado em BR (JCB)
-
Jump se RLO = 0 com RLO armazenado em BR (JNB)
Ambas instruções trabalham da maneira que JC e JCN trabalham; o jump é executado
baseado no RLO. As instruções jump JCB e JNB salvam adicionalmente o RLO no bit
BR da palavra de status.
Nota:
Se o jump condicional não é satisfeito, o programa continua a processar as instruções
seguintes ao jump e o RLO é setado para “1”.
SENAI - SIEMENS - VW
179
Programação básica
Função Master Control Relay
LAD
FBD
(
MCRA
)
STL
MCRA
//Ativado
A I0.0
MCR(
//Habilitar MCR
//Abrir MCR
=
M0.6
=
A I0.7
= Q4.5
= M0.6
//Contato NA
//Saída
//Saída
Q5.0
S
A I0.4
S Q5.0
//Contato NA
//Setar saída
)MCR
//Fechar MCR
MCRA
I0.0
( MCR< )
I0.0
&
I0.7
&
I0.4
&
Q4.5
I0.7
Q4.5
( )
M0.6
( )
Q5.0
I0.4
( S)
(
M5.5
I1.7
MCR>
MCR<
)
M69.0
( )
M5.5
I1.7
&
( MCRD )
MCR>
M69.0
=
MCRD
AN M5.5 //Contato emer.
AN I1.7 //Contato emer.
= M69.0 //Saída
MCRD
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_9.11
//Desativar
Conhecimento em Automação
Training Center
Relê de Controle Mestre
O Master Control Relay é uma chave lógica mestre para energizar ou desenergizar o
fluxo de tensão. Quando “desenergizado” toda a seqüência lógica seguinte será zerada
(RLO=0) ao invés de ser executada. Se a lógica Master Control Relay estiver ativa
(RLO=1) considera-se que o sistema está energizado. Por sua vez, se a lógica estiver
inativa (RLO=0) considera-se que o sistema está desenergizado.
Observação
As instruções SET e RESET dentro de uma MCR inativo (desenergizado) não alteram
o valor da saída/flag. A instrução de transferência (=) zera a saída/flag quando o MCR
está inativo.
180
SENAI - SIEMENS - VW
Programação básica
MCRA
A instrução MCR Activate ativa a função Master Control Relay. As instruções Master
Control Relay On e Master Control Relay Off MCA< e a MCR> devem seguir a
instrução MCRA.
MCR<
A instrução Master Control Relay On marca o inicio da zona de controle lógico. MCR<
abre a área MCR e trigga instruções que armazenam o RLO na pilha MCR. A pilha
pode ter até oito entradas. Isto significa que até oito níveis de controle individuais
podem ser incluídas entre os comandos MCRA e MCRD.
MCR>
A instrução Master Control Relay Off marca o fim da área de controle lógico. O MCR>
é combinado com o mais próximo MCR< .
MCRD
A instrução MCR Deactivate desativa a função MCR. Você não pode programar
nenhuma área MCR depois do MCRD. Esta instrução é uma exigência para a
associação lógica com MCRA.
SENAI - SIEMENS - VW
181
Programação básica
Exercício 9.1: Máquina de Carimbar - Operação Automática
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_9.12
Conhecimento em Automação
Training Center
Objetivo
Continue a aplicação do exercício 8.2. A aplicação deverá trabalhar da seguinte forma:
Controle da esteira em operação automática
Em operação automática, o motor do transportador (Q4.0) ligará e permanecerá ligado
até que botoeira de desligar (I1.2) abra ou até que o sensor de peças altas (I0.7) fique
ativo, iniciando a operação de carimbar. Esta é monitorada pelos sensores de
carimbador avançado (I0.3) e carimbador recuado (I0.2). Depois a peça é expulsa e
monitorada pelos sensores de expulsão avançada (I0.5) e expulsão recuada (I0.4). A
válvula do carimbador está localizada na saída Q4.3 e a válvula do expulsor está
localizada na saída Q4.4.
182
SENAI - SIEMENS - VW
Programação básica
A peça deve ser mantida pressionada pelo cilindro de carimbar por 3s, sendo isto
sinalizado através da saída Q5.0.
Contando as peças
Existem dois sensores destinados a registrar peças baixas e altas. O sensor I0.7
registra as peças altas e o sensor I1.0 registra as peças baixas.
Peças altas e baixas devem ser contadas assim que sistema parta (C1 peças altas, C2
peças baixas). O número de peças altas é registrado em MW100 e o número de peças
baixas é registrado em MW102.
Procedimento
1. Desenvolva um programa no bloco FC16 e adicione a chamada no OB1 (Projeto
PRO1, programa “MAQ_CARIMBAR”). No FC15 você também deverá modificar a
network na qual o movimento da esteira para frente é programado.
2. Testar a solução no dispositivo de treinamento.
Resultado
Simule a função de operação automática e de contagem.
SENAI - SIEMENS - VW
183
Programação básica
184
SENAI - SIEMENS - VW
Programação básica
Conversão, operação lógica
digital, matemática,
deslocamento
Formato de Números
Número
Decimal
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Número
BCD
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
SIMATIC S7
Siemens AG 1995. All rights reserved .
15
0
0
0
0
0
0
0
8
7
0
1
0
1
Valor Decimal : 128 + 64
Bit de sinal
0
0
+
1
1
8 + 4
0
+
1
1
Tipo de Dados INTEGER ex.: 500
31
23 22
16 15
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Expoente:
(8 bit)
8 7
0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Mantissa
(23 bit)
Tipo de Dados Real ex.: 45.6789
Sinal
Sinal
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_10.2
Código BCD
O dígito de um número decimal poder ser codificados com quatro dígitos binários. Esta
representação deriva do fato que o maior número decimal de 1 dígito, que é o número
9, necessita de pelo menos quatro posições para a representação em binária.
Para representar os dez dígitos decimais 0 até 9 em código BCD você usa a mesma
representação como você usaria para números binários de 0 até 9.
SENAI - SIEMENS - VW
185
Programação básica
De 16 combinações possíveis de quatro dígitos binários, seis não são utilizadas. Estas
combinações “proibidas” são chamadas de pseudo tetrad.
INTEGER(INTEIRO)
O tipo de dados INT é um inteiro (16 bits). O bit de sinal (bit no. 15) indica se você está
tratando com números positivos ou negativos (“0” = positivo, “1”=negativo). A faixa de
um inteiro (16 bit) está entre -32768 e +32767.
Um inteiro ocupa uma palavra de memória. Em formato binário, um inteiro negativo é
representado com o complemento de dois de um número inteiro positivo. Você chega
ao complemento de dois de um inteiro positivo quando inverte o estado do sinal de
todos os bits e adiciona “1” ao resultado.
NÚMERO REAL
Um número real (também chamado de número de ponto flutuante) é um número
positivo ou negativo que abrange valores tais como 0,339 ou -11,32. Você pode
também trocar o número real com um expoente como potência inteira de 10, com que
o número real tem que ser multiplicado, de forma a atingir o valor desejado. Como
resultado, o número 1024 pode ser expresso como 1.024E3.
O numero real ocupa duas palavras de memória e o sinal do número é definido pelo bit
mais significativo. Os bit´s restantes representam o expoente e a mantissa.
A faixa na qual o número real está compreendido é -3.402823 10 38 a 3.402823 1038
186
SENAI - SIEMENS - VW
Programação básica
Instruções de Conversão de Tipos de Dados
LAD/FBD
IW4
EN
BCD_I
ENO
IN
OUT
STL
BCD_I
MW20
DI_REAL
DI_REAL
EN
ENO
MD10
IN
OUT
MD30
IN
SIMATIC S7
Siemens AG 1995. All rights reserved .
OUT
L
MD10
DTR
T
MD30
ROUND
ROUND
EN
ENO
MD33
L
IW4
BTI
T
MW20
MD69
L
MD33
RND
T
MD69
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_10.3
Existem várias possibilidade de conversão. Todas as instruções têm o seguinte
formato:
EN = Enable input
A conversão é executada somente se o RLO é verdadeiro (=1).
ENO = Enable output
A saída Enable output tem o mesmo estado de sinal que EN (EN=ENO), a menos que
tenha havido um erro durante a conversão. Por exemplo, a instrução Round fornece o
ENO=0 para uma violação de faixa válida.
SENAI - SIEMENS - VW
187
Programação básica
IN = Valor de entrada
Valor a ser convertido
OUT = Valor de saída
Valor convertido
(LAD /FBD)
STL
Descrição
BCD_I / BCD_DI
BTI/BTD
Converte Código Binário em formato Decimal (BCD,
Binay Code for Decimal digits) em formato inteiro.
TRUNC
TRUNC
Converte ponto flutuante (real 32 bit IEEE) em inteiro
duplo.
DI_REAL
DTR
Converte inteiro duplo em número real.
I_DI
ITD
Converte inteiro em inteiro duplo.
ROUND
RND
Converte um número real em inteiro duplo e arredonda
o resultado para o próximo número.
CEIL
RND+
Converte um número real em inteiro duplo e arredonda
o resultado para o mais próximo inteiro menor ou o
mesmo número.
188
SENAI - SIEMENS - VW
Programação básica
Operações Lógicas Digitais
LAD/FBD
STL
WAND_W
EN
ENO
IW4
W#16#0FFF
IN1
IN2
OUT
MW30
WOR_W
ENO
EN
MW32
W#16#0001
IN1
IN2
OUT
MW32
WXOR_W
ENO
EN
IW0
IN1
MW28
IN2
OUT
SIMATIC S7
Siemens AG 1995. All rights reserved .
MW24
WAND_W
L
IW4
L
W#16#0FFF
AW
T
MW30
WOR_W
L
MW32
L
W#16#0001
OW
T
MW32
WXOR_W
L
IW0
L
MW28
XOW
T
MW24
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_10.4
WAND_W
A instrução “Word AND” combina dois valores digitais especificados na entrada IN1 e
IN2 bit a bit, baseado na tabela verdade AND. O resultado da operação é salvo no
endereço OUT. A instrução é executada se o sinal de entrada de EN=1. ENO tem o
mesmo estado do sinal de EN.
Tabela Verdade AND:
MW10
= 0100 010 0 1100 0100
W#16#0FFF = 0000 1111 1111 1111
MW30
= 0000 0100 1100 0100
SENAI - SIEMENS - VW
189
Programação básica
WOR_W
A instrução “Word OR”combina dois valores digitais baseados na tabela verdade OR
bit a bit, para valores de entrada IN1 e IN2. O resultado da operação OR é salvo no
endereço OUT. A instrução é executada , se o estado da entrada EN=1. ENO tem o
mesmo estado do sinal de EN.
Tabela verdade OR:
MW32
= 0100 0010 0110 1010
W#16#0001 = 0000 0000 0000 0001
MW32
= 0100 0010 0110 1011
WXOR_W
A instrução “Word Exclusive OR” combina dois valores binários das entradas EN1 e
EN2 bit a bit e de acordo com a tabela verdade OR Exclusive. O resultado da operação
WXOR é salvo no endereço OUT. A instrução é ativada, se a entrada EN=1. ENO tem
o mesmo estado do sinal de EN.
Tabela verdade XOR
IW0
= 0100 0100 1100 1010
MW28
= 0110 0010 1011 1001
MW24
= 0010 0110 0111 0011
190
SENAI - SIEMENS - VW
Programação básica
Funções Matemáticas Básicas
STL
LAD/FBD
MW4
MW10
ADD_I
EN
ENO
IN1
O
IN2
ADD_I
L
L
+I
T
MW6
MW4
MW10
MW6
SUB_I
SUB_I
EN
MW5
MW11
IN1
IN2
O
MW7
IN1
MD12
IN2
O
MD67
MD3
MW5
MW11
MW7
MUL_R
L
L
*R
T
MUL_R
EN
ENO
MD6
L
L
-I
T
ENO
MD6
MD12
MD67
MD67
DIV_R
EN
ENO
IN1
IN2
O
SIMATIC S7
Siemens AG 1995. All rights reserved .
DIV_R
MD33
L
L
/R
T
MD67
MD3
MD33
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_10.5
Existem várias funções aritméticas, como exibidas abaixo. As instruções têm o
seguinte formato:
EN = Habilita entrada
A instrução será executada se e somente se o RLO é verdadeiro (RLO=1).
ENO = Habilita saída
A saída Enable output tem o mesmo estado de sinal que EN (EN=ENO), a menos que
tenha havido um erro durante a conversão. Por exemplo, a instrução DIV_I fornece
EN0=0 quando se faz um divisão por zero.
IN1 = Entrada 1
1. valor aritmético da instrução.
SENAI - SIEMENS - VW
191
Programação básica
IN2 = Entrada 2
2. valor aritmético da instrução.
O = Saída
Resultado da operação aritmética.
Adição
ADD_I
Soma inteiros
ADD_DI
Soma inteiros duplos
ADD_R
soma números reais
Subtração
SUB_I
Subtrai inteiros
SUB_DI
Subtrai inteiros duplos
SUB_R
Subtrai números reais
Multiplicação
MUL_I
Multiplica Inteiros
MUL_DI
Multiplica inteiros duplos
MUL_R
Multiplica números reais
Divisão
DIV_I
Divide inteiros
DIV_DI
Divide inteiros duplos
DIV_R
Divide números reais
192
SENAI - SIEMENS - VW
Programação básica
Funções Matemáticas Avançadas
LAD/FBD
STL
SQRT
SQRT
EN
ENO
MD10
IN
O
L
M D10
SQRT
T
MD 14
MD 14
SIN
SIN
EN
MD 18
EN
MD 26
IN
ENO
O
MD 22
O
L
TAN
T
MD 30
SIMATIC S7
Siemens AG 1995. All rights reserved .
MD 22
IN
O
MD 26
MD 30
SQR
SQR
EN
ENO
MD 34
MD 18
TAN
TAN
ENO
IN
L
SIN
T
L
SQR
T
MD 34
MD 38
MD38
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_10.6
Existem várias funções matemáticas e trigonométricas com pontos flutuantes,
como mostrado abaixo. Estas instruções têm o seguinte formato:
EN = Habilita entrada
A instrução será executada se e somente se o RLO é verdadeiro (RLO=1).
ENO = Habilita saída
A saída Enable output tem o mesmo estado de sinal que EN (EN=ENO), a
menos que tenha havido um erro durante a conversão. Por exemplo, quando há
um overflow.
SENAI - SIEMENS - VW
193
Programação básica
IN = Valor de Entrada
1° operando da instrução (número real).
O = Valor de Saída
Resultado da operação (número real)
ABS
Valor Absoluto de um número real
ACOS
Arco Coseno para um número real (resultado em radianos)
ASIN
Arco Seno para um número real (resultado em radianos)
ATAN
Arco Tangente para um número real (resultado em radianos)
COS
Coseno para um número real (resultado em radianos)
EXP
Expoente para número real
LN
Logaritmo Natural para um número real
SQR
Raiz de um número real
SQRT
Raiz Quadrada de um número real
SIN
Seno de um número real (resultado em radiano)
TAN
Tangente de um número real (resultado em radiano)
194
SENAI - SIEMENS - VW
Programação básica
Funções de Deslocamento e Rotação
LAD/FBD
STL
SHL_W
SHL_W
EN
MW50
IN
MW4
N
ENO
O
*
MW12
L
MW50
SLW 2 //Multiplicação por 4
T
MW12
(MW4 = 2)
ROR_DW
EN
MD60
IN
MW6
N
ENO
O
*
MD50
ROR_DW
L
MD60
RRD 4
T
MD50
(MW6 = 4)
* Estado do sinal do último deslocamento de bit
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_10.7
Shift / Rotate
Com as instruções Shift e Rotate, você pode deslocar o conteúdo da mais baixa word
do Acumulador 1 ou o conteúdo do acumulador para a direita ou para esquerda, bit a
bit. A instrução (por exemplo, SLW=desloca palavra para esquerda) determina a
direção da operação de deslocamento. O parâmetro N especifica o número de bits a
serem deslocados. Na operação de deslocamento de palavra, os bits vazios são
preenchidos com o bit(MSB) de sinal (0=positivo e 1=negativo). Na operação de
rotação, os bits vazios são preenchidos com o conteúdo que foi rotacionado.
Instruções de Deslocamento: SHL_W
Deslocamento de uma Word para esquerda. Os bits de 0 até 15 do acumulador são
deslocados para esquerda de N bits(posições). Bits vazios são preenchidos com zero.
SENAI - SIEMENS - VW
195
Programação básica
SHL_DW
Deslocamento de uma Word dupla para esquerda. O conteúdo do Acumulador 1 é
deslocado bit a bit, N bits(posições) para esquerda. Bits vazios são preenchidos com
zero.
SHR_W
Deslocamento de uma Word para direita. Os bits de 0 até 15 do acumulador são
deslocados para direita de N bits(posições). Bits vazios são preenchidos com zero.
SHR_DW
Deslocamento de uma Word dupla para direita. O conteúdo do Acumulador 1 é
deslocado bit a bit, N bits(posições) para direita. Bits vazios são preenchidos com zero.
SHR_I
Deslocamento de um Inteiro para Direita. Os bits de 0 até 15 do acumulador são
deslocados para direita de N bits. Bits vazios são preenchidos com o valor do bit de
sinal (bit 15).
SHR_DI
Deslocamento de um Inteiro Duplo para Direita. O conteúdo do Acumulador 1 é
deslocado para direita bit a bit de N bits. Bits vazios são preenchidos com o valor do bit
de sinal (bit 31)
Instruções de Rotação:
•
ROL_DW
Rotaciona uma Word dupla para esquerda. O conteúdo do Acumulador 1 é
rotacionado bit a bit N bits para esquerda.
•
ROR_DW
Rotaciona uma Word dupla para direita. O conteúdo do Acumulador 1 é
rotacionado bit a bit N bits para direita.
196
SENAI - SIEMENS - VW
Programação básica
Exercício 10.1: Exemplos de Operações de Palavra
Network 1
I0.0
Q4.0
S_CU
CU
Q
I0.1
S
IW2
I0.6
PV
R
CV
CV_BCD
MW0
MW4
Network 2
DI_R
BCD_DI
EN ENO
MD2
IN
O
MD8 MD8
EN
ENO
IN
O
DIV_R
EN ENO
MD14 MD14
6.0
IN1
O
M68.0
MD20
IN2
Network 3
DI_BCD
TRUNC
EN ENO
MD20
IN
SIMATIC S7
Siemens AG 1995. All rights reserved .
O
MD26 MD26
EN
ENO
IN
O
MOVE
MD34 MD34
EN
IN
ENO
O
M69.0
MD50
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_10.8
Este exercício contém exemplos com as seguintes funções:
•
Network 1:
Um contador crescente que dispara quando a entrada I0.0 mudar de 0 para 1. O
valor corrente é salvo na MW4 em BCD.
•
Network 2:
O valor é convertido para duplo inteiro e então para REAL.( Um valor BCD não
pode ser diretamente convertido o para número REAL). O resultado da segunda
conversão é dividido pelo valor 6.0 .O número em ponto flutuante , que é, o
resultado da divisão, é salvo na MD20.
•
Network 3:
A MD20 é arredondada para inteiro e então convertido de duplo inteiro para valor
BCD. O valor BCD é transferido para o a saída MD50.
SENAI - SIEMENS - VW
197
Programação básica
Objetivos
1. Familiarizar-se com as instruções.
2. Manusear o browser (catálogo) de instruções e o help de funções.
Procedimento
1. Criar um programa com o nome "MATEMAT" no projeto PRO1.
2. Editar, salvar, transferir e depurar as operações lógicas exibidas acima usando o
Editor de Programas (Você pode trabalhar em LAD, FBD ou STL ).
Resultado
Quando acionado (contador crescente) I0.0, pode-se ver como a saída é
incrementada de um para cada múltiplo de seis ( por exemplo, para o status igual a 7
contador , deve ser exibido 1).
198
SENAI - SIEMENS - VW
Programação básica
Exercício 10.2: Planta de Carimbar
Dados de Produção
SIMATIC S7
Siemens AG 1995. All rights reserved .
Peças altas
MW 100
Peças baixas
MW 102
Total
MW 104
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_10.9
Objetivo
Continue a aplicação de exercício 8.1; contando as peças. Quando os contadores
forem usados lembrar que os contadores contam até 999. Para números maiores,
vários contadores podem ser usados em série.
Então, a contagem deve ser feita por meio de operações aritméticas. Para
gerenciamento, os dados de produção especificados no slide devem estar também
disponíveis.
Procedimento
1. No FC 16 (Programa “MAQ_CARIMBAR”), apagar as networks com funções de
contar peças.
SENAI - SIEMENS - VW
199
Programação básica
2. Criar o FC 18 para assumir a função de contagem. Depois que o sistema é ligado,
os valores nas MW 100/102/104 são apagados. Com os pulsos de I0.7 ou I1.0, as
peças são contadas com incrementos de 1. A soma das peças altas e baixas é
salva na MW 104.
3. Chame o FC18 do OB1
4. Transfira todos os blocos para o CPU e teste o seu programa.
200
SENAI - SIEMENS - VW
Programação básica
Ferramentas para testes
e depuração
Usando o Status do Editor LAD/STL/FBD
LAD
LAD
STL
STL
FBD
FBD
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_11.2
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved.
Status do Programa
Com o Editor LAD/STL/FBD, você pode exibir o programa e o fluxo do sinal na
linguagem de programação desejada.
•
LAD/FBD:
Mostra o fluxo de corrente entre os elementos e os valores de entrada e saída dos
blocos.
•
STL:
Mostra os endereços, o RLO e os registros importantes para a depuração do
programa.
SENAI - SIEMENS - VW
201
Programação básica
Monitor./Modificando Variáveis
As variáveis definidas pelo usuário podem ser exibidas ou mudadas on-line
com a CPU usando a opção PLC ⇒ Monitor/Modify.
Inicializando o Status
1. Abrir o bloco de programa on-line pelo editor (LAD,STL/FBD).
2. Selecionar Debug ⇒ Monitor (no menu do editor LAD/STL/FBD).
3. Resultado: O status da network selecionada e das seguintes são atualizados.
Nota
Para mudar a forma de visualização (ex.: entre LAD e STL), o status deve estar
desligado. Selecionando novamente Debug ⇒ Monitor , a marca antes de “Monitor”
desaparece. Para mudar a linguagem de programação selecione View ⇒ LAD, FBD
ou STL no menu do editor de Programas. Então o status do programa pode ser
selecionado novamente, depois que a forma de visualização foi mudada.
202
SENAI - SIEMENS - VW
Programação básica
Modo de Operação para Status de Blocos
Test Environment
Process:
Carga de tempo de ciclo limitada
Laboratory:
Carga de tempo de ciclo alta
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_11.3
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved.
Modo de Status
Há dois modos de operação para a função de Status do Bloco. Isto torna possível
selecionar o modo processo ou laboratório para o bloco aberto on-line.
Modo Process
O status dos operandos do programa é avaliado somente no primeiro scan. Este modo
causa uma menor carga no tempo de ciclo.
Modo Laboratory
O status dos operandos é avaliado todo scan. O tempo de ciclo pode ser aumentado
significativamente neste modo.
SENAI - SIEMENS - VW
203
Programação básica
Seleção do Modo
1. Use o editor LAD/STL/FBD para abrir o bloco on-line.
2. Selecione a linguagem que você deseja (LAD, STL, or FBD).
3. Selecione Debug ⇒ Call Environment.
4. Selecione Process ou Laboratory. (Process é setado como padrão).
Resultado:
Quando você selecionar a opção “Monitor” o status é operado no modo selecionado.
204
SENAI - SIEMENS - VW
Programação básica
VAT - Tabela de Monitoração/Modificação de Variáveis
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_11.4
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved.
VAT - Tabela de Monitor./Modificação de Varáveis
A ferramenta Monitor/Modify Variable é uma ferramenta com a qual pode-se exibir os
estados dos operandos do programa. Pode-se criar tabelas de variáveis em vários
formatos que necessariamente não têm que ser uma parte do programa.
Criando e Editando a Tabela
1. Abrir o projeto on-line, e selecionar o programa.
2. Na barra de ferramenta do SIMATIC Manager selecione
PLC ⇒ Monitor/Modify Variables.
3. (Para Criar) selecione Table ⇒ New; (para editar uma tabela existente) selecione:
Table ⇒ Open.
4. Selecione o seu programa e digite o seu bloco “VAT xy”.
SENAI - SIEMENS - VW
205
Programação básica
5. Digite as variáveis a serem monitoradas na coluna de endereços (nomes
simbólicos são permitidos).
6. Especifique o formato para cada variável na coluna de formatos (Browsing dos
tipos de formatos é possível Clicando com o botão da esquerda em cima desta
coluna ou selecionando com o botão da direita do mouse).
7. Se necessário, mascare certas colunas na tabela com o menu de comando View.
8. Salve a nova tabela de variáveis através do menu de comando File ⇒ Save ou
com Save As... .
206
SENAI - SIEMENS - VW
Programação básica
Menus e Barra de ferramentas do
Monitor/Modify Variable
Ícones para Monitorar/Modificar Variáveis
Trigger (define o modo de monitorar/modificar)
Monitor (monitora)
Modify (modifica)
Update Monitor Values (atualiza valores)
Activate Modify Values (ativa a modificação)
Enable Peripheral Outputs (habilita saídas)
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_11.5
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved.
A ferramenta Monitor/Modify Variable é uma ferramenta com a qual pode-se exibir os
estados dos operandos do programa. Pode-se criar tabelas de variáveis em vários
formatos que necessariamente não têm que ser uma parte do programa. Assim, a
depuração do programa ou hardware do PLC é facilitada.
View
Com o ítem “View,” pode-se selecionar opções de formato para a tabela de variáveis.
As opções de exibição podem ser selecionadas com o comando menu Variable
Monitor/modify (View) ou no ícone mencionado acima na barra de ferramentas.
SENAI - SIEMENS - VW
207
Programação básica
Monitor
A função Monitor ativa a monitoração (leitura) das variáveis listadas na tabela. A
função monitoração pode ser selecionada no comando do menu Monitor/Modify
Variables ou com o ícone da barra de ferramentas acima mencionado.
Note que existem duas possibilidades:
-
monitoração uma única vez;
-
monitoração cíclica (em função do trigger)
Modify
A função Modify altera os valores da tabela de acordo com o valor digitado na coluna
respectiva da tabela (coluna Modify Value).
Da mesma maneira que a função Monitor, existe duas possibilidades:
-
alteração uma única vez;
-
alteração cíclica (em função do trigger).
208
SENAI - SIEMENS - VW
Programação básica
Definindo Pontos de Trigger - VAT
q
Trigger point:
Pontos do ciclo no qual as funções de monitoração e
modificação são executadas.
PII
Inicio do Ciclo
"Trigger update": Comando para atualizar
tão rápido quanto possível sem
referência ao trigger point.
Ciclo
Transição: RUN ==> STOP
Fim do Ciclo
PIQ
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_11.6
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved.
Trigger Points
-
Inicio do Ciclo
-
Fim do Ciclo
-
Transição para STOP
Trigger Frequency
-
1 ciclo
-
Todo Ciclo
Setando Trigger
1. Selecione Variable ⇒ Trigger.
2. Selecione a opção desejada.
SENAI - SIEMENS - VW
209
Programação básica
3. Confirme com OK.
210
SENAI - SIEMENS - VW
Programação básica
Exercício 11.1: Usando o Status do S7
3. Preencha a tabela VAT1
da seguinte forma:
I0.0
I0.1
I0.2
I0.3
I0.4
I0.5
I0.6
I0.7
Q4.0
Q4.1
Q4.2
Q4.3
Q4.4
Q4.5
Q4.6
Q4.7
BIN
BIN
BIN
BIN
BIN
BIN
BIN
BIN
BIN
BIN
BIN
BIN
BIN
BIN
BIN
BIN
SIMATIC S7
1. Selecionar o modo de visualização
on-line....
2. Ativar o item de menu
PLC => Monitor/Modify Variables
4. ... Então SAVE
5. Selecione Variable => Monitor
(ou o ícone correspondente)
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_11.7
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved.
É possível monitorar e alterar o conteúdo das áreas M/I/Q com a função Monitor/Modify
Variables. O formato deve ser apropriado para o tipo designado (I0.0 = BIN). Para a
monitoração, o terminal deve esta conectado on-line com a CPU.
Objetivo
Criar uma tabela de variável que corresponda as 8 primeiras entradas do primeiro
módulo de entradas e as 8 primeiras saídas do primeiro módulo de saída.
Procedimento
1. Selecione o modo on-line de visualização de blocos
2. Selecione PLC => Monitoring/Modifying Variables.
SENAI - SIEMENS - VW
211
Programação básica
3. Digite a faixa de endereços na tabela (depois de cada entrada pressionar a tecla
"Enter”, o formato padrão é exibido ⇒ use BIN).
4. Salve a tabela.
5. Ative o ícone para monitorar varáveis (se for o caso verifique a parametrização do
filtro).
6. Tests as entradas e veja o resultado.
Resultado
A mudança dos valores correntes dos sinais de entrada e saída são exibidos na tabela.
Suplementar
Digite a lista de variáveis que corresponde a aplicação MAQ_CARIMBAR. Monitore as
variáveis com a função de status. Mude os valores das variáveis com a função Modify
para visualizar os efeitos na execução do programa.
212
SENAI - SIEMENS - VW
Programação básica
Funções, parâmetros
e dados locais
Chamando Blocos
Chamando Bloco
Bloco Chamado
(OB, FB, FC, SFB, SFC)
(FB, FC, SFB, SFC)
Execução
do Programa
Execução
do Programa
Instrução que chama
outro bloco
(FB, FC, SFB, SFC)
Execução
do Programa
Instrução que chama
outro bloco
Execução
do Programa
(FB, FC, SFB, SFC)
SIMATIC S7
Siemens AG 1996. All rights reserved .
Data: 07/11/00
Versão: 3.1
Arquivo: pro1_12.2
Conhecimento em Automação
Training Center
A instrução “Call” é utilizada para disparar a execução de um outro bloco lógico. Na
figura acima quando o 1°. bloco encontra a instrução Call, o programa interrompe a
execução deste bloco e passa a executar a 1ª. instrução do bloco chamado. Após ser
executada a última instrução do bloco chamado, o programa retorna ao bloco
chamador e continua a sua execução logo após a instrução Call.
Chamada em STL sem parâmetros
Call FC100
UC FC 100
CC FC 100
SENAI - SIEMENS - VW
213
Programação básica
Chamada em LAD sem parâmetros
Chamada em STL com parâmetros
Call FC20
Call FB30,DB10
Runtime:=MW20
Runtime:=MW20
Press:=PIW352
Press:=PIW352
Total:=QW20
Total:=QW20
Chamada em LAD com parâmetros
214
SENAI - SIEMENS - VW
Programação básica
Parâmetros EN/ENO
EN = Habilita Entrada
ENO = Habilita Saída
EN
Se ativa (1), executa
a instrução do bloco.
Se não ativa (0), não
executa a instrução
do bloco.
( )
ENO
Bloco de instruções
LAD (FC, FB, Move, Add, etc)
Se ativa (1), a instrução foi
executada sem erro.
Se não ativa (0), a instrução
não foi chamada, ou um erro
ocorreu na execução das
instruções.
* STL não suporta os parâmetros EN/ENO. ENO = BR bit em STL
SIMATIC S7
Siemens AG 1996. All rights reserved .
Data: 07/11/00
Versão: 3.1
Arquivo: pro1_12.3
Conhecimento em Automação
Training Center
EN/ENO
Em Diagrama de Contatos (LAD) e em Blocos Funcionais (FBD) existe um sinal de
habilitação do bloco (EN), isto é, o bloco é executado se e somente se o RLO=1 nesta
entrada
Possui também uma saída correspondente (ENO), que indica o se o bloco foi
executado corretamente.
Funcionamento
-
-se EN não é ativado (0), o bloco não é executado, e o ENO não é ativado (0).
-
se EN é ativado (1),o bloco é executado; se o bloco é executado sem erro, ENO é
ativada (1)
SENAI - SIEMENS - VW
215
Programação básica
-
se EN é ativada (1), o bloco é executado, se ocorre um erro na execução do bloco,
o ENO não é ativado (0).
EN/ENO em FBD
EN/ENO em STL
Em STL, o EN e ENO tem que ser emulado com instruções de jump salvando o RLO
no resultado binário BR. Isto é necessário se se deseja programar a condição ENO em
um bloco de usuário (caso de erro de execução).
A
I
1.0
JNB
SALT
CALL FC1
SALT: A BR
=
216
Q 5.0
SENAI - SIEMENS - VW
Programação básica
Vatiáveis Locais de um Bloco
Endereço
de memória
local
Valor
Inicial
Nome
Parametros
Var. Estáticas
Var.
Temporárias
Tipo de Declaração
SIMATIC S7
Siemens AG 1996. All rights reserved .
Tipo de dados
Data: 07/11/00
Versão: 3.1
Arquivo: pro1_12.4
Comentários
Conhecimento em Automação
Training Center
Variáveis Internas de um Bloco
Na Tabela de Declarações são definidas as variáveis que serão utilizadas internamente em um
bloco. Cada tipo de variável tem uma finalidade específica.
Parâmetros
Parâmetros servem como interface entre um bloco a ser executado e um bloco que chama este
bloco. Quando um bloco é chamado pode-se fornecer valores e/ou endereços a este bloco.
Dentro dele, estes parâmetros assumem a posição nos operandos em que foi programado.
Os parâmetros podem ser de entrada (somente leitura), saída (somente escrita) e entrada e
saída (leitura e escrita) os quais são passados para os blocos.
SENAI - SIEMENS - VW
217
Programação básica
Variáveis estáticas
As variáveis estáticas são variáveis auxiliares a serem utilizadas ou como rascunho ou como
flags auxiliares dentro do bloco.
Este tipo de variável é encontrado exclusivamente nos blocos tipo FB, pois são armazenadas
em bloco de dados do tipo Instance, que só estes blocos possuem.
Variáveis temporárias
As variáveis temporárias, também denominadas locais, são variáveis de rascunho válidas
exclusivamente no bloco em que foram definidas. Ao contrário das variáveis estáticas, estas
variáveis não possuem endereço fixo (são armazenadas temporariamente na “L stack”),
estando disponíveis somente enquanto o bloco estiver sendo executado. Assim estas variáveis
obrigatoriamente tem que ser iniciadas a cada ciclo do bloco, não servindo para armazenar
dados de um ciclo para o outro.
Colunas da Tabela
End. local: é um endereço relativo da memória local, criado automaticamente pelo sistema.
Pode-se eventualmente acessar a variável por este endereço porém se possível sempre usar o
nome simbólico.
-
Nome: é o nome simbólico para a variável que será usado com a seção de código do
programa.
-
Tipo de dado: tipo de dado da variável. Ex.: BOOL (Booleana), INT (Inteira)
-
Valor inicial: campo opcional onde pode-se definir o valor inicial ou de start-up.
-
Comentário: campo opcional que contém o comentário descritivo sobre a variável.
218
SENAI - SIEMENS - VW
Programação básica
Parâmetros de um Bloco
STL
CALL FB7, DB45
Liga:=I1.0
Desl:=I1.1
Motor:=Q 8.0
Parâmetros “Formais”
do FB
Chama FB7(usando o bloco
de dados instance DB45) e
passagem de parâmetros.
Endereço “Atual” onde os dados
residem ou irão ser arquivados
LAD
Endereço “Atual”
onde os dados
residem ou irão
ser arquivados
SIMATIC S7
Siemens AG 1996. All rights reserved .
DB45
FB7
ENO
EN
I1.0
I1.1
Liga
Desl
Motor
Chama FB7(usando o bloco
de dados instance DB45) e
passagem de parâmetros.
M2.1
Parâmetros “Formais”
do FB
Data: 07/11/00
Versão: 3.1
Arquivo: pro1_12.5
Conhecimento em Automação
Training Center
Como já mencionado a utilização de parâmetros facilita a programação e permite que um bloco
seja utilizado diversas vezes dentro de um programa, diminuindo o tempo de desenvolvimento e
a memória ocupada na CPU.
Chamada do Bloco
Como se vê na figura acima, a passagem de parâmetros é feita se preenchendo os campos de
parâmetros com os operandos correspondentes.
Em FBD/LAD os parâmetros localizados à esquerda são do tipo entrada (ou entrada/saída) e do
lado direito são do tipo saída.
SENAI - SIEMENS - VW
219
Programação básica
Programação
A programação utilizando os parâmetros é feito praticamente da mesma forma
que uma programação normal. Difere somente quanto aos operandos. Ao invés de se utilizar o
endereço absoluto do operando utiliza-se o nome simbólico do parâmetro conforme definido na
tabela de declarações do bloco.
Tipos de Parâmetros
Os parâmetros de um bloco podem ser:
-
in
parâmetros de entrada
-
out
parâmetros de saída
-
in_out
parâmetros de entrada/saída
220
SENAI - SIEMENS - VW
Programação básica
Utilizando Variável Local em um Bloco
SIMATIC S7
Siemens AG 1996. All rights reserved .
Data: 07/11/00
Versão: 3.1
Arquivo: pro1_12.6
Conhecimento em Automação
Training Center
Pilha Local (L stack)
Todo o bloco quando está sendo executado possui uma área de memória reservada na
chamada pilha local (L stack). Esta memória temporária é uma eficiente forma de usar
o sistema para arquivar valores intermediários que não são necessários depois que o
bloco é fechado. Estas variáveis (temp) são acessadas internamente no bloco pelo
nome simbólico. O tipo de dado declarado da variável deve ser respeitado (BOOL, INT,
etc.).
Programação
A utilização desta variável é semelhante ao uso de um parâmetro. Após a declaração
de seu nome e tipo na tabela de declaração do bloco, basta digitar o seu nome
SENAI - SIEMENS - VW
221
Programação básica
simbólico como um operando normal. Estas variáveis são identificadas pelo símbolo #
antes do seu nome simbólico.
Inicialização
Esta variável não existe fisicamente, sendo utilizado a pilha local para alocá-la durante
a execução do bloco. Sendo assim a cada chamada do bloco esta variável tem que ser
inicializada, isto é, o valor que esta variável continha no ciclo anterior não pode ser reaproveitado.
Exemplo
No exemplo acima a variável #res_inter recebe o resultado do cálculo (12 * X), e é
utilizada no segmento seguinte para complementar o cálculo (12X + 50). Em uma
técnica convencional de programação teria sido necessário utilizar um memória (flag),
ocupando-a desnecessariamente.
Variáveis Estáticas
Os blocos do tipo FB possuem adicionalmente variáveis do tipo estáticas (stat). Quanto
à edição o uso desta variável é igual a variável temporária. A variável estática porém
existe fisicamente (é armazenada no DB instance) sendo portanto possível utilizar o
valor armazenado no ciclo anterior.
Limites
Sendo uma área de memória da CPU, existem limites para criação e uso destas
variáveis. Estes limites dependem do tipo de CPU e da organização do programa.
Detalhes podem ser vistos no capítulo sobre Documentação.
Nota
Pode ocorrer de que um nome simbólico de variável local tenha o mesmo nome
simbólico de uma variável global. Para diferenciar isto as variáveis globais são
identificadas por aspas (“nome_simbol“).
222
SENAI - SIEMENS - VW
Programação básica
Exercício 12.1: Chamando FC Sem/Com Parâmetros
FC1
sem parâmetros
OB1
Chama FC1
incondicionalmente
e não passa valores
Chama FC2
condicionalmente e
passa diferentes
sets de valores
baseados na
condição de I1.7
FC2
com diferentes
parâmetros
SIMATIC S7
Data: 07/11/00
Versão: 3.1
Arquivo: pro1_12.7
Siemens AG 1996. All rights reserved .
Conhecimento em Automação
Training Center
Objetivo
Programar um bloco FC com e sem parâmetros. Notar a diferença entre a chamada de
um bloco com e de um bloco sem parâmetros
Procedimento
1. Crie um nova pasta de programa, denominada FUNCOES, no projeto PRO1.
2. Crie um FC1 sem parâmetros:
-
carregar um valor de entrada IB0, adicionar a constante 2 e transferir o
resultado para a saída QB4.
3. Crie um FC2 com parâmetros .
-
defina duas variáveis de entrada booleanas (start_1 e start_2) e uma variável
de saída booleana (buzina).
SENAI - SIEMENS - VW
223
Programação básica
-
programe para que quando as entradas start_1 e start_2 forem ativadas, a
saída buzina toque durante 3 segundos.
4. Programa no OB1 a chamada dos blocos:
-
o FC1 sem parâmetros uma única vez incondicionalmente.
-
o FC2 será chamado 2 vezes condicionalmente em função da entrada I1.7, com
os seguintes parâmetros:
start_1
start_2
buzina
I1.7=0
I1.0
I1.1
Q8.6
I1.7=1
I0.0
I0.1
Q8.7
Programar em LAD/STL/FBD e depurar o bloco. Na programação STL, a chamada
condicional dever ser feita por meio de jumps.
Resultado
Verifique as diferenças entre as chamadas.
Verifique as diferenças entre as linguagens.
224
SENAI - SIEMENS - VW
Programação básica
Programação simbólica
Endereçamento Absoluto e Simbólico
Absoluto
Simbólico
A
I
1.0
A
MOTOR_LIGADO
L
DB 10.DBW4
L
TURNO.PEÇAS
CALL
FC10
SIMATIC S7
Siemens AG 1995. All rights reserved .
CALL CONTROLE
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_13.2
Conhecimento em Automação
Training Center
Absoluto
Um endereço absoluto é um endereço específico na CPU (operandos formais), por
exemplo, entrada I1.0. Neste caso, não é necessário editar uma lista de simbólicos,
porém o programa é mais difícil de entender.
Simbólico
O endereçamento simbólico torna possível trabalhar com símbolos tais como
MOTOR_LIGA, ao invés do endereçamento absoluto. Os símbolos para entradas,
saídas, temporizadores, contadores, memory markers e blocos são arquivados na lista
de simbólicos. Neste caso, os símbolos são também chamados de símbolos globais
porque o acesso é possível por todos os blocos. Em oposição ao símbolos globais,
SENAI - SIEMENS - VW
225
Programação básica
existe também os simbólicos de bloco (locais), os quais são válidos somente no próprio
bloco. Os simbólicos de bloco são definidos na parte de declaração do bloco.
Symbol Editor
A lista de simbólicos para os Símbolos Globais é criado com a ferramenta Symbol
Editor. As outras ferramentas do STEP7, tais como Editor de Programas ou S7 Status,
também tem condição de acessar a lista de simbólicos para exibir os endereços
simbólicos.
226
SENAI - SIEMENS - VW
Programação básica
Endereçamento Simbólico - Características
Quais Símbolos Existem?
Onde são arquivados?
Qual a ferramenta para gerar ?
Dados Globais:
- Entradas
- Saídas
- Memory markers
- Temporizadores
- Contadores
lista de simbólicos
Editor de Símbolos
Dados de Blocos:
- Parâmetros do Bloco
- Dados locais/temporários
Parte simbólica do
bloco
Editor de Programa
(Parte de declarações)
Labels para saltos (jumps )
Parte de comentários
do bloco
Editor de Programas
(Parte de declarações)
(global) Tipos de dados(UDT) Arquivo de programa
Editor de Programa
Nomes de blocos:
- OB
- FB
- FC
- DB
lista de simbólicos
Editor de Símbolos
Dados em bloco de dados
Parte simbólica do DB
Editor de Programa
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_13.3
Conhecimento em Automação
Training Center
Características
O endereçamento simbólico torna possível uma leitura clara e fácil do programa. Todos
as variáveis, blocos, tipos de dados, etc., podem ser nomeados simbolicamente. O
nome simbólico pode ter até 24 caracteres, e até 80 caracteres de comentários.
A seção de simbólicos e comentários são arquivadas no terminal de programação. A
lista de simbólicos é localizada como o objeto “Symbol table” na pasta de programa S7
pertinente.
SENAI - SIEMENS - VW
227
Programação básica
Usando os Símbolos Globais
Você pode definir como símbolos globais: entradas, saídas, memory markers e blocos.
Os seguintes endereços são permitidos:
Sinais I/Q (Imagem de processo)
I, Q
Periferia inputs/outputs
PI, PQ
Memory markers
M
Temporizadores, contadores
T, C
Blocos de Códigos
FB, FC, SFB, SFC, OB, SDB
Blocos de dados
DB
Tipos de dados definidos pelo
usuário.
Tabela de variáveis
UDT
228
VAT
SENAI - SIEMENS - VW
Programação básica
Endereçamento Simbólico - Lista de Simbólicos
Exemplo de uma lista de simbólicos:
Nome do Símbolo
Endereço
Comentário do Símbolo
(1 até 24 caracteres)
(14 caracteres)
(1...80 caracteres)
Intertrav_1
Intertrav_2
Intertrav_3
Intertrav_4
Intertrav_5
Intertrav_6
Valores
Motor_1
Controle
I 1.1
I 1.2
I 1.3
I 1.4
I 1.5
I 1.6
DB 100
DB 1
FB 1
Intertravamento para Motor_1
Intertravamento para Motor_2
Intertravamento para Motor_3
Intertravamento para Motor_4
Intertravamento para Motor_5
Intertravamento para Motor_6
Bloco de dados globais
Bloco de dados Instance
Bloco de função
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_13.4
Conhecimento em Automação
Training Center
Symbol List
A lista de simbólicos é uma base de dados comum na qual as relações entre nomes
simbólicos e nomes absolutos são definidas.
Todas as ferramentas S7 podem acessar a lista de simbólicos (Editor LAD/STL/FBD,
Tabela de Variáveis, etc.).
Simbólicos Globais
A declaração de simbólicos globais pode ser acessada por todos os componentes do
programa. Os simbólicos têm que ser criados na lista de simbólicos antes de serem
acessados por sua aplicação. É possível porém durante a edição do programa, direto
no editor de programas, criar nomes simbólicos.
SENAI - SIEMENS - VW
229
Programação básica
Simbólicos Locais
Os simbólicos locais são declarados na parte de declaração do bloco. Estes nomes
simbólicos são somente válidos no próprio bloco onde foram gerados, sendo parte da
memória local. O mesmo nome simbólico pode ser usado várias vezes em diferentes
blocos, porque são válidos somente nos blocos pertinentes.
Simbólicos locais podem ser definidos para parâmetros de blocos, variáveis locais e
labels de saltos (jumps). Este método não necessita de uma lista de simbólicos.
Notação
Nome simbólico global - “nome_simbólico”
Nome simbólico local - #nome_simbólico (quando usado em varáveis locais)
230
SENAI - SIEMENS - VW
Programação básica
Editor de Simbólicos - Iniciando
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_13.5
Siemens AG 1995. All rights reserved .
Conhecimento em Automação
Training Center
Quando você criar um novo programa S7, o ícone da lista de simbólicos é
automaticamente criado.
Iniciando o Editor de Simbólicos
O Editor de Simbólicos é iniciado no SIMATIC Manager usando um double-click
noobjeto da lista de simbólicos, ou do Editor de Programas usando comando de menu
Options ⇒Symbol Table
Digitando uma Lista Simbólicos
Comece com o campo Symbol e com a tecla TAB salte para o próximo campo. Você
pode pode deixar o campo Data Type em branco, o tipo de dados é automaticamente
preenchido.
SENAI - SIEMENS - VW
231
Programação básica
Editor de Simbólicos - Editando
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_13.6
Conhecimento em Automação
Training Center
Introdução
Na figura acima temos a ferramenta Symbol Editor com uma lista de simbólicos do
transportador.
Unique/Non-Unique
Os símbolos usados no programa devem ser únicos, isto é, o endereço simbólico ou
absoluto pode estar presente na lista de simbólicos uma única vez. Se vários
endereços simbólicos ou absolutos iguais estão presentes na lista de simbólicos, eles
são exibidos em View ⇒ All destacadamente (Ver linhas 3 e 4 na figura).
Para poder localizar tais símbolos ambíguos mais facilmente em lista de simbólicos
grandes, você pode exibir estes simbólicos usando o menu de comando
View ⇒ Filter ⇒ Symbol Status ⇒ Non-Unique
232
SENAI - SIEMENS - VW
Programação básica
Import/Export
É possível também importar/exportar de/para arquivos texto a lista de simbólicos em
diferentes formatos DIF, SDF, ASC e SEQ. Isto possibilita transferir a lista de
designações ou a lista de simbólicos já gerados de outros aplicativos. Uma vez
gerados, você pode então usar a lista de simbólicos em outro editor.
Atributos
Os atributos são designados, na ordem reversa dos dados, por exemplo, para uma
interface do sistema operação. Os atributos têm os seguintes significados:
-
O: Controle de operação e monitoração com WinCC
-
M: Propriedades de mensagens
-
C: Propriedades de comunicação
SENAI - SIEMENS - VW
233
Programação básica
Exibindo Símbolos em Blocos ou Status
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_13.7
Conhecimento em Automação
Training Center
Program Editor
Pode-se selecionar quais informações quer se visualizar no Editor de Programas. A
representação simbólica ou endereço absoluto podem ser selecionados. Para escolher
entre estes dois, selecione no menu do Editor de Programa
View ⇒ Symbolic Representation.
Para ver o endereçamento absoluto e as informações dos símbolos ao mesmo tempo,
ativar no comando de menu View ⇒ Symbol Information. Como se vê na figura
acima, uma janela adicional com a informação dos símbolos é inserida abaixo do
segmento na linguagem LAD/FBD. No modo STL, as designações estão a direita das
instruções.
234
SENAI - SIEMENS - VW
Programação básica
Para adicionar novos nomes simbólicos durante a edição de um programa, coloque o
cursor no endereço e selecione no comando de menu Options ⇒ Edit Symbols ⇒
Object Properties e complete os nomes dos simbólicos.
Status
Como no Editor de Programa, símbolos e comentários dos símbolos podem também
ser exibidos com a ferramenta Monitor/Modify Variable. (veja a parte inferior da figura
acima).
SENAI - SIEMENS - VW
235
Programação básica
Descompilação de Programas
Símbolos Perdidos
Representação Substituta
lista de simbólicos
Endereço ao invés de símbolos para dados globais,
ex.: I 1.0
Parte simbólica do DB
Endereço ao invés de símbolos para componentes de DB
ex.: DW 1
Parte simbólica do FB
Endereço ao invés de símbolos para blocos locais e
blocos de dados temporários, ex.: LB 17
Substitui simbólicos ao invés de parâmetros de símbolos,
ex.: PAR 1
Parte de comentários do FB
SIMATIC S7
Siemens AG 1995. All rights reserved .
Substitui simbólicos ao invés de símbolos para labels de
laço.
ex.: M 001
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_13.8
Conhecimento em Automação
Training Center
Descompilação do Programa
Se a lista de simbólicos é perdida, o programa não pode ser completamente
descompilado. Similar ao STEP 5, os endereços então são representados com seus
valores absolutos. Isto é verdade para entradas, saídas, memory markers,
temporizadores e contadores bem como para componentes de DB (ex.: palavra de
dados). Existem também símbolos substitutos para labels de laços, ex.: M001.
Existem simbólicos substitutos também para variáveis locais, por ex.: LB 17,
Parâmetros de blocos também utilizam simbólicos substitutos, tais como Par 1, Par 2,
etc.
236
SENAI - SIEMENS - VW
Programação básica
Simbólicos
Os simbólicos e comentários são arquivados no harddisk do terminal de programação.
Nota
Em desenvolvimentos futuros, será possível arquivar os símbolos e os comentários
na memória de carga das CPU’s.
SENAI - SIEMENS - VW
237
Programação básica
Importação e Exportação da lista de simbólicos
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_13.9
Conhecimento em Automação
Training Center
As listas de símbolos podem ser transferidas para outro projeto com o Export e Import
do Editor de Símbolos. Também podem ser exportada para outro aplicativo, como por
exemplo um sistema CAD.
Exportando
O procedimento de exportação é descrito abaixo.
Passos
238
Procedimento
1
Abrir a lista de símbolos que você deseja exportar. Ativar o comando de
menu Symbol Table ⇒ Export.
2
Setar o formato para o qual você deseja exportar os dados (DIF, ASCII,
SDF, SEQ).
3
Na janela de seleção de arquivo, selecionar o diretório de destino e
digitar o nome, tal como EXPORTZO.SEQ.
SENAI - SIEMENS - VW
Programação básica
Importando
Lista de simbólicos geradas com outra ferramenta, tais como editor de texto, EXCEL
ou STEP 5 podem ser lidas e processadas com a função de importação.
Formato de Arquivos
Os seguintes formatos podem ser usados para exportação e importação:
-
Formato DIF
-
Formato ASCII
-
Formato SDF
-
Formato SEQ (lista de designação do STEP 5)
Uma descrição dos vários formatos de arquivos encontram-se no HELP on-line.
SENAI - SIEMENS - VW
239
Programação básica
Importando do EXCEL
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_13.10
Conhecimento em Automação
Training Center
Tabela do Excel
Criar uma tabela do EXCEL com quatro colunas nesta seqüência: symbol, address,
data type e comment. Não é obrigatório preencher a coluna com o tipo de dados
(o Editor de Símbolos irá reconhecer a designação do endereço e usar o tipo de dados
default baseado no endereço.)
Salvando
Salvar a tabela do EXCEL no formato DIF( o EXCEL não usa outro formato do Editor
de Símbolos).
Importando
O arquivo DIF, como outro formato ASC, SEQ e SDF, pode ser importado com o Editor
de Símbolos.
240
SENAI - SIEMENS - VW
Programação básica
Através da função de importação, é gerada uma tabela de símbolos nova ou os dados
importados são inseridos em uma tabela de símbolos existente.
Exportando
Uma tabela de símbolos existente também pode ser copiada de um projeto para outro
projeto pela função de exportação. Uma tabela já existente pode também ser
exportada para outro sistema como o EXCEL.
SENAI - SIEMENS - VW
241
Programação básica
Exercício 13.1: Usando o Editor de Símbolos
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_13.11
Conhecimento em Automação
Training Center
Com o S7 Symbol Editor, pode-se de forma simples, designar nomes claros para
endereços absolutos no seu programa.
Objetivo
Criar uma lista de símbolos que mostre a primeira parte da aplicação de carimbar.
Procedimento
Planeje uma lista de símbolos para a aplicação.
1. Selecione a pasta de programa MAQ_CARIMBAR.
2. Selecione na barra de ferramentas Options ⇒ Symbol Table.
3. Crie a lista de símbolos feche/salve-a.
4. Edite um bloco de programa.
242
SENAI - SIEMENS - VW
Programação básica
5. Ative no menu de comando View -⇒ Symbolic Representation para exibir a
designação simbólica dos endereços no seu programa.
Resultado
Somente os nomes simbólicos são exibidos em todas as operações e endereços do
programa. Você pode voltar para o endereçamento absoluto clicando novamente em
Symbolic Representation no menu.
SENAI - SIEMENS - VW
243
Programação básica
244
SENAI - SIEMENS - VW
Programação básica
Blocos de dados e de
funções
Tipos de Bloco de Dados
8 bits
Global(compartilhado)
Byte dados 0
O tamanho máximo do bloco
para CPU 314 é 8KB e para
a CPU 400 é 64kB
A quantidade de memória
disponível para um bloco de
dados depende da CPU
Instance
SIMATIC S7
Byte Dado 8191
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_14.2
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
DB
Existe uma área dentro da CPU que o usuário pode acessar livremente para
armazenamento de dados. Esta área, orientada a byte, é denominada pelo usuário
como Blocos de Dados (DB), devendo ser criada pelo usuário para se poder acessá-la.
Em contraste com os dados na área local (variáveis temporárias), os dados no DB não
são perdidos quando o DB é fechado, ou quando o processamento do bloco terminou.
Existe dois tipos diferentes de Blocos de Dados, cada um servindo a um propósito
diferente dependendo de sua relação ao bloco de programa.
SENAI - SIEMENS - VW
245
Programação básica
Global DB (compartilhados)
Blocos de Dados Globais podem ser acessados por qualquer bloco de programa.
Todos os tipos de blocos, FB’s, FC’s e OB’s, podem ler e escrever dados nos DB’s
Globais. Antes de ter acesso aos dados, o bloco DB deverá ser aberto. Os dados
contidos em um DB, são mantidos mesmo depois que o bloco seja fechado.
Instance DB (associado a FB)
Um bloco Instance-DB é um bloco associado a um bloco de função (FB). Os dados
arquivados neste bloco de dados podem ser lidos e escritos, a princípio, somente pelo
bloco de funções associado. A área de dados de um bloco Instance-DB é alocada (e
definida) a partir da tabela de declarações do FB.
Os dados arquivados não são deletados quando o bloco é fechado (diferente dos
dados locais de um FC ou de um FB que são deletados quando o bloco é fechado). Se
um FB é chamado em um programa várias vezes, a cada chamada pode (deve) ser
associado um diferente bloco Instance-DB.
246
SENAI - SIEMENS - VW
Programação básica
Criando Bloco de Dados
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_14.3
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Introdução
A criação de um bloco DB obedece as mesmas regras que para a criação de um bloco
de programa, sendo que é utilizado o mesmo editor de programas (LAD/STL/FBD)
para a edição.
Criando um novo DB
Utilize o mesmo método para criar o DB que foi utilizado para criar um bloco de
programa (por ex. botão direito mouse -> Insert New Objetct -> DB block)
SENAI - SIEMENS - VW
247
Programação básica
Ao se iniciar a edição de um novo DB, o sistema através de uma nova caixa de dialógo
solicitará a escolha do tipo de DB a ser criado (ver figura anterior):
-
Data Block: este o tipo DB global, ou seja, DB acessado por todo e qualquer bloco
de programa.
-
Data Block Referencing UDT: este é um DB também do tipo global, cuja a edição
dos seus elementos é feita através de um UDT (User Defined Data Type), que será
explicado a frente.
-
Data Block Referencing FB: este é um instance DB. isto é, um DB a ser utilizado
associado à um FB específico. Este DB só pode ser criado depois de definido o FB.
DB existente
Se o DB já foi editado anteriormente, utilize para acessá-lo o mesmo método utilizado
para acessar qualquer bloco de programa (por ex. um click-duplo sobre seu ícone).
Para DB’s existentes não aparece a caixa de seleção do tipo de DB, pois seu tipo já foi
definido anteriormente.
248
SENAI - SIEMENS - VW
Programação básica
Editando Bloco de Dados
Endereço
de memória
local
Nome
Tipo de dados
SIMATIC S7
Valor
Inicial
Comentários
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_14.4
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Introdução
O bloco de dados é uma área da memória da CPU, orientada a byte, disponível para
armazenamento de dados. Apesar de orientada à byte, esta área pode e deve ser
definida pelo usuário livremente, já que não existe formato de dados pré-definidos
para ela (na verdade existe, porém o usuário pode modificá-la).
A definição desta área visa a facilitar a manipulação dos dados no programa. Assim, se
o usuário precisa definir bits (variáveis boolenas) para utilizar na sua lógica, declara a
variável como BOOL. Se por outro lado, necessita variáveis para cálculos, deve definir
a variável como REAL.
SENAI - SIEMENS - VW
249
Programação básica
Endereço
As variáveis contidas no DB são acessadas preferencialmente pelo seu nome
simbólico. Apesar disto todas possuem um endereço de sua localização dentro do
bloco e permitem, caso se deseja, que sejam acessadas por este endereço.
Os endereços são do tipo BYTE.BIT, mesmo para as variáveis definidas como byte,
word, dword, etc.
Este endereços são definidos automaticamente pelo sistema logo após a edição da
variável (nome e tipo da variável).
Nome
É o nome simbólico alfanumérico da variável. Na maioria dos casos a variável será
acessada no programa por este nome simbólico.
Tipo de Dado
É o tipo de dados da variável (individual). A definição do tipo deve levar em conta a sua
utilização dentro do programa. Exemplo: BOOL(booleana ou bit).
Valor Inicial
Campo opcional onde se especifica o valor inicial da a variável. O valor default para
todas os tipos de variáveis é zero.
Comentário
Campo opcional para comentário/descrição das variáveis.
Dica
Note durante a edição, que o tipo de dado influencia a ocupação do DB. Assim
variáveis tipo WORD iniciam-se sempre no endereço par. Caso exista um byte impar
livre, este byte será deixado vazio, ocupando-se desnecessariamente a memória da
CPU.
250
SENAI - SIEMENS - VW
Programação básica
Tipos de Dados Elementares para SIMATIC S7
Tipo
Tamanho(em BIT)
Exemplo
BOOL
BYTE
WORD
1
8
16
1 or 0
16#A9
16#12AF
DWORD
CHAR
STRING *
S5TIME
32
16#ADAC1EF5
8
'w'
>=16, 8*(No.de caracteres) 'Isto é uma String'
16
S5T#5s_200ms
INT
DINT
REAL
16
32
32
123
65539
1.2 or 34.5E-12
TIME
DATE
TIME_OF_DAY
32
16
32
T#2D_1H_3M_45S_12_MS
D#1993-01-20
TOD#12:23:45.12
64
DT#1993-09-25:12.29.13
DATE_AND_TIME
*
*
Tipo de estrutura de dados
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_14.5
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Formato
Cada variável tem seu próprio formato, indicando o modo com o qual o programa irá
acessá-lo. A estrutura dos bits e seu comprimento são definidos pela designação dos
tipos de dados. É importante conhecer os vários tipos de dados, porque algumas
instruções requerem tipos de dados específicos. Isto é particularmente importante para
instruções LAD/FBD, porque o Editor confere os tipos de dados quando você endereça
individualmente os elementos.
Tipos de Dados
Os tipos de dados pertencem a uma das seguintes categorias:
-
dados básicos ou elementares: estruturas de dados menores que 32 bits, que têm
definições de acordo com IEC 1131-3
SENAI - SIEMENS - VW
251
Programação básica
-
dados complexos: estruturas ou campos que são maiores que 32 bits ou outros
tipos de dados
-
parâmetros: blocos de parâmetros usados para FBs ou FCs
252
SENAI - SIEMENS - VW
Programação básica
Acesso aos Elementos de Bloco de Dados
FBD
LAD
Abrir Bloco de Dados
Abrir Bloco de Dados
STL
Abrir Bloco de Dados
OPN DB10
Acessar os Dados
Acessar os Dados
Acessar os Dados
L
T
Abrir o Bloco e Acessar
os dados
Abrir o Bloco e Acessar
os dados
SIMATIC S7
DBW2
MW40
Abrir o Bloco e Acessar
os dados
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_14.6
L
T
DB10.DBW2
MW40
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Abrir DB
Antes que os dados de um bloco possam ser acessados é necessário que o DB seja
aberto. Isto é feito através da OPN DB. Se outro bloco de dados global já estiver
aberto, este é automaticamente fechado.
O bloco de dados Instance, associado à um FB, é automaticamente aberto pelo
sistema.
Acesso ao DB
A figura mostra como acessar os dados de um DB. As instruções utilizadas são as
mesmas utilizadas com qualquer outro operando. Por exemplo:
L
DBB3
Ler o byte 3 do DB
T
DBW12 Transferir o conteúdo do acumulador para a palavra 12 do DB
A
DBX4.5
Fazer a lógica AND com o bit 5 do byte 4 do DB
SENAI - SIEMENS - VW
253
Programação básica
Pode-se também acessar os dados dentro de um DB, através do chamado “caminho
completo”. O caminho completo é: nome-do-db.dado
Deste modo, na própria instrução é feita a abertura do DB e o acesso ao dado. Esta
maneira de acesso é própria para evitar erros de programação e facilita a
documentação.
Acesso Simbólico
A maneira ideal porém de acessar os dados de DB é a maneira simbólica. Na definição
das variáveis no DB já foi utilizado um nome simbólico. Assim faz sentido utilizar no
programa este nome, pois ajuda o seu entendimento.
Para utilizar o acesso simbólico, deve-se usar obrigatoriamente o caminho completo. O
caminho completo na forma simbólica exige que um nome simbólico tenha sido
definido para o DB (na tabela de simbólico). Exemplo:
L RECEITA.ARROZ (DB10.DBW12)
254
SENAI - SIEMENS - VW
Programação básica
Tipos de Dados Estruturados e Campos
Estrutura:
Campo:
COMPONENTES
GEOMÉTRICOS
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_14.7
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Dados Complexos
Dados complexos são dados maiores que 32 bits ou um conjunto de dados agrupados
em uma estrutura. Os tipos de dados podem ser:
-
DATE_AND_TIME
-
STRING
-
ARRAY
-
STRUCT (estrutura)
Estrutura
Estrutura é um conjunto de dados elementares ou estruturados. Isto resulta em um
único tipo que pode conter grande quantidade de dados com uma única unidade. Esta
estrutura pode então ser simbolicamente acessada.
SENAI - SIEMENS - VW
255
Programação básica
Uma estrutura pode servir para a criação de um conjunto de dados a ser utilizados em
vários blocos (DB, FC) no programa.
Campos/Matriz
É um conjunto de elementos do mesmo tipo de dados.
Exemplo: Aux: ARRAY[1...10] de BOOL;
representa um flag de memória auxiliar que consiste de 10 bits. Também podem ser
estruturados os elementos de dados de um campo que o usuário já tenha definido.(ver
exemplo: GEO_COMPONENTS).
Elementos de um campo pode também consistir de tipos de dados cujos elementos
também sejam campos. Este tipo de campo gera um sistema de matriz, possível até
dimensão 16.
Data View
Durante a edição de um DB, pode-se definir valores iniciais para as variáveis.
Entretanto para facilitar a edição só é permitido a edição do valor inicial do primeiro
campo/matriz. Para editar os outros campos utiliza-se o modo Data View. Para acessálo View -> Data View.
256
SENAI - SIEMENS - VW
Programação básica
Exercício 14.1: Back-Up dos Dados
Bloco de Dados DB5
Peças altas (MW 100)
Variável:peças_altas
Peças baixas (MW102)
Variável: peças_baixas
Variável: total
Total (MW 104)
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_14.8
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Objetivo
No Exercício 9.2, os dados de produção foram salvos em palavras de memória.
As palavras de memória usadas porém não são retentivas. Isto é, os dados de
produção irão ser perdidos com um completo restart.
Para evitar isso, os dados de produção devem ser arquivados em um bloco de dados.
Procedimento
1. Criar o bloco de dados DB 5 com o tipo de dados “int” para as variáveis
especificadas.
2. Criar um FC 23 para salvar ciclicamente os dados de produção no DB 5.
SENAI - SIEMENS - VW
257
Programação básica
3. Testar sua solução no dispositivo de treinamento.
Resultado
Verifique através da Monitor/Modify Variable o conteúdo do DB5.
258
SENAI - SIEMENS - VW
Programação básica
Blocos de Funções (FB)
Um Bloco de Função (FB) tem uma memória adicional associada a ele.
Esta “memória” é um Bloco de Dados (DB), denominado Instance DB,
que mantém uma cópia dos parâmetros passados para o bloco quando
da sua chamada. Após a execução do FB, a área local de memória é
limpa, mas o DB associado retém estes valores.
Cópia da parte de
declaração local do FB
DB10
Chamando o
Bloco com
parâmetros
FB1
Área de Declarações
Locais
Exemplo:
Seção de código
do bloco chamado
usando valores da
área de memória
local
Call FB1,DB10
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_14.9
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
FB
Um bloco de função (FB) é um bloco lógico de programa que possui uma área de
memória associada na forma de Bloco de Dados “instance”. Os parâmetros passados
para a área de memória local também serão arquivados ao DB instance. Dados
arquivados no DB são retidos depois do FB ter terminado a execução. O DB que é
associado com um FB possui a mesma estrutura de dados da declaração de variáveis
do bloco (exceto variáveis temporárias).
Chamada do Bloco
Sempre que um FB é chamado, deve-se indicar qual o DB (instance) será utilizado
como “memória”.
SENAI - SIEMENS - VW
259
Programação básica
Instance DB x FB
Normalmente diferentes chamadas de um FB no ciclo de programa tem um DB
diferente associado, já que podem ser utilizadas variáveis internas (do tipo estáticas)
recursivamente (armazenam valores de um ciclo para outro).
n FB x 1 DB
Se tomados os devidos cuidados (por ex. a não utilização de variáveis stat), é possível
utilizar o mesmo DB para diferentes chamadas do FB. Neste caso, a cada chamada,
os dados utilizados serão os do mesmo DB, funcionando o FB praticamente da mesma
maneira que um FC.
260
SENAI - SIEMENS - VW
Programação básica
Dados em um DB Instance
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_14.10
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Dados DB Instance
Os dados do DB instance são uma cópia exata das variáveis declaradas na tabela de
declarações (exceção variável temp) do FB associado. Ao se criar um Instance DB o
sistema automaticamente organiza estes dados. Não se edita variáveis/dados
diretamente no DB.
Criação DB Instance
Existem duas maneiras de se criar um Instance DB:
-
ao se criar um novo bloco DB, na caixa de diálogo informar DB Referencing a FB, e
selecionar o FB da lista mostrada.
-
durante a edição do programa, ao se chamar um FB (instrução Call), deve-se
obrigatoriamente indicar o DB associado. O sistema checa se o DB existe (e se foi
criado como DB Instance deste FB) e cria-o se necessário.
SENAI - SIEMENS - VW
261
Programação básica
Importante:
Só é possível se criar um DB Instance após a criação do respectivo FB.
Acesso ao Dados
A utilização de um Instance DB associado ao FB é transparente para o programador.
Isto significa que o acesso aos dados do DB não exige por parte do usuário qualquer
instrução especial. A programação é feita simbolicamente da mesma maneira que para
as variáveis locais ou parâmetros de um FC. O Sistema Operacional se encarrega de
ler/transferir dados de/para o DB Instance.
Registrador DI
Apesar de não necessário, pode-se acessar excepcionalmente os dados em um DB
Instance ou em um 2° DB normal, já que existe um segundo registrador de bloco de
dados (o 1° registrador é denominado DB). Isto permite, por ex., ter dois blocos de
dados abertos ao mesmo tempo. Ao se abrir um bloco de dados no registrador que
está ocupado, o bloco anterior é fechado.
Exemplo:
Registrador DB
Registrador DI
DB12
DB4
OPN DI4∗
L DIW10
OPN DB12
T DBW22
Observação
Quando um FB é chamado, o sistema automaticamente carrega o registrador DI com o
número do DB associado.
∗ Caminho completo: L DI4.DIW10 e T DB12.DBW22
262
SENAI - SIEMENS - VW
Programação básica
Criando um DB Instance
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_14.11
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Criação DB Instance
Existem duas maneiras de se criar um Instance DB:
-
durante a edição do programa, ao se chamar um FB (instrução Call), deve-se
obrigatoriamente indicar o DB associado. O sistema checa se o DB existe (e se foi
criado como DB Instance deste FB) e cria-o se necessário.
-
ao se criar um novo bloco DB, na caixa de diálogo informar DB Referencing a FB,
e selecionar o FB da lista mostrada.
SENAI - SIEMENS - VW
263
Programação básica
Importante:
Só é possível se criar um DB Instance após a criação do respectivo FB.
264
SENAI - SIEMENS - VW
Programação básica
Exercício 14.2: Chamando um Bloco de Função
com DB Instance
Passo
Procedimento
1
No projeto PRO_1, pasta FUNCOES, criar o
FB1 e por este FB atuar o valor de saída QB 5.
2
Chamar o FB1 no OB1 com a condição
abaixo.
3
Checar se os dados foram arquivados
corretamente no DB.
SIMATIC S7
listada
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_14.12
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Objetivo
Familiarizar-se com a chamada de um FB (com DB instance)
Procedimento
1. Declarar as seguintes variáveis na tabela de variáveis do FB:
-
in
in_1
byte
-
out
out_1
byte
2. Chamar o FB1 no OB1 com as seguintes condições:
-
quando no IW0, um valor menor que 16#F é setado, então este valor é enviado
para o DB20 instance via FB1
-
com valores >=16#F, este valor é enviado para o DB30 instance via FB1
SENAI - SIEMENS - VW
265
Programação básica
-
envie estes valores como número BCD para QB7
Resultado
Verifique o resultado diretamente no DB.
266
SENAI - SIEMENS - VW
Programação básica
Múltiplo Instance DB
Normal DB Instance
OB 1
DB 5
DB 10
FB 5
FB 10
DB 21
FB 11
...
Múltiplo DB Instance
FB 10
DB 5
OB 1
FB 5
...
SIMATIC S7
FB 11
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_14.13
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Modelo Instance
Normalmente se utiliza para cada chamada de um FB um DB instance. Especialmente
para pequenas CPU’s, onde a memória de trabalho é pequena e o número de DB
disponíveis é limitado, isto pode trazer problemas.
Múltiplo Instance
No modo múltiplo instance é possível utilizar um único DB para várias chamadas de
FB, inclusive de FB’s diferentes. Assim economiza-se espaço na memória, números de
DB, sem perder todas as facilidades que um DB instance oferece (uso de variáveis
estáticas).
SENAI - SIEMENS - VW
267
Programação básica
FB Gerenciador
A utilização de um múltiplo Instance pressupõe o uso de um FB gerenciador, isto é, um
FB ao qual o DB múltiplo instance está associado, que controla as chamadas dos
outros FB’s. No exemplo acima o FB gerenciador é o FB5 e o DB múltiplo instance é o
DB5, que serve também para os FB’s 10 e 11.
268
SENAI - SIEMENS - VW
Programação básica
Múltiplo Instance DB - Programação
FB Gerenciador
Tabela de declaração FB10
Tabela de declaração FB11
Chamada do FB Gerenciador
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_14.14
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Programação
Os FB’s chamados são programados normalmente. O FB gerenciador por sua vez terá
na sua tabela de declarações como variáveis estáticas os FB chamados.
Estes FB’s são por sua vez chamados no programa do FB gerenciador pelo seu nome
simbólico (nome declarado na variável estática) e tem seus parâmetros preenchidos
normalmente.
A chamada do FB gerenciador é feito no programa principal (por ex. OB1) e indicado o
DB associado, que será um DB múltiplo instance. O FB gerenciador pode ou não ter
seus próprios parâmetros.
SENAI - SIEMENS - VW
269
Programação básica
DB Múltiplo Instance
O DB criado como múltiplo instance contém todos os parâmetros de todos os FB’s
associados.
As variáveis dos diversos FB’s são identificadas pelo nome simbólico do FB, definido
no FB gerenciador, mais o nome do parâmetro.
270
SENAI - SIEMENS - VW
Programação básica
User-Defined Data Type (UDT)
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_14.15
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
UDT
User Defined Data Type - Tipo de Dados Definidos pelo Usuário, é uma alternativa
para a criação de uma estrutura de dados, que pode ser utilizada como uma espécie
de formulário de dados. Este ‘formulário” pode, entre outras possibilidades, ser
utilizado para criar diversos DB’s com os mesmos tipos de dados. Por ex.: criar 10
DB’s de receita.
Criando um UDT
A criação de um UDT é feita da mesma maneira que qualquer outro tipo de bloco. Por
ex. Insert New Object ==> User define Data Type.
SENAI - SIEMENS - VW
271
Programação básica
Editando um UDT
A edição do UDT é exatamente igual à edição de um DB global. Não existe nenhuma
diferença, a não ser que não é possível editar um UDT direto na CPU nem transferi-lo
para a CPU, já que o UDT não passa de uma máscara de dados, não existindo
propriamente dito.
Utilizando o UDT
Sendo somente uma máscara, a UDT não existe como área de memória de programa.
A UDT só é útil quando utilizada para criar variáveis a partir dela.
A utilização de um UDT para a criação de um DB é feita quando se cria um novo DB,
selecionando-se na caixa de diálogo do tipo de DB a função DB Referencing a User
Definded Data Type e selecionando-se então o UDT da lista mostrada.
É possível ainda utilizar a UDT como parte dos dados de um DB, ou de um outro bloco
(OB, FC ou FB). Basta declarar na tabela de declarações uma nova variável e o tipo de
dados como UDT. Neste caso a variável será acessada com o nome da variável +
nome da variável da UDT.
272
SENAI - SIEMENS - VW
Programação básica
Processamento de
palavra analógica
Conversão de Sinais Analógicos
Módulo de Entrada Analógica
Quando um módulo de entrada analógica
recebe sinal de tensão ou corrente do campo,
o módulo converte o sinal para valor binário
(A->D) que pode ser acessado pelo programa
na CPU pelo P bus.
Valor após a conversão A -> D
1000 L
0 0 1 0 1 0 1 0 1 1 0 1
0 0 0 0
PIW352 = +10960
0L
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_15.2
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Sinal Analógico
Quando o dispositivo de medição não usa sinal on/off mas de tensão ou corrente
(valores entre baixo ou alto) um módulo de entrada analógico é necessário. O módulo
de entrada analógico é conectado aos sensores no campo e condiciona a medição
para valores binários de tal forma que a CPU possa entender. Isto é chamado de
conversão analógica para digital (A Processamento de palavra analógica D). Os
valores digitalizados são então usados para comparações, controle e outras tarefas no
programa.
Faixa de Conversão
SENAI - SIEMENS - VW
273
Programação básica
A conversão AProcessamento de palavra analógicaD produz um número de +27648 a 27648. Isto representa uma palavra binária de 16 bits com o bit mais significativo
(mais a esquerda) usado para determinar se o valor é positivo ou negativo. Se o MSB
é igual a 0, o valor é positivo; se o MSB é igual a 1, o valor é negativo.
274
SENAI - SIEMENS - VW
Programação básica
Representação de Valores Analógicos
Representação de valores digitalizados em vários tipos de dados
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_15.3
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Formato
Como mostrado na tabela de valores acima, os valores analógicos podem ser
representados e usados em mais que um formato de número. A tabela mostra a faixa
de valores em decimal (inteiro) ou hexadecimal. Usando a função Monitor Variable,
pode-se ver a conversão de “int” e “hex”. E mais, pela exibição da representação
binária (“bin”), você pode ver o valor de uma palavra digitalizada.
Resolução
Módulos analógicos têm especificações de resolução: valor lido X representação. Esta
resolução corresponde à quantidade de bits de dados usados na palavra binária de 16
bits representada no valor analógico. Se a resolução tem menos que 15 bits, os dados
SENAI - SIEMENS - VW
275
Programação básica
analógicos são alinhados a esquerda. Os bits menos significativos não usadas são
preenchidos com zeros.
A posição mais a esquerda, o MSB, é a que representa o sinal; 0 significa valor
positivo, 1 significa valor negativo.
A tabela abaixo mostra exemplo de bits padrões para diferentes resoluções.
Tipo de Valor Analógico
Numero do bit
15 14 13 12 11 10 9
8
7
6
5
4
3
2
1
0
valor analógico 15-bit
0
1
0
0
0
1 1
1
0
0
1
1
1
0
1
1
Valor analógico 12-bit
0
1
0
0
0
1 1
1
0
0
1
1
1
0
0
0
valor analógico 8-bit
0
1
0
0
0
1 1
1
0
0
0
0
0
0
0
0
276
SENAI - SIEMENS - VW
Programação básica
Processamento de Valores Analógicos
O P bus (barramento de periferia) permite acessar diretamente
valores analógicos como entradas do campo ou como saídas para
o campo. O P bus pode ser acessado no formatos de byte, word e
double-word.
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_15.4
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
O endereçamento analógico não compartilha o mesmo registro que o módulo de sinal
digital, isto é os sinais analógicos no S7-300/400 não são atualizados a cada scan. Os
dados de entrada são atualizados pela simples leitura dos endereços de entrada (PIW)
com o seu programa, ou escritos na saídas com PQW. Quando o programa executa
uma instrução usando um endereço analógico (por exemplo, PIW352), os dados são
lidos diretamente do barramento de periferia, ou P bus.
Cada valor analógico é composto de 2 bytes, então os endereços analógicos usados
em seu programa devem consistir de todos os números para corrigir o problema de
sobrescrever dados.
SENAI - SIEMENS - VW
277
Programação básica
Exemplo:
Para ler um valor de uma entrada analógica e transferir o valor para uma word de
memória faça :
STL:
LAD:
L PIW354
T MW30
Exemplo:
Para enviar um valor para uma saída analógica de uma word de memória faça:
STL:
LAD:
L MW40
T PQW368
278
SENAI - SIEMENS - VW
Programação básica
Ajustando Valores Analógicos
10 V
0V
0l
SIMATIC S7
500 l
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_15.5
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Introdução
O nível do tanque é medido em litros. O transdutor de medição foi selecionado de tal
forma que para 500 litros um valor analógico de 10 V seja fornecido. Em 10 V, o
módulo fornece o valor inteiro 27648. Este valor deverá ser convertido agora para
dimensões reais (exemplo, litros). Este procedimento é também chamado de
Conversão em Valores de Engenharia.
Programa
No segmento 1, o valor analógico do módulo é lido e temporariamente armazenado na
word de memória MW100.
SENAI - SIEMENS - VW
279
Programação básica
No segmento 2, o ajuste de valores analógicos é executado pelo FC 105. O FC 105
está disponível na biblioteca do Software STEP 7 (FBLib2).
O valor analógico é passado como um número inteiro para a entrada IN. O limite para
a conversão em dimensões reais é especificado pela entrada LO_LIM (valor do limite
inferior). Portanto, entre 0 e 500 litros a conversão no exemplo. O valor ajustado
(dimensões reais) está disponível na saída OUT como um número real. A saída
BIPOLAR determina se valores negativos vão ser convertidos corretamente. No
exemplo, a memória (memory marker) M0.0 fornece o sinal “0” e determina que está
sendo utilizada uma entrada unipolar.
A saída RET_VAL fornece um valor de 0 quando a execução está livre de erros.
280
SENAI - SIEMENS - VW
Programação básica
Exercício 15.1: Monitorando o Nível do Tanque com
Valores Analógicos
Tanque 1
Q4.2
Tanque 2
Q4.3
Tanque 3
Q4.4
Tanque 5
Compartimento de
armazenamento
Transmisor
de nível
LT
Q4.1
Tanque 5
Bomba de dreno
PIW304
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_15.6
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Objetivo
O tanque 5 representa o produto armazenado. A combinação dos ingredientes é carregada de
tanques diferentes. O transmissor de nível (PIW304) monitora a altura atual do produto no
tanque cilíndrico de 1000L. Se o nível passa abaixo do setpoint mínimo, é acionado o
enchimento de todas as três válvulas. Se o nível ultrapassa o setpoint máximo, o ciclo de
enchimento pára e a válvula de dreno deverá ser aberta. Você irá simular o nível do tanque pela
entrada analógica PIW304 (valores de 0 a 27648).
Monitorando e Controlando o Nível Mínimo.
-
no tanque de armazenamento, o nível mínimo exigido é 100L (10% do total). Se o nível cair
abaixo de 100L, as válvulas de enchimento deverão ser abertas (Q4.2, Q4.3, Q4.4) e a
bomba de dreno deverá ser fechada.
SENAI - SIEMENS - VW
281
Programação básica
Monitorando e Controlando o Nível Máximo.
-
o nível máximo definido para o tanque de armazenamento é 900L. Se o nível ultrapassar
900 L, o fluxo de produto para dentro do tanque deverá ser suspendido pelo fechamento
das válvulas de enchimento, e deverá ser aberta a válvula de dreno (Q4.1)
Procedimento
1.
No projeto “Pro1” utilize a pasta de programa FUNCOES
2.
Desenvolver a FC5 para monitorar e controlar o nível do tanque como descrito
-
carregar os setpoints de medição para comparação
(nível baixo = 2764; nível alto = 24883)
-
o controlar as válvulas de enchimento e a bomba de dreno baseado nos valores
medidos na PIW304 e o resultado da comparação no FC.
3.
Testar sua solução no dispositivo de treinamento alterando o valor do sinal de entrada
analógica e monitorar a ação do controle.
4.
Para auxiliar a monitoração das variáveis, criar a VAT (tabela de variável) com as entradas
e saídas, bem como os setpoints.
282
SENAI - SIEMENS - VW
Programação básica
Informações do Sistema S7
Informações do Sistema
Função
Informação
Aplicação
Memória
Utilização atual da memória de
trabalho e carga.
Cheque se o programa pode ser
transferido para a CPU.
Características
da CPU
Lista todos os blocos permitidos
na CPU (OBs,SFCs,SFBs).
Determina quais os blocos são
possíveis para esta CPU.
Pilhas
Exibe os registros no caso de
erros.
Recupera informações no caso
de falha da CPU.
Comunicação
Desempenho dos dados de
comunicação .
Checar se ainda existe
conexões livres
Hora/Data
Hora/Data do clock interno .
Exibe a data/hora.
Tempo de Ciclo
Min., Max. e último tempo de
ciclo.
Ajuste do parâmetro tempo de
monitoração.
Buffer de
Diagnóstico
Exibindo os últimos 100
erros/ acontecimentos
Encontra a localização e causa
do erro.
INFO_T1D
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_16.2
Siemens AG 1995. All rights reserved .
Conhecimento em Automação
Training Center
Acesso
Para ler as informações sobre a CPU, ativar o menu de comando PLC ⇒ Module
information no SIMATIC Manager.
Informações da CPU
Na figura a seguir vê-se os dados gerais da CPU -314 do PLC S7-300.
SENAI - SIEMENS - VW
283
Programação básica
Note o item “Version”que informa qual a versão do módulo.
284
SENAI - SIEMENS - VW
Programação básica
Características da CPU
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_16.3
Conhecimento em Automação
Training Center
Dados sobre Performance
As informações sobre Performance fornecem detalhes específicos sobre o
funcionamento da CPU conectada ao PG/PC (informação on-line).
Estas informações são acessadas na pasta Performance Data.
Note porém que as informações indicam somente a capacidade máxima possível para
a CPU, e não necessariamente a disponível no momento.
Work Memory
Capacidade da memória de trabalho existente na CPU. Lembre-se que esta é a
memória onde o programa executável vai ser alocado.
SENAI - SIEMENS - VW
285
Programação básica
Integrated Load Memory
Capacidade da memória de carga integrada (existente na CPU sem cartão adicional)
na CPU.
Max. Slot-in Load memory
Capacidade de expansão da memória de carga através do uso de cartões F-RAM ou
F-EPROM
Addres Area
Faixa de endereçamento possível para a CPU: entradas digitais, saídas digitais,
memória (flags) temporizadores, contadores e dados locais.
Blocks
Informa o número e o tamanho máximo de blocos possíveis para a CPU.
286
SENAI - SIEMENS - VW
Programação básica
Ocupação da Memória
INFO_T1D
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_16.4
Conhecimento em Automação
Training Center
Memory
Esta pasta fornece informações sobre a ocupação da memória pelo programa do
usuário.
Work Memory
Esta área da RAM é acessada durante a execução do programa do usuário. A
memória de trabalho contém somente informações necessárias para o
processamento do programa na CPU. A memória de trabalho é integrada na memória
RAM da CPU, não podendo ser expandida.
Esta memória é muito importante para a definição do tamanho máximo de programa
executável.
SENAI - SIEMENS - VW
287
Programação básica
Load Memory
A memória de carga é uma memória intermediária onde o programa é armazenado
quando transferido para a CPU. Como esta memória possui não somente o programa
executável, mas outras informações necessárias para a edição do programa (por ex.,
tipo de dados do DB) esta memória é sempre maior que a memória de trabalho.
São apresentadas duas colunas de ocupação: uma referente à memória integrada à
CPU e outra à memória adicional inserida (cartão F-EPROM).
Comprimindo
Pode-se eliminar espaços existentes na memória de trabalho utilizando o botão de
comando “Compress”. Estes espaços originam-se de correções de programas na
CPU. Isto é, porque blocos alterados são sempre inseridos no final da área memória,
enquanto que os blocos antigos são declarados inválidos. A compressão da memória
reloca a RAM para limpar os espaços feitos nesta fragmentação, e torna a RAM mais
eficiente.
288
SENAI - SIEMENS - VW
Programação básica
Hora / Data no CLP
INFO_T1D
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_16.5
Conhecimento em Automação
Training Center
Time System
Esta pasta possui informações a respeito de data/hora e funções similares.
Relógio de Tempo Real
As CPU’s possuem um relógio de tempo real integrado (exceto CPU312) . Aqui podese ler a hora/data da CPU, além de informações sobre o sincronismo o relógio.
Medidor de Tempo Decorrido
Existe na CPU uma função de sistema (SFC) para medição de tempo decorrido de um
evento (por ex. tempo de funcionamento de um motor). Caso utilizada, é possível
acessar o tempo decorrido nesta pasta.
SENAI - SIEMENS - VW
289
Programação básica
Acertando o Relógio da CPU
Para acertar o relógio da CPU, selecione no menu de comando PLC ⇒ Set Time
and Date e digite os os novos valores no campo de diálogo. Pode-se também ler e
acertar o relógio pelo próprio programa de usuário via funções do sistema (SFC).
290
SENAI - SIEMENS - VW
Programação básica
Tempo de Ciclo
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_16.6
Conhecimento em Automação
Training Center
Cycle time
Tempo de ciclo é o tempo necessário para o programa realizar todo o ciclo de
programa. Este tempo de ciclo leva em conta o tempo necessário para atualizar a
imagem de entradas/saídas, para executar o programa do usuário e ainda
eventualmente o tempo para funções de PG/PC.
Tempos
O tempo de ciclo é mostrado graficamente e numericamente.
No gráfico vê-se o tempo gasto em relação ao máximo permitido, configurado pelo
usuário (tempo de watchdog). No caso do S7-400 pode-se ainda visualizar o tempo
mínimo de ciclo configurado.
SENAI - SIEMENS - VW
291
Programação básica
Vê-se na forma numérica:
-
menor tempo de ciclo desde que a CPU está rodando;
-
tempo de ciclo anterior a chamada da função;
-
maior tempo de ciclo desde que a CPU está rodando.
Esta informação pode ser utilizada para verificar se o tempo de execução do programa
de usuário está adequado à máquina/instalação.
292
SENAI - SIEMENS - VW
Programação básica
Exercício 16.1: Usando as Informações do S7
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_16.7
Conhecimento em Automação
Training Center
Objetivo
Familiarizar-se com o sistema de informações disponível e com as ferramentas de
auxílio PLC ⇒ Module Information.
Procedimento
1. Ativar a opção PLC
Module Information no menu do SIMATIC Manager ou
Editor LAD/STL/FBD.
2. Selecionar o catálogo/categoria desejado na barra de ferramentas.
3. Determinar o espaço que está disponível na memória de trabalho.
4. Visualizar o Diagnostic Buffer e os menus de auxílios relevantes.
SENAI - SIEMENS - VW
293
Programação básica
Resultado
Você tem a exibição de informações estáticas e ativas que podem ser chamadas com
as ferramentas de informações do S7. Durante o mal funcionamento da CPU, por
exemplo, você pode ler informações de diagnóstico com esta ferramenta.
294
SENAI - SIEMENS - VW
Programação básica
Diagnosticando e corrigindo
problemas
Sistema de Diagnóstico
Módulo I/Q
CPU
O diagnóstico da CPU
detecta um erro no sistema.
O diagnóstico do programa
detecta um erro.
Interrupção
de Diagnóstico
Erro no
OB
Buffer de
diagnóstico
Lista de
status do
sistema
Capacidade de
diagnosticar um
módulo, detectar
um erro e gerar o
diagnóstico de
interrupção.
SIEMENS
Mensagens de
diagnósticos
PG 740
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_17.2
Siemens AG 1995. All rights reserved .
Conhecimento em Automação
Training Center
Diagnóstico
Diagnóstico são funções integradas para a identificação e registro dos defeitos. A área
na qual estes erros são gravados é denominada buffer de diagnóstico. O tamanho do
buffer depende da CPU ( ex.: CPU 314 = 100 mensagens).
Registro
Se um erro ou um evento ocorrer, por exemplo, transição de STOP para RUN, os
seguintes passos são executados:
-
o evento é registrado no buffer de diagnóstico;
-
a hora e data são anexados à mensagem e introduzidos no buffer de diagnóstico;
SENAI - SIEMENS - VW
295
Programação básica
-
as mensagens mais recentes são arquivadas no início do buffer. Se o buffer está
cheio, as últimas linhas vão sendo deletadas.
Se pertinente o OB de erro respectivo é iniciado.
Falhas/Erros
Com esta função podem-se identificar os seguintes erros:
-
falhas de sistema na CPU;
-
falhas nos módulos;
-
erros de programas.
296
SENAI - SIEMENS - VW
Programação básica
Buffer de Diagnóstico
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_17.3
Conhecimento em Automação
Training Center
Tipos de Erros
Existem dois tipos de erros:
-
erros síncronos podem ser associados diretamente a uma determinada instrução
do programa; por exemplo, chamada de um FB não existente.
-
erros assíncronos ocorrem normalmente independente do processamento do
programa; por exemplo, diagnóstico de interrupção do módulo.
OB de erro
Durante o modo RUN (CPU em funcionamento) quando um erro é identificado,
imediatamente o ciclo de programa é interrompido ;e o respectivo OB de erro é
executado.
SENAI - SIEMENS - VW
297
Programação básica
Se este OB não existe (não foi programado) a CPU vai para STOP .
Se o OB existe, o erro é reconhecido, a CPU executa as instruções contidas no OB, e
volta a executar o programa (modo RUN).
Acessando o Diagnóstico
Para verificar o motivo do erro/falha existe uma série de informações disponíveis como
buffer de diagnóstico, tempo de ciclo, pilha de interrupção, etc. Estas informações são
acessíveis pelo menu PLC.
Esta demonstração irá auxiliar você a aprender como usar o sistema de diagnóstico e
as ferramentas associadas ao STEP 7. Um ou mais erros irão ser criados, e irá ser
mostrado como usar as ferramentas de diagnóstico para localizar e solucionar o
problema.
Module Information Buffer de Diagnóstico
Buffer de diagnóstico é uma área da CPU, onde todos os eventos que ocorrem na CPU
são registrados, principalmente os eventos que levaram a CPU para Stop.
Este buffer é rotativo, registrando os eventos com data e hora na seqüência que
ocorreram, e quando cheio, vai deletando os mais antigos. Mesmo com um reset geral
da CPU o buffer não é apagado. Posicionando o cursor sobre a mensagem é exibida
informações adicionais sobre o evento na janela abaixo (Details on Event)
Acessando o Buffer de Diagnóstico
Após aberta a tela de informações sobre o módulo (Module Information) acessa-se
o buffer pela pasta Diagnostic Buffer.
Editando o Bloco
Se a falha que causou a parada da CPU for um erro síncrono, isto é, um erro de
programa, o ícone Open Block estará ativo, permitindo que se abra o bloco onde
ocorreu a falha. O cursor é posicionado exatamente na instrução onde ocorreu a falha,
e o programa pode ser corrigido imediatamente.
298
SENAI - SIEMENS - VW
Programação básica
B Stack
DIAG_T1D
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_17.4
Conhecimento em Automação
Training Center
Pilhas (stacks)
Pilhas são áreas da CPU, normalmente utilizadas durante o processamento do
programa, que podem ser úteis na procura do problema que levou a CPU para Stop.
As pilhas existentes são:
-
B-Stack: pilha de blocos, indica a ordem de chamada dos blocos;
-
I-Stack: pilha de interrupção, indica o estado de diversos registradores no momento
da interrupção;
-
L-Stack: pilha local, onde os dados locais dos blocos abertos no momento da
interrupção são mostrados.
SENAI - SIEMENS - VW
299
Programação básica
Acessando as Pilhas
As pilhas são acessadas através da função Informações sobre o Módulo (Module
Information) na pasta Stacks. As pilhas são acessadas somente se a CPU estiver no
modo Stop.
Pilha de Blocos
A pilha de blocos registra a seqüência de blocos de programa que estava sendo
executada no momento da interrupção. Entende-se como seqüência a ordem de
chamada dos blocos em um determinado nível de programa (OB). Por exemplo, o OB1
chamou o FC15 que chamou o FB12, que era o bloco que estava sendo executado no
momento da interrupção. Seria registrado então:
-
OB1
-
FC15
-
FB12
Note que é registrado também os DB’s que estavam em uso (1st DB / 2nd DB).
Editando o Bloco
Se a falha que causou a parada da CPU for um erro síncrono, isto é, um erro de
programa, o ícone Open Block estará ativo, permitindo que se abra o bloco onde
ocorreu a falha. O cursor é posicionado exatamente na instrução onde ocorreu a falha,
e o programa pode ser corrigido imediatamente.
L/I-Stack
As pilhas de interrupção e de dados locais são acessadas pelos respectivos ícones
nesta tela.
300
SENAI - SIEMENS - VW
Programação básica
I Stack
DIAG_T1D
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_17.5
Conhecimento em Automação
Training Center
Pilha de Interrupção
Todos os registradores relevantes da CPU são mostrados com seus conteúdos no
momento exato da interrupção.
São mostrados os seguintes registradores:
-
os 4 acumuladores;
-
os registradores de endereço;
-
a palavra de status.
É possível selecionar o formato de dados para os registradores e acumuladores.
SENAI - SIEMENS - VW
301
Programação básica
Bloco
É indicado o bloco que estava sendo executado no momento da interrupção.
Editando o Bloco
Se a falha que causou a parada da CPU for um erro síncrono, isto é, um erro de
programa, o ícone Open Block estará ativo, permitindo que se abra o bloco onde
ocorreu a falha. O cursor é posicionado exatamente na instrução onde ocorreu a falha,
e o programa pode ser corrigido imediatamente.
Acesso ao I Stack
É feito através da pasta Stacks de Informações sobre o Módulo, através do ícone
I-Stack (PLC).
Esta demonstração irá auxiliar você a aprender como usar o sistema de diagnóstico e
as ferramentas associadas ao STEP 7. Um ou mais erros irão ser criados, e irá ser
mostrado como usar as ferramentas de diagnóstico para localizar e solucionar o
problema.
Module Information
Esta demonstração irá auxiliar você a aprender como usar o sistema de diagnóstico e
as ferramentas associadas ao STEP 7. Um ou mais erros irão ser criados, e irá ser
mostrado como usar as ferramentas de diagnóstico para localizar e solucionar o
problema.
Stacks
Esta demonstração irá auxiliar você a aprender como usar o sistema de diagnóstico e
as ferramentas associadas ao STEP 7. Um ou mais erros irão ser criados, e irá ser
mostrado como usar as ferramentas de diagnóstico para localizar e solucionar o
problema.
I stack).
Como qualquer pilha, só pode ser acessada com a CPU em Stop
302
SENAI - SIEMENS - VW
Programação básica
L Stack
DIAG_T1D
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_17.6
Conhecimento em Automação
Training Center
Pilha Local
Os dados das variáveis locais dos blocos abertos no momento da interrupção são
exibidos aqui. Os dados são mostrados na seqüência de chamada dos blocos (ver
Pilha de Blocos) e na seqüência de definição das variáveis dentro do bloco.
Acesso ao I Stack
É feito através da pasta Stacks de Informações sobre o Módulo, através do ícone
L-Stack (PLC
Esta demonstração irá auxiliar você a aprender como usar o sistema de diagnóstico e
as ferramentas associadas ao STEP 7. Um ou mais erros irão ser criados, e irá ser
SENAI - SIEMENS - VW
303
Programação básica
mostrado como usar as ferramentas de diagnóstico para localizar e solucionar o
problema.
Module Information
Esta demonstração irá auxiliar você a aprender como usar o sistema de diagnóstico e
as ferramentas associadas ao STEP 7. Um ou mais erros irão ser criados, e irá ser
mostrado como usar as ferramentas de diagnóstico para localizar e solucionar o
problema.
Stacks
Esta demonstração irá auxiliar você a aprender como usar o sistema de diagnóstico e
as ferramentas associadas ao STEP 7. Um ou mais erros irão ser criados, e irá ser
mostrado como usar as ferramentas de diagnóstico para localizar e solucionar o
problema.
L stack).
Como qualquer pilha só pode ser acessada com a CPU em Stop.
304
SENAI - SIEMENS - VW
Programação básica
Mensagens da CPU
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_17.7
Siemens AG 1995. All rights reserved .
Conhecimento em Automação
Training Center
Mensagens da CPU
É possível programar a CPU, via Step 7, para que envie mensagens ao terminal de
programação assim que a CPU entre em Stop. Com isto, mesmo que outra atividade
esteja sendo desenvolvida no terminal de programação (editando outro programa,
rodando um sistema supervisório), pode-se reconhecer imediatamente que a CPU
entrou em Stop e a identificação rápida do motivo.
Ativando a Função
Os passos para ativar a função são:
1.
Selecione no menu de comando PLC
Esta demonstração irá auxiliar você a aprender como usar o sistema de diagnóstico
e as ferramentas associadas ao STEP 7. Um ou mais erros irão ser criados, e irá
SENAI - SIEMENS - VW
305
Programação básica
ser mostrado como usar as ferramentas de diagnóstico para localizar e solucionar o
problema.
CPU Messages
2. Na caixa de diálogo mostrada selecione a CPU que deverá enviar mensagens.
Pode-se selecionar entre as diversas CPU’s conectadas ao PG/PC.
3
Selecione o modo de visualização
4
Encerre a configuração com OK
A função está configurada e preparada para a ocorrência do evento.
Mensagem Exibida
Assim que a CPU entra em Stop é exibida a janela de mensagem. Nela é mostrada
praticamente a mesma mensagem exibida no buffer de diagnóstico.
Se a falha que causou a parada da CPU for um erro síncrono, isto é, um erro de
programa, o ícone Open Block estará ativo, permitindo que se abra o bloco onde
ocorreu a falha. O cursor é posicionado exatamente na instrução onde ocorreu a falha,
e o programa pode ser corrigido imediatamente
306
SENAI - SIEMENS - VW
Programação básica
Diagnóstico de Hardware
ck
cli
leub
Do
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_17.8
Conhecimento em Automação
Training Center
Diagnóstico de HW
A função Diagnóstico de Hardware dá uma avaliação rápida sobre a configuração e o
estado do sistema.
Nela é lida a configuração da CPU, com os módulos existentes, inclusive I/Os
distribuídos se presentes, e identificado seus estados (somente aqueles módulos que
possuem algum tipo de modo de operação ou diagnóstico).
A cor vermelha indica que a CPU está em Stop ou se existe alguma falha em algum
módulo. Clicando sobre a CPU ou sobre o módulo com falha são mostrados mais
detalhes de diagnóstico.
SENAI - SIEMENS - VW
307
Programação básica
No exemplo acima, vê-se uma falha de alimentação do módulo analógico.
Acessando a Função
Através do menu PLC
Esta demonstração irá auxiliar você a aprender como usar o sistema de diagnóstico e
as ferramentas associadas ao STEP 7. Um ou mais erros irão ser criados, e irá ser
mostrado como usar as ferramentas de diagnóstico para localizar e solucionar o
problema.
Diagnosing Hardware acessa-se esta função. Também direto na ferramenta de
Configuração de Hardware tem-se acesso à função.
308
SENAI - SIEMENS - VW
Programação básica
OB’s de Erros/Falhas
Erro na fonte
de alimentação :
chama OB81.
Erro no acesso
ao módulo:
chama OB122.
Erro de programa:
chama OB121.
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_17.9
Conhecimento em Automação
Training Center
OB’s de Erros/Falhas
Toda vez que ocorre um evento, falha ou algum outro evento de diagnóstico, é
chamado o respectivo OB. Estes OB’s são programados pelo usuário para prever uma
reação no caso de uma falha/erro no sistema ou simplesmente para identificar a falha.
Se o respectivo OB não for programado e carregado na CPU, ela entrará em Stop no
caso de falha.
SENAI - SIEMENS - VW
309
Programação básica
OB
Erro/Falha
OB80
Tempo de ciclo excedido (overranged)
OB81
Falha na fonte de alimentação (inclusive erro na bateria)
OB82
Erro de diagnóstico, por exemplo, quebra-de-fio na entrada analógica
OB85
Um dos seguintes erros ocorreu:
-
uma interrupção do processo ocorreu, mas o respectivo OB não foi
encontrado
-
erro quando a imagem do processo estava sendo atualizada
OB87
Erro de comunicação
OB121
Erro de programa, por exemplo:
OB122
310
-
erro na conversão BCD
-
erro no comprimento da faixa de leitura e escrita dos DB’s
-
chamada de bloco não existente
-
número de temporizador ou contador incorreto
Erro durante o acesso direto ao módulo
SENAI - SIEMENS - VW
Programação básica
Demonstração : Encontrando e Corrigindo Problemas
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_17.10
Conhecimento em Automação
Training Center
Esta demonstração irá auxiliar você a aprender como usar o sistema de diagnóstico e
as ferramentas associadas ao STEP 7. Um ou mais erros irão ser criados, e irá ser
mostrado como usar as ferramentas de diagnóstico para localizar e solucionar o
problema.
SENAI - SIEMENS - VW
311
Programação básica
Exercício 17.1: Diagnosticando uma Falha no Programa
Transfira o programa
“Error S7” do projeto
"PROG1_A" para o PLC
Quando a CPU mudar
para STOP, usar as
ferramentas de
informação para
determinar a
localização exata
do erro.
SIMATIC S7
Siemens AG 1995. All rights reserved.
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_17.1 1
Conhecimento em Automação
Training Center
Objetivo
Usar as ferramentas de informação e o sistema integrado de diagnóstico para
encontrar e corrigir erros no programa.
Procedimento
1. Execute o reset da memória.
2. Transfira todos os blocos do programa ERROR do projeto PRO1_A para a CPU
3. Execute um completo restart.
4. Use as ferramentas de informação para ler o buffer de diagnóstico. Passar para online, selecionar o projeto PROG1-A e o programa ERROS, de forma que os
comentários também sejam exibidos.
5. Determine e elimine os erros na CPU.
Resultado
Você terá conhecimento sobre as possibilidades de diagnosticar depurar.
312
SENAI - SIEMENS - VW
Programação básica
Técnicas especiais de
programação
Editando no Modo Texto
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_18.2
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Modo Texto
A edição de blocos aprendida até aqui é denominada modo incremental, isto é,
enquanto há edição está sendo feita é checada se a sintaxe está correta.
Existe porém um outro método de edição, denominado modo texto, em que a edição é
realizada como a digitação de um texto, sendo no final compilada transformando-se em
um bloco de programa. O programa editado no modo texto utiliza a linguagem STL.
Criando um Bloco
Os arquivos fontes (arq. que contém um programa fonte) são armazenados em uma
pasta específica do programa, denominada Source Files.
SENAI - SIEMENS - VW
313
Programação básica
Para se criar um novo bloco, selecione a pasta Source Files e com o auxílio do botão
direito do mouse, a função Insert New Object
STL Source File
Arq. Externo
Pode-se editar um arquivo fonte com um editor externo (por ex. Word for Windows) e
inserir no Step 7. Utilize para isto a Insert New Object ⇒ External Source File
314
SENAI - SIEMENS - VW
Programação básica
Editando um Arquivo Fonte (1)
Editando um
arquivo fonte
Inserindo um bloco
padrão
Inserir um bloco
Bloco
padrão
Bloco
Inserir um arquivo
Inserir um Arquivo
SIMATIC S7
Gerado
Arquivo
Arquivo
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_18.3
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Sintaxe
Para que o programa editado no modo texto possa a vir se transformar num bloco de
programa é necessário que se siga rigorosamente a sintaxe da linguagem para que a
compilação seja executada sem erros.
Inserindo um Modelo de Bloco
Um modelo de bloco (template) é uma espécie de receita para a criação de um
determinado tipo de bloco. Ele contém todos os comandos necessários e outros
opcionais utilizados em um bloco. Você pode simplesmente deletar as especificações
para as definições opcionais desnecessárias.
Para inserir um modelo de bloco, selecione no menu a seqüência :
Insert -⇒
⇒ Block Template OB/FB/FC/DB/IDB/DB/UDT
SENAI - SIEMENS - VW
315
Programação básica
Inserindo Blocos
Usando no menu a seqüência Insert ⇒ Object ⇒ Block você pode inserir um bloco já
existente (isto é, o código fonte de um bloco S7) no seu arquivo fonte. O arquivo fonte
respectivo, do qual os conteúdos são inseridos atrás da posição do cursor, é gerado
automaticamente a partir dos blocos selecionados.
Inserindo Arquivos Fonte
Usando a seqüência de menu Insert ⇒ Object ⇒ Source File , você pode inserir o
conteúdo de vários outros arquivos fonte.
Inserindo Arquivo Texto
Usando a seqüência de menu Insert ⇒ Object ⇒ File, você pode inserir o conteúdo
de vários outros arquivos texto.
316
SENAI - SIEMENS - VW
Programação básica
Editando um Arquivo Fonte (2)
Designado
UDT
Chamada
Global DB
Chamada
DB of UDT
Chamada
Designado
FB3
Chamada
Instance DB to FB3
FC5
OB1
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_18.4
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Importantes Regras
Existem algumas regras que devem ser seguidas, como por exemplo:
-
Mesma sintaxe de STL com “ ; ” no fim de cada instrução. É possível mais que uma
instrução por linha,
-
Existe diferença entre letras maiúsculas e minúsculas para nome de variáveis.
-
Comentários iniciam com “ // “.
Características Especiais
Por exemplo: CALL FC1 (param1:=I0.0, param2:=I0.1);
SENAI - SIEMENS - VW
317
Programação básica
Comentário na Seção de Códigos
Para garantir a exibição do comentário também no programa compilado (bloco S7),
observe os seguintes pontos:
-
ao definir os parâmetros (“Formal Parameters”) de um bloco, referente a tabela de
declarações de variáveis, deve-se manter a seqüência da declaração de variáveis
(caso contrário, pode misturar os comentários).
-
pode existir perda de comentários durante a compilação, em instruções seguintes à
instrução “OPN”. Para solucionar isto, utilize uma das opções:
-
programe compactado
L DB5.DBW20;
-
// comentário
ou então insira a instrução NOP
OPN DB5 ;
// comentário 1
NOP 0;
L DB5.DBW20;
// comentário 2
Seqüência dos Blocos
Como no modo incremental, não se pode chamar (via Call) um bloco que ainda não foi
editado. Assim, blocos que são chamados por outros blocos, devem estar no arquivo
fonte antes dos outros blocos (o compilador cria os blocos na seqüência).
318
SENAI - SIEMENS - VW
Programação básica
Sintaxe para Blocos de Programa
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_18.5
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved.
SENAI - SIEMENS - VW
319
Programação básica
Sintaxe para Bloco de Dados
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_18.6
Siemens AG 1995.All rights reserved.
320
SENAI - SIEMENS - VW
Conhecimento em Automação
Training Center
Programação básica
Declaração de Variáveis
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_18.7
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Tipo de Declaração
Comando
OB
FB
FC
Parâmetro de entrada
VAR_IMPUT
-
Sim
Sim
Parâmetro de saída
VAR_OUTPUT
-
Sim
Sim
Parâmetro de entrada/saída
VAR_IN_OUT
-
Sim
Sim
Variável estática
VAR
-
Sim
-
Variável temporária
VAR-TEMP
Sim
Sim
Sim
Todas terminadas com..
END_VAR
Regras Importantes
A declaração das variáveis deve estar sempre presente para cada bloco onde ela é
válida, seqüencialmente de acordo com o tipo de declaração.
SENAI - SIEMENS - VW
321
Programação básica
Exemplos
nome variável : tipo dados ;
//comentário
nome variável : tipo dados : = valor inicial;
Comentários na Seção Declarações
Para garantir a exibição de comentários também no bloco S7 (após a compilação),
observe o seguinte:
-
somente uma linha de comentário para cada declaração de variáveis (várias linhas
não são exibidas completamente)
-
comentários iniciados com caracteres especiais não são exibidos na declaração de
variáveis do editor incremental (bloco S7) (Exceção: Comentários para matriz e
estruturas)
322
SENAI - SIEMENS - VW
Programação básica
Atributos de Proteção
Atributo
KNOW_HOW_PROTECT
AUTHOR
FAMILY
NAME
VERSION
UNLINKED
READ_ONLY
SIMATIC S7
Bloco de Códigos
(OB, FB, FC)
Sim
Sim
Sim
Sim
Sim
Não
Não
Bloco de Dados
UDT
Sim
Sim
Sim
Sim
Sim
Sim
Sim
Não
Não
Não
Não
Não
Não
Não
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_18.8
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Todo o bloco S7 possui uma série de atributos como: autor, família, versão, etc. No
modo texto porém pode-se adicionalmente criar uma proteção para blocos de
programa.
Proteção do Bloco
Um bloco protegido significa que ele após compilado não poderá ser acessado pelo
terminal de programação no modo incremental, isto é, o bloco executará sua funções
porém não poderá ser lido e/ou alterado a não ser através do próprio programa fonte.
O atributo é KNOW_HOW_PROTECT (proteção de tecnologia) e deverá ser
especificado antes de todos os outros atributos do bloco.
SENAI - SIEMENS - VW
323
Programação básica
Observação:
Variáveis do tipo VAR e VAR_TEMP permanecem escondidas na seção de
declaração.
Proteção Contra-Escrita para DBs
O atributo READ_ONLY faz com que os dados em um DB possam somente ser lidos,
isto é, durante a execução do programa estes dados não podem receber novos valores
(escrita).
DB não carregado na memória
Através do atributo UNLIKED o sistema não transfere o DB da memória de carga para
a memória de trabalho. Para que os dados destes DB’s possam ser usados eles
precisam ser transferidos para a memória de trabalho, o que é feito através de um
SFC, o qual somente copia o conteúdo dos DB’s na memória de trabalho .
Esta função permite economia da memória de trabalho.
324
SENAI - SIEMENS - VW
Programação básica
Salvando, Checando a Consistência e Compilando
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_18.9
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Ao final da edição do programa fonte ele deverá ser compilado para se transformar em
blocos S7.
Save
Salva o arquivo fonte (mesmo com erro) no harddisk.
Compilação
A compilação é a transformação do arquivo fonte em blocos S7, segundo a sintaxe
editada no bloco. Os blocos gerados são armazenados na pasta de blocos (Blocks)
diretamente subordinada à mesma pasta de programas que o arquivo fonte.
Caso já existam blocos S7 eles serão sobrescritos.
SENAI - SIEMENS - VW
325
Programação básica
Os erros encontrados durante a compilação são informados através de mensagens,
em uma janela logo abaixo ao texto editado. Selecionado a linha com erro, o editor
salta automaticamente para a linha onde o erro foi encontrado.
Check de Sintaxe
É possível checar a sintaxe, símbolos e a existência de blocos sem a geração dos
blocos S7 através desta função. As mensagens de erro são geradas como no
compilador normal.
326
SENAI - SIEMENS - VW
Programação básica
Exercício 18.1: Digitando o FB80 no Modo ASCII
Passo
1
2
3
4
5
6
7
Procedimento
Resultado
Ativar o Editor de Programas
O editor é carregado
No Editor LAD/STL/FBD, selecione
File ==> Um arquivo de texto vazio é exibido
New e no campo de diálogo “Filter”
selecione STL Source. Certifique-se que a
pastaSource e não a pasta AP esteja
selecionada no seu projeto. Digite o nome
FB80 como o nome do objeto.
Usando Insert ==>Block Template ==> FB ,
inserir um bloco template e digitar o
programa para o FB80
Salvar o programa e então selecionar no
O programa é compilado
menu de comando File ==> Compile
Se existirem erros, corrigir, e então compilar
O programa irá ser compilado sem erros
novamente
No OB1, chamar o FB80 adicionalmente
Transmitir os blocos FB80, DB10 e OB1
para a CPU e depurar o programa.
Uma mudança de um sinal de entrada no
IB1, um pulso one cycle long na saída QB5
aparece.
UEB_UPP
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_18.10
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Objetivo
Criar um FB80 no modo ASCII. O programa é executado word por word de flanco de
impulso no parâmetro de entrada “byte de entrada”. Os marcadores de pulso são
enviados para os parâmetros de saída “pulse byte”. Um bloco de variáveis local “old
values” será usado para arquivar valores anteriores.
No arquivo fonte, imediatamente depois do FB80, associar o DB instance (ex. DB10)
para ser criado. A sintaxe para isto é mostrada abaixo:
-
data_block db10
-
FB80
-
begin
-
end_data_block
SENAI - SIEMENS - VW
327
Programação básica
Depois disto, um OB1 com a chamada para o FB80 deverá ser criado.
E Ainda
No arquivo fonte FB80, inserir o comando “KNOW HOW PROTECT”, compilar o bloco.
è O que acontece ?
è Porque ?
Deletar o comando “KNOW HOW PROTECT” do arquivo fonte
328
SENAI - SIEMENS - VW
Programação básica
‘
Documentando e salvando
programas
Documentação de Blocos
Título do Bloco
Comentário
do Bloco
Título do Segmento
Comentário
do Segmento
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_19.2
Conhecimento em Automação
Training Center
Durante a edição do programa deve-se acrescentar títulos e comentários que ajudarão
na compreensão do mesmo.
Títulos
Linha com nome e descrição resumida da função do objeto:
-
título do bloco: situado no início do bloco, à direita da identificação do bloco.
-
título do segmento (network): situado no início da cada segmento, à direita da
identificação do segmento (network xx).
O campo do título é limitado em 64 caracteres.
SENAI - SIEMENS - VW
329
Programação básica
Para editá-los basta posicionar o cursor no respectivo campo e digitar o texto.
Comentários
Já o comentário deve ser uma descrição o mais detalhada possível da função ou do
objetivo do bloco ou do segmento, respectivamente comentário do bloco ou do
segmento.
Há um máximo de 18 KB disponível para cada comentário de bloco e de segmento.
Tanto para editar os comentários quanto somente para visualizá-los é necessários que
eles estejam habilitados. Consegue-se isto via o comando no menu
VIEW ⇒ Comment.
Para editá-los basta posicionar o cursor no respectivo campo e digitar o texto. Note
que o comentário pode ter mais que uma linha, e que uma barra vertical ajuda na
navegação dentro do texto.
Comentário de Linha
Na linguagem STL é possível adicionar um comentário para cada linha de instrução.
Estas linhas são identificadas por duas barras paralelas (//), que ao ser colocadas
identificam todo o restante da linha como comentário.
Ao se alterar o modo de visualização da linguagem de programação para LAD/FBD,
estes comentários não são mostrados.
330
SENAI - SIEMENS - VW
Programação básica
Cabeçalho de Bloco
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_19.3
Conhecimento em Automação
Training Center
Todo o bloco possui uma série de informações sobre sua edição que podem ajudar na
sua identificação posterior: data de criação, tamanho ocupado, etc.
Algumas desta informações são geradas automaticamente e outras devem ser
fornecidas pelo programador.
Acessando
Com o bloco selecionado (destacado), e com auxílio do botão direito do mouse
selecione Object Properties. As caixas de diálogos da figura acima são abertas.
SENAI - SIEMENS - VW
331
Programação básica
Parte 1
Informações genéricas sobre o bloco:
-
identificação: informações que o usuário pode fornecer visando facilitar a
documentação do bloco, como Nome do Bloco (Motor On/Off), Família do Bloco
(por ex. Motores), Autor (por ex. Joaquim), Versão (por ex. 1.01).
-
data da modificação, separada por código do programa e por tabela de declaração
de variáveis (parâmetros).
Parte 2
Informações importantes sobre o funcionamento e atributos do bloco criado:
-
tamanho em bytes do bloco, separados pela tamanho total do bloco (Block), pela
área ocupada exclusivamente pelas instruções (MC7 Code) e pelas variáveis locais
(Local Data).
-
atributos que influenciam a visualização e manipulação do bloco. Estes atributos só
podem ser dados ao bloco quando editados no modo texto. São eles:
-
Write-protected - bloco de dados que não pode ser sobrescrito.
-
Know-How Protect - bloco não pode ser visualizado nem alterado.
-
Standard - bloco protegido contra escrita, por ser um bloco de biblioteca padrão
da Siemens.
-
Unlinked - bloco de dados que ficará residente na memória de carga.
System Attributes
São atributos ligados ao funcionamento do bloco quando utilizando o pacote opcional
CFC, ou pacotes de diagnose interligados a IHM, como S7-DIAG
332
SENAI - SIEMENS - VW
Programação básica
Referência Cruzada
ADDRESS
SYMBOL
BLOCK
NETWORK
STATEMENT
ACCESS
OPERATION
SIMATIC S7
Siemens AG 1995. All rights reserved .
Endereço Absoluto
Nome simbólico para o endereço
Bloco no qual o endereço é usado
Segmento no qual o endereço é usado
Endereço relativo no segmento
Acesso de leitura (R) ou acesso de escrita (W)
Instruções usadas para acessar o endereço
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_19.4
Conhecimento em Automação
Training Center
Refência Cruzada
A lista de referência cruzada é uma poderosa ferramenta para detalhar e organizar a
documentação. A lista de referência cruzada pode ser também utilizada durante o
desenvolvimento do programa auxiliando na depuração e procura de erros. Ela
fornece uma lista de endereços I,Q,M,T,C,P e variáveis de DB que estão sendo
utilizadas no programa, fluxograma do programa, mapeamento do uso dos operandos
I/Q/M, além de elementos sem nomes simbólicos ou com nomes simbólicos porém não
utilizados no programa.
Acessando
Com a pasta Blocks do programa selecionada, e com o auxílio do botão direito do
mouse selecione Options ⇒ Reference Data.
SENAI - SIEMENS - VW
333
Programação básica
Opções
Para selecionar as várias opções disponíveis utilize o menu ou os ícones:
-
Lista todos os operandos e sua localização (Bloco e Segmento).
-
Lista o mapa de utilização da memória I/Q/M
-
Lista o mapa de utilização da memória C/T.
-
Lista a estrutura do programa, i.é, a seqüência de chamada dos blocos.
-
Lista os operandos que possuem nomes simbólicos porém não foram
utilizados no programa.
-
Lista os operandos utilizados no programa, porém para os quais não
foram definidos nomes simbólicos.
Filtro
-
Para todas as opções pode-se selecionar um filtro, isto é, selecionar
quais os operandos ou faixa de operandos que se deseja visualizar.
334
SENAI - SIEMENS - VW
Programação básica
Estrutura do Programa
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_19.5
Conhecimento em Automação
Training Center
Estrutura do Programa
A estrutura de programa descreve os níveis dos blocos ou a hierarquia de chamada
dos blocos em um programa. Quando os blocos são exibidos como uma estrutura, é
possível uma avaliação mais rápida dos blocos usados e suas relações.
A estrutura do programa é importante para a correção e depuração do programa
Acesso
A informação é acessada dentro da Referência Cruzada no menu View ⇒ Program
Strucuture ou pelo ícone
SENAI - SIEMENS - VW
335
Programação básica
Informações
A função fornece as seguintes informações:
-
a seqüência na qual os blocos são chamados nos diversos Blocos de Organização
possíveis (OB1, OB35, etc.). No exemplo acima o OB1 chama o FC9 que chama o
FC10 que chama 3 vezes o FC2.
-
a quantidade de dados locais (temporários) ocupados na pilha de dados local por
cada bloco. Ex.: [10] = 10 bytes são ocupados. Indica também o máximo em uma
determinado nível de OB, que é o número de bytes no pior caso. No exemplo
acima vemos a indicação Maximum=30, que é quando o OB1 estiver executando a
seqüência até o bloco FC2.
-
blocos que foram criados no programa mas não são chamados por nenhum bloco
de organização (OB). No exemplo acima vemos os blocos FC12, FB3 identificados
com um X a frente do nome do bloco.
-
chamada recorrente
336
SENAI - SIEMENS - VW
Programação básica
Exercício 19.1: Documentação
Nome do Bloco
Comentário
do Bloco
Título da Network
Comentário
da Network
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_19.6
Conhecimento em Automação
Training Center
Objetivo
Conhecer as diversas possibilidades de documentar um programa.
Procedimento
1. Complete a documentação dos blocos do programa
-
nome do bloco
-
comentário do bloco
-
título da network
-
comentário da network
2. Edite as características do bloco:
-
nome do bloco
-
família do bloco
-
Autor
SENAI - SIEMENS - VW
337
Programação básica
3. Criar uma lista de referência cruzada
-
inicie a lista de referência
-
criar a lista de referência Cruzada para I/Q/M e markers (flag’s).
4. Criar uma estrutura de programa
-
inicie a lista de referência
-
selecione a opção desejada
-
exibição da estrutura de programa
Resultado
1. Fornece aos futuros usuários informações para interpretar e entender o programa.
2. Fornece aos futuros usuários características e origem do bloco.
3. Uso da lista de referência cruzada para determinar onde as I/Q são usados
4. Fornece aos usuários uma visão geral da estrutura dos blocos e fluxo do programa.
338
SENAI - SIEMENS - VW
Programação básica
Imprimindo a Documentação do Programa
Exemplo:
Impressão
de Bloco
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_19.7
Conhecimento em Automação
Training Center
É possível imprimir cada bloco de programa individualmente ou um grupo de blocos.
Para a impressão do programa em LAD/FBD, é necessário uma impressora de
capacidade gráfica.
Imprimindo via Editor de Programa
Via o Editor de Programa pode-se imprimir o bloco através da função File ⇒ Print.
A impressão será praticamente a mesma visualizada no terminal de programação:
linguagem, comentários ativos ou não, absoluto ou simbólico, etc.
Através da função File ⇒ Page Setup, pode-se inserir textos para cabeçalho e rodapé.
SENAI - SIEMENS - VW
339
Programação básica
Imprimindo via o Projeto
Selecione os blocos que deseja imprimir e via a função do menu Edit ⇒ Print.
Neste modo a linguagem de programação a ser impressa será a linguagem registrada
pelo bloco (linguagem selecionada quando da última gravação).
Através da função File ⇒ Headers and Footers pode-se inserir textos para cabeçalho
e rodapé.
340
SENAI - SIEMENS - VW
Programação básica
Arquivando Projetos e Programas
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_19.8
Conhecimento em Automação
Training Center
A estrutura de projeto Step 7 é extremamente complexa, com uma série de diretórios,
subdiretórios e arquivos.
Enquanto está sendo editado o projeto, ele é atualizado automaticamente. Isto significa
que cada alteração realizada no projeto não pode ser abortada, simplesmente não
salvando o projeto. Tenha portanto sempre um backup do seu projeto quando quiser
fazer alguma alteração experimental.
Comprimindo
Apesar de não existir a função para salvar o projeto, já que ele é automaticamente
salvo pelo sistema, existe uma opção de salvar o projeto na forma comprimida, em um
único arquivo.
SENAI - SIEMENS - VW
341
Programação básica
Todo o conteúdo do seu projeto, incluindo diretórios e subdiretórios são comprimidos e
copiados (a estrutura original do projeto permanece no seu HD). Por exemplo,
conexões de Hardware, número de subnet e endereços de nós do projeto original,
também são copiados.
Arquivando
O arquivamento comprimido é executado da seguinte maneira:
1. Selecione File ⇒ Archive,
2. Digite o nome para o arquivo na caixa de diálogo “File Name” .
3. Confirme com “Save”.
4. Selecione o Projeto/Biblioteca a ser arquivado e o caminho no qual o arquivo será
gravado.
Recuperando
Um arquivo anteriormente comprimido precisa ser restaurado antes de ser utilizado.
Isto é feito pelo caminho oposto ao arquivamento, através da função File ⇒ Retrieve.
Nota
A compressão do arquivo é feita através de um dos softwares de compressão
existentes no mercado, como WINZIP, ARJ, etc. Estes softwares não são fornecidos
juntamente com o Step 7, devendo ser instalados separadamente.
342
SENAI - SIEMENS - VW
Programação básica
Salvando o Programa no Cartão de Memória
SIEMENS
Cartão de Memória
PG 740
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_19.9
Conhecimento em Automação
Training Center
F-EPROM
F-EPROM são cartões de memória somente de leitura. Dados salvos em F-EPROM
são retidos mesmo no caso de uma falha de energia (sem bateria de back-up) ou de
uma completo apagamento da memória da CPU (reset geral).
Opções
Existe duas opções para se gravar F-EPROM. Diretamente na CPU, para as que
possuem esta capacidade (por ex. CPU 416) ou via Terminal de Programação.
Gravando via PG/PC
Para gravar os blocos proceda da seguinte maneira:
1. insira o cartão no PG ou no programador de EPROM externo.
SENAI - SIEMENS - VW
343
Programação básica
2. selecione os blocos de programa a serem salvos.
3. selecione o símbolo do cartão de memória (uma nova janela será aberta).
4. arraste os blocos desejados para a janela do cartão de memória.
Gravando direto na CPU
A partir da versão 3 do Step 7 e para as CPU’s que possuem esta capacidade (ver
catálogo) é possível gravar o programa no cartão F-EPROM diretamente na CPU.
Proceda da seguinte maneira:
1. insira o cartão na CPU;
2. selecione os blocos desejados
3. selecione a função PLC ⇒ Download to EPROM Memory Card in CPU
EPROM Integrada
As CPU’s 312IFM e 314IFM possuem uma EEPROM integrada e não permitem a
colocação de F-EPROM externas.
O programa pode entretanto ser salvo diretamente na EEPROM da CPU via terminal
de programação.
Para copiar os dados da RAM da CPU para a EEPROM integrada na CPU proceda da
seguinte maneira:
1- transfira todos os blocos desejados para a CPU
2- selecione o menu PLC ⇒ Save RAM to ROM
3- confirme com OK
344
SENAI - SIEMENS - VW
Programação básica
Exercício 19.2: Arquivando
SIMATIC S7
Siemens AG 1995. All rights reserved .
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_19.10
Conhecimento em Automação
Training Center
Para arquivar é necessário comprimir os arquivos, desta forma os arquivos podem ser
salvos com mais eficiência.
Objetivo
Arquivar o projeto PRO1 em um diretório de arquivo.
Procedimento
1. Selecione File ⇒ Archive e digite o nome "PROG_AR" no campo de diálogo.
2. Selecione o diretório (C:\TEMP) no qual o projeto vai ser arquivado.
3. Selecione o projeto PRO1 para ser arquivado.
4. Arquive o projeto.
SENAI - SIEMENS - VW
345
Programação básica
Resultado
Você irá comprimir os arquivos do projeto PRO1 no arquivo “PROG_AR".
346
SENAI - SIEMENS - VW
Programação básica
O
Global Data e PROFIBUS-DP
Rede de Dados Globais
CPU
MW 10
CPU
MW 20
CPU
MW 30
Dados Globais
KOMM_T2D
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_20.2
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Dados Globais
A Rede de Dados Globais serve para trocar pequenas quantidades de dados (máximo
de 22 bytes por pacote de dados para a CPU 31x e máximo de 54 bytes por pacote
para a CPU 41x) entre várias CPU´s.
Como interface e meio-físico utiliza-se o MPI, isto é, não é preciso nenhum hardware
adicional para implementá-la.
Troca de Dados
O sistema operacional gerencia a troca de dados, isto é, não é necessário nenhum
programa de usuário. A transferência é executada em um ponto do ciclo de programa.
SENAI - SIEMENS - VW
347
Programação básica
Cada CPU pode trocar dados com várias outras CPU’s, respeitando-se o limite do
número de conexões e bytes para cada tipo de CPU.
Configurando
Como citado não é necessário programar a comunicação e sim configurá-la.
A configuração se inicia com a seleção das CPU’s que farão parte da rede de dados,
cada um tendo o seu endereço MPI. Termina quando se monta a tabela de troca de
dados (Global Data) onde se indica quais as CPU’s e quais dados serão trocados.
348
SENAI - SIEMENS - VW
Programação básica
Endereços MPI
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_20.3
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Naturalmente para que uma comunicação em rede funcione é necessário que cada
participante tenha seu próprio endereço. Este endereço é o número do nó MPI.
Cofigurador de HW
Sendo uma característica da CPU é natural que a parametrização do endereço MPI
seja feita no configurador de hardware.
Endereço MPI
Dar um double-click na linha com a CPU e então dar um click no botão de comando
MPI. Selecione o endereço MPI desejado e a função Network para indicar que haverá
comunicação de dados via rede. Certifique-se de que todos os nós tenham o mesmo
highest MPI address e que cada CPU tenha endereços MPI diferentes.
SENAI - SIEMENS - VW
349
Programação básica
Configuração CPU
É importante que a nova configuração de hardware (SDB) seja salva e transferida para
a CPU.
350
SENAI - SIEMENS - VW
Programação básica
Tabela Global Data
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_20.4
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Depois que todas as CPU’s participantes tenham tido seu endereço MPI e o parâmetro
de comunicação em rede selecionado, deve-se iniciar a configuração da tabela de
dados globais.
Acessando
Selecione o projeto que contém as estações de hardware e com botão direito do
mouse ative o comando Options ⇒ Global Data.
Será aberta a tabela de dados globais.
SENAI - SIEMENS - VW
351
Programação básica
Selecionando CPU’s
O primeiro passo na tabela é selecionar as CPU’s que farão parte da comunicação
(importante: só podem ser inseridas as CPU’s que tiveram o parâmetro conectável em
rede selecionado).
Para selecionar as CPU’s utilize a função do menu Edit
Assign e selecione na
caixa de diálogo as estações que farão parte da troca de dados, uma de cada vez.
Cada CPU ocupará uma coluna da tabela de dados globais.
352
SENAI - SIEMENS - VW
Programação básica
Editando a Tabela Global Data
KOMM_T2D
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_20.5
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Dados
Após determinar as CPU’s, indica-se os tipos de dados a serem trocados. Estes dados
pode ser qualquer área existente na CPU: I/Q/M/DBs.
A figura acima mostra a troca de dados entre as áreas MW10, MW20 e MW30.
O emissor deve ser identificado, podendo uma CPU enviar dados para diversas CPU’s.
Na figura acima o emissor é identificado pela cor escura.
Depois de criar a tabela, salve-a com o comando de menu GD Table ⇒ Save.
SENAI - SIEMENS - VW
353
Programação básica
Compilar
Após editar a tabela é necessário compilá-la, que gera blocos de sistema (SDB) para
cada CPU participante.
Isto pode ser feito via a função de menu GD Table ⇒ Compile.
O usuário deverá transferir o bloco de dados de sistema para a respectiva CPU com o
item de menu PLC ⇒ Download.
Momento da Transferência
Cada pacote de dados é transferido ou recebido no oitavo ciclo. Pode-se setar outro
valor através do comando de menu View ⇒ Scan Rates (faixa 4-255 para enviar, e 1255 para receber). Isto só é possível após a compilação.
Status
Dentro do programa do usuário para saber como foi executada a transferência de
dados, pode-se especificar uma double word para informação de status para cada
pacote de dados. O sistema operacional da CPU entra com a resposta nesta double
word. Para parametrizá-la selecione no menu View ⇒ Status.
354
SENAI - SIEMENS - VW
Programação básica
Comunicação via Global Data.
CPU1
CPU2
CPU3
CPU4
CPU5
Círculo GD
1
S GD 1.1
R GD 1.1
R GD 1.2
S GD 1.2
2
R GD 2.1
3
4
S GD 2.1
R GD 2.1
S GD 3.1
R GD 3.1
R GD 3.2
S GD 3.2
R GD 4.1
S GD 4.1
R GD 2.1
R GD 2.1
R GD 4.1
5
6
S GD 5.1
R GD 5.1
R GD 5.1
R GD 6.1
S GD 6.1
R GD 6.1
S=Enviar; R=Receber; GD x.y=GD pacote de Global Data Circle x
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_20.6
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Pacote GD
Um pacote GD (GD Circle) define uma pacote de dados que serão trocados entre
CPU’s via Global Data.
A definição de pacote é difícil de descrever, pois depende de uma série de fatores:
-
direção, já que a comunicação é bidirecional, podendo enviar/receber dados no
mesmo pacote;
-
número de bytes, que depende da família: 22 bytes para o S7-300 e 54 para o S7400;
-
divisão em subpacotes, já que entre os 22/54 bytes pode-se definir, por ex., 2 subpacotes de 10/27 bytes.
SENAI - SIEMENS - VW
355
Programação básica
Número de Pacotes
Cada CPU do S7-300 pode participar de até quatro diferentes pacotes GD..Para o S7400 o número de pacotes varia com a capacidade da CPU, entre 4 e 16.
Exemplo de Pacotes
Os diagramas acima mostram o princípio da comunicação via pacotes GD.
356
SENAI - SIEMENS - VW
Programação básica
Exercício 20.1: Comunicação via Global Data
Agora trocar dados entre
dois controladores lógico
programáveis
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_20.7
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Exercício 12:
Gerando uma tabela GDT
SENAI - SIEMENS - VW
357
Programação básica
Interface PROFIBUS DP
DP MASTER
PS S7-300
DP MASTER
DP MASTER
S7
S7
PS
S7-300
S7-300
CPU
314
CP
3425 DP
CPU
3152 DP
S7
PS
S7
10A 400
S7
CPU
4142 DP
DP MASTER
S7
PS
10A
S7
400
S7
CPU
4141
CP
4435DP
S7
PROFIBUS-DP DIN 19245 Parte III
PS
SIEMENS
IM
(máximo
8
unidades)
ET200M
DP Slave
IM
153-1
S7-300
SIMATIC S7
S7-300
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_20.8
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
Cada vez mais utiliza-se nas instalações o conceito de I/O’s remotos. Isto significa que
os pontos de I/O, ou outros controles, se encontram próximos à máquina ou ao local
onde são gerados, e a comunicação com a CPU é feita com um único cabo em vez de
uma dezena deles. Esta solução é denominada PROFIBUS-DP (Periferia
Descentralizada).
Do ponto de vista do usuário, a I/O distribuída é tratada como I/O central, isto é, a
mesma configuração, endereçamento e programação.
A família SIMATIC S7 oferece duas possibilidades para o uso do PROFIBUS DP:
CPU’s com interface DP integrada ou cartões CP (processadores de comunicação)
com interface DP.
358
SENAI - SIEMENS - VW
Programação básica
Mestre
A comunicação PROFIBUS-DP é caracterizada como uma comunicação MestreEscravo.
Dá-se o nome de Mestre ao sistema que gerencia a comunicação, interrogando todos
os elementos conectados a ele.
Escravo
São os I/Os remotos, ou outros dispositivos inteligentes como ilha de válvulas,
acionamentos de freqüência variável, etc, que enviam/recebem estados/comandos do
equipamento Mestre.
SENAI - SIEMENS - VW
359
Programação básica
Configurando PROFIBUS-DP
SIMATIC S7
Data:
07/11/00
Versão: 3.1
Arquivo: pro1_20.9
Conhecimento em Automação
Training Center
Siemens AG 1995. All rights reserved .
A configuração de um hardware distribuído, PROFIBUS-DP não difere muito de uma
configuração centralizada.
Configurando a Rede
Ao se inserir um cartão que possua a interface DP, por exemplo, uma CPU 315-2DP. , é
mostrada a caixa de diálogo de configuração da rede Profibus, onde seleciona-se:
-
endereço Profibus;
-
características da rede (Properties ou New se não existir). estas características
são: velocidade, tipos de escravos, end. mais alto;
-
encerre a configuração com OK.
360
SENAI - SIEMENS - VW
Programação básica
Config. Escravos
Para a .configuração dos escravos, selecione a rede (DP Master System) e a partir do
catálogo, sob a pasta PROFIBUS-DP, selecione os equipamentos que farão parte da
rede. Na caixa de diálogo, selecione o endereço Profibus que o escravo ocupará. O
escravo ocupa também um endereço físico de I/O, conforme suas características.
Catálogo
Todo o equipamento PROFIBUS DP possui um arquivo, denominado GSD, com suas
características. Este arquivo é necessário para que o equipamento esteja disponível no
catálogo de hardware. Após inserir o arquivo GSD no diretório ..\S7DATA\GSD e utilize
a função Options ⇒ Update DDB Files
SENAI - SIEMENS - VW
361
Programação básica
362
SENAI - SIEMENS - VW
Programação básica
Respostas dos exercícios
SENAI - SIEMENS - VW
363
Programação básica
364
SENAI - SIEMENS - VW
Programação básica
SENAI - SIEMENS - VW
365
Programação básica
366
SENAI - SIEMENS - VW
Programação básica
SENAI - SIEMENS - VW
367
Programação básica
368
SENAI - SIEMENS - VW
Programação básica
SENAI - SIEMENS - VW
369
Programação básica
370
SENAI - SIEMENS - VW
Programação básica
SENAI - SIEMENS - VW
371
Programação básica
DB5
372
SENAI - SIEMENS - VW