You are on page 1of 149

1.

Família Simatic S7

SIEMENS
2. Instalando o Software Step 7

Information and Training 3. Introdução ao Hardware S7


Automation and Drives
4. O Software Step 7
SIMATIC S7
5. Configurando e Parametrizando o S7
Programação Básica
6. Princípios Básicos de Programação
Curso ST-7PRO1
7. O Editor LAD/STL/FBD
AL: N ECCN: N

Export Regulations
AL Number of European resp. German export list. 8. Operações Lógicas Básicas
Goods with labels not equal to ”N” are subject to
export authorization.
ECCN Number of US export list (Export Control Classification
Number). Goods with labels not equal to ”N” are 9. Temporizadores, Contadores,
subject to re-export authorization for export to certain
countries. Comparadores
Indication Goods labeled with ”AL not equal to N”
(here: technical documentations) are subject to 10. Conversão, Operação Lógica Digital,
European or German export authorization when being
exported out of the EU. Matemática, Deslocamento
Goods labeled with ”ECCN equal to N” (here: technical
documentations) are subject to US re-export
authorization. 11. Ferramentas para Teste e Depuração
Even without a label, or with label ”AL:N” or ”ECCN:N”,
authorization may be required due to the final
whereabouts and purpose for which the goods are to
be used. 12. Funções, Parâmetros e Dados Locais
Decisive are the export labels stated on order
acknowledgements, delivery notes and invoices.

13. Programando Simbólicos


This document was produced for training purpose.
Siemens assumes no responsibility for its contents.

The reproduction, transmission or use of this document or its 14. Bloco de Dados e de Funções
contents is not permitted without express written authority.
Offenders will be liable to damages. All rights, including rights
created by patent grant or registration of a utility model or
design, are reserved.
15. Processamento de Palavra Analógica
 SIEMENS AG 2007

16. Informações do Sistema S7

17. Diagnosticando e Corrigindo Problemas

18. Técnicas Especiais de Programação


19. Documentando e Salvando Programas

SIEMENS
20. Global Data e PROFIBUS-DP

Information and Training


Automation and Drives

SIMATIC S7
Programação Básica

Curso ST-7PRO1

AL: N ECCN: N

Export Regulations
AL Number of European resp. German export list.
Goods with labels not equal to ”N” are subject to
export authorization.
ECCN Number of US export list (Export Control Classification
Number). Goods with labels not equal to ”N” are
subject to re-export authorization for export to certain
countries.
Indication Goods labeled with ”AL not equal to N”
(here: technical documentations) are subject to
European or German export authorization when being
exported out of the EU.
Goods labeled with ”ECCN equal to N” (here: technical
documentations) are subject to US re-export
authorization.
Even without a label, or with label ”AL:N” or ”ECCN:N”,
authorization may be required due to the final
whereabouts and purpose for which the goods are to
be used.
Decisive are the export labels stated on order
acknowledgements, delivery notes and invoices.

This document was produced for training purpose.


Siemens assumes no responsibility for its contents.

The reproduction, transmission or use of this document or its


contents is not permitted without express written authority.
Offenders will be liable to damages. All rights, including rights
created by patent grant or registration of a utility model or
design, are reserved.

 SIEMENS AG 2007
Pro1_01.ppt

Slide 1

Família SIMATIC S7

Mic ro PLC 212


I0.0 Q0.0

S7-200
SF
SIEMENS
R UN I0.1 Q0.1

STOP I0.2 Q0.2

I0.3 Q0.3

I0.4 Q0.4

I0.5 Q0 .5

I0.6 X 2

I0.7 3 4
SIMATIC

S7-200

S7-300

S7-400

SIMATIC S7 Date : 07/10/00


Conhecimento em Automação
Training Center
Version : 3.1
Siemens AG 1996. All rights reserved. File No. : pro1_1.1

Conteúdo
SIMATIC - A família SIMATIC S7........................................................ 2
S7-200 Características........................................................................ 3
S7-300 Características........................................................................ 4
S7-400 Características........................................................................ 5
Multi-point Interface (MPI) .................................................................. 6
Redes de Comunicação...................................................................... 7
Terminais de Programação PG 720/740 ............................................ 8

Slide 2

A família SIMATIC
Grande Porte modular modular
Médio Porte

SIMATIC SIMATIC
S7 - 400 M7 - 400

Pequeno Porte
modular modular complete

SIMATIC SIMATIC SIMATIC


S7 - 300 M7 - 300 C7 - 620

Micro - PLC compacto

SIMATIC
S7 - 200

SI EMEN S

PG 74 0

Software Terminal de Programação Redes de I/O distribuída Interface HomemMáquina


Comunicação UEBER_T1D

SIMATIC S7 Date : 07/10/00


Conhecimento em Automação
Training Center
Version : 3.1
Siemens AG 1996. All rights reserved. File No. : pro1_1.2

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.

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 uma 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.

Slide 3

S7- 200 Características

Micro PLC 212 EM 221


SIEMENS SF I.0 Q.0 DI 8 x DC24V
RUN I.1 Q.1 I.0
STOP I.2 Q.2 I.1
I.3 Q.3 I.2
I.4 Q.4 I.3
I.5 Q.5 I.4
I.6 I.5
I.7
I.6
SIMATIC
I.7
S7-200

CPU Módulo de Expansão


digital/analógica

SIEMENS TD 200
Target Position 125 mm
Axle Ready

F5 F6 F7 F8
F1 F2 F3 F4

SHIFT
ESC ENTER

Painel de Operação TD 200

SIMATIC S7 Date : 07/10/00


Conhecimento em Automação
Training Center
Version : 3.1
Siemens AG 1996. All rights reserved. File No. : pro1_1.3

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)
Funções:
- Alimentação das entradas digitais (sensores) integrada
- Forçar entradas e saídas
- Acesso direto às entradas/saídas
1
- Relógio de tempo real integrado
-
Dois potenciômetros analógicos integrados 1
- 1
Duas saídas em pulsos integradas
-
Entradas digitais comandadas por interrupções
- Contadores de alta velocidade integrados (7 a 20kHz).
1
CPU 214 ou maior
Slide 4

S7- 300 Características

SIMATIC S7 Date : 07/10/00


Conhecimento em Automação
Training Center
Version : 3.1
Siemens AG 1996. All rights reserved. File No. : pro1_1.4

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.

Slide 5

S7- 400 Características

SIMATIC S7 Date : 07/10/00


Conhecimento em Automação
Training Center
Version : 3.1
Siemens AG 1996. All rights reserved. File No. : pro1_1.5

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.
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.

Slide 6

Multi-point Interface (MPI)


S7-300 S7-300

CPU 1 CP FM CPU 2 CP FM

MPI como um K-Bus MPI como um K-Bus

conexão do PG via MPI conexão de CLP’s via MPI


conexão do OP via MPI

PG 720

SIMATIC S7 Date : 07/10/00


Conhecimento em Automação
Training Center
Version : 3.1
Siemens AG 1996. All rights reserved. File No. : pro1_1.6

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 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é 50m ou até 9100m com repetidores
- Componentes padrões do PROFIBUS DP (cabo, conector, e repetidor)
Slide 7

Redes de Comunicação
SIMATIC HMI TISTAR
S5/TI Op. Int.
PG/PC
Industrial Ethernet

S7-400
S7-300
S7-200 PS CPUFM CP CP
CPU FM CP

Communications bus Communications bus

S5/TI
PROFIBUS-FMS

Field
PG/PC
S5/TI Devices
PROFIBUS-DP

PPI S7-200 PG/PC TD/OP Field


ET 200
CPU 215 Devices

PG/PC
TD/OP S7-200
MPI

PG/PC TD/OP S7-CPU

SIMATIC S7 Date : 07/10/00


Conhecimento em Automação
Training Center
Version : 3.1
Siemens AG 1996. All rights reserved. File No. : pro1_1.7

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
- 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

Slide 8

Terminais de Programação PG720/740

SIEMENS

PG 740

PG740

PG720

SIMATIC S7 Date : 07/10/00


Conhecimento em Automação
Training Center
Version : 3.1
Siemens AG 1996. All rights reserved. File No. : pro1_1.8
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

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)

Pro1_02.ppt

Slide 1

Instalando o Software STEP 7

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_2.1

Conteúdo
Softwares para S7/C7/M7................................................................... 2
Pré-requisitos para a Instalação do STEP 7....................................... 3
Instalação do STEP 7.......................................................................... 4
A Ferramenta STEP 7......................................................................... 5
Selecionando o Idioma de Programação............................................ 6
Exercício 2.1: Checando a Interface com a CPU................................ 7
Exercício 2.2: Definindo os Mnemônicos............................................ 8
Slide 2

Softwares para S7/C7/M7


Pacotes Padrões e
Opcionais para o CFC

S7, C7 and M7 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 Hardware Configuration
Symbol Editor
(Synonyms) Communications Config. Communication Configuration

LAD/STL LAD/STL LAD/STL/FBD


M7-SYS

S7-200
S7 - 200 S7-300, C7 S7-300/400, C7 M7-300/400

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_2.2

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 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.
Slide 3

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 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_2.3

Pré-requisitos: PC’s-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.

Observação: Um upgrade de uma 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.

Slide 4

Instalação do STEP 7

SIEMENS

or
PG 740

1. Ativar o Setup.exe no “Win95 - System Monitoring Software.


2. Selecione a opção.
3. Selecione a linguagem.
4. Troque os discos.
5. O disco de autorização é solicitado.
6. Um Re-boot é solicitado.

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_2.4

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 .
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.

Slide 5

A Ferramenta STEP 7

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_2.5
Slide 6

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 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_2.6

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)

Slide 7

Exercício 2.1: Checando a Interface com a CPU

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_2.7
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.

Slide 8

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 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_2.8

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.

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 //AND Entrada (Input) 1.0

Exemplo de instruções STL em linguagem SIMATIC:


U E 1.0 //UND Entrada (Eingang) 1.0
Pro1_03.ppt

Slide 1

Introdução ao Hardware S7

Mic ro PLC 212


SF I0.0 Q0.0

S7-200
SIEMENS
RUN I0.1 Q0.1

STOP I0.2 Q0.2

I0.3 Q0.3

I0.4 Q0.4

I0.5 Q0 .5

I0.6 X 2
I0.7 3 4
SIMATIC

S7-200

S7-300

S7-400

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_3.1

Conteúdo
S7-200 - Dados Técnicos.................................................................... 2
Espectro de Módulos........................................................................... 4
S7-300 - Endereçamento de Módulos/Slot......................................... 5
S7-300 - Endereçamento de I/O - Digital............................................ 6
S7-300 - Endereçamento de I/O - Analógico...................................... 7
S7-300 - Dados Técnicos.................................................................... 8
S7-400 - Dados Técnicos.................................................................... 9
S7-300 - Elementos da CPU............................................................... 10
S7-400 - Elementos da CPU............................................................... 11
Faixa de Endereçamento Máximo no STEP 7.................................... 12
Demosntração: Monitorando e Modificando Variáveis........................ 13
Exercício 3.1: - Resetando a memória da CPU.................................. 14
Slide 2

S7-200 - Dados Técnicos (CPU 21x)

SIEMENS SF I0.0 I1.0 Q0.0 Q1.0 CPU 214


RUN I0.1 I1.1 Q0.1 Q1.1
STOP I0.2 I1.2 Q0.2
I0.3 I1.3 Q0.3
I0.4 I1.4 Q0.4
I0.5 I1.5 Q0.5
I0.6 Q0.6
I0.7 Q0.7
SIMATIC
S7-200

UEBER_T1D

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_3.2

CPU212 CPU214 CPU215 CPU216


