Escolar Documentos
Profissional Documentos
Cultura Documentos
S7 1200
Curso 1 do Sistema 06. Blocos de programação
Nome: ___________________________
Instrutor: ___________________________
Versão: V 1.1
Conteúdo Página
Objetivos de aprendizagem.................................................................................................................. 2
É a interação que faz a diferença..........................…........................................................................... 3
SIMATIC S7-1200 – Para micro automação e mais ….....….......................................……..........…… 4
SIMATIC HMI Basic Panels – concentrado no essencial…….....…..................................................... 5
SIMATIC STEP 7 Basic – Sistema de engenharia integrado para controladores e IHMs................... 6
Posicionamento dos controladores modulares.………......................................................................... 7
SIMATIC S7-1200 o novo mini PLC modular.......…………..…............................................................ 8
CPUs SIMATIC S7-1200.............................…...................................................................................... 9
Placas de sinal do SIMATIC S7-1200...........….................................................................................... 10
Módulos de sinal SIMATIC S7-1200........................……...................................................................... 11
Módulos de sinal SIMATIC S7-1200..................……............................................................................ 12
Acessórios SIMATIC S7-1200.............................................................................................................. 13
Work memory (memória de trabalho)................................................................................................... 14
Cartão de memória SIMATIC.......……................................................................................................. 15
Interface PROFINET integrada.....…………......................................................................................... 16
Comunicação ponto a ponto.............……............................................................................................. 17
Tecnologia integrada..............……....................................................................................................... 18
Requisitos de sistema........………........................................................................................................ 19
Sumário............………………............................................................................................................... 20
Tamanho da imagem de 1024 bytes para entradas / 1024 bytes para saídas
processo
Número de conexões 1
Entrada digital DI 8 x 24 V DC DI 16 x 24 V
DC
Entradas/saídas digitais DI 8 x 24 V DC DI 16 x 24 V DI 8 x 24 V DC DI 16 x 24 V
DO 8 x 24 V DC DC DO 16 x 24 DO 8 x RLY 30 DC DO 16 x
0.5 A V DC 0.5 A V DC / RLY 30 V DC /
250 V AC 2 A 250 V AC 2 A
Portal View (Vista Portal) A vista portal fornece acesso para todos os componentes do
projeto.
• Modo de trabalho orientado à tarefa.
• Rápido início de projeto através de operações fáceis e intuitivas.
Project View (Vista Projeto) A vista projeto mostra todos os componentes do projeto. Agora
você tem fácil acesso aos dispositivos e blocos.
• Estrutura hierárquica do projeto.
• Todos os editores, parâmetros e dados estão em uma única vista.
Software Requisitos:
• Windows XP (Home SP3, Professional SP3) ou
Windows Vista (Home Premium SP1, Business SP1, Ultimate SP1)
• Resolução de tela: 1024 x 768 (32 MB RAM para vídeo e qualidade 32 bits)
Hardware Requisitos:
• CPU: Pentium 4, 1.7 GHz ou similar
• Memória RAM: Windows XP: 1 GB ou Windows Vista: 2 GB
Disco rígido: 2 GB
Ações Aqui você irá encontrar as ações disponíveis para você no portal que foi
selecionado. Você pode chamar a função ajuda em cada portal com uma base
sensível ao contexto.
Painel de seleção O painel de seleção está disponível em todos os portais. O conteúdo do painel
muda de acordo com a ação que foi selecionada.
Área de trabalho Os objetos que você pode abrir para fins de edição estão mostradas dentro da
área de trabalho. Estes objetos podem ser:
• Editores e vistas
• Tabelas
Você pode abrir diversos objetos. Porém normalmente só é possível visualizar
uma delas por vez na área de trabalho. Todos os outros objetos estão mostrados
na forma de abas na barra de edição. Se, para realizar determinadas tarefas, você
desejar visualizar dois objetos ao mesmo tempo, você pode dividir a área de
trabalho ou na horizontal ou na vertical. Se nenhum objeto for aberto, a área de
trabalho permanecerá vazia.
Janela inspetor Informações adicionais sobre um objeto selecionado ou sobre uma ação
executada estão disponíveis na janela inspetor.
Detail window (Janela detalhes) Conteúdos específicos de um objeto selecionado podem ser
mostrados na janela detalhes. Conteúdos possíveis são por exemplo listas de
textos ou tags.
Project (Projeto) Você irá encontrar todos os objetos relacionados ao projeto na pasta
"Project“ ou seja:
• Devices (dispositivos)
• Languages & resources (idiomas & recursos)
• Online access (acesso online)
Device (Dispositivo) Existe uma pasta separada para cada dispositivo no projeto os
quais possuem um nome interno ao projeto. Objetos e ações pertencentes ao
dispositivo estão dispostos dentro desta pasta.
Languages (Idiomas) Você pode determinar o idioma e textos do projeto nesta pasta.
Online Na área de acesso online ou "Online access" da navegação de projeto, você irá
encontrar todos os acessos disponíveis às redes de comunicação de seu
dispositivo de programação ou PC para estabelecer conexões online ao sistema
objetivo da conexão.
Em cada símbolo de interface você poderá obter informações de estados (status
information). Você poderá ainda mostrar os dispositivos acessíveis e poderá
mostrar e editar as propriedades da interface.
Ajuda (Help) A ajuda descreve conceitos, instruções e funções. Nela são mostradas
também informações de referência e exemplos. A ajuda pode ser acessada
através de janela própria no lado direito da tela. Você pode mostrar um campo de
navegação na ajuda. Lá você terá acesso às seguintes funções:
• Table of Contents (tabela de conteúdos)
• Search in the index (procura por índice alfabético)
• Full text search of the entire Help (pesquisa de texto completo em todos os
textos de ajuda)
Roll-out A janela que se abre automaticamente (roll-out) informa a você sobre faixas de
valores permitidos e tipos de dados nas caixas de texto.
Data blocks (DB = data blocks) Os blocos de dados são áreas de dados do programa do
usuário nas quais os dados do usuário são gerenciados de modo estruturado.
Operações Em todos os blocos (FBs, FCs e OBs) todo o conjunto de instruções pode ser
permissíveis utilizado.
DBs Você declara blocos de dados em seu programa de forma a salvar dados ou
resultados dos blocos de códigos. Existem dois tipos de blocos de dados:
• Bloco de dados global
que pode ser utilizado por todos os blocos de códigos
• Bloco de dados instance
que é atribuído a um FB específico e que somente pode ser usado por este
FB.
UDTs Você também pode utilizar UDTs (User Data Types – tipos de dados definidos
pelo usuário) para criar “templates” (formatos) para blocos de dados globais.
Procedimento Quando você tiver criado um novo bloco de dados, você pode salvar os tags
otimizadamente em um DB.
1.
2.
Assign additional (atribuir endereços IP adicionais para o PG) Assim que o botão "Show in
IP address project tree" (mostrar na árvore de projeto) for acionado para acessar um módulo
to the PG que esteja localizado em uma sub rede diferente da sub rede do PG, um aviso na
caixa de diálogo perguntará se um endereço IP adicional deve ser atribuído ao
PG. Em seguida à confirmação, um endereço IP adicional será atribuído o qual
ficará na mesma sub rede como o endereço da CPU. Todas as funções online
poderão então ser utilizadas.
Detect (detectar) Acione a palavra "detect" com o mouse para abrir uma nova janela na
qual todos os dispositivos acessíveis serão mostrados. Procure pelo dispositivo
que você deseja inserir em sua configuração e acione o botão "Load" (carregar). A
configuração será detectada e inserida em seu projeto.
Nota Esta não é uma leitura (upload) completa, os parâmetros ajustados para os
módulos foram perdidos.
Search (procura) A faceta "Catalog" através das funções procura e filtro permite a você
facilmente buscar um componente de hardware específico.
Filter (filtro) Existe uma função filtro no catálogo de hardware. Se a função filtro for
desativada, todos os objetos disponíveis no catálogo serão mostrados a você no
catálogo de hardware. Para mostrar somente os objetos que você pode utilizar
dentro do contexto atual, ative a caixa de verificação "Filter". Se você tiver ativado
o filtro, somente os seguintes objetos serão mostrados:
• Na vista da rede, somente aqueles objetos que podem ser colocados em rede
serão mostrados.
• Todos os módulos que fazem parte do contexto do dispositivo atual serão
mostrados na vista do dispositivo.
Se você alternar entre a vista da rede e a vista do dispositivo, a vista dos objetos
filtrados será adaptada para o contexto atual.
Configuração de rede
Os seguintes passos são necessários quando configurando redes de
comunicação:
• Conectar os dispositivos à sub rede.
• Especificar parâmetros/propriedades para cada sub rede.
• Especificar propriedades dos dispositivos para cada módulo colocado em rede.
• Baixar os dados de configuração para os dispositivos alimentando as
interfaces com os ajustes da configuração de rede.
• Documentar a configuração de rede de comunicação.
Subnet mask (máscara de sub rede) A máscara de sub rede determina quais partes do
endereço IP serão utilizadas
• Como endereço de rede e
• Como endereço de dispositivo.
Input filters (filtros de entradas) Você pode selecionar um filtro de entrada para o S7-1200
que define um atraso para a entrada física (ajustável entre 0.2 ms e 12.8 ms). O
atraso é usado para filtrar ruídos dos fios da entrada que podem causar
mudanças indesejáveis de estado do sinal nas entradas.
Process interrupt (interrupção de processo) Com interrupções de processo, você pode responder
rapidamente bordas de subida ou descida de sinais de entrada específicas.
Event (evento) Você determina qual OB deverá ser chamado para o evento
correspondente. OBs de processo possuem prioridade maior que o OB1.
Pulse catch (captura de pulsos) O S7-1200 caracteriza a função "Pulse catch" para uma ou
todas as entradas digitais integradas. Você pode usar a função captura de pulso
para aquisitar pulsos que são mais curtos que o tempo de ciclo. Se a função
captura de pulso está ativa para uma entrada, uma mudança de sinal na entrada
será retida até que ocorra a atualização no próximo ciclo. Isto assegura que um
pulso que está disponível somente por um curto tempo é aquisitado e retido até
que o S7-1200 leia a entrada.
Keep Keep last value (manter o último valor): selecione este item do menu quando
todas as saídas digitais devem ser congeladas em seu estado anterior em
resposta a mudança de modo RUN para STOP.
Substitute value Use substitute value (utilizar um valor substituto): selecione este item de menu
quando todas as saídas digitais devam ser levados a um estado definido em
resposta a mudança de modo RUN para STOP. Você pode substituir um valor de
1 ou 0.
Start address (endereço inicial) O endereço inicial e o endereço final (end address)
especificam onde os dados usuais devem ser armazenados na imagem de
processo.
Princípio de O contador é ajustado de tal modo que a interrupção aconteça quando o valor
operação atual do contador for igual ao valor desejado ou quando o contador for levado
para zero.
A interrupção ocorre em uma taxa muito mais baixa que a contagem do contador
de velocidade alta, então o controle da precisão das operações de contagem de
alta velocidade podem ser implementadas com um relativamente baixo efeito
sobre todo o ciclo do sistema de automação. Você pode atribuir interrupções à
programas de interrupção específicos de tal modo que cada novo valor pré
definido possa ser carregado dentro de um programa de interrupção específico
para fácil ativação do estado.
Tipos de contadores Todos os contadores do mesmo tipo de contagem operam do mesmo modo,
porém os contadores de alta velocidade não suportam todos os modos de
contagem. Existem quatro tipos básicos de contadores:
• Contador de fase simples com controle crescente / decrescente interno.
• Contador de fase simples com controle crescente / decrescente externo.
• Contador de fase dupla com duas entradas de pulsos.
• Contador A/B.
Cada contador de alta velocidade pode ser utilizado com ou sem uma entrada de
reset. Se a entrada de reset for ativada, esta zera o valor atual. O valor atual
permanece zerado até que a entrada de reset seja desativada.
Item do menu Nos seguintes casos você pode executar um "Restart (warm restart)" através do
item de menu via dispositivo de programação:
• A CPU está em modo STOP.
• Após um reset de memória.
• Após carregar um programa consistente e uma configuração de hardware
consistente com a CPU em modo "STOP".
After POWER ON (retorno da energia) Quando a tensão de alimentação retornar ("Power On“),
uma operação de "Restart (warm restart)” é executada caso você tenha
parametrizado a resposta para a partida (start-up response) como abaixo:
• Modo de partida "Warm restart - RUN" (independentemente do modo de
operação da CPU antes da falha de alimentação ou POWER OFF).
• "Warm restart - Operating mode before POWER OFF" (dependendo do modo
de operação da CPU antes da falha de alimentação ou POWER OFF).
Formato do horário O relógio sempre mostra o horário do dia com uma resolução de 1 milisegundo e
a data incluindo o dia da semana. A mudança para o horário de verão é levada
em consideração.
Change (trocar) Você pode trocar componentes de hardware. Deste modo, você pode
trocar CPUs não especificadas com CPUs disponíveis no catálogo de hardware.
Regras: Somente estes componentes de hardware podem ser trocados os quais
são considerados como substituição e compatíveis entre si.
Subnet (sub rede) Para criar uma sub rede e conectá-la a uma interface, siga os passos:
1. Selecione a interface para uma CPU.
2. Selecione "Create subnet" (criar sub rede) no menu da interface.
A interface selecionada é conectada com uma nova sub rede do tipo de sub rede
apropriada. Os parâmetros de endereços para a interface são automaticamente
ajustadas consistentemente.
Disconnect (desconectar) Proceda como a seguir para cancelar a conexão de rede para uma
interface:
1. Selecione a interface de rede.
2. Selecione "Delete" no menu do contexto da interface. A conexão da rede será
deletada, os endereços de interface entretanto não serão alterados. Conexões
configuradas serão mantidas, mas elas ficarão marcadas em vermelho na
tabela de conexões, devido à falta de uma conexão. Conexões especificadas
serão mantidas.
Nota O modelo da esteira esta preparado para este módulo DI/DO. Os endereços para
todos os sensores e atuadores do modelo da esteira estão portanto localizados
em IB 8 / QB 8.
Período
Período
Detectar Clique na palavra "detect" com o mouse para abrir uma nova janela na qual todos
os dispositivos acessíveis serão mostrados. Procure o dispositivo que você deseja
inserir em sua configuração e acione o botão "Load". A configuração será
detectada e inserida em seu projeto.
Objetivos de aprendizagem................................................................................................................... 2
Tags do PLC / tags locais...................................................................................................................... 3
Uso do tag como operando…....…………............................................................................................. 4
Criar tags de PLC com funções de grupos…...……….......................................................................... 5
Encontrar / substituir os tags do PLC……...…...................................................................................... 6
Ordenar os tags do PLC.....…………………......................................................................................... 7
Monitorar os tags do PLC.………………............................................................................................... 8
Tags do PLC: Áreas de memória retentiva…..…………....................................................................... 9
Tags do PLC: Propriedades gerais……………..................................................................................... 10
Tags do PLC: Falha..............………….................................................................................................. 11
Editor de blocos: Mostrar/esconder simbólicos…................................................................................. 12
Editor de blocos: Seleção de símbolos.………...................................................................................... 13
Editor de blocos: Renomear tags individuais.....………................................................……………....... 14
Editor de blocos: Trocar os fios de um tag individual...................……….....………............................... 15
Exercício 5-1: Copiar os tags do PLC para o modelo da esteira da biblioteca global........................... 16
Exercício 5-2: Complete os tags do PLC para o modelo da esteira…..........………......……................. 17
Aplicação O uso de tags torna seu programa mais flexível. Por exemplo, você pode atribuir
diferentes valores aos tags que você tem declarado na interface do bloco para
cada chamada do bloco. Como resultado, você pode reutilizar um bloco que você
já tenha programado para diversas ocasiões.
Coluna Descrição
Símbolo que você pode clicar com objetivo de mover para dentro de um network
através de operação marcar e arrastar para utilizar como um operando.
Name Nome, o qual será único em toda a CPU, o qual você atribui a um tag.
Retain Identifica que o tag será retentivo. O valor dos tags retentivos serão retidos
mesmo quando houver falta de tensão de alimentação.
Nota Quando procurando por endereços, você deve colocar um caractere curinga após
a identificação do operando (? para um caractere, * para diversos caracteres), de
outro modo o endereço não será encontrado.
Monitor value (valores monitorados) Coluna que mostra os valores atuais dos dados na CPU.
Esta coluna será visível se uma conexão online estiver disponível e o botão
"Monitor" tenha sido acionado.
Data blocks (DB = data blocks) Os blocos de dados são áreas de dados do programa do
usuário nas quais os dados do usuário são gerenciados de modo estruturado.
Permissible Em todos os blocos (FBs, FCs e OBs) todo o conjunto de instruções pode ser
operations utilizado.
DBs Você declara blocos de dados em seu programa de forma a salvar dados ou
resultados dos blocos de códigos. Existem dois tipos de blocos de dados:
• Bloco de dados global,
que pode ser utilizado por todos os blocos de códigos.
• Bloco de dados instance,
que é atribuído a um FB específico e que também pode ser usado por este FB.
UDTs Você também pode utilizar UDTs (User Data Types – tipos de dados definidos
pelo usuário) para criar “templates” (formatos) para blocos de dados globais.
Definição Multi-instances habilitam uma chamada de bloco de função para armazenar seus
dados no DB instance do FB chamado. Isto permite a você concentrar os dados
instance em um único bloco de dados instance o que representa uma otimização
na quantidade utilizada de DBs.
Em outras palavras é como se você reunisse todos os DBs instance em um único
DB.
Programa estruturado
Tarefas complexas de automação podem ser implementados e mantidas mais
facilmente pela divisão delas em sub tarefas menores que correspondem a
funções tecnológicas do processo ou que possam ser reutilizadas. Estas sub
tarefas são representadas no programa do usuário pelas correspondentes seções
de programa, conhecidas como blocos. Cada bloco é então uma seção
independente do programa do usuário.
Estruturar o programa oferece as seguintes vantagens:
• Programas extensos são mais fáceis de entender.
• Seções individuais de programa podem ser padronizadas.
• A organização do programa é simplificada.
• Alterações de programa podem ser mais facilmente realizadas.
• A depuração é simplificada pelo fato que seções separadas podem ser
testadas.
• A colocação em operação fica simplificada.
Consultar Quando entradas são consultadas no programa (p.ex. A I 2.0), o estado lógico
desta entrada será consultado na PII onde ele está salvo. Este não pode ser
alterado dentro de um ciclo devido ao fato que a PII somente pode ser atualizada
ou lida no início de um ciclo. Isto assegura que o mesmo resultado será obtido se
uma entrada for consultada diversas vezes durante a execução de um ciclo.
Se o programa tiver que acessar um dado útil diretamente e não via imagem de
processo, você deve complementar o endereço de I/O com ":P". Este é o caso,
por exemplo, em programas com tempo crítico no qual as saídas também devem
ser acionadas no mesmo ciclo.
Demais informações • Para definir outras propriedades ao novo bloco, acione a flecha para "Further
information" na parte inferior da caixa de diálogo.
- Uma área com campos de entrada adicionais será mostrado.
- Insira todas as propriedades que você deseja.
• Acione "OK" para confirmar as informações que você inseriu..
Output 2. O que deve ser retornado para a chamada do bloco como um resultado?
• Estado lógico do LED (LIGADO, DESLIGADO ou PISCANDO).
Static 4. Alguns estados lógicos operacionais devem ser salvos no bloco durante
diversos ciclos?
• Estados lógicos operacionais da estação.
• Memória de detecção de transição.
Temp Áreas de memória também podem ser declaradas por um ciclo de execução, se
necessário.
Note O bloco não será salvo no disco rígido enquanto o botão salvar tudo não tenha
sido pressionado.
Resultado O código para o bloco será gerado. Se o bloco a ser compilado tiver chamadas de
blocos nas quais as interface tenham mudado, a chamada do bloco será
atualizada.
A mensagem sobre "Info > Compile" na janela inspetor relata se a compilação
obteve sucesso ou não.
Estado lógico Para monitorar os estados do programa para um bloco, siga estes passos:
• Acione o botão "Monitoring on/off" na barra de ferramentas.
Nota Os recursos para testar os estados do programa são limitados. Se não existirem
recursos suficientes para a monitoração, ela será encerrada precocemente.
Resultado Quando você habilitar a monitoração dos estados do programa, uma conexão
online será estabelecida e os estados do programa serão mostrados. Quando
você desabilitar a monitoração dos estados do programa, você será questionado
se deseja interromper a conexão online.
Parâmetros do bloco
Os blocos de organização possuem parâmetros de bloco que você utiliza para
parametrizar respostas específicas, p.ex. atribuição de um evento à um bloco de
organização.
Drop-down list (lista de seleção) Você pode selecionar o tipo de dado para a operação na lista
de seleção "DT".
Objetivos da aprendizagem................................................................................................................... 2
Instruções.……...................................................................................................................................... 3
Mover: MOVE…..................................................................................................................................... 4
Mover: MOVE_BLK..…………............................................................................................................... 5
Mover: UMOVE_BLK.…………............................................................................................................. 6
Lógica binária: Set, reset……………..................................................................................................... 7
Lógica binária: SET_BF, RESET_BF…................................................................................................. 8
Lógica binária: avaliação de borda de sinal / RLO…............................................................................. 9
Controle de programa: JMP, LABEL...................................................................................................... 10
Controle do programa: JMPN, RET.………........................................................................................... 11
Funções matemáticas: LIMIT, MOD…................................................................................................... 12
Funções matemáticas: MIN, MAX………............................................................................................... 13
Operações lógicas: DECO, ENCO......................................................................................................... 14
Operações lógicas: SEL, MUX...……..................................................................................................... 15
Instruções de conversão: NORM_X, SCALE_X..................................................................................... 16
Comparadores: IN_RANGE, OUT_RANGE........................................................................................... 17
Relógio + calendário: RD_SYS_T...……................................................................................................ 18
String + Char: VAL_STRG..…................................................................................................................ 19
Exercício 7-1: Esteira em automático (extensão do FC 16)................................................................... 20
Exercício 7-2: Ative os sinaleiros do modelo da esteira "FC_Signal" (FC14)........................................ 21
Contadores: CTU.................................................................................................................................... 22
Temporizadores: TON........................................................................................…................................ 23
Exercício 7-3a: Contagem de peças a serem transportadas "FB_Statistic" (FB18).............................. 24
Exercício 7-3b: Contagem de peças a serem transportadas "FB_Statistic" (FB18).............................. 25
Exercício 7-4: Tempo de supervisão de transporte, expansão do "FC_ConvMotor" (FC 16)……........ 26
A habilitação de saída ENO apresentará o estado lógico "0" se uma das seguintes
se uma das seguintes condições for atendida:
A entrada EN está em estado lógico "0".
A quantidade de dados da área destino for menor do que a quantidade
especificada na operação.
O conteúdo da área fonte será copiada para área destino na direção dos
endereços ascendentes. A operação de cópia não pode ser interrompida por outra
atividade do sistema operacional. É por isto que o tempo de reação de alarme da
CPU aumenta durante a execução da operação "Move block uninterruptible".
A habilitação de saída ENO apresentará o estado lógico "0" se uma das seguintes
se uma das seguintes condições for atendida:
A entrada EN está em estado lógico "0".
A quantidade de dados da área destino for menor do que a quantidade
especificada na operação.
Set output (saída set) Você pode utilizar a operação "Set output" para definir o estado lógico
de um operando em "1".
A operação somente será executada se o resultado lógico da operação (RLO) na
entrada da bobina “set” for "1". Se houver passagem de sinal para a bobina (RLO
for "1"), o operando especificado é levado para "1". Se o resultado lógico da
operação na entrada da bobina “set” for "0" (sem passagem de sinal para a
bobina), o estado lógico do operando especificado permanecerá inalterado.
A operação não influencia o RLO. O RLO na entrada da bobina é imediatamente
enviado para a saída.
Reset output (saída reset) Você pode utilizar a operação “Reset output" para definir o estado
lógico de um operando em “0".
A operação somente será executada se o resultado lógico da operação (RLO) na
entrada da bobina “reset” for "1". Se houver passagem de sinal para a bobina
(RLO for "1"), o operando especificado é levado para "0". Se o resultado lógico da
operação na entrada da bobina “reset” for "0" (sem passagem de sinal para a
bobina), o estado lógico do operando especificado permanecerá inalterado.
A operação não influencia o RLO. O RLO na entrada da bobina é imediatamente
enviado para a saída.
Prioridade Em LAD e FBD, diferentes símbolos são usados para funções de memória com
prioridade "Set" e aqueles com prioridade "Reset". Em STL, a instrução executada
por último será prioritária.
RESET_BF Você pode utilizar a operação "Reset bit field" para levar para zero (reset)
diversos bits começando de um endereço específico. Você especifica a
quantidade de bits a zerar no parâmetro N. O endereço do primeiro bit a ser
zerado é determinado pelo operando especificado (<Operand>). Se o valor do
parâmetro N for maior do que a quantidade de bits em um byte selecionado, os
bits do byte seguinte serão zerados. Os bits permanecem zerados até que eles
sejam levados para “1”, por exemplo, por outra operação.
A operação somente será executada com sinal "1" na entrada EN. Com sinal “0”
na entrada EN, a operação não será executada.
P= Você pode utilizar a operação "Set operand on positive signal edge" (tornar “1” o
operando na borda positiva do sinal) para tornar “1” um operando específico
quando existir uma mudança de "0" para "1" no fluxo de sinal. A operação
compara o resultado atual da operação lógica (RLO) com o resultado da operação
da varredura anterior, o qual está salvo no bit de memória de borda. Quando a
operação detectar uma mudança no fluxo de sinal de "0" para "1", existe uma
borda de subida, uma transição positiva.
Quando existir uma transição positiva, o <operand1> será levado para "1" por um
ciclo de programa. Em todos os outros casos, o operando terá estado lógico "0".
P_TRIG Você pode utilizar a operação "Set output on positive signal edge" (tornar “1” a
saída na borda positiva do sinal) para detectar uma mudança de estado lógico do
resultado lógico da operação de "0" para "1". A operação compara o estado lógico
atual do resultado lógico operacional (RLO) ao estado do sinal da varredura
anterior, o qual está salvo no bit de memória de borda. Se a operação detectar
uma mudança do RLO de "0" para "1", existe uma borda de subida, uma transição
positiva.
Se uma borda de subida for detectada, a saída da operação terá o estado de sinal
"1". Em todos os outros casos, o estado do sinal na saída da operação será "0".
LABEL (rótulo) Você pode utilizar "Jump label" para especificar o network destino, no
qual a execução do programa deverá continuar após o salto. O nome do rótulo de
salto pode conter letras, números ou traço em baixo da linha (underscores).
O rótulo do salto e a operação na qual o rótulo de salto for especificado devem ser
localizados dentro do mesmo bloco. Um nome de um rótulo de salto somente
pode ser atribuído uma única vez por bloco.
Um único rótulo de salto pode receber saltos de diversos pontos do programa.
MOD Você pode utilizar a operação "Return remainder of division" (devolve o resto da
divisão) para dividir o valor na entrada IN1 pelo valor na entrada IN2 e colocar o
valor do resto na saída OUT.
A operação somente será executada se o estado do sinal na entrada EN for "1".
Se nenhum erro ocorrer durante a execução da operação, a saída ENO também
terá estado lógico "1".
A operação não será executada se o estado do sinal na entrada EN for “0”. Neste
caso, a saída ENO será zerada.
MAX A operação "Get maximum" compara o valor na entrada IN1 com o valor na
entrada IN2 e escreve o maior valor na saída OUT. A operação somente será
executada se os tags de todos os parâmetros forem do mesmo tipo de dado.
A operação somente será executada se o estado lógico na entrada EN for “1”. Se
nenhum erro ocorrer durante a execução da operação, a saída de habilitação
também apresentará o estado lógico “1”.
A saída de habilitação ENO retorna o estado lógico "0" se uma das seguintes
condições estiverem presentes:
A entrada EN está em nível lógico "0".
Os tags especificados não são do mesmo tipo de dado.
Um tag com tipo de dado REAL na entrada tiver um valor não válido.
ENCO Você pode utilizar a operação "Encode" para ler a posição do bit em “1” a partir do
bit menos significativo no valor de entrada e informá-la na saída OUT.
A operação "Encode" seleciona o bit menos significativo do valor da entrada IN e
escreve a posição deste bit no tag da saída OUT.
A operação "Encode" somente será iniciada quando o estado do sinal na entrada
EN for "1". Se nenhum erro ocorrer durante a execução da operação, a saída
ENO também apresentará o estado lógico "1".
Se o estado do sinal na entrada de habilitação EN for "0", a saída de habilitação
ENO apresentará o nível lógico "0".
MUX Você pode utilizar a operação "Multiplex" para copiar o conteúdo de uma entrada
selecionada para a saída OUT. O número de entradas selecionáveis na caixa
MUX podem ser expandidas. As entradas são automaticamente numeradas na
caixa. A numeração começa por IN0 e será incrementada continuamente para
cada nova entrada. Você pode utilizar o parâmetro K para determinar a entrada
cujo conteúdo deve ser copiado para a saída OUT. Se o valor do parâmetro K for
maior do que o número de entradas disponíveis, o conteúdo do parâmetro ELSE
será copiado para a saída OUT e a saída de habilitação ENO terá nível lógico "0".
A operação "Multiplex" somente pode ser executada quando os tags de todas as
entradas e da saída OUT forem de mesmo tipo de dado. O parâmetro K é uma
excessão, uma vez que somente permite formato inteiro em sua especificação.
A operação somente será executada se o estado do sinal na entrada EN for "1“.
Se nenhum erro ocorrer durante a execução, a saída ENO terá nível lógico "1".
A saída de habilitação ENO retorna o estado lógico "0" se uma das seguintes
condições estiverem presentes:
A entrada EN está em nível lógico "0".
O valor do parâmetro K será maior do que a quantidade de entradas
disponíveis.
Ocorrência de erros durante o processamento da operação.
SCALE_X Você pode utilizar a operação "Scale" para por em escala o valor da entrada
VALUE pelo mapeamento dele em uma faixa de valores específicos. Quando a
operação "Scale" for executada, o valor ponto flutuante da entrada VALUE for
escalonada para a faixa de valores, os quais são definidos nos parâmetros MIN e
MAX. O resultado do escalonamento é um inteiro, o qual será armazenado na
saída OUT.
A operação "Scale" somente será executada se o estado do sinal for "1" na
entrada de habilitação EN. Neste caso, a saída de habilitação ENO também terá
nível lógico "1".
A saída de habilitação ENO retorna o estado lógico "0" se uma das seguintes
condições estiverem presentes :
A entrada EN está em nível lógico "0".
O valor na entrada MIN for maior do que ou igual ao valor da entrada MAX.
O valor de um tag REAL especificado estiver fora da faixa dos números
normalizados de acordo com IEEE-754.
Ocorrer um estouro de escala.
O valor da entrada VALUE for NaN (resultado de uma operação aritmétrica
inválida).
OUT_RANGE Você pode utilizar a operação "Value outside range" para consultar se o valor da
entrada VAL está ou não fora da faixa especificada. Você especifica os limites da
faixa de valores entre os parâmetros MIN e MAX. Quando a consulta for
processada, a operação "Value outside range" compara o valor da entrada VAL
com os valores dos parâmetros MIN e MAX e envia o resultado para a saída da
caixa. Se o valor na entrada VAL atender à comparação MIN > VAL ou VAL >
MAX, a saída da caixa terá nível lógico "1". Se a comparação não for atendida, o
estado do sinal será "0" na saída da caixa.
Se o estado do sinal na entrada da caixa for "0", a operação "Value outside range"
não será executada.
A função comparação somente será executada se os valores a serem
comparados forem do mesmo tipo de dados e a saída da caixa estiver
interconectada.
DTL
SIZE Com o parâmetro SIZE você especifica quantos caracteres da string serão
escritos. Estes serão contados pelos caracteres especificados no parâmetro P. Se
o comprimento definido pelos parâmetros P e SIZE não forem adequados, a saída
de habilitação ENO será "0". Se o valor de saída for menor que o comprimento
especificado, o resultado será escrito no conjunto de caracteres alinhados pela
direita. As posições vazias serão preenchidas com espaços em branco.
Os caracteres permitidos para a conversão são os números de 0 a 9, o ponto
decimal, a vírgula, notações "E" e "e" e os caracteres mais e menos. A conversão
pode ser interrompida por caracteres não válidos. Neste caso, a saída de
habilitação ENO será "0".
FORMAT Com o parâmetro FORMAT, você especifica como o valor numérico será
interpretado durante a conversão e escrita para o conjunto de caracteres (string).
Somente tags do tipo de dado USINT pode ser especificado pelo parâmetro
FORMAT.
Programação As funções descritas acima devem ser programadas em um novo bloco chamado
Padrão IEC "FB_Statistic" (FB18). Este deve ser criado de acordo com o padrão IEC, isto é,
nenhum operando global (entradas, saídas, bits de memória e blocos de dados
globais) terão seu uso permitido dentro do bloco, somente operandos locais
(parâmetros locais e variáveis locais). Por esta razão, a função contador
necessária internamente deve ser criada como um multi instance.
Objetivos da aprendizagem................................................................................................................... 2
Blocos de dados (DBs)..………............................................................................................................. 3
Tipos de dados........……....................................................................................................................... 4
Tipos de dados elementares..……........................................................................................................ 5
Tipos de dados complexos: DTL…………............................................................................................. 6
Tipos de dados complexos: ARRAY, STRUCT……….......................................................................... 7
Criando um bloco de dados……............................................................................................................ 8
Editar e monitorar um bloco de dados…………..................................................................................... 9
Otimizar espaço de memória para DBs...….......................................................................................... 10
Bloco de dados: Retentividade……....................................................................................................... 11
Retentividade em FBs do sistema......................................................................................................... 12
Retentividade em DBs globais…........................................................................................................... 13
Retentividade em DBs multi instance (1)..…......................................................................................... 14
Retentividade em DBs multi instance (2)..…......................................................................................... 15
Acesso aos elementos de dados......…….............................................................................................. 16
Exercício 8-1: Crie um bloco de dados "DB_OP" (DB99)...................................................................... 17
Exercício 8-2: Acesse os tags do DB no "FC_ConvMotor" (FC16)........................................................ 18
Exercício 8-3: Acesse tags do DB na chamada do FB_Statistic" (FB18) no OB1….............................. 19
Faixa de aplicação Os blocos de dados podem ser utilizados diferentemente pelo usuário
dependendo de sua natureza.
Uma distinção é feita entre:
• Bloco de dados global: Eles contém informações que podem ser acessadas
por todos os blocos de códigos do programa do usuário.
• Bloco de dados instance: Eles são sempre atribuídos a um FB. Os dados
destes DBs somente devem ser processados pelo FB associado. Os blocos de
dados instance são descritos em detalhes no capítulo 6 junto com as informações
referentes aos FBs.
Criação de DBs DBs globais são criados ou pelo editor de programas ou de acordo com uma UDT
(tipo de dado definido pelo usuário) criada previamente.
Os blocos de dados instance são criados quando um bloco de função é chamado.
DTL Um tag do tipo de dado DTL possui o comprimento de 12 bytes e salva data e
hora dentro de uma estrutura pré-definida. A tabela acima fornece uma visão
geral deste tipo de dado complexo.
STRUCT Um tag do tipo de dado STRUCT salva valores em uma estrutura que inclui um
número fixo de componentes. A estrutura individual de componentes pode ser de
diferentes tipos de dados. Estruturas não podem ser aninhadas em um tag
STRUCT. Um tag STRUCT sempre começa em um byte de endereço par e
reserva a memória até o próximo limite no formato word.
DB global Os blocos de dados globais são utilizados para salvar dados globais, isto é, dados
gerais os quais podem ser acessados por blocos de códigos (OB, FC, FB).
O usuário deve editar blocos de dados globais pela declaração de tags
necessários para salvar os dados neste DB.
DB instance Os blocos de dados instance servem como “área de dados particular” ou como
“memória” de um bloco de funções (FB). Os parâmetros e tags estáticos de um
FB são gerenciados em seu DB instance.
Os blocos de dados instance não são geralmente editados pelo usuário, mas
gerados pelo editor.
UDT Blocos de dados também podem ser gerados pelo editor de acordo com um UDT
(User Defined Type). Um UDT é editado do mesmo jeito que um DB e serve para
criar DBs através de seu formato pré-definido.
O UDT pode servir como um gabarito (template) para criação de outros blocos de
dados e/ou para declaração de tags e parâmetros de blocos.
Initial value (valor inicial) O valor inicial de um tag é um valor que você pode definir com o
qual o tag deverá assumir durante a partida. Os tags retentivos são um caso
especial. Após um "Restart (warm restart)", seus valores são mantidos e não são
sobrescritos pelo valor inicial.
A especificação de um valor inicial é opcional. Se você não especificar um valor, o
tag assume o valor padrão na partida (start-up). Se um valor padrão não tiver sido
definido, um valor padrão aplicável ao tipo de dado será utilizado. Para BOOL, por
exemplo, o valor padrão "FALSE" é definido.
Toolbar (barra de ferramentas) Você pode monitorar valores de dados atuais dos tags na
CPU diretamente pelo bloco de dados.
Insert line above Insere uma nova linha acima da linha marcada
Insert line below Insere uma nova linha abaixo da linha marcada
Procedimento Quando você criar um novo bloco de dados, você pode salvar os tags de modo
otimizado no DB selecionando:
1.
2.
Nota Após a transferência de blocos para o dispositivo, uma partida a frio (cold restart)
será realizada.
Tarefa Em vez de seu próprio DB instance, a função do sistema TON agora no FC16
deve utilizar um tag de um DB global (ver slide).
Você irá aprender com isto como tags de blocos de dados podem ser utilizados
diretamente através de marcar e arrasta-los em outros blocos.
Cyclic OBs (OBs cíclicos) são processados ciclicamente. Os OBs cíclicos são blocos de
códigos de alto nível no programa nos quais pode-se chamar outros blocos.
Nota Se você parametrizar diversos OBs de interrupção cíclica, você deve atribuir um
tempo de varredura diferente ou um desvio de fase para cada OB de interrupção
cíclica para evitar execuções simultâneas ou uma fila. Quando um OB de
interrupção cíclica é criado, um tempo de varredura de 100ms e um desvio de
fase de 0ms é inserido como valor inicial padrão.
Procedimento Para inserir tempos de varredura e desvios de fase para OBs de interrupção
cíclica, proceda conforme segue:
• Abra a pasta "Program blocks" na árvore de projeto.
• Clique com o botão direito do mouse no OB de interrupção cíclica existente.
• Selecione o comando "Properties" no contexto do menu.
• O diálogo "<nome do OB de interrupção cíclica>" será aberto.
• Clique no grupo "Cyclic interrupt" na área de navegação.
• O campo de entrada para tempo de varredura e desvio de fase serão
mostrados.
• Insira o tempo de varredura e o desvio de fase.
• Clique "OK" para confirmar suas entradas.
Event name (nome do evento) Um nome simbólico então terá de ser declarado para o evento.
Hardware interrupt Tem que ser especificado qual OB de interrupção de hardware deve ser atribuído
para qual evento.
OB200/OB201 OB200 ou OB201 será executado uma vez, então o processamento do programa
cíclico será retomado no ponto em que foi interrompido.
Prioridades Toda execução de programa OB pode ser interrompida no limite de instrução por
um evento (OB) com uma prioridade maior. Prioridades são graduadas de 0 à 28,
pelo qual 0 tem menor prioridade e 28 tem a maior.
OB 82 ou tem prioridade 26, quando ela ocorre durante a execução do OB 1, ou
prioridade 28 durante a partida (startup).
OBs de mesma prioridade não interrompem uma a outra, mas são iniciadas uma
após a outra na ordem na qual foram detectadas.
Resultado Todas as funções do programa continuam a funcionar como antes, mas com
respostas de tempo mais longos. Isto significa, por exemplo, quando a esteira
move-se em jog, cuja resposta de tempo é claramente mais longa (devido ao
tempo de ciclo mais longo da CPU) através do acionamento do botão para
ativação do motor da esteira.
Tarefa A resposta de tempo incrementada deve ser evitada somente na operação jog
como segue:
• Quando o botão "T_RIGHT" (I0.2) ou "T_LEFT" (I0.3) for acionado, o motor da
esteira pode ser ligado com atraso de tempo como antes.
• Quando o botão for solto, isto é, na borda de descida do sinal do botão, o
motor da esteira deve ser desligado imediatamente, isto é sem atraso de
tempo.
Por esta razão, os botões (I0.2 e I0.3) devem gatilhar uma interrupção de
hardware quando o botão é solto, isto é, na borda de descida. A CPU irá então
interromper a execução cíclica do programa e imediatamente executar o
correspondente OB de interrupção de hardware "OB_HW-Interrupt" (OB240)
no qual a desativação da saída do motor está programada.
Resultado Quando o botão jog for pressionado, o motor da esteira será ligado após decorrido
um tempo de atraso, mas quando o botão for solto, o motor será desligado
imediatamente.
Procedimento Crie o bloco de organização do tipo "Cyclic interrupt". Atribua o nome e o número
do bloco conforme mostrado no slide.
Procedimento Edite o bloco conforme mostrado. Leia a ajuda online (help) a respeito das
instruçoes NORM_X, SCALE_X e IN_RANGE.
Tarefa Peças cujos pesos estejam fora da faixa permitida devem ser retornados para a
estação 3 (“Bay 3", I8.7). Estas peças não devem ser contadas.
Objetivos da aprendizagem................................................................................................................... 2
Adicionar um novo dispositivo…………................................................................................................. 3
Conectar um dispositivo IHM à rede...................................................................................................... 4
Ajustes dos dispositivos – Propriedades gerais……………................................................................... 5
Comunicação entre PLC e painel de toque............................................................................................ 6
Ajuste da interface para transferência de projeto.………....................................................................... 7
WinCC Basic áreas de trabalho para configuração...……….................................................................. 8
Campos de entradas e de saídas................…….................................................................................... 9
Botões...........…………........................................................................................................................... 10
Transferência da configuração para o painel de toque...………............................................................ 11
Exercício 10-1: Ajuste o endereço IP do painel de toque...................................................................... 12
Exercício 10-2: Insira no projeto o painel de toque da biblioteca........................................................... 13
Exercício 10-3: Conecte o painel de toque à CPU ................................................................................ 14
Exercício 10-4: Conexão lógica entre o painel de toque e a CPU......................................................... 15
Exercício 10-5: Verifique os tags de interface com a IHM..........………………..................................... 16
Exercício 10-6: Controle o modelo esteira pelo painel de toque............................................................ 17
Procedimento Duplo clique na entrada "Devices & Networks" na árvore de projeto. O editor de
mesmo nome abre. Os parceiros de comunicação que estão disponíveis no
projeto são graficamente mostrados na vista de rede.
• Clique na aba "Connections". Os dispositivos disponíveis para uma conexão
são mostrados em destaque por cor.
• Coloque o ponteiro do mouse no quadrado verde do primeiro parceiro de
comunicação e com o botão esquerdo do mouse pressionado, arraste uma
conexão até o parceiro de comunicação desejado. A conexão será criada e
associada uma sub rede e os parâmetros associados com a conexão serão
automaticamente criados. A conexão recebe um nome de conexão local como
um identificador o qual será usado para identificar unicamente a conexão.
Data areas (áreas de dados) As seguintes áreas de dados globais da CPU podem ser
utilizadas para configurar os tags:
• Blocos de dados (DB).
• Memória bit (M).
• Entradas (I) e saídas (Q).
• Entradas I/O e saídas I/O.
Os sistemas IHM também reconhecem tags locais sem um vínculo com o
processo, isto é, estes tags são exclusivamente processados internamente e
também não ocupam quaisquer recursos de comunicação.
Remote Control: (controle remoto) A transferência do projeto pelo WinCC flexible pode ser
ativada sem a necessidade de intervir manualmente encerrando a execução do
aplicativo. O painel sai da execução do aplicativo e muda para o modo de
transferência.
Work area (área de trabalho) A área central de configuração na qual o objeto do dispositivo
IHM pode ser processado utiliza o editor ativo. Diversos editores podem ser
abertos simultaneamente.
Tool window (janela ferramenta) A janela ferramenta contém todos os objetos os quais podem
ser configurados em mostradores e permite acesso às bibliotecas.
Output window (janela saída) A janela saída mostra todos os alarmes produzidos pelo sistema
de engenharia (engineering system = software de configuração), por exemplo,
quando gerando um projeto.
Format (formato) O formato especifica em qual formato os tags devem ser mostrados.
Tag O campo Tag especifica o tag do PLC para o qual o valor no campo de I/O deve
ser mostrado ou inserido.
O tag WinCC Basic é usualmente conectado a um tag do PLC S7. Ele pode,
entretanto, ser um tag interno o qual não é conectado a um tag do PLC S7, mas o
qual somente será utilizado para salvar valores dentro do dispositivo IHM.
Tag Se a função do sistema selecionada for realizada com um tag do WinCC Basic,
isto deve ser especificado.
O tag WinCC Basic é usualmente conectada a um tag do PLC S7. Ele pode,
entretanto, ser um tag interno o qual não é conectado a um tag do PLC S7, mas o
qual somente será utilizado para salvar valores dentro do dispositivo IHM.
Procedimento 1. Abra "Devices & Networks" na estrutura de projeto e então a aba "Networks".
2. Coloque o ponteiro do mouse no quadrado verde do dispositivo IHM e com o
botão esquerdo do mouse pressionado, arraste uma conexão para a CPU. A
conexão será criada e associada à sub rede e os parâmetros associados com
a conexão serão automaticamente criados.
3. Use o botão destacado acima para mostrar o endereço IP da CPU e do painel
de toque.
Sem falhas.
Manutenção necessária.
Manutenção solicitada.
Falha.
Reset Para executar o reset da CPU para os ajustes de fábrica (factory settings),
proceda como segue:
• Abra a vista online e diagnósticos da CPU.
• Selecione o grupo "Reset to factory settings" da pasta "Functions".
• Selecione "Retain IP address" se você desejar manter o endereço IP ou
"Delete IP address" se você não desejar.
• Clique no botão "Reset".
• Confirme com "OK".
Output ID A saída ID da instrução é do tipo de dado WORD e fornece IDs de erros cujos
significados podem ser vistos na ajuda online.
Sem falhas. Pasta contém objetos cujas versões online e offline diferem (somente
na árvore de projeto).
O módulo ou dispositivo está inacessível da CPU (aplicável à módulos e
dispositivos subordinados à CPU). Objeto existe somente offline.
RUN.
STOP.
Partida (start-up).
Parada (halt).
Defeito.
Nota Quando deletando blocos de organização, lembre-se que eventos devem ser
atribuídos a eles. Se você deletar estes blocos de organização, o programa não
pode responder aos eventos parametrizados.
Resultado Quando você habilitar a exibição dos estados do programa, uma conexão online
será estabelecida e os estados do programa serão mostrados. Quando você
desabilitar a exibição dos estados do programa, você será questionado se deseja
interromper a conexão online.
Aplicação Para permanentemente atribuir valores definidos aos tags, você pode especificar
ajustes padrões para o seu programa do usuário e deste modo testar as funções
programadas. Forçamento é possível nos modo básico e modo expandido.
Atenção Antes de forçar, você deve revisar as precauções de segurança para este
procedimento.
Used by: Aqui, você pode ver onde o objeto está sendo usado.
Filters (filtros) Você pode filtrar a exibição dentro da lista de atribuições. Você pode usar
filtros pré-definidos ou criar o seu próprio.
Cross-references (referência cruzada) Você pode exibir as informações da referência cruzada para
endereços selecionados na lista de atribuições. Você exibe a referência cruzada
para endereços selecionados ou para bits selecionados individuais na janela
inspetor utilizando o comando "Show usage" no menu atalho. Você também pode
abrir a lista de referência cruzada para objetos selecionados usando o comando
"Tools > Cross-references“.
Tarefa O estado STOP da CPU será previnido (sem eliminação do erro) pela
programação da instrução "GetErrorID".
Procedimento 1. Elimine o erro que causa STOP no programa falho e delete a instrução
"GetErrorID“ que você adicionou.
2. Transfira todos os blocos para a CPU.
Procedimento: 1. Clique "K_Conv_Right" (Q8.5) com o botão direito do e então clique "Show
usage" no diálogo subsequente.
2. Clicando uma lista utilizada na tabela, o bloco correspondente pode ser aberto
e a correção pode ser feita imediatamente.
3. Transfira todos os blocos para dentro da CPU e verifique todas as funções do
programa.
Falha na lógica