SlideShare a Scribd company logo
1 of 35
Download to read offline
Disciplina: CLP
Apostila n. 5
Sumário
Controle em Malha-Fechada................................................................................................1
Definições ............................................................................................................................1
Introdução ............................................................................................................................4
Partida de motores Trifásicos: Acionamento por Botão....................................................5
Partida Υ/∆ (Estrela/triângulo) de motores Trifásicos .......................................................6
Características básicas do Controlador Programável PS4-201 MM1®
.................................7
Fluxograma ........................................................................................................................11
Passo: Project Manager — Criar um novo projeto.............................................................12
Editar o Programa do usuário. POU-Editor — Program Organisation Unit-Editor..............12
Começando a Programar em Ladder.................................................................................13
Declarando as Variáveis.................................................................................................17
Syntax Check .................................................................................................................18
Descobrindo o Erro.........................................................................................................19
Explicação Detalhada do Bloco de Função MS_TimeRising..............................................24
Lógica.................................................................................................................................27
Algoritmo............................................................................................................................27
Sumário das Funções IEC 1131-3 e Moeller......................................................................28
Referências Bibliográficas .....................................................................................................32
Exercícios de Fixação............................................................................................................33
1
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
1. Automação industrial
O objetivo da Automação industrial é o de tornar os processos automáticos, isto é, desenvolver
tecnologias para que os trabalhos realizados por homens sejam realizados por máquinas que se
movam, regulem e operem por si mesmas.
Controle em Malha-Fechada
Um sistema de controle pode ser representado pelos blocos da figura 1.1.
Medição
Processo
Controle
Atuação
Figura 1.1 - Sistema de Controle
Podemos dizer que a Automação Industrial é um conjunto de técnicas destinadas a tornar
automáticos vários processos numa indústria.
Definições
Medição ⇒ Responsável pela transformação da grandeza que se deseja controlar num sinal que
possa ser manipulado pelo sistema de controle.
2
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Atuação ⇒ Responsável pela transformação do sinal de saída do controlador no sinal que possa
comandar a variável de entrada do sistema que está sob controle.
Processo ⇒ Operação que evolui progressivamente e que se constitui por uma série de ações
controladas objetivando um particular resultado.
Controle Realimentado ⇒ É uma operação que na presença de distúrbios , tende a reduzir a
diferença entre a saída de um sistema e a entrada de referência.
Controle Automático
Para realizar o controle dos processos existe o Controlador Lógico Programável que pode
ocupará o bloco de controle da figura x.x.
Medição
Processo
Atuação
Figura x.x - Controle Automático com
CLP na malha de Realimentação
3
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
O Sr. Armando confusão, no exemplo da figura x.x, está controlando a temperatura da água
para uso em um hotel. Pode-se ver no exemplo os blocos: Processo, Medição, Controlador, Atuação.
Misturador
Trocador de
Calor
Serpentina
Processo
Aquecer água
utilizando a energia
térmica do vapor
Atuador
Vávula
Medição
Sensor
Controlador
4
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Partida Υ/∆ (Estrela/triângulo)
Introdução
A Norma Técnica Unificada — NTU.01, para fornecimento de energia elétrica em tensão
secundária a edificações individuais tem por objetivo orientar os consumidores individuais das áreas
de concessão da CESP, CPFL e Eletropaulo.
A NTU.01 orienta que: motores trifásicos de gaiola ou de indução com potência acima 5
(C.V.), devem partir de forma indireta. Um possível sistema de partida indireta é a manobra Υ/∆
(estrela/triângulo).
O sistema de manobra Υ/∆ (estrela/triângulo) tem por objetivo reduzir a corrente de partida de
motores.. As companhias fornecedoras de energia elétrica fixam valores máximos para a corrente de
partida. Se o motor a ser instalado possuí uma corrente de partida maior que a fixada é necessário
implementar um circuito que minimize a corrente de partida.
A partida Υ/∆ é normalmente implementada por contatores e um temporizador. Pode-se, no
entanto, utilizar um Controlador Lógico Programável — CLP para esta finalidade. A partida Υ/∆ com
contatores e temporizador é mais econômica que a partida Υ/∆ utilizando um CLP. Evidentemente a
utilização do CLP numa única partida de motor está limitada aos casos onde o CLP realiza também
outras funções e existam entradas e saídas disponíveis.
5
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Partida de Motores Acionamento por Botão
Partida de motores Trifásicos: Acionamento por Botão
Fusível Geral
e
Circuito de comando didático simplificado. Acionamento por botão.
b0 = Botão de Comando Desliga (normalmente fechado)
e
Relé Térmico
b1 = Botão de Comando Liga (normalmente aberto)
c1 = Contator de Rede 1
Contato Abridor
(normalmente fechado)
c2 = Contator Estrela
c 2
c3 = Contator Triângulo 3
Contato Fechador
(normalmente aberto)
d1 = Relé Temporizador
4c
R
d1
d1 c1 c2 c3
N
cc
c
c2
c1
d1b0
b1
6
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Partida Υ/∆ (Estrela/triângulo) de motores Trifásicos
Forma de Operação: Acionamento por botão.
Ligação:
1. Botão de comando b1 aciona o contator estrela c2e o dispositivo de retardamento d1.
2. O contato fechador c2 atua sobre o contator de rede c1, cujo contato fechador opera.
3. O motor entra em funcionamento em estrela.
Comutação:
1. Decorrido o retardamento, o contato abridor d1 opera e o contator estrela c2 é desligado.
2. Quando o contato abridor de c2 fecha, entra o contator triângulo c3, pois o contato fechador de
c1 já estava fechado quando c1 ligou.
3. O motor funciona, agora, em triângulo.
Interrupção:
1. Acionado o botão b0, interrompe o contator c1.
Contato fechador de c1 abre-se em seguida; o contator triângulo e o motor são desligados.
7
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
PLC — Programmable Logic Controller
Segundo a ABNT — Associação Brasileira de Normas Técnicas o PLC — Programmable
Logic Controller (Controlador Lógico Programável), é um equipamento eletrônico digital com
hardware e software compatíveis com aplicações industriais. No Brasil o termo CLP — Controlador
Lógico Programável, foi registrado pela Allen Bradley.
O PLC é um dispositivo que permite construir lógicas de automação flexíveis de instalação rápida
ocupando pequeno espaço físico. É um equipamento para tarefas de automação como:
Controle
Regulação
Operação
Cálculos
Posicionamento
Medições
®
24V/0,5A protegidas contra curto-circuito e sobrecarga, e 01 Analógica de 12
Expans
nstalado no PC (Personal Computer) e transferido
através da porta serial (RS232C) para o PS4.
Comunicação
Imagem extraída do livro: Controle de Processos. Ogata
Características básicas do Controlador Programável PS4-201 MM1
08 entradas Digitais e 02 Analógicas de 10 bits (de 0 a 10 V)
06 Saídas Digitais
bits ( de 0 a 10 V)
ível localmente ou remotamente
o Localmente ⇒ Módulos LE4
o Remotamente ⇒ Módulos EM4
Programável em Lista de Instrução, Ladder ou blocos.
Programas desenvolvidos no SUCOSOFT i
8
Prof. Eng.M.Sc. d'Avila
Centro Federal de Educação Tecnológica de São Paulo
Controlador Programável
PS4-201-MM1 da Moeller
Foto extraída do catálogo da Moeller
9
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Controlador Programável PS4-201-MM1 da Moeller
Vista Frontal
Imagem extraída do catálogo da Moeller
10
11
12
13
14
15
16
17
6 saídas digitais, 02 entradas analógicas
Interface SUCOnet K
Potenciômetros
Resistência de final de bus
Interface de Programação
Montagem em trilho DIN
Módulo de expansão de memória
Sinalização de Estado da CPU
Entrada para fonte de alimentação
Entrada do contador rápido
Entrada de interrupção
1
Presilha de fixação
Entradas digitais e alimentação
das saídas
Conector do tipo plug-in
Sinalização de estado das
entradas
Sinalização de estado das
saídas
2
3
4
5
6
7
8
9 Conector do tipo plug-in
10
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Com um duplo clique no Atalho S40 tem-se acesso à barra de ferramentas do Sucosoft Manager —
Tools.
Atalho para acessar
rapidamente o
SUCOSOFT na Área de
Trabalho
Iniciando o SUCOSOFT
O arquivo executável é o
WORKB.EXE
C:S40WORKB.EXE
Project
Manager
Topology
Configurator
POU-Editor
Code
Generation
Test and
Commissioning
Programando com o SUCOSOFT® da Moeller
Figura x.x - Seqüência de
Programação SUCOSOFT
S 40 da Moeller (jul. 98,
p.20).
11
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Fluxograma
Sintaxe
Correta?
Compilar
Code Generate
Transferir
Programa para o
CLP
Testes
Ok?
Executar
Programa
O Programa
Soluciona o
Problema de
Automação?
1
S
N
2
S
N
S
4
2
Problema de
Automação
Algoritmo
Editar o Programa
do Usuário.
POU-Editor
Declarar Variáveis
Configurar
Topologia
Criar um Projeto
no Sucosoft.
Project Manager
1
Verificar Sintaxe
Syntax Check
Início
Testes e
Comissionamento
N
4
3
Fim
12
Prof. Eng.M.Sc. d'Avila
Centro Federal de Educação Tecnológica de São Paulo
Passo: Project Manager — Criar um novo projeto
Project Manager ⇒ Project ⇒ New ⇒ Project Patch ⇒
digite C:PMOTORET ⇒ Project ⇒ Exit
No conceito de hierarquia do Windows® temos: Área de Trabalho ⇒ Computador do Usuário
⇒ Unidade de Discos ⇒ Pastas ⇒ Subpastas ⇒ Arquivos. A pasta de projeto pmotoret, com suas
subpastas e arquivos, será guardada na unidade de disco "C".
Para dar nome ao projeto é necessário lembrar as regras para nomear arquivos do DOS — Disk
Operating System. Embora o SUCOSOFT S40 versão 3.01 seja desenvolvida para o ambiente
Windows, ele ainda guarda esta restrição do sistema operacional DOS.
Regras para nomear pastas e arquivos:
Podem ter até oito caracteres.
Não são sensíveis a maiúsculas e minúsculas.
Podem conter apenas letras de A a Z, os números de 0 a 9, e os seguintes caracteres
especiais: _ ^ $ ~ ! # % & - { } @ ' ( ).
Não podem conter espaços, vírgulas, barras invertidas ou pontos (exceto o ponto que
separa o nome da extensão.
Não podem ser idênticos a outro nome de arquivo ou subpastas da mesma pasta.
Procure criar um nome mnemônico — que ajude a memória, que facilite a localização e a
lembrança do conteúdo. Por exemplo: pmotoret é o acrograma de Partida Motor Estrela/Triangulo.
Acrograma é a palavra formada pela redução de palavras ou expressões a letras ou sílabas iniciais.
A árvore de pastas é criada automaticamente. A árvore é a hierarquia entre pastas e subpastas
com seus respectivos arquivos.
Editar o Programa do usuário. POU-Editor — Program Organisation Unit-
Editor
POU-Editor ⇒ File ⇒ New ⇒ na caixa de diálogo selecione ⇒
Program ⇒ New ⇒ Option ⇒ Syntax-Controlled Mode ⇒ Option
⇒ Programming Language ⇒ LD ⇒ Window ⇒ Tile.
13
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Começando a Programar em Ladder
Iniciando a
Programação
Inserção da Lógica
Após a inserção da lógica é hora de nomear os contatos. Com um clique do botão direito em
cima do contato aparecerá o menu de atalho
Com um clique em Name Element..., aparecerá a caixa um caixa de diálogo, onde iremos
nomear o contato. As regras para nomerar um contato são:
14
Centro Federal de Educação Tecnológica de São Paulo
Clicando em Ok o nome aparecerá acima do contato nomeado. A seguir vamos inserir um
contato em série com o contato Liga. Clicando sobre a linha na frente do contato Liga a linha ficará
sombreada conforme figura x.
Clicando com o botão direito do mouse sobre a área sombreada aparecerá o menu de atalho,
escolha a opção insert AND. Apertando a barra de espaço o contato passará de normalmente aberto
para normalmente fechado, outra opção que gera o mesmo resultado é clicar com o botão direito do
mouse sobre o contato inserido e escolher a opção Negate Spacebar.
Inserindo nova linha do diagrama Ladder: Vamos inserir um bloco de função definido pelo
fabricante para gerar um atraso de tempo entre o instante que se liga o contator estrela e o instante em
que se desliga o contator estrela e se ligue o contator triangulo.
O SUCOSOFT® da Moeller possui blocos de função padrão IEC1131.3 e blocos padrão
Moeller, que estão disponíveis para o programador. O IEC — International Electrotechnical
Commission, é um orgão de padronização no âmbito internacional. Para acessar os blocos de função:
Symbols ou Data Types ⇒ Manufactuer-Defined Function Blocks... ⇒ Selecione
MS_TimeRising.
Quando o foco estiver na janela do editor de linguagens aparecerá Symbols ao invés de Data
Types. O procedimento é o mesmo. Para mudar o foco basta clicar na barra de títulos da janela
LD/FDB-Editor.
Prof. Eng.M.Sc. d'Avila
Barra de
Títulos
Foco no Editor de
Variáveis
15
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Escolha o bloco de função MS_TimeRising na tela de menu, dê um nome, para o bloco
escolhido, digite em Instance Name ⇒ Temp, que é a abreviação de temporizador. Para finalizar de
um clique no botão Accept.
Nome do
Temporizador
Barra de
Rolagem
Ao clicar no botão Accept o bloco é automaticamente inserido no modo LD/FDB ou no modo
IL são inseridas as linhas de programação. Para obter informações sobre os blocos de função clique em
Help ⇒ List of Manufacturer Function Blocks ⇒ no sumário das funções escolha o bloco.
Por exemplo: o temporizador que iremos utilizar na partida estrela/triângulo é o número 18 do
sumário de nome: MS_TimeRising e a descrição é: On-delay timer, milliseconds. Com um clique
sobre On-delay timer, milliseconds, temos a explicação detalhada do bloco, em inglês, não está
disponível a ajuda em espanhol.
A linha 2 um vez inserida contém o Ms_TimeRising, conforme figura X.
16
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Com um clique do botão esquerdo do mouse sobre a linha de Set esta ficará selecionada, em
seguida com um clique do botão direito pode-se determinar qual é o operando que irá setar o bloco. No
nosso caso será o contator de rede C_Rede.
Na entrada do Preset Time ao invés de entrar com um valor diretamente iremos faze-lo através
de uma variável que iremos chamar de uiTemp. Explicações sobre o porque deste nome.
Continuação:
Vamos inserir a terceira linha de programação através do botão de inserção de linha de
programação.
17
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Declarando as Variáveis
Após todas as linha inseridas é hora de declarar as variáveis. Com um clique na barra de títulos
Syntax-Controled Variable Editor o foco irá para esta janela, ou simplemente maximizamos a janela.
Após digitar Name, selecionar BOOL em Type, atribuir a entrada zero ao botão de liga e
acrescentar um comentário sobre a variável basta clicar no botão Add.Na continuação declaramos
todas as variáveis e os blocos utilizados na lógica. Para declarar o bloco de função clicamos em
DataType e selecionamos o bloco MS_TimeRising.
Data Types ⇒ Manufactuer-Defined Function Blocks... ⇒ Selecione MS_TimeRising.
18
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Em restaurar pode-se retornar para as duas janelas lado a lado. Para salvar a programação ⇒ na
barra de ferramentas clicar em File e em Save As. Aparecerá a caixa de diálogo.
Syntax Check
O programa está salvo é hora de verificar se ao digitar cometemos erros de sintaxe.
Na barra de ferramentas do POU-Editor encontra-se a Opção Syntax Check
Não houve
Erro de
Sintaxe
Verifica Erros
de Sintaxe
19
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
No caso de ocorrer um erro a caixa de mensagens aparecerá indicando qual o tipo de erro
cometido. No caso existe um identificador que não foi declarado.
Descobrindo o Erro
Clicando duas vezes sobre a linha que identifica o erro o foco é deslocado para local onde
encontra-se o erro.
20
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
No caso da figura x.x o mensagem de erro aponta que um identificador não foi declarado. O
foco está sobre o contato Deslig. A variável foi declarada como Desliga. Pode-se corrigir o Tag do
contato para Desliga ou a declaração da variável para Deslig.
2. Passo: Configurar o Hardware. O CLP PS4-201-MM1, permite a expansão de sua capacidade
de controle conectando-se em rede com módulos externo EM4, e módulos de expansão local
LE4.
Topology Configurator, os arquivos são criados com a extensão .dcf (device configuration) e
salvos em kompo.sys. Em salvar "save" o arquivo é criado com o nome do projeto no caso pmotoret
com a extensão dcf ⇒ c:pmotoretkompo.syspmotoret.dcf
O arquivo com o programa do usuário é salvo com a extensão .poe. É salvo na pasta
c:pmotortkompo.syspmotoret.poe
Topology Configurator ⇒ Configuration ⇒ New ⇒ File Name
digite PMOTORET ⇒ Em PLC Type selecione ⇒ PS4-201-
MM1 ⇒ OK ⇒ Configuration ⇒ Save ⇒ Configuration ⇒ Exit.
3. Gerando o Código de Máquina.
Program Code Generation Generate ⇒ Generate All
21
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Outra opção para gerar o código fonte é no POU-Editor em File Generate Code. Clicando em
sim aparecerá a tela da figura x.x
Clicando em Ok ⇒ Generate ⇒ Generate All
Clicando no botão sim onde está o foco temos:
O Program Code Generation criou o arquivo pmotor.mak. O pmortor.mak é o código fonte que
após ser "link-editado" poderá ser executado pelo CLP.
22
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
4. Transferência do Programa executável do Computador para o CLP. Test Commissinoning.
O status indica que o CLP e o Computador não estão logicamente conectados. Clicando no
Botão Connect, o computador tentará uma conexão com o CLP.
Transferindo o programa do Computador para o CLP.
Transfer... ⇒ aparecerá a Tela do Tranfer/File-Manager
.
23
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Clicar no arquivo pmotoret.pcd ⇒ Transfer → PLC. O programa informará que o CLP está
rodando um programa, e perguntará se deseja parar de rodar o programa, conforme tela da figura x.x
Clicando em sim o programa será transferido conforme tela da figura x.x
Após a transferência o programa perguntará se deseja rodar o novo programa carregado
conforme tela da figura x.x
O botão de compare o programa selecionado no computador com o que está na memória do
CLP permite saber qual é o programa está rodando no CLP.
24
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Explicação Detalhada do Bloco de Função MS_TimeRising
Function block prototype MS_TimeRising
On_delay timer, milisenconds
Ms_TimeRising
ElapsedTime
OutputControl
PresetTime
Hold
Reset
Set
Set Start condition, rising edge
ReSet Reset condition
Hold Time interruption
PresetTime Time setpoint in milliseconds
OutputControl Control output
ElapsedTime Time actual value in milliseconds
Description
Time diagram
(1) (2) (3) (4) (5)
THOLD
Hold
Reset
Set
T
OutputControl
T
T + THOLD
25
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Simbologia
A simbologia dos blocos de função tem por objetivo representar as relações entre as entradas e
as saídas sem que para isto seja necessário apresentar explicitamente sua lógica interna.
Ms_TimeRising
Set
Símbolo de
Qualificação
de Entrada
Entradas Saídas
As linhas de entrada são colocadas à esquerda, exceto quando indicadas por meio de setas nas
linhas de acesso.
Entrada Dinâmica Ativada na
Borda de Subida
O símbolo de qualificação de entrada
A entrada Set aciona a contagem de tempo a partir da borda de subida do sinal aplicado. A
partir da borda de subida da entrada Set o temporizador conta o tempo T e a saída OutputControl vaí
para um (1), e permanece em um até que o sinal aplicado a entrada Set volte para zero (0).
T
Set
OutputControl
Entrada Dinâmica Ativada na
Borda de Descida
O símbolo de qualificação de entrada
26
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Metodologia de Programação
A metodologia de programação tem por objetivos: programas legíveis, claros, confiáveis,
eficazes, de rápida depuração com alta produtividade.
Procedurais ⇒ Estruturada
Orientadas a Objetos
Orientada a Eventos
O prof. Edsgar W. Dijkstra da Tecnological University of Eindhoven, Holanda, 1965,
introduziu os primeiros conceitos de programação estruturada.
O programa não é um fim em si mesmo. O desenvolvedor apresenta um programa como
resposta a uma necessidade do usuário (quem o solicita). Para desenvolver um programa não basta
escolher uma linguagem e aprender sua sintaxe. A linguagem de programação é a etapa final do
desenvolvimento de um programa.
O programa ao longo da vida, útil quase que seguramente, terá algumas manutenções que irão
gerar nova codificação e testes. Os custos com a manutenção em boa parte das vezes chega a
equiparar-se com os custos de elaboração.
É aconselhável que o desenvolvedor, ciente deste problema, dedique tempo à elaboração do
programa e a documentação. Sem responder algumas perguntas será difícil garantir a qualidade do
programa desenvolvido. Como tratar o problema?, quais os métodos de solução? Que tipos de dados
de entrada e saída estão envolvidos?.
A partir das respostas a estas perguntas é possível elaborar um algoritmo. Só então passa-se a
codificação. Após execução e depuração o programa está pronto. A documentação, é também um
histórico e, deve ser construída a cada passo desde a abordagem à depuração
Deve-se desenvolver um estilo modular de programação. Os módulos devem interligar-se por
uma lógica clara, sempre de olho na semântica (representação do sentido dos enunciados) da
linguagem
27
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Esboço ⇒ Pseudocódigos, Fluxogramas
Método de solução (algoritmo)
Input e output dos dados
Codificação
Execução, Depuração
Elaboração ⇒
Lógica
"A linguagem natural nem sempre é clara e precisa, sendo muito comum a ocorrência de
ambigüidades que geram dúvidas sobre o significado do que se está falando.
Por isso, um dos objetivos da lógica é estabelecer uma linguagem formal, onde se pode
expressar com clareza, precisão e emitir juízo de verdadeiro e falso para determinadas frases
(elemento de comunicação que relaciona palavras entre si de modo a estabelecer uma mensagem com
sentido completo".4
A lógica é a arte do pensar correto. Deve-se aprender a ordenar o pensamento e expressá-lo
claramente.
Algoritmo
"O algoritmo não é a solução do problema , mas o meio de obtê-la".
Definição: "Um algoritmo é uma seqûencia ordenada finita de operações bem definidas e eficazes que,
quando executadas por um computador, operando sobre dados caracterizando o estado atual do
contexto e o estado desejado, sempre termina num determinado período de tempo, produzindo uma
solução ou indicando que a solução não pôde ser obtida". 11
Algoritmos convencionais são compostos de duas partes:
• Um componente de lógica, que contém o conhecimento sobre um dados problema;
• Um componente de controle, que contém a metodologia de como aplicar o conhecimento para
resolver o problema.
28
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
O algoritmo é a descrição de um conjunto de ações conhecidas e ordenadas que resultam no
objetivo. Existem algoritmos, no dia-a-dia, prontos na nossa mente, que quase sempre podem ser
repensados e redimensionados.
Quem tem como objetivo, por exemplo, jogar Duke Nukem®
3D em rede, precisa certificar-se de
algumas coisas e tomar algumas providências antes de jogar. Verificar se o a rede está acessível. Onde
está a vítima. opps! Quero dizer o parceiro e assim por diante.
Prever todos os obstáculos e situações possíveis nem sempre é fácil. Existem algoritmos mais
complexos e outros mais simples, depende do objetivo (onde se quer chegar) e da clareza de raciocínio
do programador.
A clareza de raciocínio do programador pode avaliada pela legibilidade (qualidade de legível) do
algoritmo.
O algoritmo representado numa linguagem adequada (natural, em português estruturado ou
gráfica), permite que o mesmo seja escrito em qualquer linguagem de computador.
Quase sempre existe mais de um algoritmo para resolver um determinado problema. Qual é o
melhor? O tamanho do programa e o tempo de execução devem ser levados em consideração para
escolha.
Sumário das Funções IEC 1131-3 e Moeller
No. Function block Description
Edge detection
1 F_TRIG Edge detection, falling edge
2 R_TRIG Edge detection, rising edge
Flip-flops
3 RS RS Flip-Flop
4 SR SR Flip-Flop
Date and time
29
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
5 RealTimeClock Compare with real-time clock
6 RTC Set real-time clock
7 GetRealTimeClock Read real-time clock
8 SetRealTimeClock Set real-time clock (only PS4-200, PS4-300)
9 DATconcat Concatenate DATE_AND_TIME
10 DATsplit Split DATE_AND_TIME
11 DateConcat Concatenate DATE
12 DateSplit Split DATE
13 TimeConcat Concatenate TIME
14 TimeSplit Split TIME
15 TODconcat Concatenate TOD
16 TODsplit Split TOD
Timing FBs
17 MS_TimeFalling Off-delay timer, milliseconds
18 MS_TimeRising On-delay timer, milliseconds
19 S_TimeFalling Off-delay timer, seconds
20 S_TimeRisingOn-delay timer, seconds
21 TimeGenerator Clock generator
22 TimePulse Pulse generator
23 TOF Off delay
24 TON On delay
25 TP Pulse
Counter and comparison FBs
26 _16BitCounter 16-bit up/down counter
27 _32BitCounter 32-bit up/down counter (only PS416, PS4-300)
28 CounterLE Control of the Counter LE module (only PS4-200, PS4-300)
29 CTD Down counter
30 CTU Up counter
31 CTUD Up and down counter
32 _16Bit_Compare 16-bit comparator
33 _32Bit_Compare 32-bit comparator (only PS416, PS4-300)
34 SSI-Encoder Absolute value encoder (only PS4-300)
30
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
35 IncEncoder Inkremental encoder (only PS4-300)
Register operations
36 SR_x 1-bit shift register
37 SRB_x8-bit shift register
38 SRW_x 16-bit shift register
39 LifoBx8-bit LIFO register
40 LifoWx 16-bit LIFO register
41 FifoBx8-bit FIFO register
42 FifoWx 16-bit FIFO register
Code converters
43 _16BitBinaryToBCD 16-bit binary/decimal code converter
44 _32BitBinaryToBCD 32-bit binary/decimal code converter (only PS416, PS4-300)
45 BCDTo16BitBinary 16-bit decimal/binary code converter
46 BCDTo32BitBinary 32-bit decimal/binary code converter (only PS416, PS4-300)
Array operations
47 CompareArray Data block comparison or value search
48 TransferArray Copy or initialise array
49 Serialize Copy data structure to array
50 Deserialize Extract data from array
51 BlockCompare Data block comparison or value search (only PS4-200, PS4-300)
52 BlockTransferCopy or initialise data block (only PS4-200, PS4-300)
Sequence control
53 SFC_x Sequence control function block (only PS4-200, PS4-300)
String processing
54 COMtoSTR Convert received characters to STRING
55 STRtoCOM Copy string to marker area
56 ADRtoSTR Convert received characters to STRING (only PS4-200, PS4-300)
57 STRtoADR Copy string to marker area (only PS4-200, PS4-300)
31
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Communication
58 ASi_PARAM Change slave parameters during operation: ASi_PARAM (only PS4-200, PS4-
300)
59 DE4netK Frequency inverters DF4
60 MI4K Communication function block MI4 (only PS4-200, PS4-300)
61 MI4netK Communication function block MI4
62 DialOrHangup Establish or clear a connection to a DTE via modem (only PS416, PS4-
300)
63 SendATCommand Send AT command to a modem (only PS416, PS4-300) {bmc
64 COM Serial communication function block (only PS416)
65 SCO Serial communication function block (only PS4)
66 PSCO Profibus-FMS communication (only PS4-200, PS4-300)
67 MOD200 Serial communication via MODBUS /IBUS (only PS416)
68 SUCOM_A Protocol emulation for direct memory access (only PS416)
69 SuconetP PROFIBUS-FMS communication (only PS416)
70 SuconetS_BGKS InterBus communication (only PS416)
71 PdpStationDiag Request diagnostics data from PROFIBUS-DP station (only PS416)
Reading and writing the memory card
72 ReadMC Read data from memory card
73 WriteMC Save data on memory card
74 SetMCFileLength Create and initialise data file (only PS416)
75 ReloadData Read data from memory card (only PS4-200, PS4-300)
76 SaveData Save data on memory card (only PS4-200, PS4-300)
Alarm FBs
77 CounterAlarmCounter alarm (only PS4-200, PS4-300)
78 CAlarm Counter alarm (only PS416)
79 EdgeAlarm Edge alarm (only PS4-200, PS4-300)
80 FAlarm Edge alarm (only PS416)
81 TimerAlarm Timer alarm (only PS4-200, PS4-300)
82 TAlarm Timer alarm (only PS416)
PS416-specific FBs
32
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
83 PS_ApplicationHalt Stop the user program (only PS416, PS4-300)
84 PS_ClearKOMBit Clear "KOM" diagnostic bit (only PS416)
85 PS_Diagnostic Read diagnostic flags (only PS416, PS4-300)
86 PS_GetDateAndTimeRead real-time clock (only PS416, PS4-300)
87 PS_Message Scan cycle status (only PS416)
88 PS_SwitchPosition Read switch position (only PS416, PS4-300)
89 CPUDataExchange Exchange data between PLCs (only PS416)
90 ColdstartRetention Definition of cold start retentive marker area (only PS416)
91 ReadDirect Direct reading from digital inputs (only PS416)
92 WriteDirect Direct writing to digital outputs (only PS416)
93 ReadAnalogDirect Direct reading from analog inputs (only PS416)
94 WriteAnalogDirect Direct writing to analog outputs (only PS416)
95 ReadCounterDirect Direct reading from counter inputs (only PS416)
OS system function block
96 PS_ReadOSInfo Scan operating system information
Referências Bibliográficas
MOELLER. Training Guide Sucosoft S 40 Programming Software. Alemanha: 2a
ed. Jul. 1998, 140 p.
33
Centro Federal de Educação Tecnológica de São Paulo
Prof. Eng.M.Sc. d'Avila
Exercícios de Fixação
1. Uma comissão formada por Presidente, diretor Administrativo, diretor Financeiro e diretor de
Marketing se reúnem para analisar e aprovar questões relativas a empresa. Uma proposta é
aprovada se recebe a maioria dos votos ou se o presidente e qualquer outro membro votar a
favor.
presid adm finan mark saída
0 0 0 0 0
0 0 0 1 0
0 0 1 0 0
0 0 1 1 0
0 1 0 0 0
0 1 0 1 0
0 1 1 0 0
0 1 1 1 1
1 0 0 0 0
1 0 0 1 1
1 0 1 0 1
1 0 1 1 1
1 1 0 0 1
1 1 0 1 1
1 1 1 0 1
1 1 1 1 1
A partir da tabela da verdade podemos construir o mapa de Veitch-Karnaugh
S = ( P . A ) + ( P . M ) + ( P . F ) + ( F . A . M ) aplicando a propriedade distributiva
S = P . ( A + F + M ) + ( A . F . M )

More Related Content

What's hot

Guia de primeiros passos do logo!
Guia de primeiros passos do logo!Guia de primeiros passos do logo!
Guia de primeiros passos do logo!Marcio Miranda
 
Automação projeto de semáforo
Automação projeto de semáforoAutomação projeto de semáforo
Automação projeto de semáforoantonio sena
 
Automação com clp (ladder)
Automação com clp (ladder)Automação com clp (ladder)
Automação com clp (ladder)laenio
 
Automação industrial prof. msc. marcelo eurípedes da silva, eep – escola de...
Automação industrial   prof. msc. marcelo eurípedes da silva, eep – escola de...Automação industrial   prof. msc. marcelo eurípedes da silva, eep – escola de...
Automação industrial prof. msc. marcelo eurípedes da silva, eep – escola de...Everton_michel
 
Curso basico automatos programaveis dia 1
Curso basico   automatos programaveis dia 1Curso basico   automatos programaveis dia 1
Curso basico automatos programaveis dia 1Alcides Santos
 
Apostila plc - siemens step 7
Apostila   plc - siemens step 7Apostila   plc - siemens step 7
Apostila plc - siemens step 7Roberto Sousa
 
Introdução automação
Introdução automaçãoIntrodução automação
Introdução automaçãopanelada
 
Automação industrial1 parte1 23_2_2011
Automação industrial1 parte1 23_2_2011Automação industrial1 parte1 23_2_2011
Automação industrial1 parte1 23_2_2011José Carlos Carlos
 
Apostila sobre controlador lógico programável avançado
Apostila sobre controlador lógico programável avançadoApostila sobre controlador lógico programável avançado
Apostila sobre controlador lógico programável avançadoClaudio Arkan
 
3020515 apostila-automacao-industrial (1)
3020515 apostila-automacao-industrial (1)3020515 apostila-automacao-industrial (1)
3020515 apostila-automacao-industrial (1)Mércia Regina da Silva
 

What's hot (17)

Curso clp siemens
Curso clp siemensCurso clp siemens
Curso clp siemens
 
Clp
ClpClp
Clp
 
Guia de primeiros passos do logo!
Guia de primeiros passos do logo!Guia de primeiros passos do logo!
Guia de primeiros passos do logo!
 
Automação projeto de semáforo
Automação projeto de semáforoAutomação projeto de semáforo
Automação projeto de semáforo
 
Automação com clp (ladder)
Automação com clp (ladder)Automação com clp (ladder)
Automação com clp (ladder)
 
Automação industrial prof. msc. marcelo eurípedes da silva, eep – escola de...
Automação industrial   prof. msc. marcelo eurípedes da silva, eep – escola de...Automação industrial   prof. msc. marcelo eurípedes da silva, eep – escola de...
Automação industrial prof. msc. marcelo eurípedes da silva, eep – escola de...
 
Curso basico automatos programaveis dia 1
Curso basico   automatos programaveis dia 1Curso basico   automatos programaveis dia 1
Curso basico automatos programaveis dia 1
 
Clp logo e s7 200
Clp logo e s7 200Clp logo e s7 200
Clp logo e s7 200
 
Apostila plc - siemens step 7
Apostila   plc - siemens step 7Apostila   plc - siemens step 7
Apostila plc - siemens step 7
 
Introdução automação
Introdução automaçãoIntrodução automação
Introdução automação
 
Automação industrial1 parte1 23_2_2011
Automação industrial1 parte1 23_2_2011Automação industrial1 parte1 23_2_2011
Automação industrial1 parte1 23_2_2011
 
Clp siemens
Clp siemensClp siemens
Clp siemens
 
Automacao
AutomacaoAutomacao
Automacao
 
Clp basico
Clp basicoClp basico
Clp basico
 
Apostila clp
Apostila clpApostila clp
Apostila clp
 
Apostila sobre controlador lógico programável avançado
Apostila sobre controlador lógico programável avançadoApostila sobre controlador lógico programável avançado
Apostila sobre controlador lógico programável avançado
 
3020515 apostila-automacao-industrial (1)
3020515 apostila-automacao-industrial (1)3020515 apostila-automacao-industrial (1)
3020515 apostila-automacao-industrial (1)
 

Similar to Controle de Processos com CLP

Manual_Servicos_Refrigeradores_DF51-DF51X-DF52-DF52X-DFW52-DW52X_Rev01_Jul13_...
Manual_Servicos_Refrigeradores_DF51-DF51X-DF52-DF52X-DFW52-DW52X_Rev01_Jul13_...Manual_Servicos_Refrigeradores_DF51-DF51X-DF52-DF52X-DFW52-DW52X_Rev01_Jul13_...
Manual_Servicos_Refrigeradores_DF51-DF51X-DF52-DF52X-DFW52-DW52X_Rev01_Jul13_...PandaRefrigerao
 
3400 balanca toledo_2011-08-09
3400 balanca toledo_2011-08-093400 balanca toledo_2011-08-09
3400 balanca toledo_2011-08-09Robson Simão
 
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.ANTONIO INACIO FERRAZ
 
Apostila completa de eletrônica digital.
Apostila completa de eletrônica digital.Apostila completa de eletrônica digital.
Apostila completa de eletrônica digital.Paulo Henrique
 
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.ANTONIO INACIO FERRAZ
 
Apostila completa de eletronica digital.
Apostila completa de eletronica digital.Apostila completa de eletronica digital.
Apostila completa de eletronica digital.Vitorjulio Pereira
 
-ELETRONICA DIGITAL-ANTONIO INACIO FERRAZ, TÉCNICO EM ELETRONICA ,AGROPECUÁRI...
-ELETRONICA DIGITAL-ANTONIO INACIO FERRAZ, TÉCNICO EM ELETRONICA ,AGROPECUÁRI...-ELETRONICA DIGITAL-ANTONIO INACIO FERRAZ, TÉCNICO EM ELETRONICA ,AGROPECUÁRI...
-ELETRONICA DIGITAL-ANTONIO INACIO FERRAZ, TÉCNICO EM ELETRONICA ,AGROPECUÁRI...Antonio Inácio Ferraz
 
Controladores Lógicos Programáveis parte-1
Controladores Lógicos Programáveis parte-1Controladores Lógicos Programáveis parte-1
Controladores Lógicos Programáveis parte-1andydurdem
 
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02Cláudio Alves
 
Microcontroladores pic ling c unicamp
Microcontroladores pic ling c unicampMicrocontroladores pic ling c unicamp
Microcontroladores pic ling c unicampFrancisco Fambrini
 
Apostila branqs exercicios plc módulo 1
Apostila branqs exercicios plc módulo 1Apostila branqs exercicios plc módulo 1
Apostila branqs exercicios plc módulo 1MARCELO DOS OLIVEIRA
 

Similar to Controle de Processos com CLP (20)

Trabalho final
Trabalho finalTrabalho final
Trabalho final
 
Manual_Servicos_Refrigeradores_DF51-DF51X-DF52-DF52X-DFW52-DW52X_Rev01_Jul13_...
Manual_Servicos_Refrigeradores_DF51-DF51X-DF52-DF52X-DFW52-DW52X_Rev01_Jul13_...Manual_Servicos_Refrigeradores_DF51-DF51X-DF52-DF52X-DFW52-DW52X_Rev01_Jul13_...
Manual_Servicos_Refrigeradores_DF51-DF51X-DF52-DF52X-DFW52-DW52X_Rev01_Jul13_...
 
3400 balanca toledo_2011-08-09
3400 balanca toledo_2011-08-093400 balanca toledo_2011-08-09
3400 balanca toledo_2011-08-09
 
Clic 02-manual
Clic 02-manualClic 02-manual
Clic 02-manual
 
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.
 
Apostila completa de eletrônica digital.
Apostila completa de eletrônica digital.Apostila completa de eletrônica digital.
Apostila completa de eletrônica digital.
 
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.
ANTONIO INACIO FERRAZ-ESTUDANTE DE FARMÁCIA EM CAMPINAS SP.
 
Apostila completa de eletronica digital.
Apostila completa de eletronica digital.Apostila completa de eletronica digital.
Apostila completa de eletronica digital.
 
-ELETRONICA DIGITAL-ANTONIO INACIO FERRAZ, TÉCNICO EM ELETRONICA ,AGROPECUÁRI...
-ELETRONICA DIGITAL-ANTONIO INACIO FERRAZ, TÉCNICO EM ELETRONICA ,AGROPECUÁRI...-ELETRONICA DIGITAL-ANTONIO INACIO FERRAZ, TÉCNICO EM ELETRONICA ,AGROPECUÁRI...
-ELETRONICA DIGITAL-ANTONIO INACIO FERRAZ, TÉCNICO EM ELETRONICA ,AGROPECUÁRI...
 
Chiller
ChillerChiller
Chiller
 
Relatório final
Relatório finalRelatório final
Relatório final
 
Manual zelio port
Manual zelio portManual zelio port
Manual zelio port
 
Cap1.pdf
Cap1.pdfCap1.pdf
Cap1.pdf
 
Controladores Lógicos Programáveis parte-1
Controladores Lógicos Programáveis parte-1Controladores Lógicos Programáveis parte-1
Controladores Lógicos Programáveis parte-1
 
ATmega Prática
ATmega PráticaATmega Prática
ATmega Prática
 
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
Microcontroladores pic lingc unicamp-150206140414-conversion-gate02
 
Microcontroladores pic ling c unicamp
Microcontroladores pic ling c unicampMicrocontroladores pic ling c unicamp
Microcontroladores pic ling c unicamp
 
Apostila branqs exercicios plc módulo 1
Apostila branqs exercicios plc módulo 1Apostila branqs exercicios plc módulo 1
Apostila branqs exercicios plc módulo 1
 
Corrente Alternada 2
Corrente Alternada 2Corrente Alternada 2
Corrente Alternada 2
 
Automação PLC
Automação PLCAutomação PLC
Automação PLC
 

Recently uploaded

MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAMMODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAMCassio Rodrigo
 
Treinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção IndividualTreinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção Individualpablocastilho3
 
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdfLivro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdfSamuel Ramos
 
LEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaLEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaGuilhermeLucio9
 
A Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboralA Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboralFranciscaArrudadaSil
 
Tecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraTecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraGuilhermeLucio9
 
Estatística aplicada à experimentação animal
Estatística aplicada à experimentação animalEstatística aplicada à experimentação animal
Estatística aplicada à experimentação animalleandroladesenvolvim
 
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animalFISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animalPauloHenrique154965
 
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdfPLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdfAroldoMenezes1
 
Eletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréEletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréGuilhermeLucio9
 
Aula de classificação de rolamentos norma DIN
Aula de classificação de rolamentos norma DINAula de classificação de rolamentos norma DIN
Aula de classificação de rolamentos norma DINFabioFranca22
 

Recently uploaded (11)

MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAMMODELO LAUDO AVALIAÇÃO MÁQUINAS  EQUIPAM
MODELO LAUDO AVALIAÇÃO MÁQUINAS EQUIPAM
 
Treinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção IndividualTreinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção Individual
 
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdfLivro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
 
LEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaLEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurança
 
A Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboralA Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboral
 
Tecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraTecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade Anhanguera
 
Estatística aplicada à experimentação animal
Estatística aplicada à experimentação animalEstatística aplicada à experimentação animal
Estatística aplicada à experimentação animal
 
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animalFISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
FISIOLOGIA DA REPRODUÇÃO. matéria de fisiologia animal
 
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdfPLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
PLANO DE EMERGÊNCIA E COMBATE A INCENDIO.pdf
 
Eletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréEletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante Tamandaré
 
Aula de classificação de rolamentos norma DIN
Aula de classificação de rolamentos norma DINAula de classificação de rolamentos norma DIN
Aula de classificação de rolamentos norma DIN
 

Controle de Processos com CLP

  • 2. Sumário Controle em Malha-Fechada................................................................................................1 Definições ............................................................................................................................1 Introdução ............................................................................................................................4 Partida de motores Trifásicos: Acionamento por Botão....................................................5 Partida Υ/∆ (Estrela/triângulo) de motores Trifásicos .......................................................6 Características básicas do Controlador Programável PS4-201 MM1® .................................7 Fluxograma ........................................................................................................................11 Passo: Project Manager — Criar um novo projeto.............................................................12 Editar o Programa do usuário. POU-Editor — Program Organisation Unit-Editor..............12 Começando a Programar em Ladder.................................................................................13 Declarando as Variáveis.................................................................................................17 Syntax Check .................................................................................................................18 Descobrindo o Erro.........................................................................................................19 Explicação Detalhada do Bloco de Função MS_TimeRising..............................................24 Lógica.................................................................................................................................27 Algoritmo............................................................................................................................27 Sumário das Funções IEC 1131-3 e Moeller......................................................................28 Referências Bibliográficas .....................................................................................................32 Exercícios de Fixação............................................................................................................33
  • 3. 1 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila 1. Automação industrial O objetivo da Automação industrial é o de tornar os processos automáticos, isto é, desenvolver tecnologias para que os trabalhos realizados por homens sejam realizados por máquinas que se movam, regulem e operem por si mesmas. Controle em Malha-Fechada Um sistema de controle pode ser representado pelos blocos da figura 1.1. Medição Processo Controle Atuação Figura 1.1 - Sistema de Controle Podemos dizer que a Automação Industrial é um conjunto de técnicas destinadas a tornar automáticos vários processos numa indústria. Definições Medição ⇒ Responsável pela transformação da grandeza que se deseja controlar num sinal que possa ser manipulado pelo sistema de controle.
  • 4. 2 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Atuação ⇒ Responsável pela transformação do sinal de saída do controlador no sinal que possa comandar a variável de entrada do sistema que está sob controle. Processo ⇒ Operação que evolui progressivamente e que se constitui por uma série de ações controladas objetivando um particular resultado. Controle Realimentado ⇒ É uma operação que na presença de distúrbios , tende a reduzir a diferença entre a saída de um sistema e a entrada de referência. Controle Automático Para realizar o controle dos processos existe o Controlador Lógico Programável que pode ocupará o bloco de controle da figura x.x. Medição Processo Atuação Figura x.x - Controle Automático com CLP na malha de Realimentação
  • 5. 3 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila O Sr. Armando confusão, no exemplo da figura x.x, está controlando a temperatura da água para uso em um hotel. Pode-se ver no exemplo os blocos: Processo, Medição, Controlador, Atuação. Misturador Trocador de Calor Serpentina Processo Aquecer água utilizando a energia térmica do vapor Atuador Vávula Medição Sensor Controlador
  • 6. 4 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Partida Υ/∆ (Estrela/triângulo) Introdução A Norma Técnica Unificada — NTU.01, para fornecimento de energia elétrica em tensão secundária a edificações individuais tem por objetivo orientar os consumidores individuais das áreas de concessão da CESP, CPFL e Eletropaulo. A NTU.01 orienta que: motores trifásicos de gaiola ou de indução com potência acima 5 (C.V.), devem partir de forma indireta. Um possível sistema de partida indireta é a manobra Υ/∆ (estrela/triângulo). O sistema de manobra Υ/∆ (estrela/triângulo) tem por objetivo reduzir a corrente de partida de motores.. As companhias fornecedoras de energia elétrica fixam valores máximos para a corrente de partida. Se o motor a ser instalado possuí uma corrente de partida maior que a fixada é necessário implementar um circuito que minimize a corrente de partida. A partida Υ/∆ é normalmente implementada por contatores e um temporizador. Pode-se, no entanto, utilizar um Controlador Lógico Programável — CLP para esta finalidade. A partida Υ/∆ com contatores e temporizador é mais econômica que a partida Υ/∆ utilizando um CLP. Evidentemente a utilização do CLP numa única partida de motor está limitada aos casos onde o CLP realiza também outras funções e existam entradas e saídas disponíveis.
  • 7. 5 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Partida de Motores Acionamento por Botão Partida de motores Trifásicos: Acionamento por Botão Fusível Geral e Circuito de comando didático simplificado. Acionamento por botão. b0 = Botão de Comando Desliga (normalmente fechado) e Relé Térmico b1 = Botão de Comando Liga (normalmente aberto) c1 = Contator de Rede 1 Contato Abridor (normalmente fechado) c2 = Contator Estrela c 2 c3 = Contator Triângulo 3 Contato Fechador (normalmente aberto) d1 = Relé Temporizador 4c R d1 d1 c1 c2 c3 N cc c c2 c1 d1b0 b1
  • 8. 6 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Partida Υ/∆ (Estrela/triângulo) de motores Trifásicos Forma de Operação: Acionamento por botão. Ligação: 1. Botão de comando b1 aciona o contator estrela c2e o dispositivo de retardamento d1. 2. O contato fechador c2 atua sobre o contator de rede c1, cujo contato fechador opera. 3. O motor entra em funcionamento em estrela. Comutação: 1. Decorrido o retardamento, o contato abridor d1 opera e o contator estrela c2 é desligado. 2. Quando o contato abridor de c2 fecha, entra o contator triângulo c3, pois o contato fechador de c1 já estava fechado quando c1 ligou. 3. O motor funciona, agora, em triângulo. Interrupção: 1. Acionado o botão b0, interrompe o contator c1. Contato fechador de c1 abre-se em seguida; o contator triângulo e o motor são desligados.
  • 9. 7 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila PLC — Programmable Logic Controller Segundo a ABNT — Associação Brasileira de Normas Técnicas o PLC — Programmable Logic Controller (Controlador Lógico Programável), é um equipamento eletrônico digital com hardware e software compatíveis com aplicações industriais. No Brasil o termo CLP — Controlador Lógico Programável, foi registrado pela Allen Bradley. O PLC é um dispositivo que permite construir lógicas de automação flexíveis de instalação rápida ocupando pequeno espaço físico. É um equipamento para tarefas de automação como: Controle Regulação Operação Cálculos Posicionamento Medições ® 24V/0,5A protegidas contra curto-circuito e sobrecarga, e 01 Analógica de 12 Expans nstalado no PC (Personal Computer) e transferido através da porta serial (RS232C) para o PS4. Comunicação Imagem extraída do livro: Controle de Processos. Ogata Características básicas do Controlador Programável PS4-201 MM1 08 entradas Digitais e 02 Analógicas de 10 bits (de 0 a 10 V) 06 Saídas Digitais bits ( de 0 a 10 V) ível localmente ou remotamente o Localmente ⇒ Módulos LE4 o Remotamente ⇒ Módulos EM4 Programável em Lista de Instrução, Ladder ou blocos. Programas desenvolvidos no SUCOSOFT i
  • 10. 8 Prof. Eng.M.Sc. d'Avila Centro Federal de Educação Tecnológica de São Paulo Controlador Programável PS4-201-MM1 da Moeller Foto extraída do catálogo da Moeller
  • 11. 9 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Controlador Programável PS4-201-MM1 da Moeller Vista Frontal Imagem extraída do catálogo da Moeller 10 11 12 13 14 15 16 17 6 saídas digitais, 02 entradas analógicas Interface SUCOnet K Potenciômetros Resistência de final de bus Interface de Programação Montagem em trilho DIN Módulo de expansão de memória Sinalização de Estado da CPU Entrada para fonte de alimentação Entrada do contador rápido Entrada de interrupção 1 Presilha de fixação Entradas digitais e alimentação das saídas Conector do tipo plug-in Sinalização de estado das entradas Sinalização de estado das saídas 2 3 4 5 6 7 8 9 Conector do tipo plug-in
  • 12. 10 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Com um duplo clique no Atalho S40 tem-se acesso à barra de ferramentas do Sucosoft Manager — Tools. Atalho para acessar rapidamente o SUCOSOFT na Área de Trabalho Iniciando o SUCOSOFT O arquivo executável é o WORKB.EXE C:S40WORKB.EXE Project Manager Topology Configurator POU-Editor Code Generation Test and Commissioning Programando com o SUCOSOFT® da Moeller Figura x.x - Seqüência de Programação SUCOSOFT S 40 da Moeller (jul. 98, p.20).
  • 13. 11 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Fluxograma Sintaxe Correta? Compilar Code Generate Transferir Programa para o CLP Testes Ok? Executar Programa O Programa Soluciona o Problema de Automação? 1 S N 2 S N S 4 2 Problema de Automação Algoritmo Editar o Programa do Usuário. POU-Editor Declarar Variáveis Configurar Topologia Criar um Projeto no Sucosoft. Project Manager 1 Verificar Sintaxe Syntax Check Início Testes e Comissionamento N 4 3 Fim
  • 14. 12 Prof. Eng.M.Sc. d'Avila Centro Federal de Educação Tecnológica de São Paulo Passo: Project Manager — Criar um novo projeto Project Manager ⇒ Project ⇒ New ⇒ Project Patch ⇒ digite C:PMOTORET ⇒ Project ⇒ Exit No conceito de hierarquia do Windows® temos: Área de Trabalho ⇒ Computador do Usuário ⇒ Unidade de Discos ⇒ Pastas ⇒ Subpastas ⇒ Arquivos. A pasta de projeto pmotoret, com suas subpastas e arquivos, será guardada na unidade de disco "C". Para dar nome ao projeto é necessário lembrar as regras para nomear arquivos do DOS — Disk Operating System. Embora o SUCOSOFT S40 versão 3.01 seja desenvolvida para o ambiente Windows, ele ainda guarda esta restrição do sistema operacional DOS. Regras para nomear pastas e arquivos: Podem ter até oito caracteres. Não são sensíveis a maiúsculas e minúsculas. Podem conter apenas letras de A a Z, os números de 0 a 9, e os seguintes caracteres especiais: _ ^ $ ~ ! # % & - { } @ ' ( ). Não podem conter espaços, vírgulas, barras invertidas ou pontos (exceto o ponto que separa o nome da extensão. Não podem ser idênticos a outro nome de arquivo ou subpastas da mesma pasta. Procure criar um nome mnemônico — que ajude a memória, que facilite a localização e a lembrança do conteúdo. Por exemplo: pmotoret é o acrograma de Partida Motor Estrela/Triangulo. Acrograma é a palavra formada pela redução de palavras ou expressões a letras ou sílabas iniciais. A árvore de pastas é criada automaticamente. A árvore é a hierarquia entre pastas e subpastas com seus respectivos arquivos. Editar o Programa do usuário. POU-Editor — Program Organisation Unit- Editor POU-Editor ⇒ File ⇒ New ⇒ na caixa de diálogo selecione ⇒ Program ⇒ New ⇒ Option ⇒ Syntax-Controlled Mode ⇒ Option ⇒ Programming Language ⇒ LD ⇒ Window ⇒ Tile.
  • 15. 13 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Começando a Programar em Ladder Iniciando a Programação Inserção da Lógica Após a inserção da lógica é hora de nomear os contatos. Com um clique do botão direito em cima do contato aparecerá o menu de atalho Com um clique em Name Element..., aparecerá a caixa um caixa de diálogo, onde iremos nomear o contato. As regras para nomerar um contato são:
  • 16. 14 Centro Federal de Educação Tecnológica de São Paulo Clicando em Ok o nome aparecerá acima do contato nomeado. A seguir vamos inserir um contato em série com o contato Liga. Clicando sobre a linha na frente do contato Liga a linha ficará sombreada conforme figura x. Clicando com o botão direito do mouse sobre a área sombreada aparecerá o menu de atalho, escolha a opção insert AND. Apertando a barra de espaço o contato passará de normalmente aberto para normalmente fechado, outra opção que gera o mesmo resultado é clicar com o botão direito do mouse sobre o contato inserido e escolher a opção Negate Spacebar. Inserindo nova linha do diagrama Ladder: Vamos inserir um bloco de função definido pelo fabricante para gerar um atraso de tempo entre o instante que se liga o contator estrela e o instante em que se desliga o contator estrela e se ligue o contator triangulo. O SUCOSOFT® da Moeller possui blocos de função padrão IEC1131.3 e blocos padrão Moeller, que estão disponíveis para o programador. O IEC — International Electrotechnical Commission, é um orgão de padronização no âmbito internacional. Para acessar os blocos de função: Symbols ou Data Types ⇒ Manufactuer-Defined Function Blocks... ⇒ Selecione MS_TimeRising. Quando o foco estiver na janela do editor de linguagens aparecerá Symbols ao invés de Data Types. O procedimento é o mesmo. Para mudar o foco basta clicar na barra de títulos da janela LD/FDB-Editor. Prof. Eng.M.Sc. d'Avila Barra de Títulos Foco no Editor de Variáveis
  • 17. 15 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Escolha o bloco de função MS_TimeRising na tela de menu, dê um nome, para o bloco escolhido, digite em Instance Name ⇒ Temp, que é a abreviação de temporizador. Para finalizar de um clique no botão Accept. Nome do Temporizador Barra de Rolagem Ao clicar no botão Accept o bloco é automaticamente inserido no modo LD/FDB ou no modo IL são inseridas as linhas de programação. Para obter informações sobre os blocos de função clique em Help ⇒ List of Manufacturer Function Blocks ⇒ no sumário das funções escolha o bloco. Por exemplo: o temporizador que iremos utilizar na partida estrela/triângulo é o número 18 do sumário de nome: MS_TimeRising e a descrição é: On-delay timer, milliseconds. Com um clique sobre On-delay timer, milliseconds, temos a explicação detalhada do bloco, em inglês, não está disponível a ajuda em espanhol. A linha 2 um vez inserida contém o Ms_TimeRising, conforme figura X.
  • 18. 16 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Com um clique do botão esquerdo do mouse sobre a linha de Set esta ficará selecionada, em seguida com um clique do botão direito pode-se determinar qual é o operando que irá setar o bloco. No nosso caso será o contator de rede C_Rede. Na entrada do Preset Time ao invés de entrar com um valor diretamente iremos faze-lo através de uma variável que iremos chamar de uiTemp. Explicações sobre o porque deste nome. Continuação: Vamos inserir a terceira linha de programação através do botão de inserção de linha de programação.
  • 19. 17 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Declarando as Variáveis Após todas as linha inseridas é hora de declarar as variáveis. Com um clique na barra de títulos Syntax-Controled Variable Editor o foco irá para esta janela, ou simplemente maximizamos a janela. Após digitar Name, selecionar BOOL em Type, atribuir a entrada zero ao botão de liga e acrescentar um comentário sobre a variável basta clicar no botão Add.Na continuação declaramos todas as variáveis e os blocos utilizados na lógica. Para declarar o bloco de função clicamos em DataType e selecionamos o bloco MS_TimeRising. Data Types ⇒ Manufactuer-Defined Function Blocks... ⇒ Selecione MS_TimeRising.
  • 20. 18 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Em restaurar pode-se retornar para as duas janelas lado a lado. Para salvar a programação ⇒ na barra de ferramentas clicar em File e em Save As. Aparecerá a caixa de diálogo. Syntax Check O programa está salvo é hora de verificar se ao digitar cometemos erros de sintaxe. Na barra de ferramentas do POU-Editor encontra-se a Opção Syntax Check Não houve Erro de Sintaxe Verifica Erros de Sintaxe
  • 21. 19 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila No caso de ocorrer um erro a caixa de mensagens aparecerá indicando qual o tipo de erro cometido. No caso existe um identificador que não foi declarado. Descobrindo o Erro Clicando duas vezes sobre a linha que identifica o erro o foco é deslocado para local onde encontra-se o erro.
  • 22. 20 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila No caso da figura x.x o mensagem de erro aponta que um identificador não foi declarado. O foco está sobre o contato Deslig. A variável foi declarada como Desliga. Pode-se corrigir o Tag do contato para Desliga ou a declaração da variável para Deslig. 2. Passo: Configurar o Hardware. O CLP PS4-201-MM1, permite a expansão de sua capacidade de controle conectando-se em rede com módulos externo EM4, e módulos de expansão local LE4. Topology Configurator, os arquivos são criados com a extensão .dcf (device configuration) e salvos em kompo.sys. Em salvar "save" o arquivo é criado com o nome do projeto no caso pmotoret com a extensão dcf ⇒ c:pmotoretkompo.syspmotoret.dcf O arquivo com o programa do usuário é salvo com a extensão .poe. É salvo na pasta c:pmotortkompo.syspmotoret.poe Topology Configurator ⇒ Configuration ⇒ New ⇒ File Name digite PMOTORET ⇒ Em PLC Type selecione ⇒ PS4-201- MM1 ⇒ OK ⇒ Configuration ⇒ Save ⇒ Configuration ⇒ Exit. 3. Gerando o Código de Máquina. Program Code Generation Generate ⇒ Generate All
  • 23. 21 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Outra opção para gerar o código fonte é no POU-Editor em File Generate Code. Clicando em sim aparecerá a tela da figura x.x Clicando em Ok ⇒ Generate ⇒ Generate All Clicando no botão sim onde está o foco temos: O Program Code Generation criou o arquivo pmotor.mak. O pmortor.mak é o código fonte que após ser "link-editado" poderá ser executado pelo CLP.
  • 24. 22 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila 4. Transferência do Programa executável do Computador para o CLP. Test Commissinoning. O status indica que o CLP e o Computador não estão logicamente conectados. Clicando no Botão Connect, o computador tentará uma conexão com o CLP. Transferindo o programa do Computador para o CLP. Transfer... ⇒ aparecerá a Tela do Tranfer/File-Manager .
  • 25. 23 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Clicar no arquivo pmotoret.pcd ⇒ Transfer → PLC. O programa informará que o CLP está rodando um programa, e perguntará se deseja parar de rodar o programa, conforme tela da figura x.x Clicando em sim o programa será transferido conforme tela da figura x.x Após a transferência o programa perguntará se deseja rodar o novo programa carregado conforme tela da figura x.x O botão de compare o programa selecionado no computador com o que está na memória do CLP permite saber qual é o programa está rodando no CLP.
  • 26. 24 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Explicação Detalhada do Bloco de Função MS_TimeRising Function block prototype MS_TimeRising On_delay timer, milisenconds Ms_TimeRising ElapsedTime OutputControl PresetTime Hold Reset Set Set Start condition, rising edge ReSet Reset condition Hold Time interruption PresetTime Time setpoint in milliseconds OutputControl Control output ElapsedTime Time actual value in milliseconds Description Time diagram (1) (2) (3) (4) (5) THOLD Hold Reset Set T OutputControl T T + THOLD
  • 27. 25 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Simbologia A simbologia dos blocos de função tem por objetivo representar as relações entre as entradas e as saídas sem que para isto seja necessário apresentar explicitamente sua lógica interna. Ms_TimeRising Set Símbolo de Qualificação de Entrada Entradas Saídas As linhas de entrada são colocadas à esquerda, exceto quando indicadas por meio de setas nas linhas de acesso. Entrada Dinâmica Ativada na Borda de Subida O símbolo de qualificação de entrada A entrada Set aciona a contagem de tempo a partir da borda de subida do sinal aplicado. A partir da borda de subida da entrada Set o temporizador conta o tempo T e a saída OutputControl vaí para um (1), e permanece em um até que o sinal aplicado a entrada Set volte para zero (0). T Set OutputControl Entrada Dinâmica Ativada na Borda de Descida O símbolo de qualificação de entrada
  • 28. 26 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Metodologia de Programação A metodologia de programação tem por objetivos: programas legíveis, claros, confiáveis, eficazes, de rápida depuração com alta produtividade. Procedurais ⇒ Estruturada Orientadas a Objetos Orientada a Eventos O prof. Edsgar W. Dijkstra da Tecnological University of Eindhoven, Holanda, 1965, introduziu os primeiros conceitos de programação estruturada. O programa não é um fim em si mesmo. O desenvolvedor apresenta um programa como resposta a uma necessidade do usuário (quem o solicita). Para desenvolver um programa não basta escolher uma linguagem e aprender sua sintaxe. A linguagem de programação é a etapa final do desenvolvimento de um programa. O programa ao longo da vida, útil quase que seguramente, terá algumas manutenções que irão gerar nova codificação e testes. Os custos com a manutenção em boa parte das vezes chega a equiparar-se com os custos de elaboração. É aconselhável que o desenvolvedor, ciente deste problema, dedique tempo à elaboração do programa e a documentação. Sem responder algumas perguntas será difícil garantir a qualidade do programa desenvolvido. Como tratar o problema?, quais os métodos de solução? Que tipos de dados de entrada e saída estão envolvidos?. A partir das respostas a estas perguntas é possível elaborar um algoritmo. Só então passa-se a codificação. Após execução e depuração o programa está pronto. A documentação, é também um histórico e, deve ser construída a cada passo desde a abordagem à depuração Deve-se desenvolver um estilo modular de programação. Os módulos devem interligar-se por uma lógica clara, sempre de olho na semântica (representação do sentido dos enunciados) da linguagem
  • 29. 27 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Esboço ⇒ Pseudocódigos, Fluxogramas Método de solução (algoritmo) Input e output dos dados Codificação Execução, Depuração Elaboração ⇒ Lógica "A linguagem natural nem sempre é clara e precisa, sendo muito comum a ocorrência de ambigüidades que geram dúvidas sobre o significado do que se está falando. Por isso, um dos objetivos da lógica é estabelecer uma linguagem formal, onde se pode expressar com clareza, precisão e emitir juízo de verdadeiro e falso para determinadas frases (elemento de comunicação que relaciona palavras entre si de modo a estabelecer uma mensagem com sentido completo".4 A lógica é a arte do pensar correto. Deve-se aprender a ordenar o pensamento e expressá-lo claramente. Algoritmo "O algoritmo não é a solução do problema , mas o meio de obtê-la". Definição: "Um algoritmo é uma seqûencia ordenada finita de operações bem definidas e eficazes que, quando executadas por um computador, operando sobre dados caracterizando o estado atual do contexto e o estado desejado, sempre termina num determinado período de tempo, produzindo uma solução ou indicando que a solução não pôde ser obtida". 11 Algoritmos convencionais são compostos de duas partes: • Um componente de lógica, que contém o conhecimento sobre um dados problema; • Um componente de controle, que contém a metodologia de como aplicar o conhecimento para resolver o problema.
  • 30. 28 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila O algoritmo é a descrição de um conjunto de ações conhecidas e ordenadas que resultam no objetivo. Existem algoritmos, no dia-a-dia, prontos na nossa mente, que quase sempre podem ser repensados e redimensionados. Quem tem como objetivo, por exemplo, jogar Duke Nukem® 3D em rede, precisa certificar-se de algumas coisas e tomar algumas providências antes de jogar. Verificar se o a rede está acessível. Onde está a vítima. opps! Quero dizer o parceiro e assim por diante. Prever todos os obstáculos e situações possíveis nem sempre é fácil. Existem algoritmos mais complexos e outros mais simples, depende do objetivo (onde se quer chegar) e da clareza de raciocínio do programador. A clareza de raciocínio do programador pode avaliada pela legibilidade (qualidade de legível) do algoritmo. O algoritmo representado numa linguagem adequada (natural, em português estruturado ou gráfica), permite que o mesmo seja escrito em qualquer linguagem de computador. Quase sempre existe mais de um algoritmo para resolver um determinado problema. Qual é o melhor? O tamanho do programa e o tempo de execução devem ser levados em consideração para escolha. Sumário das Funções IEC 1131-3 e Moeller No. Function block Description Edge detection 1 F_TRIG Edge detection, falling edge 2 R_TRIG Edge detection, rising edge Flip-flops 3 RS RS Flip-Flop 4 SR SR Flip-Flop Date and time
  • 31. 29 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila 5 RealTimeClock Compare with real-time clock 6 RTC Set real-time clock 7 GetRealTimeClock Read real-time clock 8 SetRealTimeClock Set real-time clock (only PS4-200, PS4-300) 9 DATconcat Concatenate DATE_AND_TIME 10 DATsplit Split DATE_AND_TIME 11 DateConcat Concatenate DATE 12 DateSplit Split DATE 13 TimeConcat Concatenate TIME 14 TimeSplit Split TIME 15 TODconcat Concatenate TOD 16 TODsplit Split TOD Timing FBs 17 MS_TimeFalling Off-delay timer, milliseconds 18 MS_TimeRising On-delay timer, milliseconds 19 S_TimeFalling Off-delay timer, seconds 20 S_TimeRisingOn-delay timer, seconds 21 TimeGenerator Clock generator 22 TimePulse Pulse generator 23 TOF Off delay 24 TON On delay 25 TP Pulse Counter and comparison FBs 26 _16BitCounter 16-bit up/down counter 27 _32BitCounter 32-bit up/down counter (only PS416, PS4-300) 28 CounterLE Control of the Counter LE module (only PS4-200, PS4-300) 29 CTD Down counter 30 CTU Up counter 31 CTUD Up and down counter 32 _16Bit_Compare 16-bit comparator 33 _32Bit_Compare 32-bit comparator (only PS416, PS4-300) 34 SSI-Encoder Absolute value encoder (only PS4-300)
  • 32. 30 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila 35 IncEncoder Inkremental encoder (only PS4-300) Register operations 36 SR_x 1-bit shift register 37 SRB_x8-bit shift register 38 SRW_x 16-bit shift register 39 LifoBx8-bit LIFO register 40 LifoWx 16-bit LIFO register 41 FifoBx8-bit FIFO register 42 FifoWx 16-bit FIFO register Code converters 43 _16BitBinaryToBCD 16-bit binary/decimal code converter 44 _32BitBinaryToBCD 32-bit binary/decimal code converter (only PS416, PS4-300) 45 BCDTo16BitBinary 16-bit decimal/binary code converter 46 BCDTo32BitBinary 32-bit decimal/binary code converter (only PS416, PS4-300) Array operations 47 CompareArray Data block comparison or value search 48 TransferArray Copy or initialise array 49 Serialize Copy data structure to array 50 Deserialize Extract data from array 51 BlockCompare Data block comparison or value search (only PS4-200, PS4-300) 52 BlockTransferCopy or initialise data block (only PS4-200, PS4-300) Sequence control 53 SFC_x Sequence control function block (only PS4-200, PS4-300) String processing 54 COMtoSTR Convert received characters to STRING 55 STRtoCOM Copy string to marker area 56 ADRtoSTR Convert received characters to STRING (only PS4-200, PS4-300) 57 STRtoADR Copy string to marker area (only PS4-200, PS4-300)
  • 33. 31 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Communication 58 ASi_PARAM Change slave parameters during operation: ASi_PARAM (only PS4-200, PS4- 300) 59 DE4netK Frequency inverters DF4 60 MI4K Communication function block MI4 (only PS4-200, PS4-300) 61 MI4netK Communication function block MI4 62 DialOrHangup Establish or clear a connection to a DTE via modem (only PS416, PS4- 300) 63 SendATCommand Send AT command to a modem (only PS416, PS4-300) {bmc 64 COM Serial communication function block (only PS416) 65 SCO Serial communication function block (only PS4) 66 PSCO Profibus-FMS communication (only PS4-200, PS4-300) 67 MOD200 Serial communication via MODBUS /IBUS (only PS416) 68 SUCOM_A Protocol emulation for direct memory access (only PS416) 69 SuconetP PROFIBUS-FMS communication (only PS416) 70 SuconetS_BGKS InterBus communication (only PS416) 71 PdpStationDiag Request diagnostics data from PROFIBUS-DP station (only PS416) Reading and writing the memory card 72 ReadMC Read data from memory card 73 WriteMC Save data on memory card 74 SetMCFileLength Create and initialise data file (only PS416) 75 ReloadData Read data from memory card (only PS4-200, PS4-300) 76 SaveData Save data on memory card (only PS4-200, PS4-300) Alarm FBs 77 CounterAlarmCounter alarm (only PS4-200, PS4-300) 78 CAlarm Counter alarm (only PS416) 79 EdgeAlarm Edge alarm (only PS4-200, PS4-300) 80 FAlarm Edge alarm (only PS416) 81 TimerAlarm Timer alarm (only PS4-200, PS4-300) 82 TAlarm Timer alarm (only PS416) PS416-specific FBs
  • 34. 32 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila 83 PS_ApplicationHalt Stop the user program (only PS416, PS4-300) 84 PS_ClearKOMBit Clear "KOM" diagnostic bit (only PS416) 85 PS_Diagnostic Read diagnostic flags (only PS416, PS4-300) 86 PS_GetDateAndTimeRead real-time clock (only PS416, PS4-300) 87 PS_Message Scan cycle status (only PS416) 88 PS_SwitchPosition Read switch position (only PS416, PS4-300) 89 CPUDataExchange Exchange data between PLCs (only PS416) 90 ColdstartRetention Definition of cold start retentive marker area (only PS416) 91 ReadDirect Direct reading from digital inputs (only PS416) 92 WriteDirect Direct writing to digital outputs (only PS416) 93 ReadAnalogDirect Direct reading from analog inputs (only PS416) 94 WriteAnalogDirect Direct writing to analog outputs (only PS416) 95 ReadCounterDirect Direct reading from counter inputs (only PS416) OS system function block 96 PS_ReadOSInfo Scan operating system information Referências Bibliográficas MOELLER. Training Guide Sucosoft S 40 Programming Software. Alemanha: 2a ed. Jul. 1998, 140 p.
  • 35. 33 Centro Federal de Educação Tecnológica de São Paulo Prof. Eng.M.Sc. d'Avila Exercícios de Fixação 1. Uma comissão formada por Presidente, diretor Administrativo, diretor Financeiro e diretor de Marketing se reúnem para analisar e aprovar questões relativas a empresa. Uma proposta é aprovada se recebe a maioria dos votos ou se o presidente e qualquer outro membro votar a favor. presid adm finan mark saída 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 1 1 0 0 0 0 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 A partir da tabela da verdade podemos construir o mapa de Veitch-Karnaugh S = ( P . A ) + ( P . M ) + ( P . F ) + ( F . A . M ) aplicando a propriedade distributiva S = P . ( A + F + M ) + ( A . F . M )