Dimensões 160x80x62 mm 197x80x62 mm 218x80x62mm 218x80x62mm
Memória de 1 KByte 4 KByte 8KByte 8KByte
Trabalho (RAM)
Memória de 185 instruções 2K 4k 4k
Instruções
Registradores 0.5k words 2k words 2.5k words 5k words
de Dados
I/O on-board 8 DI / 6 DO 14 DI / 10 DO 14 DI / 10 DO 24 DI / 16 DO
Capacidade 2 módulos 7 módulos 7 módulos 7 módulos
de Expansão
Interrupções 1 ent. inter., 1 4 ent. inter., 3 4 ent. inter., 3 4 ent. inter., 3
contad. interrup. (2 contad. interrup. (2x contad. interrup. (2x contad. interrup. (2x
kHz) 7 kHz; 1x 2 kHz) 20 kHz; 1x 2 kHz) 20 kHz; 1x 2 kHz)
Contadores/ 64/64 128/128 128/256 256/256
Temporizadores
Tempo de 1.2 ms 0.8 ms 0.8 ms 0.8 ms
Execução(por
1K/instruções)
Comunicação 1x PPI / Freeport 1x PPI/ Freeport / 1x PPI 1x PPI /Freeport
MPI 1x Profibus 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 possui diferentes modelos para as diferentes tensão dos I/O’s.
Slide 3

S7-200 - Dados Técnicos (CPU 22x)

SIEMENS SF I0.0 I1.0 Q0.0 Q1.0 CPU 214


RUN I0.1 I1.1 Q0.1 Q1.1
STOP I0.2 I1.2 Q0.2
I0.3 I1.3 Q0.3
I0.4 I1.4 Q0.4
I0.5 I1.5 Q0.5
I0.6 Q0.6
I0.7 Q0.7
SIMATIC
S7-200

UEBER_T1D

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_3.3

CPU221 CPU222 CPU224 CPU226


Dimensões 90x80x62 mm 90x80x62 mm 120.5x80x62mm 196x80x62mm
Memória de 4 kByte 4 kByte 8 kByte 8 kByte
Trabalho (RAM)
Memória de 1.3 k 1.3 k 2.6 k 2.6 k
Instruções
Registradores 1k words 1k words 2.5k words 2.5k words
de Dados
I/O on-board 6 DI / 4 DO 8 DI / 6 DO 14 DI / 10 DO 24 DI / 16 DO
Capacidade Nenhum módulo 2 módulos 7 módulos 7 módulos
de Expansão
Interrupções 4 ent. inter., 4 4 ent. inter., 4 4 ent. inter., 6 4 ent. inter., 6
contad. interrup. contad. interrup. contad. interrup. (30 contad. interrup. (30
(30 kHz) (30 kHz) kHz) kHz)
Contadores/ 256/256 256/256 256/256 256/256
Temporizadores
Tempo de 0.37 ms 0.37 ms 0.37 ms 0.37 ms
Execução(por
1K/instruções)
Comunicação 1x PPI/ Freeport / 1x PPI/ Freeport / 1x PPI/ Freeport / 2x PPI / Freeport /
MPI MPI MPI 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.
Slide 4

Espectro de Módulos

PS: IM: SM: FM:


Entrada: - Send DI / DQ - Contadores CP:
120/230 V ~ - Receive - 24 V - - Posicionadores - Ponto
Saída: - Send/Receive - 120/230 V ~ - Controle em a ponto
24 V - - Relê malha fechada - AS-i
- PROFIBUS
AI/AQ FMS/DP
- Tensão - Industrial
- Corrente Ethernet
PS = Fonte de tensão
- Resistência IM = Módulo de interface
- Termo elemento SM =Módulo de sinal
FM = Módulo de função
CP =Processador de comunicação

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_3.4

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.
- 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
Slide 5

S7-300 - Endereçamento de Módulos/Slot


Fonte de
alimentação CPU IM SM SM SM SM SM SM SM SM
s

Slot: 1 2 3 4 5 6 7 8 9 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 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_3.5

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).

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.

Slide 6

S7-300 - Endereçamento de I/O - Digital


Slot # 3 4 5 6 7 8 9 10 11
Fonte IM
Rack de (Receive) 96.0 100.0 104.0 108.0 112.0 116.0 120.0 124.0
3 Tensão
to to to to to to to to
99.7 103.7 107.7 111.7 115.7 119.7 123.7 127.7

Fonte IM
Rack de (Receive) 64.0 68.0 72.0 76.0 80.0 84.0 88.0 92.0
2 Tensão
to to to to to to to to
67.7 70.7 75.7 79.7 83.7 87.7 91.7 95.7

Fonte IM
Rack de (Receive) 32.0 36.0 40.0 44.0 48.0 52.0 56.0 60.0
1 Tensão
to to to to to to to to
35.7 39.7 43.7 47.7 51.7 55.7 59.7 63.7

Rack CPU IM
0 e (Send) 0.0 4.0 8.0 12.0 16.0 20.0 24.0 28.0
Fonte to to to to to to to to
de
Tensão 3.7 7.7 11.7 15.7 19.7 23.7 27.7 31.7

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_3.6
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 abaixo:
- 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)
- IB100 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

Slide 7

S7-300 - Endereçamento de I/O - Analógico


Slot # 3 4 5 6 7 8 9 10 11
Fonte IM
Rack de (Receive) 640 656 672 688 704 720 736 752
3 Tensão
to to to to to to to to
654 670 686 702 718 734 750 766

Fonte IM
Rack de (Receive) 512 528 544 560 576 592 608 624
2 Tensão
to to to to to to to to
526 542 558 574 590 606 622 638

Fonte IM
Rack de (Receive) 384 400 416 432 448 464 480 496
1 Tensão
to to to to to to to to
398 414 430 446 462 478 494 510

Rack CPU IM
0 e (Send) 256 272 288 304 320 336 352 368
Fonte to to to to to to to to
de
Tensão 270 286 302 318 334 350 366 382

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_3.7

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 (1° 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’s 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 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.

Slide 8

CPU
S7-300 - Dados Técnicos
CPU CPU CPU CPU CPU CPU CPU
Memória 312IFM 313 314 314IFM 315 315-2 DP 316 318-2 DP
- 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 0.6 ms 0.6 ms 0.3 ms 0.3 ms 0.3 ms 0.3 ms 0.3 ms 0.1 ms
(por 1k de instruções binárias)

ED / SD: 128 128 512 512 1024 2048 4096 16384


EA / AS: 32 32 64 64 128 256 512 2048

I/O's Integradas
ED / SD 10 / 6 - - 20 / 16 - - - -
EA / AS - - - 4/1 - - - -

Operandos:
- Memory Markers (flags) 1k 2k 2k 2k 2k 2k 2k 8k
- 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
(por exemplo contadores)

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


interface MPI

Interface Integrada MPI MPI MPI MPI MPI MPI, DP MPI MPI, DP

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_3.8

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 quantidades de números de blocos (FB, FC, DB).
CPU 312 CPU 315
32 FB 192 FB
32 FC 192 FC
63 DB 255 DB

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.
Slide 9

S7-400 - Dados Técnicos

CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU CPU
CPU
412-1
412-1 412-2
412-2 414-2
414-2 414-3
414-3 416-2
416-2 416-3
416-3 417-4
417-4 417H
417H

M e m ó ria
- d e tra b a lh o 48 kB 72 kB 128 kB 384 kB 0 ,8 M B 1, 6 M B 2 MB 2 MB
- d e ca rg a in te g ra d a (R A M ) 2 5 6 kB 2 56 kB 256 kB 256 kB 2 56 kB 25 6 kB 25 6 kB 25 6 kB
- d e tra b a lh o e x te r n a (F EP R O M ) 64 M B 64 M B 64 M B 64 M B 64 M B 64 M B 64 M B 64 M B

T e m p o d e Ex c u çã o 0 .2 u s 0 .2 u s 0 .1 u s 0 .1 u s 0 .0 8 u s 0. 08 u s 0.1 u s 0. 1 u s
(p o r 1 k d e in str u çõ e s b i n á ria s)

Á re a m á x . e n d e re ç o I/O 4 kB 4 kB 8 kB 8 kB 1 6 kB 16 k B 16 k B 16 k B

O p e ra n d o s:
- M e m o ry M a rk e rs (fl a g s) 4 k 4 k 8 k 8 k 16 k 16 k 16 k 16 k
- C o n ta d o re s 256 2 56 256 256 5 12 51 2 51 2 51 2
- T e m p o riz a d o re s 256 2 56 256 256 5 12 51 2 51 2 51 2

N ú m e ro d e B l o c o s M á x im o :
- FB 256 2 56 1 0 24 1 0 24 2 04 8 20 4 8 61 4 4 61 4 4
- FC 256 2 56 1 0 24 1 0 24 2 04 8 20 4 8 61 4 4 61 4 4
- DB 512 5 12 1 0 24 1 0 24 4 09 6 40 9 6 81 9 2 81 9 2

M á x im o d e co n e x õ e s a tiva s p o r 16 16 32 32 44 44 44 44
i n te rfa ce M P I

I n te rfa ce I n te g ra d a M P I/D P M P I /D P M P I/ D P , M P I/D P , M P I/D P , M P I/D P , M P I/ DP , M P I/ D P ,


DP DP DP DP D P , + 2x DP
F re e p o rt

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_3.9

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 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 as funções especiais como
System Function Blocks (SFB’s) e Communication Function Blocks (CFB’s).

Slide 10

S7-300 - Elementos da CPU

LEDs de Status
da CPU CPU314
SF
SIEMENS BATF Slot para o Cartão de
DC5V Memória
FRCE
RUN
STOP
Seleção do Modo
RUN-P
de Operaçao RUN
STOP
M RES

SIMATIC
S7-300
Interface MPI
Battery MPI

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_3.10
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).

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.

Slide 11

S7-400 - Elementos da CPU

DI 3 2xDC24V CPU 4 14-2


X 2 X 2

INTF
3 4
421 - 1BL00 - 0AA0
LEDs de Status 3 4
414 - 2XG00 - 0 AB0

INTF DP INTF
LEDs de Satus
EXTF
da CPU EXTF EXTF
BUSF da Interface DP
FRCE
Integrada
FRCE
CRST CRST

RUN
STOP Seleçao tipo RUN
STOP
CRST
WRST
de Start-up CRST
WRST

RUN-P RUN-P
RUN RUN

STOP
Seleção do Modo STOP
CMRES
de Operaçao CMRES

Interface DP
Slot para o Cartão de
Memória X3

Interface MPI
X1 X1

EXT.-BATT.
Bateria Externa EXT.-BATT.

5...15V DC 5...15V DC

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_3.11

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.
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 1a. 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

Slide 12

Faixa de Endereçamento Máximo*1 no STEP 7


Área de endereço Tipo de Acesso Operando Endereçam. máx.
Imagem do Processo I/Q bit entrada/saída I/Q 0.0 to 65535.7
byte entrada/saída I / QB 0 a 65535
word entrada/saída IW / QW 0 a 65534
double word entrada/saída ID / QD 0 a 65532

Memory markers (Flags) 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
Entrada/saída analógica byte I/Q , periferia PIB / PQB 0 a 65535
(ou sem imagem de processo) 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) DB 1 a 8192
Dados em blocos de dados Aberto com OPN DB
Bit, byte, word, double word
DBX,DBB 0 a 65532
DBW,DBD
Aberto com OPN DI
Bit, byte, word, double word
DIX,DIB 0 a 65532
1) Veja end. permitido para cada CPU. DIW,DID

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_3.12

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
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.
Slide 13

Demonstração: Monitorando e Modificando Variáveis

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_3.13

Esta é uma demonstração para auxiliar você a entender como endereçar I/Q no S7-300.
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.

Slide 14

Exercício 3.1: Resetando a Memória da CPU


Passos Procedimentros Resultados
1 Posicionar a chave na posição STOP. A CPU irá para STOP.

2 Gire a chave em direção a posição MRES. O LED STOP (amarelo) irá apagar e tornará
Permaneça nesta posição até que o LED a acender depois de aproximadamente 3
STOP (amarelo) pisque 2 vezes. segundos .
3 Girar a chave para posição STOP O LED amarelo irá piscar por
imediatamente depois que o LED STOP aproximadamente 3 segundos e então
piscar a 2 vez, e torne a girar para a ficará acesa constantemente.
posição MRES. Retornar a chave para a
posição STOP novamente.
4 Inicie o STEP 7 e ative a função Acessible Todas as CPU’s conectadas ao PG/PC são
Nodes mostradas (MPI=....)
5 Selecione a CPU que foi resetada. Os blocos da CPU serão exibidos.

6 Baseado na lista de blocos, determine Não poderá aparecer OB’s, DB’s FB’s ou
quais blocos ainda estão presentes na FC’s no diretório do SIMATIC Manager.
CPU. Somente os blocos de sistema
podem estar presentes (SDB, SFC e SFB).

SIMATIC S7 Data : 07/10/00


Conhecimento em Automação
Training Center
Versão : 3.1
Siemens AG 1996. All rights reserved. Arquivo : pro1_3.14

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.
- 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
- Selecione no menu de comando PLC => Memory Reset.

Pro1_04.ppt

Slide 1

O Software STEP 7

STEP 7

SIMATIC S7 Date: 07/11/00


Version: 3.1
Conhecimento em Automação
Training-Center
File No.: pro1_4.1
Siemens AG 1995. All rights reserved.

Conteúdo
Iniciando o STEP 7.............................................................................. 2
Menu e Barras de Ferramentas do Editor de Programas................... 3
Usando o Help do STEP 7.................................................................. 4
Estrutura de Projeto no SIMATIC Manager......................................... 5
Objetos do STEP 7.............................................................................. 6
Blocos do STEP 7............................................................................... 7
Navegando no STEP 7............................ ........................................... 8
STEP 7 Wizard.................................................................................... 9
Exercício 4.1: Criando um Projeto....................................................... 10
Exercício 4.2: Criando um Programa.................................................. 11
Slide 2

Iniciando o STEP 7
Para Iniciar... double-click

SIMATIC S7 Date: 07/11/00


Version: 3.1
Conhecimento em Automação
Training-Center
File No.: pro1_4.2
Siemens AG 1995. All rights reserved.

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.

Slide 3

Menu e Barra de Ferramentas do Editor de Programas

Sistema de menu Título da janela Botões de Comando


(abrir/fechar etc.) ativa Minimizar/Maximizar/fechar

Barra de Títulos

Barra de Menu

Barra de
Ferramentas

Área de
Trabalho

Barra
de Status

SIMATIC S7 Date: 07/11/00


Version: 3.1
Conhecimento em Automação
Training-Center
File No.: pro1_4.3
Siemens AG 1995. All rights reserved.

Janela do STEP 7:
Barra de título: contém o título da aplicação e da ferramenta ativada na janela
Barra de menu: contém todos os menus disponíveis para a janela corrente.
Barra de ferramentas: contém funções e ícones de uso freqüente do menu de comandos.
Área de trabalho: área na qual você digita ou seleciona programa/informações.
Barra de Status: Exibe o status e informações adicionais sobre os dados selecionados.

Barra de ferramentas e de menu:


File: abre, cria, salva, e imprime arquivos ou blocos
Edit: corta, copia, apaga, cola, seleciona itens.
View: muda a visualização da tela.
Options: 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.

Slide 4

Usando o Help do STEP 7

SIMATIC S7 Date: 07/11/00


Version: 3.1
Conhecimento em Automação
Training-Center
File No.: pro1_4.4
Siemens AG 1995. All rights reserved.

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.

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.
Slide 5

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 Date: 07/11/00


Version: 3.1
Conhecimento em Automação
Training-Center
File No.: pro1_4.5
Siemens AG 1995. All rights reserved.

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.)

Programas S7/M7: O programa de usuário referente a um CLP propriamente dito é localizado sob o diretório
S7-Programs. Este diretório pode estar ou não associado a uma estação específica criada. Associada a um
HW, o diretório se encontra subordinado à 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.

Slide 6

Objetos do STEP 7
SÍMBOLO OBJETO DESCRIÇÃO SUBORDINADO A
Projeto Representa o ïcone Principal: Arquivo
Projeto de Automação
Estação Representa um HW configurado, ao Projeto
qual está subordinado o programa
Módulo Programável Representa módulo que contém Estação
(CPU, CP ou FM) programa ou parametrização
Programa S7 Contém todos os elementos Módulo Programável ou
(offline) referentes à programação: blocos, Projeto
arq. fontes, simbólicos.
Blocos de Programa Representa o diretório que contém os Programa S7
(Blocks) blocos de programa: OBs, FBs, DBs (online ou offline)
Programa S7 Contém os elementos referentes ao Módulo Programável ou
(online) programa on-line. Projeto
Bloco Representa o bloco de programa: Blocos de Programa
OB1, FB10, FC34, ... (online ou offline)
Tabela de Simbólicos Representa o editor dos simbólicos Programa S7
(offline)
Conexão Representa o Editor de Conexões de Programa S7
Comunicação (offline)

SIMATIC S7 Date: 07/11/00


Version: 3.1
Conhecimento em Automação
Training-Center
File No.: pro1_4.6
Siemens AG 1995. All rights reserved.
Slide 7

Blocos do STEP7

Projeto

SIMATIC S7 Date: 07/11/00


Version: 3.1
Conhecimento em Automação
Training-Center
File No.: pro1_4.7
Siemens AG 1995. All rights reserved.

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:
- 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
- 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.

Slide 8

Navegando no STEP 7

SIMATIC S7 Date: 07/11/00


Version: 3.1
Conhecimento em Automação
Training-Center
File No.: pro1_4.8
Siemens AG 1995. All rights reserved.
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)

Slide 9

Wizard

7TOP_T1D

SIMATIC S7 Date: 07/11/00


Version: 3.1
Conhecimento em Automação
Training-Center
File No.: pro1_4.9
Siemens AG 1995. All rights reserved.

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.

Slide 10

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 Date: 07/11/00


Version: 3.1
Conhecimento em Automação
Training-Center
File No.: pro1_4.10
Siemens AG 1995. All rights reserved.
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 localizada 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.
1)
3. Selecione “PRO1” na lista de projetos e confirme com “OK”.
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.

Slide 11

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 Date: 07/11/00


Version: 3.1
Conhecimento em Automação
Training-Center
File No.: pro1_4.11
Siemens AG 1995. All rights reserved.

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.
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.
Pro1_05.ppt

Slide 1

Configurando e Parametrizando o S7

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.1
Siemens AG 1995. All rights reserved.

Slide 2

Introdução
Chamando o
Configurador de HW

Configurando o
rack

KONF_T1D

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.2
Siemens AG 1995. All rights reserved.

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)
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). A 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.

Slide 3

Configurador de Hardware - Menus


Barra de Ferramentas
Barra de Ferramentas

Menu de “Edição”
Menu de “Edição” Upload
(le o CLP)
Download Ativa o
(transfere p/ CPU) 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 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.3
Siemens AG 1995. All rights reserved.

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 ex. 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.
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.

Slide 4

Configuração Real

Configuração Real

Lendo a Configuração Real

PG 720

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.4
Siemens AG 1995. All rights reserved.

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.

Procedimento: A configuração real é gerada usando o ícone Upload.

Slide 5

Configurando o Hardware

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.5
Siemens AG 1995. All rights reserved.
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 CPU 315-2 e toda a família S7-
400 permitem que este endereço seja alterado pelo usuário.
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.

Slide 6

Parâmetros e Propriedades da CPU

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.6
Siemens AG 1995. All rights reserved.

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.
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.
Slide 7

CPU - Características de Start-Up

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.7
Siemens AG 1995. All rights reserved.

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 S7-400).

Hardware Test: Quando esta função é ativada, a RAM interna da CPU é testada durante o start-up.

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.
Slide 8

CPU - Retentividade

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.8
Siemens AG 1995. All rights reserved.

Á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.
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.
Slide 9

CPU - Ciclo/Clock de Memória

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.9
Siemens AG 1995. All rights reserved.

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.
O byte de memória especificado piscará nas seguintes freqüências, cada uma associado a 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 (Hz) 0,5 0,625 1 1,25 2 2,5 5 10

Slide 10

CPU - Proteção de Acesso

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.10
Siemens AG 1995. All rights reserved.
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 têm 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

Slide 11

CPU - Interrupções

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.11
Siemens AG 1995. All rights reserved.

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.

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.

Slide 12
CPU - Interrupções Time-of-Day

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.12
Siemens AG 1995. All rights reserved.

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.

Slide 13

CPU - Interrupção Cíclica

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.13
Siemens AG 1995. All rights reserved.

Cyclic interrupt: 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 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 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.

Slide 14

CPU - Diagnóstico/Clock

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.14
Siemens AG 1995. All rights reserved.

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 (Display 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 registros dificultando uma eventual análise do motivo de parada da CPU
(mensagens importantes podem ser sobrescritas).

Clock: Se estiver 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.

Slide 15
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 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.15
Siemens AG 1995. All rights reserved.

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 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 têm acesso de leitura e escrita nos registros de dados dos módulos.

Slide 16
Módulo Analógico - Parametrização

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.16
Siemens AG 1995. All rights reserved.

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.

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).

Slide 17

Exercício 5.1: Configurando uma Estação de Hardware

Chamando o
Configurador de HW

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.17
Siemens AG 1995. All rights reserved.

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.
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.

Slide 18

Exercício 5.2: Parametrizando a CPU - Retentividade

Ícone para transferir a configuração


Click-duplo sobre para a CPU (Download)
a CPU

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo.: pro1_5.18
Siemens AG 1995. All rights reserved.

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
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?
Pro1_06.ppt
Slide 1

Princípios Básicos de Programação

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_6.1

Conteúdo
Norma IEC 1131.................................................................................. 2
Ciclo de Processamento da CPU........................................................ 3
Start-up da CPU e OB’s....................................................................... 4
Imagem de Processo........................................................................... 5
Tipos de Blocos de Programa.............................................................. 6
Blocos de Usuário................................................................................ 7
Blocos de Sistema................................................................................ 8
Estrutura de Programa......................................................................... 9
Programação Estruturada.................................................................... 10

Slide 2

Norma IEC 1131


Parte 1: Informações Gerais
Definições
de termos para o PLC e glossário
Características gerais das funções do PLC
Parte 2: Itens Exigidos
Exigências elétricas, mecânicas, e funcionais
Informações do fabricante
Normas reguladoras a ser cumpridas (conformance)

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
Parte 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
Parte 5: Comunicação
Modelos, blocos de comunicação, mapeação em protocolo ISO Modul: IEC_T1D.

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_6.2

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.

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.

Slide 3

Ciclo de Processamento da CPU


Bloco de inicialização (OB 100/OB 101), processa
uma vez depois de energizada a CPU, por exemplo.
Inicialização da monitoração do tempo de ciclo Módulo de Entrada

Lê o estado dos sinais dos módulos de entradas e


salva os dados na tabela imagem das entradas
do processo (PII)
OB1
Ciclo de scan da CPU

Executa o programa OB 1 (processamento cíclico) A I0.1


A I0.2
Eventos (Interrupção de tempo, interrupção de = Q8.0
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. Módulo de Saída

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_6.3

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 Warm-restart. 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.

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.
Slide 4

Start-Up da CPU e OBs


Restart Completo Restart
Restart
Restart Completo
Manual: STOP --> RUN para S7-400 Pre requisitos: Seta parâmetros para restart
CRST ativado Manual: STOP --> RUN e ativa WRST
Automático: Power ON
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
Falha tensão
Para tempo excedido?
Lê em PII
Não
Habilita saídas
Executa OB 1
Lê em PII

Saída PIQ Executa OB 1 atualiza


PIQ no final

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_6.4

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.

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
Slide 5

Imagem de Processo
I2.0 I2.7 I0.5 I0.3 Q4.3

Q4.3
SM SM

Saída
Entrada digital
digital

PII PIQ
Byte 0 Byte 0
Byte 1 Byte 1
Byte 2 1 Byte 2
. Programa .
. do usuário . 1
. .
. A I 2.0 .
AN I 2.7
AN I 0.5
AN I 0.3
Bit 7 Bit 0 = Q 4.3 Bit 7 Bit 0

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_6.5


Definição: Denomina-se Imagem de Processo a 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.

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.

Slide 6

Tipos de Blocos de Programa

Ciclo

Tempo OB
FB FC SFB
Bloco de
Processo Organização

Erro FB FB SFC

Modo de operação sistema


Legenda:
OB = Bloco de Organização Bloco de dados
FB = Bloco de Função
Instance
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 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_6.6

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.
Slide 7

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 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_6.7

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 Diagnostico
- Interrupção de Erros
- Interrupção de tempo de ciclo
- Interrupção de hardware
- Start-up do Hardware

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.
Slide 8

Blocos de Sistema

Tipo de Bloco Características

Função de Sistema - Arquivados no sistema operacional das CPU’s


(SFC) - Usuário pode chamar esta função
(sem memória).

Bloco de Função - Arquivados no sistema operacional das CPU’s


de Sistema (SFB) - Usuário pode chamar esta função
(com memória).

Bloco de Dados - Blocos de dados para configuração de dados


de Sistema (SDB) e parâmetros

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_6.8

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.

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.

Slide 9

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
Bomba
OB1 OB1 Recipiente B OB1

Misturador
Exaustor
Exaustor

Programa Linear: Programa Particionado: Programa Estruturado:


Todas as instruções estão Instruções para cada dispositivo Códigos reutilizáveis estão em blocos
contidas em um bloco estão contidos em blocos individuais. O OB1 (ou outro bloco)
(normalmente no OB1) individuais. OB 1 chama cada chama esses blocos e passa os dados
bloco em seqüência. relevantes (parâmetros).

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_6.9


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.

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. Exemplo de blocos parametrizáveis.
- O bloco “BOMBA" contém instruções para uma bomba, com um set de entradas e saídas exigidas
para qualquer bomba usada no processo.
- O 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 OB1), o qual conclui as instruções.

Slide 10

Programação Estruturada

OB 1 FC 1

Motor 1
Motor 1

FC 1

Motor 2
Motor 2

FC 1

Motor 3
Motor 3

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_6.10

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.
- 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.
Pro1_07.ppt

Slide 1

O Editor LAD/STL/FBD

Click em ...

e você chega a ...

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Arquivo: pro1_7.1
Conhecimento em Automação
Training Center

Siemens AG 1995. All rights reserved.

Conteúdo
Selecionando um Bloco para Editar.................................................... 2
Selecionando a Linguagem de Programação..................................... 3
Seções do editor de Programas.......................................................... 4
Editando em Diagrama de Contatos - LAD......................................... 5
Editando em Blocos Funcionais - FBD................................................ 6
Demonstração: Editando e Depurando um Bloco de Programa......... 7
Exercício 7.1: Editando o OB1............................................................ 8
Exercício 7.2: Selecionando o Método de Representação................. 9
Exercício 7.3: Salvando um Bloco....................................................... 10
Exercício 7.4: Transferindo um Bloco para CPU................................. 11
Exercício 7.5: Estabelecendo Conexão On-Line................................. 12
Exercício 7.6: Exibindo o Status do Programa.................................... 13

Slide 2

Selecionando um Bloco para Editar


Editando um bloco existente: Editando um novo bloco:
- selecione a pasta que contém o - selecione a pasta que deverá conter o
bloco; bloco;
- pressione o botão direito do mouse;
- click duas vezes sobre o bloco. - selecione ‘Insert New Object”e o tipo de
bloco desejado;
- click duas vezes sobre o bloco criado.

SIMATIC S7 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.
- Os blocos existentes são listados na janela à direita.
- Selecione o bloco a ser editado, clicando duas vezes sobre ele. Alternativamente pode-se 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

Slide 3

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.

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).
Slide 4

Seções do Editor de Programas

Tabela de Declarações
Tabela de Declarações

Título do
Bloco

Segmento
Seção de Instruções
Seção de Instruções

SIMATIC S7 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.

Seção de Instruções: Nesta área são especificadas 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.

Slide 5

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)

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

Slide 6

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.

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.
- O modo de sobre-escrever é disponível para troca simples de elementos do mesmo tipo.
Slide 7

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

Slide 8

Exercício 7.1: Editando o OB1


Click duas vezes sobre
Modo off-line o ícone do bloco

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.

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.

Slide 9

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.

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:

Lista de Instruções:
A I 0.0
AN I0.1
= Q 8.0

Blocos de Funções:
Slide 10

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
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.

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”.


Slide 11

Exercício 7.4: Transferindo um Bloco para a CPU

Para transferir um bloco para a CPU...

Download ...ou click no ícone


Download...

SIMATIC S7 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.

Procedimento:
Quando o editor LAD/STL/FBD está aberto....
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.

Slide 12

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 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.
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 nomes de todos blocos
localizados na CPU. Você também pode usar este menu para abrir blocos para edição e depuração de
programas.

Slide 13

Exercício 7.6: Exibindo o Status do Programa

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 mudadas via a função do menu Options ==> Customize ==>
LAD/STL/FBD.

Objetivo: Depurar o bloco enquanto ele está sendo processado pela CPU.

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.
Pro1_08.ppt

Slide 1

Operações Lógicas Básicas


# RS_FF
R Q
NOT
&
S

SR_FF
S Q

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_8.1
Siemens AG 1995. All rights reserved.

Conteúdo
Instruções de Bit.................................................................................. 2
AND, OR, XOR.................................................................................... 3
Resultado de Operações Lógicas, First Check................................... 4
Setting de Instruções, Resetando e Salvando.................................... 5
Instruções que influenciam o RLO...................................................... 6
Avaliação do Flanco de Impulso......................................................... 7
Exercício: Operações Básicas............................................................ 8
Exercício: Planta de Engarrafamento, Modo de Operação................. 9

Slide 2

Instruções de BIT
Instrução LAD FBD STL
I 1.0
I 1.0
Scan para Sinal "1" A I 1.0
I 1.1
Scan para Sinal "0" I 1.0 AN I 1.1
Q 8.1 Q 9.0
Assign Output (saída) ( ) = = Q8.0

Q 9.0 Q 9.0
Seta Saída (S) S S Q 9.0
Q 9.0
Q 9.0
Reseta Saída R R Q 9.0
(R)
M 10.0 M 10.0
Seta/Reseta Flip Flop I 0.1 SR_FF SR_FF A I 0.1
S Q I 0.1 S Q S M 10.0
I 0.2
A I 0.2
R I 0.2 R R M 10.0

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_8.2
Siemens AG 1995. All rights reserved.
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
- Setar Saída
- Resetar Saída
- Setar/Resetar Flip Flop
- Resetar/Setar Flip Flop
- RLO Negado
- Salvar RLO

Slide 3

AND, OR, XOR


LAD FBD STL
AND AND AND
I0.0 I0.1 Q8.0 I 0.0 & A I0.0
I 0.1 Q 8.0 A I0.1
= Q8.0
OR OR
OR
Q8.1 I 0.2 >=
I0.2
I 0.3 O I0.2
Q 8.1 O I0.3
I0.3 XOR = Q8.1
I 0.2 & XOR
XOR I 0.3 >=
Q8.3 A I0.4
I0.4 I0.5 &
I 0.2 Q 8.1 ANI0.5
I 0.3 O X I0.4
I0.4 I0.5 ...or ANI0.4 X I0.5
I 0.2 XOR
A I0.5 = Q8.3
I 0.3 Q 8.1 = Q8.3

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_8.3
Siemens AG 1995. All rights reserved.

A descrição das instruções é baseada 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 Q8.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 Q8.1 torna-se 1. Se nenhuma das entradas
for 1, o RLO = 0, e a saída torna-se 0.

XOR: 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.
Slide 4

Resultado de Operações Lógicas, First Check

RLO Estado do Sinal

A I 1.0 .... .... First Check


AN I 1.1 .... ....
A M 4.0 .... ....
= Q8.0 .... ....
A I 2.0 First Check

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_8.4
Siemens AG 1995. All rights reserved.

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).

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.

Slide 5

Instruções para Setar, Resetar e Salvar


LAD FBD STL

I1.0 Q9.0 &


Q9.3 A I1.0
Set I1.0 S Q9.0
S S

& A I1.1
Reset I1.1 Q9.0 Q9.0
I1.1 R Q9.0
R R
M0.0 M0.0 A I1.2
Set/reset Q9.3
I1.2 SR_FF Q9.3 SR_FF S M0.0
I1.2 S Q = A I1.3
Flip flop S Q
I1.3 R M0.0
I1.3 R
R A M0.0
= Q9.3
Reset/set M0.2
I1.4 RS_FF Q9.4 M0.2 Q9.4 A I1.4
R Q RS_FF R M0.2
Flip flop I1.4 =
I1.5 R Q A I1.5
S S S M0.2
I1.5
A M0.2
= Q9.4

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_8.5
Siemens AG 1995. All rights reserved.
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 único ciclo, a saída Q9.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 Q9.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.

Slide 6

Instruções que Influenciam o RLO


LAD FBD STL
NOT NOT NOT
I0.0 I0.1 Q8.0 I0.0 &
Q8.0 A I0.0
NOT I0.1 =
A I0.1
NOT
= Q8.0
CLR/SET CLR/SET CLR/SET
Não é exibido em LAD Não é exibido em FBD CLR

Não é exibido em LAD Não é exibido em FBD SET


SAVE SAVE
SAVE
I1.6
(SAVE) I1.6 & SAVE A I1.6
SAVE
Q8.1 Q8.1 A BR
BR
( ) BR = = Q 8.1

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_8.6
Siemens AG 1995. All rights reserved.

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.

OBS: LAD/FBD não suportam estas duas instruções (CLR/SET).

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


Slide 7

Flanco de Impulso (Degrau)


Diagrama de Status do Sinal
Flanco Positivo Flanco Negativo
I 1.0
RLO
1
M 1.0
0
Time
Q 8.0

um scan
LAD FBD STL

I1.0 M1.0 Q8.0 & A I 1.0


I1.0 M1.0 Q8.0 FP M 1.0
P
P = = Q 8.0

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_8.7
Siemens AG 1995. All rights reserved.

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 Q8.0.
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.

Slide 8

Exercício 8.1: Declarações de Operações Lógicas


Network 1
Network 6
I0.0 I0.1 Q8.0 I0.6 Q8.4
AND Reset
(R)
Network 2 Network 7
I0.0 I0.1 Q8.1 I0.2 I0.4 Latch selar Q8.5
AND negada

Q8.5
Network 3
I0.2 Q8.2
OR Network 8 Conector
I0.5 I0.6 M0.0 I0.7 Q8.6
I0.3
#
Network 4 Network 9
I0.2 I0.4 Q8.3 M0.0 Q8.7
OR antes AND Bit de memória

I0.3 Network 10
I1.0 I1.1 XOR Q4.0

Network 5
I0.5 I1.0 I1.1
Set Q8.4
(S)

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_8.8
Siemens AG 1995. All rights reserved.
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.

Slide 9

Exercício 8.2: Planta de Engarrafamento - Modo de Operação e


Operação Manual
Sistema On/Off
I0.0 Partir (NA Contato, contato instantâneo)
I0.1 Parar (NF Contato)

Modo de operação Manual/Automático


I0.3 Manual /Automático
I0.4 Modo de transferência
I0.5 Movimento para frente
I0.6 Movimento para trás

Sensor de
garrafas
I1.6

Q 8.5 Correia transportadora para frente


Q 8.6 Correia transportadora para trás

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_8.9
Siemens AG 1995. All rights reserved.

Objetivo: Programe o modo de operação dos componentes para planta de engarrafamento de acordo com as
especificações abaixo:
O sistema é iniciado através da entrada I0.0 (botão não retentivo, NA)
O sistema é desligado através da entrada I0.1(chave, contato NF)
A saída Q8.0 liga a lâmpada quando o sistema é iniciado.
Quando o sistema é iniciado, o modo de operação pode ser selecionado:
- Com I0.3=0 a operação manual é selecionada e com I0.3=1 a operação automática é
selecionada.
- Com o pulso na entrada I0.4, o modo de operação é aceita.
O modo de operação deverá ser sinalizado por (manual=Q8.1, automático= Q8.2).
O modo de operação manual deve ser selecionado quando o sistema está desligado.
Durante a operação manual, a correia transportadora pode ser movimentada para frente com os
botões não retentivos I0.5 (Q8.5) e para trás com I0.6 (Q8.6) 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 "ENGARRAF" 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 (liga para frente/trás).
Pro1_09.ppt

Slide 1

Temporizadores, Contadores e Comparadores...

S_ZV
ZV Q
S_AVERZ S
S Q S_EVERZ
PV DUAL S Q
TV DUAL
RR DEZ
DEZ TV DUAL
R DEZ
R DEZ

CMP
==I

IN1
IN2

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_9.1
Siemens AG 1995. All rights reserved.

Conteúdo
Temporizadores com Retardo............................................................. 2
Temporizador com Pulso.................................................................... 3
Contadores......................................................................................... 4
Instruções de Bit para Temporizadores e Contadores........................ 5
Carregando e Transferindo Dados..................................................... 6
Acumuladores..................................................................................... 7
Funções de Comparação.................................................................... 8
Instruções de Salto Incondicional....................................................... 9
Salto Condicional, Baseado em RLO................................................. 10
Função de Controle de Relé Mestre .................................................. 11
Exercício: Programando a Planta de Engarrafamento
Ciclo de Enchimento e Contagem de Garrafas............................... 12

Slide 2

Temporizadores com Retardo na Energização/Desenergização


LAD FBD STL
T4 T4
I0.7 S_ODT Q8.5 S_ODT Exemplo:
S Q I0.7 S Q Q8.5 Entrada com
S5T#35s TV BI MW0 S5T#35s TV BI MW0 atraso
I0.5 S_ODT
R BCD MW2 I0.5 R BCD MW2

T5 T5 A I0.7
I1.7 S_OFFDT Q8.6 S_OFFDT L S5T#35s
S Q I1.7 S Q Q8.6 SD T4
S5T#55s TV MW4 S5T#55s TV MW4 A I0.5
BI BI
I1.5 R T4
R BCD MW6 I1.5 R BCD MW6 L T4
T MW0
T6 T6
LC T4
I1.3 S_ODTS Q8.7 S_ODTS T MW2
S Q I1.3 S Q Q8.7
A T4
S5T#105s TV BI MW10 S5T#105s TV BI MW10
I1.4 = Q8.5
R BCD MW12 I1.4 R BCD MW12

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_9.2
Siemens AG 1995. All rights reserved.
O S7 oferece três opções de temporizadores com atraso (delay timer):

On-Delay Timer S_ODT: Retardo na Energização

Off-Delay Timer S_OFFDT: Retardo na Desenergização

Retentive On-Delay S_ODTS: Retardo na Energização com Retenção

Slide 3

Temporizadores de Pulsos
LAD FBD STL

T2 T2
I0.0 S_PULSE Q9.0 S_PULSE S_PULSE
S Q I0.0 S Q Q9.0
S5T#45s TV BI MW5 S5T#45s TV BI MW5 A I0.0
I0.1
R BCD MW7 I0.1 R BCD MW7 L S5T#45s
SP T2
A I0.1
R T2
L T2
T9 T MW5
LC T2
I0.2 S_PEXT Q9.1 S_PEXT
S Q I0.2 S Q Q9.1 T MW7
S5T#85s TV MW9 S5T#85s TV BI MW9
A T2
BI
I0.3 = Q9.0
R BCD MW11 I0.3 R BCD MW11

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_9.3
Siemens AG 1995. All rights reserved.

O S7 oferece duas opções de temporizadores de pulso:

Pulse: S_PULSE - Pulso

Extended Pulse: S_PEXT - Pulso Extendido

Slide 4

Contadores

LAD FBD STL


C3 C3
Exemplo:
I0.0 S_CU Q8.0 S_CU CONTADORES
CU Q I0.0 CU Q Q8.0 A I0.4
I0.2
S I0.2 S CU C5
C#12 SC CV MW0 MW0
A I0.5
C#12 SC CV
I0.1 CD C5
R CV_BCD MW2 I0.1 R CV_BCD MW2 A I0.3
C5
L C#20
C5 S C5
S_CUD S_CUD
E0.4 Q8.3 A I0.7
I0.4 CD Q Q8.3
CD Q R C5
E0.5 I0.5
L C5
CU CU
T MW4
E0.3 LC C5
I0.3 S
S T MW7
MW4 C#20 SC CV MW4
C#20 SC CV A C5
E0.7 I0.7 R CV_BCD MW7 = Q8.3
R CV_BCD MW7

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_9.4
Siemens AG 1995. All rights reserved.
As três opções de contadores existentes são descritas 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.

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.

Slide 5

Instruções de Temporização e Contagem para Bits


LAD FBD STL

I0.0 T5
T5
I0.0 & SD SD A I0.0
( SD ) L S5T#25s
S5T#25s S5T#25s
T9 SD T5
I0.1 T9
& SF SF A I0.1
( SF ) I0.1
L S5T#15600MS
S5T#15600mS S5T#15600ms
SF T9
I0.2 T2 T2
SP A I0.2
( SP ) I0.2 & SP
L S5T#12S
S5T#12S S5T#12s SP T2
I0.3 T6
T6 SE A I0.3
I0.3 & SE
( SE ) L S5T#500MS
S5T#500ms S5T#500ms SE T6
I0.4 T10 SS A I0.4
T10
I0.4 & SS L S5T#20MS
( SS )
S5T#20ms S5T#20ms SS T10
C14 CU A I0.5
I0.5 C14
I0.5 & CU CU C14
( CU) CD A I0.6
I0.6
C17 CD C17
C17
I0.6 & CD
( CD )

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_9.5
Siemens AG 1995. All rights reserved.

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.

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.

Slide 6

Acumuladores
Instrução para Carga no Conteúdo do Accu 1
31 24 23 16 15 8 7 0

0000 0000 0000 IB 0 L IB 0


31 24 23 16 15 8 7 0

0000 0000 IB 0 IB 1 L IW 0

31 24 23 16 15 8 7 0

MB 0 MB 1 MB 2 MB 3 L MD 0

Instrução de Transferência
31 24 23 16 15 8 7 0

MB 0 MB 1 MB 2 MB 3

T QD 4 T QW 4 T QB 4

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_9.6
Siemens AG 1995. All rights reserved.

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.

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
Slide 7

Carregando e Transferindo Dados


LAD/FBD STL

L - Load T - Transfer
MOVE
(Todos os tipos de dados com 8, 16, 32 bits)
EN ENO
Exemplos:
L +5 // Carrega uma constante 16-bit
5 IN L L#523123 // Carrega uma constante 32-bit
O MB 5
L B#16#EF // Carrega byte em hexadecimal
L 2#0001_0110_1110_0011
EN - Habilita Entrada // Carrega valor binário 16-bit
ENO -Habilita Saída L TOD#1:10:3.3
IN - Valor de Entrada // Carrega tempo com 32-bit
(Tamanho de todos os tipos
de dados 8, 16, 32 bit ) T MB0 // Transfere valor para byte de
O - Target address memória 0
(Tamanho de todos os tipos T QD256 // Transfere valor para double
de dados 8, 16, 32 bit ) word 256

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_9.7
Siemens AG 1995. All rights reserved.

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.

Slide 8

Funções de Comparação

LAD FBD STL

M0.0 CMP Q9.7 ==I CMP ==I


==I M0.0
A M0.0
A(
IW0 IN1 IW0 IN1 L IW0
IW2 IN2 IW2 IN2 L IW2
Q9.7
==I
)
OPÇÕES DE COMPARAÇÃO: = Q9.7

== IGUAL A
<> NÃO IGUAL A
> MAIOR QUE
< MENOR QUE
>= MAIOR QUE OU IGUAL A
<= MENOR QUE OU IGUAL A

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_9.8
Siemens AG 1995. All rights reserved.
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
- 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.

Slide 9

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.

LAD FBD STL

Network 1 NEW1 NEW1 Network 1


( JMP ) JMP JU NEW1
Network 2
Network 2 .
.
.
.
.
Network X Network X .
NEW1 NEW1
Network X .
NEW1: AN M5.5
M5.5 I4.7 M69.0 &
I 0.2 Q8.1 AN I4.7
( ) = = M69.0
I 0.3

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_9.9
Siemens AG 1995. All rights reserved.

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

STL JU “label”

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.
Slide 10

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
Is RLO=1? NEW1
NEW1 A I0.0
I0.0 I1.0 JMP
I0.0 A I1.0
( JMP ) &
I1.0 JC NEW1

Jump if RLO = 0
NEW1
Is RLO=0? I0.0 JMPN
I0.0 I1.0 REC2 & A I0.0
( JMPN ) I1.0 A I1.0
JCN REC2

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_9.10
Siemens AG 1995. All rights reserved.

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 JC é 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 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”.
Slide 11

Função Master Control Relay


LAD FBD STL
MCRA //Ativado
( MCRA ) MCRA
I0.0
A I0.0 //Habilitar MCR
( MCR< ) I0.0 & MCR<
MCR( //Abrir MCR
I0.7 Q8.5 *
Q8.5*
( ) A I0.7 //Contato NA
I0.7 & =
M0.6 * M0.6* = Q8.5 //Saída
( ) = = M0.6 //Saída

Q16.0 Q16.0
I0.4 A I0.4 //Contato NA
(S) I0.0 & S S Q16.0 //Setar saída
( MCR> ) MCR>
)MCR //Fechar MCR
M69.0 M69.0 *
M5.5 I4.7
( ) M5.5 = AN M5.5 //Contato emer.
&
I4.7 AN I4.7 //Contato emer.
( MCRD ) MCRD = M69.0 //Saída

* Influenciado pelo MCR MCRD //Desativar

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_9.11
Siemens AG 1995. All rights reserved.

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.
OBS: 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.

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.
Slide 12

Exercício 9.1: Planta de Engarrafamento


Ciclo de Engarrafamento
Controle das esteiras transportadoras
I0.0 Partir (NA Contato) Recipiente
principal
I0.1 Parar (NF Contato)
Modo de operação Manual/Automático
I0.3 Manual /automático
I0.4 Entrada do modo de operação
I0.5 Movimento para frente
I0.6 Movimento para trás
Q9.0 Funil Enchedor

Sensor de Sensor de Sensor de


garrafa garrafa garrafa
I16.5 I16.6 I16.7

Q 8.5 Correia transportadora para frente


Q 8.6 Correia transportadora para trás

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_9.12
Siemens AG 1995. All rights reserved.

Objetivo: Continue a aplicação do exercício 8.2. A aplicação deverá trabalhar da seguinte forma:

Controle do transportador em operação automática:


Em operação automática, o motor do transportador (Q8.5) ligará e permanecerá ligado até quando a
chave de STOP (I0.1) abra, ou até que o sensor (I1.6) detecte a presença da garrafa. Depois que a garrafa é
abastecida (temporizado), o transportador deverá partir automaticamente novamente e permanecer ligado até
que outra garrafa seja detectada ou até que a chave STOP seja aberta.
Quando a garrafa está localizada embaixo do dispositivo de abastecimento (I1.6=1), o procedimento
de abastecimento é iniciado. O processo de abastecimento é simulado por 3 segundos e é sinalizado através
da saída Q5.0

Contando as Garrafas:
Existe dois sensores adicionais destinados a registrar garrafas cheias e vazias. O sensor I1.5 registra
garrafas vazias e o sensor I1.7 registra garrafas cheias. Garrafas cheias e vazias devem ser contadas assim
que sistema parta, (C1 garrafas vazias, C2 garrafas cheias) e o número de garrafas cheias é então exibido no
display digital QW6

Procedimento:
1. Desenvolva um programa no bloco FC16 e adicione a chamada no OB1 (Projeto PRO1, programa
“ENGARRAF”). No FC15 você também deverá modificar a network na qual o movimento do transportador 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.


Pro1_10.ppt

Slide 1

Conversão, Operação Lógica Digital, Matemática,


Deslocamento
SUB_R
EN ENO WOR_W
EN ENO
IN OUT IN1
IN2 OUT

BCD_I
EN ENO
MUL_R
EN ENO IN OUT

IN1
IN2 OUT

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Siemens AG 1995. All rights reserved. Arquivo: pro1_10.1

Conteúdo
Formato de Números.......................................................................... 2
Instruções de Conversão de Tipos de Dados..................................... 3
Operações Lógicas Digitais................................................................. 4
Funções Matemáticas Básicas ........................................................... 5
Funções Matemáticas Avançadas...................................................... 6
Funções de Deslocamento e Rotação................................................ 7
Exercício : Operações de Palavra....................................................... 8
Exercício : Planta de Engarrafamento - Nível..................................... 9

Slide 2

Formato de Números

Número Número 15 8 7 0
Decimal BCD
0 0 0 0 0 0 0 0 1 1 0 0 1 1 0 1

0 0000
1 0001 Valor Decimal : 128 + 64 + 8 + 4 + 1
2 0010 Bit de sinal
3 0011 Tipo de Dados INTEGER ex.: 500
4 0100
5 0101
6 0110
31 24 23 16 15 8 7 0
7 0111
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
8 1000
9 1001
10 Expoente: Mantissa
(8 bit) (24 bit)
11
12 Tipo de Dados Real ex.: 45.6789
13
14
15

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Siemens AG 1995. All rights reserved. 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.
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.
38 38
A faixa na qual o número real está compreendido é: -3.402823 10 a 3.402823 10

Slide 3

Instruções de Conversão de Tipos de Dados


LAD/FBD STL

BCD_I BCD_I
EN ENO
L IW4
BTI
IW4 IN OUT MW20 T MW20

DI_REAL
DI_REAL
EN ENO L MD10
DTR
MD10 IN OUT MD30 T MD30

ROUND
ROUND
EN ENO L MD33
RND
MD33 IN OUT MD69 T MD69

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Siemens AG 1995. All rights reserved. Arquivo: pro1_10.3

Existem várias possibilidades 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.

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.
Slide 4

Operações Lógicas Digitais


LAD/FBD STL

WAND_W WAND_W
EN ENO L IW4
L W#16#0FFF
IW4 IN1 AW
W#16#0FFF IN2 OUT MW30 T MW30

WOR_W WOR_W
L MW32
EN ENO
L W#16#0001
MW32 IN1 OW
W#16#0001 IN2 OUT MW32 T MW32

WXOR_W
WXOR_W L IW0
EN ENO L MW28
IW0 IN1 XOW
T MW24
MW28 IN2 OUT MW24

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Siemens AG 1995. All rights reserved. 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

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
Slide 5

Funções Matemáticas Básicas


LAD/FBD STL

ADD_I ADD_I
L MW4
EN ENO L MW10
MW4 IN1 +I
MW10 IN2 O MW6 T MW6
SUB_I
SUB_I L MW5
EN ENO L MW11
MW5 IN1 -I
MW7 T MW7
MW11 IN2 O
MUL_R
MUL_R L MD6
L MD12
EN ENO
*R
MD6 IN1 T MD67
MD12 IN2 O MD67
DIV_R
DIV_R
L MD67
EN ENO L MD3
MD67 IN1 /R
MD3 IN2 O MD33 T MD33

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Siemens AG 1995. All rights reserved. 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.

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
Slide 6

Funções Matemáticas Avançadas


LAD/FBD STL

SQRT SQRT
EN L M D10
ENO
SQRT
T MD 14
MD10 IN O MD 14
SIN
SIN
EN ENO L MD 18
SIN
MD 18 IN O MD 22 T MD 22

TAN SQR
EN ENO L MD 34
SQR
T MD 38
MD 26 IN O MD 30
SQR
EN ENO TAN
L MD 26
TAN
MD 34 IN O MD38 T MD 30

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Siemens AG 1995. All rights reserved. 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.

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)
Slide 7

Funções de Deslocamento e Rotação


LAD/FBD STL

SHL_W
SHL_W

EN ENO * L MW50
MW50 IN SLW 2 //Multiplicação por 4
T MW12
MW4 N O MW12

(MW4 = 2)

ROR_DW ROR_DW
EN ENO *
MD60 L MD60
IN
RRD 4
MW6 N O MD50 T MD50
(MW6 = 4)

* Estado do sinal do último deslocamento de bit

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Siemens AG 1995. All rights reserved. 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.
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.
Slide 8

Exercício 10.1: Exemplos de Operações de Palavra


Network 1
Q4.0
I0.0 S_CU
CU Q
I0.1
S

IW2 PV CV MW0
I0.6
R CV_BCD MW4

Network 2

BCD_DI DI_R DIV_R M68.0


EN ENO EN ENO EN ENO
MD2 IN O MD8 MD8 IN O MD14 MD14 IN1 O MD20
6.0 IN2
Network 3
TRUNC DI_BCD MOVE M69.0
EN ENO EN ENO EN ENO
MD20 IN O MD26 MD26 IN O MD34 MD34 IN O QW6

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Siemens AG 1995. All rights reserved. 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 o inteiro imediatamente superior e então convertido de duplo
inteiro para valor BCD. O valor BCD é transferido para o display na saída BCD que é conectado com o
endereço de saída QW6.

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 o display é incrementado de um para
cada múltiplo de seis (por exemplo, para o status igual a 7 contador, deve ser exibido 1).
Slide 9

Exercício 10.2: Planta de Engarrafamento


Dados de Produção

Garrafas Vazias MW 100

Garrafas Cheias MW 102

Garrafas Quebradas MW 104

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Siemens AG 1995. All rights reserved. Arquivo: pro1_10.9

Pro1_11.ppt

Slide 1

Ferramentas para Testes e Depuração

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_11.1
Siemens AG 1995. All rights reserved.

Conteúdo
Usando o Status do Editor LAD/STL/FBD .......................................... 2
Modo de Operação do Status do Bloco.............................................. 3
VAT - Tabela de Monitoração/Modificação de Variáveis.................... 4
Menus e Barra de ferramentas de “Monitor/Modify Variable”............. 5
Definindo Pontos de Trigger - VAT..................................................... 6
Exercício 11.1: Usando o Status do S7 ............................................. 7
Slide 2

Usando o Status do Editor LAD/STL/FBD

LAD
LAD

STL
STL

FBD
FBD

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_11.2
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.

Monitor./Modificando: As variáveis definidas pelo usuário podem ser exibidas ou mudadas on-line

Variáveis: 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.
Slide 3

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
Conhecimento em Automação
Training Center
Arquivo: pro1_11.3
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.

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, ou 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.

Slide 4

VAT - Tabela de Monitoração/Modificação de Variáveis

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_11.4
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”.
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... .

Slide 5

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
Conhecimento em Automação
Training Center
Arquivo: pro1_11.5
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.

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).
Slide 6

Definindo Pontos de Trigger - VAT


 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


Ciclo tão rápido quanto possível sem
referência ao trigger point.

Transição: RUN ==> STOP

Fim do Ciclo

PIQ

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_11.6
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.
3. Confirme com OK.

Slide 7

Exercício 11.1: Usando o Status do S7

3. Preencha a tabela VAT1


da seguinte forma:
I0.0 BIN
I0.1 BIN
I0.2 BIN
I0.3 BIN
1. Selecionar o modo de visualização
I0.4 BIN
on-line....
I0.5 BIN
2. Ativar o item de menu
I0.6 BIN
PLC => Monitor/Modify Variables
I0.7 BIN
Q8.0 BIN
4. ... Então SAVE
Q8.1 BIN
Q8.2 BIN 5. Selecione Variable => Monitor
Q8.3 BIN (ou o ícone correspondente)
Q8.4 BIN
Q8.5 BIN
Q8.6 BIN
Q8.7 BIN

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_11.7
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.
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. Isto
também serve como esquema para lembrar do endereçamento do S7-300.

Suplementar: Digite a lista de variáveis que corresponde a aplicação ENGARRAF. 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.

Pro1_12.ppt

Slide 1

Funções, Parâmetros e Dados Locais

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_12.1

Conteúdo
Chamando Blocos............................................................................... 2
Parâmetros EN/ENO........................................................................... 3
Variáveis Locais de um Bloco............................................................. 4
Parâmetros de um Bloco..................................................................... 5
Utilizando Variável Local em um Bloco............................................... 6
Exercício 12.1: Chamando um FC com/sem parâmetros................... 7
Slide 2

Chamando Blocos
Chamando Bloco Bloco Chamado
(OB, FB, FC, SFB, SFC) (FB, FC, SFB, SFC)

Execução
do Programa
Execução
Instrução que chama do Programa
outro bloco
(FB, FC, SFB, SFC)

Execução
do Programa

Instrução que chama Execução


outro bloco do Programa

(FB, FC, SFB, SFC)

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_12.2

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
Chamada em LAD sem parâmetros:
ou
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:

Slide 3

Parâmetros EN/ENO
EN = Habilita Entrada ENO = Habilita Saída

EN ENO ( )

Se ativa (1), executa Se ativa (1), a instrução foi


a instrução do bloco. Bloco de instruções executada sem erro.
LAD (FC, FB, Move, Add, etc)
Se não ativa (0), não Se não ativa (0), a instrução
executa a instrução não foi chamada, ou um erro
do bloco. ocorreu na execução das
instruções.

* STL não suporta os parâmetros EN/ENO. ENO = BR bit em STL

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_12.3


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)
- 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 I11.0
JNB SALT
CALL FC1
SALT: A BR
= Q 9.0

Slide 4

Vatiáveis Locais de um Bloco

Endereço
de memória Valor
local Nome Inicial

Parametros

Var. Estáticas

Var.
Temporárias

Tipo de Declaração Tipo de dados Comentários

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_12.4

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.

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 têm 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.

Slide 5

Parâmetros de um Bloco

STL CALL FB7, DB45


Liga:=I1.0 Chama FB7(usando o bloco
Desl:=I1.1 de dados instance DB45) e
Parâmetros “Formais” Motor:=Q 8.0 passagem de parâmetros.
do FB

Endereço “Atual” onde os dados


residem ou irão ser arquivados

LAD DB45
FB7 Chama FB7(usando o bloco
EN ENO de dados instance DB45) e
Endereço “Atual” passagem de parâmetros.
onde os dados I1.0 Liga Motor M2.1
residem ou irão I1.1 Desl
ser arquivados Parâmetros “Formais”
do FB

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_12.5

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.

Programação: A programação utilizando os parâmetros é feita 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
Slide 6

Utilizando Variável Local em um Bloco

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_12.6

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 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 re-aproveitado.

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“).
Slide 7

Exercício 12.1: Chamando FC Sem/Com Parâmetros

OB1 FC1
sem parâmetros

Chama FC1
incondicionalmente
e não passa valores

Chama FC2 FC2


condicionalmente e com diferentes
passa diferentes parâmetros
sets de valores
baseados na
condição de I1.7

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1996. All rights reserved. Arquivo: pro1_12.7

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 uma nova pasta de programa, denominada FUNCOES, no projeto PRO1.
2. Crie um FC1 sem parâmetros:
- carregar o valor da chave digital IB2, adicionar a constante 2 e transferir o resultado para
QB6.
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).
- 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:

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.
Pro1_13ppt

Slide 1

Programando Simbólicos

I 1.1 botão_liga_1
I 1.2 abrir_válvula_2

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1995. All rights reserved. Arquivo: pro1_13.1

Conteúdo
Endereço Simbólioco e Absoluto....................................................... 2
Endereçamento Simbólico - Características...................................... 3
Endereçamento Simbólico - Lista de Simbólicos............................... 4
Editor de Simbólicos - Iniciando......................................................... 5
Editor de Simbólicos - Editando......................................................... 6
Exibindo Simbólicos em Blocos ou Status........................................ 7
Descompilação de Programas........................................................... 8
Importação e Exportação da Listas de Simbólicos........................... 9
Importando do EXCEL....................................................................... 10
Exercício 13.1: Usando o Editor de Simbólicos................................. 11

Slide 2

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 CALL CONTROLE

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1995. All rights reserved. Arquivo: pro1_13.2


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, 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.

Slide 3

Endereçamento Simbólico - Características


Quais Símbolos Existem? Onde são arquivados? Qual a ferramenta para gerar ?

Dados Globais: lista de simbólicos Editor de Símbolos


- Entradas
- Saídas
- Memory markers
- Temporizadores
- Contadores

Dados de Blocos: Parte simbólica do Editor de Programa


- Parâmetros do Bloco bloco (Parte de declarações)
- Dados locais/temporários

Labels para saltos (jumps) Parte de comentários Editor de Programas


do bloco (Parte de declarações)

(global) Tipos de dados(UDT) Arquivo de programa Editor de Programa

Nomes de blocos: lista de simbólicos Editor de Símbolos


- OB
- FB
- FC
- DB

Dados em bloco de dados Parte simbólica do DB Editor de Programa

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1995. All rights reserved. Arquivo: pro1_13.3

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.

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:
Slide 4

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 I 1.1 Intertravamento para Motor_1


Intertrav_2 I 1.2 Intertravamento para Motor_2
Intertrav_3 I 1.3 Intertravamento para Motor_3
Intertrav_4 I 1.4 Intertravamento para Motor_4
Intertrav_5 I 1.5 Intertravamento para Motor_5
Intertrav_6 I 1.6 Intertravamento para Motor_6
Valores DB 100 Bloco de dados globais
Motor_1 DB 1 Bloco de dados Instance
Controle FB 1 Bloco de função

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1995. All rights reserved. Arquivo: pro1_13.4

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.

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)
Slide 5

Editor de Simbólicos - Iniciando

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1995. All rights reserved. Arquivo: pro1_13.5

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 no objeto 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 deixar o campo Data Type em branco, o tipo de dados é automaticamente preenchido.

Slide 6

Editor de Simbólicos - Editando

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1995. All rights reserved. Arquivo: pro1_13.6

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

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

Slide 7

Exibindo Símbolos em Blocos ou Status

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1995. All rights reserved. Arquivo: pro1_13.7

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 à direita das instruções.
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).
Slide 8

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 Substitui simbólicos ao invés de símbolos para labels de


laço.
ex.: M 001

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1995. All rights reserved. Arquivo: pro1_13.8

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.

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.

Slide 9

Importação e Exportação da lista de simbólicos

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1995. All rights reserved. Arquivo: pro1_13.9

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.

Importando: Listas 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 encontra-se no HELP on-line.

Slide 10

Importando do EXCEL

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1995. All rights reserved. Arquivo: pro1_13.10

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.
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.
Slide 11

Exercício 13.1: Usando o Editor de Símbolos

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center

Siemens AG 1995. All rights reserved. Arquivo: pro1_13.11

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 enchimento de garrafas.

Procedimento: Planeje uma lista de símbolos para a aplicação.


1. Selecione a pasta de programa ENGARRAF.
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.
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.
Pro1_14.ppt

Slide 1

Bloco de Dados e de Funções

DB DB
OB
FB FC SFB
Bloco de DB DB
Organização

FB FB SFC

Legenda:
OB = Bloco de Organização
FB com Bloco
FB = Bloco de Função
de Dados
FC = Função
SFB = Bloco de Função de Sistema
memória
SFC = Função de Sistema
SDB = Bloco de Dados de Sistema
DB = Bloco de Dados

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_14.1
Siemens AG 1995. All rights reserved.

Conteúdo
Tipos de Bloco de Dados.................................................................... 2
Criando Bloco de Dados.................................................................... 3
Editando Bloco de Dados................................................................... 4
Tipos de Dados Elementares ............................................................ 5
Acesso aos Elementos de um Bloco de Dados................................. 6
Tipos de Dados Estruturados e Campos........................................... 7
Exercício 14.1: Back-up de dados ...................................................... 8
Blocos de Funções (FB)..................................................................... 9
Dados em um DB Instance................................................................ 10
Criando um DB Instance.................................................................... 11
Exercício 14.2: Bloco de Função com DB Instance........................... 12
Múltiplo Instance DB.......................................................................... 13
Múltiplo Instance DB - Programação.................................................. 14
User-Defined Data Type (UDT).......................................................... 15

Slide 2

Tipos de Bloco de Dados


8 bits

Byte dados 0
Global(compartilhado)

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
Byte Dado 8191

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_14.2
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.
Existem dois tipos diferentes de Blocos de Dados, cada um servindo a um propósito diferente,
dependendo de sua relação ao bloco de programa.

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.

Slide 3

Criando Bloco de Dados

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_14.3
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)
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 acima):
- 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.
Slide 4

Editando Bloco de Dados


Endereço
de memória Valor
local Nome Inicial

Tipo de dados Comentários

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_14.4
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.

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.
Estes 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.
Slide 5

Tipos de Dados Elementares para SIMATIC S7


Tipo Tamanho(em BIT) Exemplo

BOOL 1 1 or 0
BYTE 8 16#A9
WORD 16 16#12AF

DWORD 32 16#ADAC1EF5
CHAR 8 'w'
STRING * >=16, 8*(No.de caracteres) 'Isto é uma String'
S5TIME 16 S5T#5s_200ms

INT 16 123
DINT 32 65539
REAL 32 1.2 or 34.5E-12

TIME 32 T#2D_1H_3M_45S_12_MS
DATE 16 D#1993-01-20
TIME_OF_DAY 32 TOD#12:23:45.12

DATE_AND_TIME * 64 DT#1993-09-25:12.29.13

* Tipo de estrutura de dados

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_14.5
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
- 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

Slide 6

Acesso aos Elementos de Bloco de Dados


FBD LAD STL
Abrir Bloco de Dados Abrir Bloco de Dados Abrir Bloco de Dados
OPN DB10

Acessar os Dados Acessar os Dados Acessar os Dados


L DBW2
T MW40

Abrir o Bloco e Acessar


Abrir o Bloco e Acessar Abrir o Bloco e Acessar
os dados
os dados os dados
L DB10.DBW2
T MW40

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_14.6
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 a 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
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)

Slide 7

Tipos de Dados Estruturados e Campos

Estrutura: Campo:

COMPONENTES
GEOMÉTRICOS

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_14.7
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.
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ó é permitida 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.
Slide 8

Exercício 14.1: Back-Up dos Dados

Bloco de Dados DB5

Garrafas vazias (MW 100) Variável:vazia

Garrafas cheias (MW102) Variável: cheia

Garrafas quebradas (MW 104) Variável: quebrada

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_14.8
Siemens AG 1995. All rights reserved.

Slide 9

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
FB1
Chamando o
Bloco com
Área de Declarações
parâmetros
Locais
Exemplo:
Seção de código
Call FB1,DB10 do bloco chamado
usando valores da
área de memória
local

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_14.9
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”.

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.

Slide 10

Dados em um DB Instance

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_14.10
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.

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
OPN DB12 OPN DI4*
T DBW22 L DIW10

Obs: 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


Slide 11

Criando um DB Instance

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_14.11
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.
Importante: Só é possível se criar um DB Instance após a criação do respectivo FB.

Slide 12

Exercício 14.2: Chamando um Bloco de Função


com DB Instance

Passo Procedim ento

1 No projeto PRO _1, pasta FUNCO ES, criar o


FB1 e por este FB atuar o valor de saída Q B 7.

2 Cham ar o FB 1 no O B 1 com a condição listada


abaixo.

3 Checar se os dados foram arquivados


corretam ente no DB.

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_14.12
Siemens AG 1995. All rights reserved.
Slide 13

Múltiplo Instance DB
Normal DB Instance
DB 5 DB 10 DB 21
OB 1 FB 5 FB 10 FB 11

...

Múltiplo DB Instance FB 10
DB 5
OB 1 FB 5

FB 11
...

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_14.13
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).

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.

Slide 14

Mútliplo 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
Conhecimento em Automação
Training Center
Arquivo: pro1_14.14
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.

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.

Slide 15

User-Defined Data Type (UDT)

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_14.15
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.

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.
Pro1_15.ppt

Slide 1

Processamento de Palavra Analógica

Nível alto
Transmissor
do nível
PIW352

LT
Nível baixo

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_15.1
Siemens AG 1995. All rights reserved.

Conteúdo
Conversão de Sinal Analógico de Entrada.......................................... 2
Representação de Valores Analógicos............................................... 3
Processamento de Valores Analógicos no S7.................................... 4
Ajustando Valores Analógicos............................................................ 5
Exercício 15.1:Monitorando o Nível de um Tanque............................ 6

Slide 2

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
Conhecimento em Automação
Training Center
Arquivo: pro1_15.2
Siemens AG 1995. All rights reserved.
Slide 3

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
Conhecimento em Automação
Training Center
Arquivo: pro1_15.3
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 analógicos são alinhados a esquerda. Os bits
menos significativos não usados são preenchidos com zeros.
A posição mais à 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
Slide 4

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
Conhecimento em Automação
Training Center
Arquivo: pro1_15.4
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.

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

Slide 5

Ajustando Valores Analógicos


10 V

0V
0l 500 l

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_15.5
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.
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.

Slide 6

Exercício 15.1: Monitorando o Nível do Tanque com


Valores Analógicos
Tanque 1 Tanque 2 Tanque 3
Q8.2 Q8.3 Q8.4

Tanque 5
Compartimento de
armazenamento

Transmisor
de nível Q8.1
LT
PIW304 Tanque 5
Bomba de dreno

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_15.6
Siemens AG 1995. All rights reserved.
Pro1_16.ppt

Slide 1

Informações do Sistema S7

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_16.1
Siemens AG 1995. All rights reserved.

Conteúdo
Informações do Sistema .................................................................... 2
Exibindo os Dados de Desempenho.................................................. 3
Alocação de Memória......................................................................... 4
Tempo de Sistema do PLC................................................................. 5
Exibindo Tempo de Ciclo.................................................................... 6
Exercícios: Utilizando Informações do S7.......................................... 7

Slide 2

Informações do Sistema
Função Informação Aplicação

Memória Utilização atual da memória de Cheque se o programa pode ser


trabalho e carga. transferido para a CPU.

Características Lista todos os blocos permitidos Determina quais os blocos são


da CPU na CPU (OBs,SFCs,SFBs). possíveis para esta CPU.

Pilhas Exibe os registros no caso de Recupera informações no caso


erros. de falha da CPU.

Comunicação Desempenho dos dados de Checar se ainda existe


comunicação . conexões livres

Hora/Data Hora/Data do clock interno . Exibe a data/hora.

Tempo de Ciclo Min., Max. e último tempo de Ajuste do parâmetro tempo de


ciclo. monitoração.

Buffer de Exibindo os últimos 100 Encontra a localização e causa


Diagnóstico erros/acontecimentos do erro.

INFO_T1D

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_16.2
Siemens AG 1995. All rights reserved.
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 abaixo vê-se os dados gerais da CPU -314 do PLC S7-300.
Note o item “Version” que informa qual a versão do módulo.

Slide 3

Características da CPU

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_16.3
Siemens AG 1995. All rights reserved.

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.

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 Área: 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.


Slide 4

Ocupação da Memória

INFO_T1D

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_16.4
Siemens AG 1995. All rights reserved.

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.

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.
Slide 5

Hora / Data no CLP

INFO_T1D

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_16.5
Siemens AG 1995. All rights reserved.

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
pode-se 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.

Acertando o Relógio da CPU and Date: Para acertar o relógio da CPU, selecione no menu de comando PLC
--> Set Time 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).

Slide 6

Tempo de Ciclo

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_16.6
Siemens AG 1995. All rights reserved.
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.
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.

Slide 7

Exercício: Usando as Informações do S7

Faça o Exercício 16.1:


Usando as Informações do S7

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_16.7
Siemens AG 1995. All rights reserved.

Exercício 16.1: Usando as Informações do S7


Para a descrição do exercício veja o Capítulo 15

Slide 8

Exercício 16.1: Usando as Informações do S7

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_16.8
Siemens AG 1995. All rights reserved.
Pro1_17.ppt

Slide 1

Diagnosticando e Corrigindo Problemas

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_17.1
Siemens AG 1995. All rights reserved.

Conteúdo
Sistema de Diagnóstico....................................................................... 2
Buffer de Diagnóstico........................................................................... 3
B Stack................................................................................................. 4
I Stack.................................................................................................. 5
L Stack................................................................................................. 6
Mensagens da CPU............................................................................. 7
Diagnóstico de Hardware ................................................................... .8
OB’s de Erros/Falhas .......................................................................... 9
Demonstração: Encontrando e Corrigindo Problemas ....................... 10
Exercício: Diagnosticando uma Falha no Programa........................... 11

Slide 2

Sistema de Diagnóstico

O diagnóstico da CPU CPU Módulo I/Q


detecta um erro no sistema.
O diagnóstico do programa Capacidade de
detecta um erro. diagnosticar um
Interrupção módulo, detectar
de Diagnóstico um erro e gerar o
diagnóstico de
interrupção.
Lista de
Erro no Buffer de
status do
OB diagnóstico
sistema

SIEMENS

Mensagens de
diagnósticos
PG 740

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_17.2
Siemens AG 1995. All rights reserved.
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;
- 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.

Slide 3

Buffer de Diagnóstico

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_17.3
Siemens AG 1995. All rights reserved.

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.
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 ==> 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.

Slide 4

B Stack

DIAG_T1D

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_17.4
Siemens AG 1995. All rights reserved.

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.

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.
Slide 5

I Stack

DIAG_T1D

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_17.5
Siemens AG 1995. All rights reserved.

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.

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 ==> Module Information ==> Stacks ==> I stack).
Como qualquer pilha, só pode ser acessada com a CPU em Stop
Slide 6

L Stack

DIAG_T1D

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_17.6
Siemens AG 1995. All rights reserved.

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 ==> Module Information ==> Stacks ==> L stack).
Como qualquer pilha só pode ser acessada com a CPU em Stop.

Slide 7

Mensagens da CPU

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_17.7
Siemens AG 1995. All rights reserved.

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 => 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

Slide 8

Diagnóstico de Hardware

ck
cli
le -
ub
Do

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_17.8
Siemens AG 1995. All rights reserved.

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.
No exemplo acima, vê-se uma falha de alimentação do módulo analógico.

Acessando a Função: Através do menu PLC==> Diagnosing Hardware acessa-se esta função. Também
direto na ferramenta de Configuração de Hardware tem-se acesso à função.
Slide 9

OB’s de Erros/Falhas

Erro na fonte
de alimentação : Erro no acesso
chama OB81. ao módulo:
chama OB122.

Erro de programa:
chama OB121.

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_17.9
Siemens AG 1995. All rights reserved.

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.

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:
- 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

OB122 Erro durante o acesso direto ao módulo


Slide 10

Demonstração : Encontrando e Corrigindo Problemas

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_17.10
Siemens AG 1995. All rights reserved.

Slide 11

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 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_17.11
Siemens AG 1995. All rights reserved.
Pro1_18.ppt

Slide 1

Técnicas Especiais de Programação

Jump
L MD[C10] “Endereçamento indireto”

STL
Label A SCII

“O que é
Password?”

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_18.1
Siemens AG 1995. All rights reserved.

Conteúdo
Ferramentas de Programação............................................................. 2
Editando no Modo Texto.................................................................... 3
Editando o Arquivo Fonte (1).............................................................. 4
Editando o Arquivo Fonte (2).............................................................. 5
Sintaxe para Blocos de Programa....................................................... 6
Sintaxe para Blocos de Dados............................................................ 7
Declaração de Variáveis...................................................................... 8
Atributos de Proteção........................................................................... 9
Salvando, Checando a Consistência e Compilando........................... 10
Exercício 18.1: Programando no Modo Texto..................................... 11

Slide 2

Editando no Modo Texto

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_18.2
Siemens AG 1995. All rights reserved.
Modo Texto: 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.
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

Slide 3

Editando um Arquivo Fonte (1)

Editando um Inserindo um bloco Bloco


arquivo fonte padrão padrão

Inserir um bloco Gerado


Bloco

Inserir um arquivo Arquivo

Inserir um Arquivo
Arquivo

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_18.3
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

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.
Slide 4

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
Conhecimento em Automação
Training Center
Arquivo: pro1_18.4
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);

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).
Slide 5

Sintaxe para Blocos de Programa

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_18.5
Siemens AG 1995. All rights reserved.

Slide 6

Sintaxe para Bloco de Dados

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_18.6
Siemens AG 1995. All rights reserved.
Slide 7

Declaração de Variáveis

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_18.7
Siemens AG 1995. All rights reserved.

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.

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)

Slide 8

Atributos de Proteção

Atributo B loc o de C ódigo s B loco de D a dos UDT


(O B , FB , FC )
K N OW _ H O W _ PR O T EC T S im S im N ão
A U TH O R S im S im N ão
FA M ILY S im S im N ão
NAME S im S im N ão
V E R S IO N S im S im N ão
U N LIN KE D N ão S im N ão
R E AD _O N LY N ão S im N ão

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_18.8
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.
Obs: 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.

Slide 9

Salvando, Checando a Consistência e Compilando

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_18.9
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.
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.
Slide 10

Exercício 18.1: Digitando o FB80 no Modo ASCII


Passo Procedimento Resultado
1 Ativar o Editor de Programas O editor é carregado
2 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
pasta Source e não a pasta AP esteja
selecionada no seu projeto. Digite o nome
FB80 como o nome do objeto.
3 Usando Insert ==>Block Template ==> FB,
inserir um bloco template e digitar o
programa para o FB80
4 Salvar o programa e então selecionar no O programa é compilado
menu de comando File ==> Compile
5 Se existirem erros, corrigir, e então compilar O programa irá ser compilado sem erros
novamente
6 No OB1, chamar o FB80 adicionalmente
7 Transmitir os blocos FB80, DB10 e OB1 Uma mudança de um sinal de entrada no
para a CPU e depurar o programa. IB1, um pulso one cycle long na saída QB9
aparece.

UEB_UPP

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_18.10
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

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


Pro1_19.ppt

Slide 1

Documentando e Salvando Programas

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_19.1
Siemens AG 1995. All rights reserved.

Conteúdos
Documentação de Blocos................................................................... 2
Documentação de Blocos de cabeçalho............................................ 3
Criando Lista de Referência Cruzada................................................. 4
Exibindo a Estrutura do Programa...................................................... 5
Exercício 19.1: Documentando........................................................... 6
Imprimindo o Programa....................................................................... 7
Arquivando Projetos e Programas....................................................... 8
Salvando Programas nos Cartões de Memória................................... 9
Exercício 19.2: Arquivando.................................................................. 10

Slide 2

Documentação de Blocos

Título do Bloco

Comentário
do Bloco

Título do Segmento

Comentário
do Segmento

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_19.2
Siemens AG 1995. All rights reserved.

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.
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.

Slide 3

Cabeçalho de Bloco

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_19.3
Siemens AG 1995. All rights reserved.

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 destas 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.

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 sem 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

Slide 4

Referência Cruzada

ADDRESS Endereço Absoluto


SYMBOL Nome simbólico para o endereço
BLOCK Bloco no qual o endereço é usado
NETWORK Segmento no qual o endereço é usado
STATEMENT Endereço relativo no segmento
ACCESS Acesso de leitura (R) ou acesso de escrita (W)
OPERATION Instruções usadas para acessar o endereço

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_19.4
Siemens AG 1995. All rights reserved.

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.

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.
Slide 5

Estrutura do Programa

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_19.5
Siemens AG 1995. All rights reserved.

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.

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
Slide 6

Exercício 19.1: Documentação

Nome do Bloco
Comentário
do Bloco

Título da Network

Comentário
da Network

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_19.6
Siemens AG 1995. All rights reserved.

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
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.
Slide 7

Imprimindo a Documentação do Programa

Exemplo:
Impressão
de Bloco

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_19.7
Siemens AG 1995. All rights reserved.

É 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é.

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é.

Slide 8

Arquivando Projetos e Programas

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_19.8
Siemens AG 1995. All rights reserved.

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.
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: Á 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.

Slide 9

Salvando o Programa no Cartão de Memória

SIEMENS

Cartão de Memória

PG 740

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_19.9
Siemens AG 1995. All rights reserved.

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.
1 - selecione os blocos de programa a serem salvos.
2 - selecione o símbolo do cartão de memória (uma nova janela será aberta).
3 - 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

Slide 10

Exercício 19.2: Arquivando

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_19.10
Siemens AG 1995. All rights reserved.

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.

Resultado: Você irá comprimir os arquivos do projeto PRO1 no arquivo “PROG_AR".


Pro1_20.ppt

Slide 1

Global Data e PROFIBUS-DP

PG 720

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_20.1
Siemens AG 1995. All rights reserved.

Slide 2

Rede de Dados Globais

CPU CPU CPU


MW 10 MW 20 MW 30

Dados Globais

KOMM_T2D

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_20.2
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.
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.

Slide 3

Endereços MPI

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_20.3
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.

Configuração CPU: É importante que a nova configuração de hardware (SDB) seja salva e transferida para a
CPU.
Slide 4

Tabela Global Data

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_20.4
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.

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.

Slide 5

Editando a Tabela Global Data

KOMM_T2D

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_20.5
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.

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 1-255 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.

Slide 6

Comunicação via Global Data.


CPU1 CPU2 CPU3 CPU4 CPU5

Círculo GD

S GD 1.1 R GD 1.1
1
R GD 1.2 S GD 1.2

2
R GD 2.1 S GD 2.1 R GD 2.1 R GD 2.1 R GD 2.1

S GD 3.1 R GD 3.1
3
R GD 3.2 S GD 3.2

4
R GD 4.1 S GD 4.1 R GD 4.1

5
S GD 5.1 R GD 5.1 R GD 5.1

6
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
Conhecimento em Automação
Training Center
Arquivo: pro1_20.6
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 S7-400;
- divisão em subpacotes, já que entre os 22/54 bytes pode-se definir, por ex., 2 sub-pacotes de
10/27 bytes.

Número de Pacotes: Cada CPU do S7-300 pode participar de até quatro diferentes pacotes GD..
Para o S7-400 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.
GD 1. 1. 2.
Número do subpacote
Direção do Pacote
Número do pacote GD
Slide 7

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
Conhecimento em Automação
Training Center
Arquivo: pro1_20.7
Siemens AG 1995. All rights reserved.

Exercício 12: Gerando uma tabela GDT

Slide 8

Interface PROFIBUS DP

DP MASTER DP MASTER DP MASTER DP MASTER


PS S7-300 S7 S7 PS S7-300 S7-300 S7 PS S7 S7 S7 PS S7 S7 S7
10A 400 10A 400
CPU CPU CP
315- 314 342- CPU CPU CP
2 DP 5 DP 414- 414- 443-
2 DP 1 5DP

PROFIBUS-DP DIN 19245 Parte III

PS SIEMENS IM
(máximo
8
ET200M
unidades) DP Slave
IM
153-1
S7-300 S7-300

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_20.8
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.

Mestre: A comunicação PROFIBUS-DP é caracterizada como uma comunicação Mestre-Escravo.


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.

Slide 9

Configurando PROFIBUS-DP

SIMATIC S7 Data: 07/11/00


Versão: 3.1
Conhecimento em Automação
Training Center
Arquivo: pro1_20.9
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.

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

You might also like