SlideShare ist ein Scribd-Unternehmen logo
1 von 87
Downloaden Sie, um offline zu lesen
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




 APOSTILA SOBRE CONTROLADORES PROGRAMÁVEIS




                                            Prof. Eng. Antonio Geraldo Stéfano
                                             Revisão: Maio / 2007
                                             Curso baseado no CP Altus




                                                   -1   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO



Introdução


Objetivos
O curso de programação básica dos CPs aborda conceitos básicos da utilização de controladores
programáveis, sistemas de numeração (binário, octal, decimal, hexadecimal), varredura de entradas e
saídas, forma de execução de programas no CP (lógicas), sistema de endereçamento, conceitos
básicos de hardware, operação do terminal de programação, apresentação com exercícios das
instruções básicas da linguagem dos CPs. São ressaltadas as diferenças da linguagem de
programação, apresentando o conceito de programação estruturada, embora não utilizando
intensamente o mesmo para não tornar complexo o curso que pretende ser introdutório.
O objetivo é fixar nos alunos os conceitos básicos de CPs e de sua programação, através
apresentação de exemplos e da solução de exercícios simples que permitem conhecimento da
operação do terminal de programação.
O aluno deve ser estimulado a consultar os manuais dos produtos aprendendo o seu conteúdo e
fixando locais onde pode solucionar dúvidas.

Pré-requisitos
Os pré-requisitos mínimos para que os alunos possam cursar satisfatoriamente o curso básico, são:
                     Conceitos de eletricidade básica;
                     Conceitos de lógicas de relés;




                                               -2     -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Histórico dos CPs
Os primeiros controladores programáveis foram introduzidos em controle industrial, no início da
década de 60, para substituir painéis de controle a relés. Quando era necessário inserir novos
requisitos de controle, não era econômico modificar a lógica destes painéis, o que acarretava,
freqüentemente, o projeto e aquisição de novos painéis. CPs foram desenvolvidos para serem
reprogramados, quando as alterações de controle são necessárias, sem grandes modificações no
hardware, sendo então equipamentos reutilizáveis.
Os CPs passaram a ser utilizados primeiramente na indústria automobilística e, a partir daí, nos
outros segmentos industriais.
Assim como a sua aceitação, também a demanda por mais funções, tais como maior capacidade de
memória e de pontos E/S, cresceu. A maioria dos fabricantes respondeu positivamente a estes
requisitos, introduzindo novos modelos de CPs, cobrindo aplicações de pequeno (50-100 relés),
médio (150-500 relés) e grande (500-3000 relés) número de pontos. Geralmente estes vários
modelos não eram compatíveis uns com os outros; os módulos de E/S não eram intercambiáveis,
exceto adicionando-se adaptadores, o que aumentava os custos e os problemas de manutenção.
O advento do microprocessador, das facilidades de desenvolvimento de software e uma maior
maturidade do mercado, deu aos CPs novo impulso. Na década de 80 surgiram microprocessadores
e memórias mais compactos, permitindo a redução de custos e tamanhos, com aumento de
confiabilidade. Esta nova geração de microprocessadores trouxe consigo a capacidade de
interligação dos CPs entre si e com outros equipamentos (computadores) em redes industriais de
comunicação, permitindo a informatização das fábricas.




                                             -3   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Conceitos Básicos de CPs

Ponto de entrada
              Considera-se cada sinal recebido pelo CP, a partir de dispositivos ou componentes
              externos (sensores), como um ponto de entrada para o CP. Ex.: microchaves,
              botões, termopares, relés, etc.


Ponto de saída
              Cada sinal produzido pelo CP para acionar dispositivos ou componentes do
              sistema de controle (atuadores) constitui um ponto de saída. Ex.: lâmpadas,
              solenóides, motores, etc.


Programa
              A lógica existente entre os pontos de entrada e de saída e que executa as funções
              desejadas, de acordo com o estado das entradas no CP, é o programa.


Controlador programável (CP)
              É um equipamento eletrônico digital com hardware e software compatíveis com
              aplicações industriais (conceito ABNT).




                                          -4   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Conceito de bit, byte, nibble e palavra

       Bit
Bit (Binary DigiT) é a unidade para o sistema de numeração binário. Um bit é a unidade básica de
informação e pode assumir o valor "0" ou "1".
                                                            1 bit



       Nibble
Nibble é a unidade formada por 4 bits consecutivos.
                                                      1 nibble = 4 bits




       Byte
Byte é uma unidade constituída de 8 bits consecutivos. Em um CP por exemplo o estado das
entradas de um módulo digital de 8 pontos pode ser armazenado em um byte.
                                              1 byte = 8 bits = 2 nibbles



       Palavra / Word
É um conjunto de bytes que correspondem ao tamanho da palavra. No CP por exemplo, os valores
numéricos resultados de operações aritméticas, contagens ou temporizações são armazenados em
palavras de 16 bits.
                             1 palavra / Word pode Ter : 8, 16, 32 ou 64 bits




                                               -5     -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Sistemas de Numeração
Os CPs, como todos os computadores, somente conseguem manipular valores representados no
sistema binário.


           Números decimais
Dígitos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Base: 10
Posição do algarismo no número: potências de 10
Exemplo:
nº 456 = (4 x 102 )+(5 x 101 )+(6 x 100)


           Números binários
Dígitos: 0,1
Base: 2
Posição do algarismo no número: Potências de 2
Exemplo:
nº 110011 = (1 x 25)+(1 x 24)+(0 x 23)+(0 x 22)+(1 x 21)+(1 x 20) = 51D


           Números Hexadecimais
Dígitos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
Base: 16
Posição do algarismo no número: Potências de 16
Exemplo:
nº 1CD = (1 x 162)+(12 x 161)+(13 x 160) = 461D




                                                      -6   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




            Números BCD ( decimais codificados em binário)
        Dígitos:
                   Números        Números Binários
                   Decimais
                      0                 0000
                      1                 0001
                      2                 0010
                      3                 0011
                      4                 0100
                      5                 0101
                      6                 0110
                      7                 0111
                      8                 1000
                      9                 1001


        Exemplo:

           0000         0101         0001           0011
          0 x 10 3     5 x 10 2     1 x 10 1       3 x 10 0
             0           500          10              3       = 513D




                                         -7    -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Componentes de CP


                                                                  Entradas
                Terminal de      Proces-
                                           Memória Memória                     Dispositivo
                Programação                  de       de           Saídas
                                 sador Programa Dados                            de
                                                                  Fonte de
                                                                 Alimentação    Campo
                                    Fonte de Alimentação
                                           Interna                 Externa



                                    Figura 0-1 Componentes de um CP.



                     Terminal de Programação
O terminal de programação é um dispositivo que conectado temporariamente ao CP permite
introduzir o programa de usuário. Utiliza-se o terminal de programação para efetuar modificações em
programas ou para permitir ao pessoal de manutenção o exame do estado dinâmico de um sistema
de controle. É possível, através deste equipamento, verificar a operação própria ou imprópria de
qualquer parte do sistema de controle, acompanhando todos os passos do programa em tempo real.


                     Unidade Central de Processamento (UCP)
A UCP é a unidade "inteligente” do CP. Na UCP são tomadas todas as decisões para controle da
máquina ou processo, ela recebe os dados de entrada, realiza as decisões lógicas baseada no
programa armazenado e atualiza as saídas.


                      Entradas e saídas (E/S)
Elementos (módulos) responsáveis pela interface dos CPs com o ambiente externo realizando tarefa
de filtragem dos sinais adaptação de níveis de tensão e corrente.


                     Dispositivos de campo
São os elementos do sistema de controle necessários para obtenção de informações (sensores) e
atuação ( atuadores ) do processo.




                                                   -8      -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO

        Princípio de funcionamento de um CP
Um CP realiza continuamente um ciclo de varredura que consiste em:
                 1. Leitura de entradas;
                 2. Execução do programa, que consiste em calcular novas saídas em função das
                    entradas, de acordo com a seqüência de instruções;
                 3. Atualização das saídas.
                 A figura 1.2, mostra o ciclo básico de varredura de um CP, o tempo mínimo para
                 execução de uma varredura é de 20 ms.




                                Figura 0-2 Ciclo de varredura de um CP




                                               -9    -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




                       Princípio de funcionamento de um CP




                                    - 10   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Linguagens de relés e blocos

Características
                  Representação gráfica
                  Facilidade de compreensão
                  Linguagem mais utilizada no mundo


Exemplo




                                 Exemplo de programa "ladder”




                                           - 11   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Linguagens Estruturadas




                           Ciclo de varredura linguagens estruturadas



Vantagens da utilização de linguagens estruturadas
                 Organização;
                 Desenvolvimento de bibliotecas de rotinas utilitárias para utilização em vários
                 programas;
                 Facilidade de manutenção;
                 Simplicidade de documentação e entendimento por outras pessoas além do
                 autor do software.




                                            - 12   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Redes de Comunicação
Conectividade Altus

Em uma fábrica existem três níveis de conectividade: o nível de planta, o nível de controle e o nível
de campo:

A rede na planta
No nível de planta é necessário manter uma base de dados global e coletar, processar, armazenar e
gerenciar diversos tipos de dados. Além disso, este nível é o que estabelece o plano básico de
produção e onde são realizados os diagnósticos dos elementos do próprio nível e dos níveis
inferiores. Aqui o número típico de nós é de 2 a 20 e as transferências se dão em uma velocidade de
10/s a 1/minuto. As mensagens trafegam aos megabytes e não há necessidade de determinismo na
rede (o tempo para completar as mensagens não precisa ter um limite máximo).

A rede em nível de planta deve ter alta confiabilidade, ser de arquitetura simples e com imunidade a
ruído dentro de padrões razoáveis. As tecnologias aplicáveis aqui são a Ethernet (IPX, TCP/IP) de
acordo com a norma IEEE 802.3, Nível 1.

A rede Altus Ethernet TCP/IP
Através de uma interface adequada, os Controladores Programáveis Altus podem conectar-se a
redes do tipo Ethernet TCP/IP permitindo um completo acesso às informações de planta via este tipo
de standard. Com isto, utilizando "workstations" ou sistemas de computação de maior hierarquia, as
aplicações de controle podem ser acessadas de forma padronizada aumentando-se com isto o seu
potencial de conectividade. A Altus disponibiliza "drivers" de software para a maioria dos
supervisórios existentes no mercado, facilitando completamente a aplicação desta opção.

As redes de controle
O nível de controle responde pelos equipamentos que compõe a linha de produção e pela leitura e
acionamento de todos os sinais de campo. É neste nível que são feitos os cálculos de algoritmos de
controle e otimização, bem como a aquisição de dados, monitoração dos processos e registros de
alarmes, dados de produção e manutenção. O próprio controle de qualidade da produção tem neste
nível o seu centro nervoso. As mensagens trafegam aos kilobytes e o determinismo é necessário
para garantir tempo mínimo para as ações de controle. A freqüência de transferência nestes casos é
de 1/10 ms a
1/10s.

A rede em nível de controle deve ter alta confiabilidade, não escapa de ter arquitetura mais complexa
e com alta imunidade a ruído. As tecnologias aplicáveis aqui são na sua maioria proprietárias mas
que tendem a atender a MAC (ISO 802.3), LLC (IEE 802.2 classe I).

A rede ALNET II
Implantada a partir da série de CPs AL-2000/MSP ("Multi-Station Processors") a rede ALNET II é
multi-mestre e permite o controle distribuído a partir de vários processadores de forma determinística.
Ela atinge a velocidade de 1 Mbaud. Possui o conceito de sub-redes, ou seja, sua arquitetura permite
distribuir e isolar o tráfego de informação nas aplicações. Seu desempenho permite a real distribuição
das tarefas de controle entre vários Controladores Programáveis. Possui gateways para diversos
tipos de conexões, o que permite a sua convivência em ambientes já desenvolvidos com produtos de
outras marcas.

A rede ALNET I
A rede ALNET I é uma rede de supervisão, do tipo mestre-escravo, extremamente útil na aquisição e
análise de dados, utilizada em toda a linha de Controladores Programáveis Altus. Ela pode auxiliar

                                                - 13   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO
em muito a implantação de redes de controle quando aplicada em conjunto com a rede ALNET II. Seu
protocolo é aberto e disponível para o desenvolvimento de qualquer tipo de "driver" de software. Ela
pode controlar até 31 CPs a partir de uma estação mestre.

As redes de campo
O nível de campo é utilizado para aquisição das variáveis de processo, envio de programação de
"set-points", aquisição do estado dos equipamentos, atuação sobre motores, válvulas e/ou outros
equipamentos. O número típico de nós por nível é de 50 a 500 com tempos de transferência da
ordem de 1/ms a 1/100 ms. As mensagens variam de 1 bit a alguns bytes e o determinismo é
necessário.

A rede PROFIBUS
PROFIBUS é uma rede de campo aberta, padronizada na Europa e de uso internacional, definida na
Norma EN 50170. Tem três versões para atender diferentes requisitos de um sistema de controle:

PROFIBUS-DP
O PROFIBUS DP é otimizado para conexão rápida e econômica. Esta versão é destinada
especialmente para comunicação entre sistemas de controle de automação e E/S distribuídos.
PROFIBUS-DP pode ser usado para substituir transmissão de sinais como 24 Vdc ou 4 a 20 mA.

PROFIBUS-PA
PROFIBUS-PA foi projetado especialmente para aplicação em processos contínuos. Possibilita a
conexão de sensores e atuadores em barramento único comum, em áreas intrinsecamente seguras
de acordo com o padrão internacional IEC 1158-2.

PROFIBUS-FMS
PROFIBUS-FMS é uma solução de comunicação genérica. Os serviços FMS abrangem uma larga
faixa de aplicações e proporcionam grande flexibilidade. PROFIBUS-FMS geralmente é utilizado a
nível de controle conectando os equipamentos responsáveis por este controle entre si.




                                              - 14   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO



Vantagens do uso de Controladores Programáveis
             Os CPs oferecem um considerável número de benefícios para aplicações na
             indústria. Estes benefícios podem resultar em economia que excede o custo do CP
             em si e devem ser considerados quando da seleção de um dispositivo de controle
             industrial. As vantagens da utilização de CPs, se comparados a outros dispositivos
             de controle industrial incluem:
             •   Menor ocupação de espaço;
             •   Potência elétrica requerida menor;
             •   Reutilização;
             •   Programável, se ocorrerem mudanças de requisitos;
             •   Confiabilidade maior;
             •   Manutenção mais fácil;
             •   Maior flexibilidade, satisfazendo um número maior de aplicações;
             •   Permite a interface através de rede de comunicação com outros CPs e com
                 microcomputadores;
             •   Projeto do sistema mais rápido.



Aplicações típicas de CPs
             Praticamente não existem ramos de aplicações industriais onde não existam
             aplicações de CPs, algumas aplicações típicas são:
             •   Máquinas industriais (operatrizes, injetoras de plástico, têxteis, calçados, etc.);
             •   Equipamentos industriais para processos (siderurgia, papel e celulose,
                 pneumáticos, dosagem e pesagem, fornos, etc.);
             •   Equipamentos para controle de energia (demanda, fator de carga);
             •   Controle de processos com realização de sinalização, intertravamento e laços
                 PID;
             •   Aquisição de dados de supervisão em: fábricas, prédios inteligentes,
                 dispositivos que necessitem de controle remoto, etc.;
             •   Bancadas de teste automático de componentes industriais.




                                           - 15   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




                  INTRODUÇÃO A PROGRAMAÇÀO

LÓGICAS DE PROGRAMA

Chama-se lógica a matriz de programação formada por 32 células ( elementos da matriz ) dispostas
em 4 linhas ( 0 a 3 ) e 8 colunas ( 0 a 7 ). E cada uma das células podem ser colocadas instruções,
podendo-se programar até 32 instruções em uma mesma lógica.
Cada lógica presente no programa simula um pequeno trecho de um diagrama de relés real. A figura
abaixo mostra o formato de uma lógica do programa aplicativo.
As duas linhas laterais da lógica representam barras de energia entre as quais são colocadas
as instruções a serem executadas.




Estão disponíveis para a programação instruções simbólicas tipicamente encontradas em diagramas,
tais como contatos, bobinas, ligações e instruções representadas em caixas, como temporizadores,
contadores e aritméticas.
A lógica deve ser programada de forma que bobinas e entradas das instruções de caixas sejam
“energizadas “a partir do fechamento de um fluxo de “corrente “da esquerda para a direita entre as
duas barras, através de contatos ou das saídas das caixas interligados. Entretanto, o fluxo de
“corrente elétrica “simulado em uma lógica flui somente no sentido da barra de energia esquerda para
direita, diferentemente dos esquemas elétricos reais. O conceito utilizado simplifica sobremaneira o
projeto lógico de relés, uma vez que não é necessário a preocupação com caminhos de fuga de
corrente.




                                              - 16   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




O processamento das instruções de uma lógica é realizado em colunas, desde a coluna 0 até a 7.
Uma coluna é processada na ordem seqüencial de suas linhas, desde a linha 0 até a linha 3. A figura
abaixo mostra a ordem de processamento de células da lógica. O número existente dentro de cada
célula indica a sua ordem de processamento.




       Operandos da linguagem de relés
 Operandos são elementos utilizados pelas instruções do Mastertool na elaboração de um programa
aplicativo. Os operandos podem definir valores constantes, definidos no momento da programação,
ou variáveis, identificados através de um endereço ou de um tag, com valores possíveis de serem
alterados durante a execução do programa aplicativo.
Identificação de um Operando pelo Endereço
A identificação e utilização de um operando pelo seu endereço é caracterizada pelo caractere %
como primeiro caractere do nome. O restante do nome utilizado deve seguir ás regras de formatação
de endereço de operandos.
Identificação de um Operando pelo seu Tag
A identificação e utilização de um operando pelo seu tag é caracterizada pela utilização de um nome,
com até 7 caracteres ( alfanuméricos ), que pode ser atribuído a qualquer operando, exceto
constantes. Este nome passa a representar o operando nos processos de programação, monitoração,
depuração e documentação de um programa aplicativo.
Ex.:
Atribui-se o tag CONT1 ao operando % M0000.
Sempre que o operando %M0000 necessite ser utilizado na edição do programa aplicativo, pode-se
utilizar o tag CONT1.




                                              - 17   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Grupos de Instruções
Os CP’s Altus utilizam a linguagem de relés e blocos para a elaboração do programa aplicativo, cuja
principal vantagem, além de sua representação gráfica, é ser similar a diagramas de relés
convencionais.
A programação desta linguagem, realizada através do Mastertool, utiliza um conjunto de poderosas
instruções apresentadas abaixo em 7 grupos:


Conceitos de programação estruturada
Funcionalmente, um projeto de programação, pode ser visto como uma coleção de módulos utilizados
para realizar uma tarefa específica, também conhecido como programa aplicativo. Isto permite uma
visão hierárquica do projeto com a criação de sub-rotinas e funções.



Exemplo 1: Ligar e desligar uma lâmpada


Representação elétrica




                               C1
                                                                         L1




                                     Figura 0-3 Representação elétrica




Equivalência no diagrama de relés do CP
                  •   C1 = E0000.0
                  •   L1 = S0002.0




                                                 - 18   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Programa "ladder"




                                      Figura 0-4 Programa "ladder"




    O programador MASTERTOOL

VISÃO GERAL

O MASTERTOOL é uma aplicação executada no ambiente operacional Windows, possuindo todas as
facilidades e padronizações oferecidas por este .
Sua operação, como as demais , são orientadas a comandos de menus e caixas de diálogos que
permitem a realização das tarefas e escolha das opções.
Com o intuito de facilitar os procedimentos mais utilizados no MASTERTOOL, existem diversos
atalhos onde o pressionamento de duas teclas simultaneamente realizam um comando, bem como
uma Barra de Ferramentas onde basta clicar no botão desejado para a rápida realização do
comando.
O MASTERTOOL possui ainda janelas de edição específicas para Módulo de Configuração, Modulo
de Configuração de rede e Módulos de Programa. Estas janelas permitem uma edição eficiente e
uma visualização adequada dos diversos componentes de cada módulo específico.


Procedimentos de utilização de projetos
O QUE É UM PROJETO ?
Um projeto é um conjunto de módulos que são utilizados para a realização das tarefas de um CP ou
para a configuração de um dispositivo roteador.
O nome do arquivo de projeto pode possuir até 6 caracteres de comprimento e é finalizado com a
extensão .MTL. Alguns caracteres possuem significado especial para o sistema operacional, sendo
considerados caracteres inválidos para a formação do nome do projeto .


      CARACTERES INVÁLIDOS : , . /  ? * | “ : ; [ ] = + - < >




                                               - 19    -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO


       Existem 2 tipos de projetos:
Projeto de Programação.
Um Projeto de programação é utilizado para reunir todos os módulos necessários á execução das
tarefas de um CP.
Neste tipo de Projeto é obrigatória a existência de um módulo de configuração e de um módulo de
execução E001. Quando se cria um novo projeto de programação, o módulo de configuração é
automaticamente criado e visualizado na janela de edição de módulo C.
O nome do módulo de configuração é formado pelo tipo do módulo ( C - ), pelo nome do projeto e
pela extensão .000.
O nome do módulo de execução principal é formado pelo tipo do módulo ( E- ), por um nome de até 6
caracteres ( sugere-se o nome do projeto ) e pela extensão .001. o Módulo de execução pode ser
criado com o comando Novo Módulo ou pode ser inserido com a opção Inserir Módulo do comando
Edita Projeto.


       Projeto de Roteador.
Um projeto de roteador é utilizado para definir a configuração de rede e roteamento que deve ser
realizado pelo dispositivo roteador.
Neste tipo de projeto somente é permitida a utilização de um módulo de configuração de roteamento.
Quando se cria um novo projeto de roteador, o módulo de configuração de roteamento é
automaticamente criado e visualizado na janela de edição de módulo R.
O nome do módulo de configuração de roteamento é formado pelo tipo do módulo ( R- ), pelo nome
do projeto e pela extensão .000.


       CRIANDO UM PROJETO :
Para a criação de um Projeto devem ser indicados o nome do projeto, o subdiretório do projeto e o
tipo do projeto a ser criado.
Para criar um novo projeto:
                  1. A partir do menu Arquivo, escolher Novo Projeto.
                  2. No Item Nome do Projeto, digitar o nome do Projeto a ser criado.
                  3. No item Tipo de Projeto, escolher Programação ou Roteadores conforme o
                     projeto a ser criado.
                  4. No item Diretório, digitar o caminhamento completo do subdiretório onde deve
                     ficar localizado o novo projeto




                                              - 20   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Procedimentos de utilização de módulos de programa
ABRINDO UM MÓDULO :
Para que um módulo possa ser editado ou visualizado é necessário que ele esteja aberto.

             Ao abrir um módulo que faça parte do projeto corrente ele poderá ser
             visualizado e editado.
             Caso o módulo sendo aberto não faça parte do projeto corrente, é exibida a caixa
             de dialogo MASTERTOOL onde deve ser indicado se o módulo deve ser
             inserido no projeto ou não. Se o módulo não for inserido no projeto, somente
             poderá ser visualizado.




Para abrir um módulo :
                  1. Utilizar um dos seguintes métodos:
                      Na Barra de Ferramentas, clicar sobre o Botão Abrir.
                      A partir do Menu Arquivo, escolher Abrir Módulo .
                      Utilizar o Atalho de Teclado CTRL + L
                  2. No item Nome do Arquivo, digitar ou selecionar o nome do módulo.
                  3. No item Diretórios, selecionar o subdiretório onde esta localizado o módulo.
                  4. No item Listar Arquivos do Tipo, selecionar o tipo módulo.
                  5. No item Unidades , selecionar a unidade de disco onde esta localizado o
                     módulo.
                  6. Quando todos os parâmetros estiverem indicando o módulo, selecionar o
                     Botão OK.


Salvando um Módulo :
Após a edição de um módulo deve-se salvar o mesmo em disco para que as alterações realizadas
possam ser realmente efetivadas. O nome e a localização em disco permanecem as mesmas.
Sugere-se que o arquivo seja salvo freqüentemente.
Para salvar um módulo no disco:
                  1. Utilizar um dos seguintes métodos:
                           Na Barra de Ferramentas, clicar sobre o Botão Salvar.
                           A partir do menu Arquivo, escolher Salvar Módulo.
                           Utilizar o atalho de teclado CTRL + S.




                                                     - 21   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Configurações do Sistema
O que é um módulo “C”:
Módulo C é o módulo que possui todas as configurações necessárias para o uso de um projeto de
programação.


Configurando o Modelo de UCP :
O módulo de configuração deve estar declarado de acordo com o controlador a ser utilizado. P ara
isto deve-se configurar o modelo de UCP.
Para configurar o modelo de UCP deve-se:
Selecionar como módulo corrente o módulo C a ser configurado.
No item Modelo de UCP, selecionar o modelo de UCP a ser utilizado na lista de UCP’s


      Configurando Operandos Simples:

Deve ser declarado no módulo C a quantidade de operandos simples usada pelos demais módulos
que compõe o programa aplicativo.
A quantidade total de memória para operandos depende do modelo de UCP.
À medida que os operandos são declarados, a quantidade de memória disponível pode ser
visualizada no item Bytes Livres.
Os operandos memória são alocados em blocos de 128 operandos. Caso o valor digitado não seja
múltiplo deste valor, é arredondado para o primeiro valor múltiplo de 128 maior que o número
digitado. Os operandos decimal são alocados em blocos de 64 operandos. Caso o valor digitado não
seja múltiplo deste valor, é arredondado para o primeiro valor múltiplo de 64 maior que o número
digitado.



      Para configurar operandos simples.

      No item Total de Operandos, Memória, digitar o número de operandos memória a serem
      utilizados. O item ao lado mostra automaticamente o intervalo dos operando memória que
      estão disponíveis para serem utilizados.
      No item Total de Operandos, Decimal, digitar o número de operandos decimal a serem
      utilizados. O item ao lado mostra automaticamente o intervalo dos operandos decimal que
      estão disponíveis para serem utilizados.




                                             - 22   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




                 Configurando Barramento :

Deve ser declarado no módulo C a configuração de módulo C a configuração de módulos de entrada
e saída localizados em todos os barramentos possíveis para cada modelo UCP. Na configuração do
barramento são alocados operandos de entrada e saída ( % E e % S ) para os módulos digitais e
indicado o endereço dos operandos de endereço no barramento (% R
No item Primeiro Octeto de Saída é possível a definição do endereço do operando % S a partir do
qual serão reservados os pontos de saída. Este valor é automaticamente alterado com as
declarações dos módulos de E/S nos barramentos, só precisando ser modificado pelo usuário para
reservar endereços % E para futuras inserções de módulos de entrada..


                 Para configurar o barramento.

                 1. Selecionar o botão Barramento. É exibido um quadro de diálogo para a
                    configuração dos barramentos.
                 2.    No item Primeiro Octeto de Saída, digitar o número do primeiro octeto de
                      saída.
                 3. No item Troca de Módulo Energizado, deve-se selecionar o item caso seja
                    utilizada a troca de módulos com CP energizado. Este item só existe na UCP
                    Al-2002/MSP.
                 4. Selecionar o botão Barramento 0. É exibido uma tabela para a configuração
                    do barramento 0. Cada linha da tabela corresponde a uma posição no
                    barramento indicado pela coluna Posição. A coluna PA indica o valor a ser
                    configurado na ponte de ajuste do módulos, ver Manual de Utilização do CP
                    utilizado, Manuais de Características Técnicas AL-1000/AL-2000 e Manuais de
                    Características Técnicas QUARK.
                 5. Na coluna Módulo, digitar ou selecionar o módulo de entrada ou saída que
                    deve ocupar aquela posição. Se o módulo for de entrada ou saída digital são
                    configurados os operandos %E ou %S de acordo com o número de octetos do
                    módulo. A coluna Endereço indica o endereço no barramento a ser utilizado
                    para acesso aos módulos analógicos e especiais.
                 6. Repetir este item para todos os módulos a serem inseridos no barramento 0.
                 7. Repetir o item 4 selecionando cada barramento a ser configurado. Repetir os
                    item 5 para configurar os módulos de cada barramento. O número de
                    barramentos varia de acordo com o modelo de UCP utilizado.




                      Os botões <<Anterior e Próximo>> podem ser utilizados durante a configuração
                      de um barramento para exibir diretamente a caixa de diálogo de configuração do
                      barramento anterior ou do próximo barramento.




                                                  - 23   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Edição de lógicas
                 Editando um Módulo de Programa
O que é um módulo de programa :
Módulo de programa é um módulo que possui rotinas desenvolvidas para serem executadas em um
CP.
Modificando um módulo de programa :
Para modificar um módulo de programa:
                 1. Selecionar o módulo a ser modificado para a janela ativa.
                 2. Utilizar um método dos seguintes
   Na Barra de Ferramentas, clicar sobre o botão modificar.
   A partir do menu Edição, escolher Modificar (ALT,E,M).
   Realizar um duplo clique em qualquer ponto da Área de Edição.
O menu passa a ser o menu de modificação de módulos possuindo 2 itens com comandos para
edição e busca e vários itens contendo os grupos de instruções disponíveis.




                                             - 24   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Inserindo uma Lógica:

                   Para inserir uma lógica:
                  1. Utilizar um dos seguintes métodos:
   Na Barra de Ferramentas, clicar sobre o botão inserir nova lógica.
   A partir do menu Edição, escolher Nova Lógica.
2. No item Lógica, digitar o número da lógica a ser inserida.
3. No item Tag, digitar o tag para a lógica. Pode possuir até 7 caracteres.
4. No item Descrição, digitar a descrição para a lógica. Pode possuir até 60 caracteres.
5. No item Observações, digitar as observações a respeito da lógica. Pode possuir até 280
   caracteres.



Inserindo uma instrução:

O procedimento para a inserção de uma instrução é o mesmo para todas. Para as instruções que
possuem operandos, é apresentada uma caixa de dialogo para a edição dos mesmos.
                  Para inserir uma instrução:
1. Posicionar o cursor de lógica na célula onde deve ser inserida a instrução.
2. Selecionar no menu de instruções o grupo de instruções desejado.
3. Selecionar a instrução dentro do grupo. É exibida uma caixa de diálogo com o formato da caixa
   da instrução.
4. Editar os operandos correspondentes a instrução selecionada indicando o endereço ou tag do
   operando.
5. Caso o tag indicado não existir, é exibida uma mensagem indicando a inexistência do tag e
   solicitando o endereço do operando e sua descrição na caixa de diálogo Criar Tag. Digitar o
   endereço e a descrição do operando e escolher o botão OK. Caso não seja desejado editar o tag,
   escolher o botão Cancelar.




                                                - 25   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




        Seqüência de operações para transferir um programa para o
        CP




            Figura Seqüência de operações para envio de programa para o CP


        Caso o CP esteja em estado de erro, antes de transmitir o programa, deve-se
        passar o CP para o modo programação, enviar os módulos E-.001 e C-.000 após
        passar o CP para o modo execução .




                                       - 26   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Instruções de Relés

Instruções Contato RNA e RNF, Ligações Horizontal, Vertical e Negada e
Bobina


      LISTA DAS INSTRUÇÕES

Os CP’s ALTUS utilizam a linguagem de reles e blocos para a elaboração do programa aplicativo,
cuja principal vantagem, além de sua representação gráfica, é similar a diagramas de relés
convencionais.
A programação desta linguagem, realizada através do MASTERTOOL, utiliza um conjunto de
poderosas instruções apresentadas nas seguintes seções:
   RELÉS
   MOVIMENTADORES
   ARITMÉTICOS
   CONTADORES
   CONVERSORES
   GERAIS
   LIGAÇÕES


Instruções do Grupo de Relés:
As instruções do grupo de Relés são utilizadas para o processamento lógico dos diagramas de relés.
Através das mesmas pode-se manipular os valores dos pontos digitais de entrada ( %E ) e saída (
%S ), bem como pontos de operandos auxiliares ( %A ), memória ( %M ) e decimal ( %D ).
São usadas também para desvio do fluxo e controle do processamento do programa aplicativo.




                                             - 27   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Apresentação das instruções :

       A descrição de cada instrução é feita da seguinte maneira:
1. A instrução é descrita com um título contendo o nome da instrução e a descrição do nome. Uma
   figura apresentando como a instrução é visualizada no diagrama de relés contendo seus
   operandos, entradas e saídas. Abaixo da figura, é exibida uma breve descrição do significado de
   cada operando.
2. O item Descrição contém informações descrevendo o funcionamento da instrução conforme as
   entradas habilitadas e os tipos de operando utilizados. Neste item também são descritas as
   saídas que serão acionadas após a execução da instrução.
3. O item Sintaxe descreve as combinações de operandos que podem ser utilizados na instrução.
   Esse item somente esta presente nas instruções que possuam operandos.
4. O item Exemplo fornece um exemplo de utilização da instrução descrevendo seu
   comportamento. Este item somente esta presente nas instruções que requeiram um
   detalhamento maior de seu funcionamento.
5. Podem existir outros itens descrevendo uma característica específica da instrução caso haja
   necessidade.



   Instruções do Grupo Relés.
   As instruções do grupo Relés são utilizadas para o processamento lógico dos diagramas de
   relés. Através das mesmas pode-se manipular os valores dos pontos digitais de entrada (%E) e
   saída (%S), bem como pontos de operandos auxiliares (%A), memória (%M) e decimal (%D).
   São usadas também para desvio do fluxo e controle do processamento do programa aplicativo.




Descrição:
Estas instruções refletem, logicamente, o comportamento real de um contato elétrico de um relé no
programa aplicativo.
O contato normalmente aberto fecha conforme o estado do seu operando associado. Caso o ponto
do operando esteja no estado lógico 1 ou 0, o contato normalmente aberto está fechado ou aberto,
respectivamente.



                                             - 28   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO
O contato normalmente fechado possui comportamento oposto ao normalmente aberto. Caso o ponto
do operando associado esteja no estado lógico 1 ou 0, o contato normalmente fechado está aberto
ou fechado, respectivamente.




Quando um contato está fechado, a instrução transmite o estado lógico da sua entrada para a sua
saída. Se estiver aberto, o valor da entrada não é colocado na saída.




      Descrição:
As instruções bobina modificam o estado lógico do operando na memória imagem do controlador
programável, conforme o estado da linha de acionamento das mesmas.
A bobina simples liga ou desliga o ponto do opernado conforme a linha de acionamento, enquanto
que as bobinas do tipo desliga somente ligam ou desligam os operandos quandoa linha está
energizada (“set”/ “reset”).
Estas instruções somente podem ser posicionadas nacoluna 7 da lógica.
                                            - 29 -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




                        Bobina Liga e Bobina Desliga




Descrição: Instrução Bobina de Salto




A instrução bobina de salto serve para controlar a sequência de execução de um programa
aplicativo, sendo usada para desviar o processamento do mesmo para uma lógica determinada.
Seu operando é uma constante que determina o numero de lógicas a serem saltadas a partir da
energização da bobina. A determinação da lógica destino é realizada pela soma da constante que
acompanha a instrução com o número da lógica onde a mesma se encontra.
Quando a linha de acionamento da bobina de salto estiver desenergizada, o salto não ocorre, e a
instrução seguinte aquela em que esta bobina está declarada é executada.
Exemplo:
Supondo que a instrução a seguir esteja na lógica 2, a execução do programa aplicativo é
desviada para a lógica 7 se a linha de acionamento estiver energizada, ou seja, se o valor do
ponto %A0009.3 for 1. Se o valor deste ponto for 0, a execução continuará normalmente na
lógica 003.




                                               - 30   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Pode ser utilizada nesta instrução uma constante %KM com valor zero ou mesmo com valor
negativo. Se programada com o valor zero, a lógica destino é a mesma que contém a bobina de
salto, quando esta é energizada. Ou seja, o processamento é desviado para o início da própria lógica
da bobina. Se o valor programado é negativo, o processamento é desviado para uma lógica anterior
à lógica que contém a bobina de salto.O controle da execução nestas situações deve ser realizada
através de um intertravamento que desligue o salto para a lógica anterior, após um certo número de
laços executados no trecho de retorno.


         ATENÇÃO:
         O uso de constante zero ou negativo corresponde a um uso não convencional da
         instrução. Caso deseje-se utilizá-la, deve-se tomar os cuidados necessários para
         evitar a entrada em laço infinito de execução “loop” ou o aumento excessivo do
         tempo de ciclo do programa aplicativo. Recomenda-se, contudo, a utilização da
         bobina de salto somente com constantes positivas maiores que zero.


         Caso a lógica destino ultrapasse a última lógica do programa aplicativo, o CP salta
         para o final do programa e continua seu ciclo normal.


         Caso a lógica destino de um salto de retorno seja menor do que a primeira lógica
         do programa aplicativo, a execução é reiniciada a partir da lógica 0.




Descrição: Instrução Rele de Pulso




A instrução relé de pulso gera um pulso de uma varredura em sua saída, ou seja, permanece
energizada durante uma varredura do programa aplicativo quando o estado da sua entrada passar de
desenergizado para energizado.
O relé auxiliar declarado serve como memorizador, evitando limitações quanto ao número de
instruções de pulso presentes no programa aplicativo.


          ATENÇÃO:
          O valor do relé auxiliar não deve ser modificado em nenhum outro ponto do
          programa aplicativo.




                                                   - 31   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




                             Exemplo 4: Relé de Pulso




      Descrição: Instrução Rele Mestre e Fim de Rele Mestre




As instruções relé mestre e fim de relé mestre são utilizados para delimitar trechos de programas
aplicativos, energizando ou não a barra lógica de alimentação nos mesmos, conforme o estado da
sua linha de acionamento.
Estas instruções não necessitam de operandos, podendo ser posicionadas somente na coluna 7 da
lógica.
Quando a entrada da instrução RM estiver desenergizada, a barra lógica de alimentação é
desenergizada desde a lógica seguinte até a lógica que contém a instrução FRM.
Como estas instruções atuam sempre na lógica seguinte a que estão contidas é aconselhável o seu
posicionamento sempre como últimas instruções da lógica em que estiverem presentes. Assim
sendo, o trecho de programa aplicativo delimitado visualmente pelas instruções no diagrama
corresponde exatamente ao controlado pelas mesmas, evitando assim má interpretação de seu
funcionamento.


        ATENÇÃO:
        As instruções COM, COB, TEE e TED contém saídas energizadas mesmo sem o
        acionamento das suas entradas. Estas saídas permanecem energizadas mesmo
        dentro de um trecho sob comando de um relé mestre desenergizado, podendo
        causar acionamentos indesejáveis.




                                             - 32   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




           Relé Mestre e Fim de Relé Mestre




                                  - 33   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




                          Intertravamento básico de um motor


Representação elétrica




Equivalência no diagrama de relés do CP

                •   Botão liga = E0000.0
                •   Nível OK = E0000.1
                •   Pressão OK = E0000.2
                •   Botão desliga = E0000.3
                •   Motor M1 = S0002.0




                                           Programa "ladder"




                                               - 34   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO

Modelos de UCP AL-2000/MSP
                                                           AL-         AL-2002/MSP
                                                        2000/MSP
          Número de Módulos de E/S                          32                142
          Número de E/S Digitais                           512                512
          Número de E/S Analógicas                         512                 *
          Memória de Programa RAM                         128 k              128 k
          Memória de Programa "Flash"                     128 k              128 k
          Memória de Dados                                15,5 k             15,5 k
          Multiprocessamento                               Não                Sim
          Rede ALNET I                                     Sim                Sim
          Rede ALNET II                                    Sim                Sim
          Registro de Eventos                              Não                Sim

Modelos de UCP AL-600
                                             AL-600/4         AL-600/8            AL-600/16
          Frequência de “Clock”              15 MHz           15 MHz               15 MHz
          Entradas Integradas 24Vdc             16               16                  16
          Saídas Int. (24 VDC / 0,5 A)           8                8                    8
          Número Máx. de Módulos                 4                8                   16
          Contadores até 10 KHz Int.             2                2                    2
          Total de Pontos de E/S                90              156                  284
          E/S Analógica Integrada
                                                -           2 (0 a 10 VDC)      2 (0 a 10 VDC)
          Memória de Programa
                                            16 kbytes         32 kbytes               64 kbytes
          "Flash"
          Memória de Programa RAM           16 kbytes         16 kbytes               16 kbytes
          Módulos Função                      Não                Sim                     Sim
          Memória de Dados                  8 kbytes           8 kbytes                8 kbytes
Modelos de UCP QUARK
                                             QK800              QK801            QK2000/MSP
          Frequência de “Clock”
                                           14,7456 MHz       14,7456 MHz         14,7456 MHz
          Número Máximo de E/S                 256               512                 512
          Número Máx. de Módulos                16                32                  32
          Interface de Comunicação
                                              Sim                Sim                    Sim
          ALNET I
          Interface de Comunicação
                                              Não                Não                    Sim
          ALNET II
          Capacidade padrão de              32kb RAM           32kb RAM            32kb RAM
          memória                          32kb FLASH         64kb FLASH          64kb FLASH
          Capacidade máxima de              32kb RAM          128kb RAM           128kb RAM
          memória                          32kb FLASH        128kb FLASH         128kb FLASH
Modelos de UCP PICCOLO
                                              PL101/R           PL102/R            PL103/R
                                              PL101/T           PL102/T            PL103/T
          Frequência de “Clock”             14,7456 MHz       14,7456 MHz       14,7456 MHz
          Entradas Integradas 24Vdc              8                 14                 16
          Saídas R (relé) T (transistor)         6                 10                 16
          Nº Máx. Mod. E/S digitais.              -                 -                  3
          E/S Analógicas Integradas               -                 -           2 (0 a 10 Vdc)
          Contadores até 10kHZ int.               -                 -                  2
          Interface de Comunicação            RS-232C           RS-232C          RS-232C e
          ALNET I                                                                  EIA-485
                                                - 35    -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Seqüência de operações para solução de
              exercícios




              Seqüência de operações para solução de exercícios




                                       - 36   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




        Transportador de peças com expulsão automática




Transportador de peças com expulsão automática

           Ao apertar o botão de Start o motor é energizado.
           1 A peça será transportada até encostar no fim de curso 1 (FC1). Ao
              encostar no FC1 o motor é desligado parando a esteira e o solenóide S1
              deve ser energizado para empurrar a peça.
           2 Quando a peça passar pelo fim de curso 2 (FC2) o pistão deve ser
              recuado desenergizando o solenóide S1. Nesse momento o motor deve
              ser ligado iniciando o transporte de uma nova peça.
           3 Em qualquer momento que for pressionado o botão de Stop, o motor
              deve ser desligado e o pistão recuado (desenergizando S1).




                                     - 37   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Controle de nível de líquido




                                  Controle de nível de líquido no reservatório


Elaborar um software aplicativo que implemente o controle do processo de enchimento de
um reservatório. Sempre que o nível cair abaixo de um mínimo permitido (chave de nível F1),
liga válvula Y1 e desliga a válvula Y2. Por outro lado, quando o nível atingir a chave de nível
F2, a válvula alimentadora Y1 deve ser desligada, permitindo o acionamento de Y2. Prever
uma chave manual/automático CH1.

Ligar e desligar um motor com apenas um pulso




                                      Diagrama de sinais do exercício 2



Acionamento e reversão de um motor
Elaborar um software aplicativo que permita o acionamento e a reversão no sentido de rotação de um
motor através de um comando manual. As condições de desligamento ou não acionamento do motor
devem ser:
                 •   botão stop
                 •   pressão baixa no sistema
                 •   temperatura elevada




                                                   - 38    -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




                   Exercicio: Engarrafamento de Bebidas




Desenvolver um software aplicativo que realize as seguintes funções de controle:

E0.0 = START - NA - PULSO                   S2.0 = SISTEMA LIGADO
E0.1 = PARADA - NF - NORMAL                S2.1 = MANUAL
E0.2 = MANUAL=0 / AUTO=1                   S2.2 = AUTO
E0.4 = MOVIMENTO P/ FRENTE                S2.3 = ABASTECENDO
E0.6 = PRESENÇA DE GARRAFA (S1)            S3.4 = ESTEIRA
E0.7 = GARRAFA CHEIA (S2)
- O sistema e iniciado através da entrada E0.0.
- O sistema e desligado através da entrada E0.1.
- A saída S2.0 liga a lâmpada quando o sistema e ligado.
- O modo de operação deverá ser sinalizado por: S2.1 = manual ; S2.2 = auto.
- O modo de operação manual/auto só poderá ser selecionado se o sistema estiver desligado.
- Durante a operação manual, a correia transportadora pode ser movimentada para frente (E0.4).
- Em operação automática, o motor de transportador (S3.4) ligará e permanecerá ligado até quando a chave
    de parada (E0.1) abra, ou até que o sensor (E0.6) detecte a presença de garrafa.
- Depois que a garrafa é abastecida (temporizador) o transportador deverá partir automáticamente e
    permanecer ligado até que outra garrafa seja detectada ou até que a chave parada (E0.1) seja acionada.
- Quando a garrafa esta localizada embaixo do dispositivo de abastecimento (E0.6), o procedimento de
    abastecimento é iniciado, simulando 05 (cinco) segundos e é sinalizado através da saída (S2.3).
- O sensor (E0.7) deverá ser usado para registrar garrafas cheias, somente se o sistema estiver ligado.
- Para resetar o contador a maquina deverá estar em Auto (E0.2 = 1) e apertar ( E0.4 ).




                                                 - 39   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Instruções Temporizador e Contador

Instrução Temporizador na Energização
                 Descrição:




Esta instrução realiza contagens de tempo com a energização das suas entradas de acionamento.
A instrução TEE possui dois operandos. O primeiro ( OPER1 ) especifica a memória acumuladora da
contagem de tempo. O segundo operando ( OPER2 ) indica o tempo máximo a ser acumulado. A
contagem de tempo é realizada em décimos de segundos, ou seja, cada unidade incrementada em
OPER1 corresponde a 0,1 segundo.
 Enquanto as entradas libera e ativa estiverem simultaneamente energizadas, o operando OPER1 é
incrementado a cada décimo de segundo. Quando OPER1 for maior ou igual a OPER2, a saída Q é
energizada e –Q desenergizada, permanecendo OPER1 com o mesmo valor de OPER2.
Desacionando-se a entrada libera, há a interrupção na contagem do tempo, permanecendo OPER1
com o mesmo valor. Desacionando-se a entrada ativa, o valor em OPER1 é zerado.
Se OPER2 for negativo ou o acesso indireto for inválido , OPER1 é zerado e a saída –Q é
energizada.
O estado lógico da saída Q é exatamente o oposto da saída –Q . mesmo estando a instrução
desativada.

          Atenção:
                   .
          Com a entrada ativa desativada, a saída –Q permanece sempre
          energizada, mesmo quando a instrução estiver em um trecho comandado
          pela instrução RM ( relé mestre ).
          Deve-se Ter cuidado para não realizar acionamentos indesejáveis na lógica
          devido a este fato.


Temporizador na Energização ou "on delay"




                                               - 40   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Instrução Temporizador na Desenergização

Temporizador na Desenergização ou "off delay"




                                    Programa "ladder"




                                    Diagrama de tempo



Temporizador Monoestável




                                    Programa "ladder"




                            256




                                    Diagrama de tempo



                                        - 41   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Temporizador Astável




                                        Programa "ladder"




                                        Diagrama de tempo


OBS : SE SUBSTITUIRMOS O OPERANDO SAÍDA S0002.0 POR UM OPERANDO AUXILIAR
      A00010.0 , TEREMOS UM AUXILIAR PULSANTE A CADA 2 SEGUNDOS PARA SER
      APLICADO EM QUALQUER PARTE DO PROGRAMA QUE SE DESEJE UM SISTEMA
      DE PISCA – PISCA.

EXEMPLO: A SAÍDA S0002.5 É UMA LÂMPADA SINALIZADORA DE EMERGÊNCIA ACIONADA.




                                            - 42   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Temporizadores em Cascata




                                       Programa "ladder"




                                       Diagrama de tempo




Exercício

1) Faça uma partida automática estrela-triângulo, utilizando-se dos conhecimentos adquiridos
até o momento.




                                           - 43   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Instrução Contador
             Descrição :
             Esta instrução realiza contagens simples, com o incremento de uma unidade em
             cada acionamento.
             A instrução contador simples possui dois operandos. O primeiro, sempre do tipo
             %M, especifica a memória que contabiliza os eventos. O segundo estabelece o
             valor limite de contagem para energização da saída superior e pode ser do tipo
             %KM ou operando %M referenciado indiretamente.
             Se a entrada ativa esta desenergizada, a memória em OPER1 é zerada, a saída
             não limite energizada e a saída limite desenergizada.
             Quando a entrada ativa está energizada, cada transição de ligação na entrada
             incrementa aumenta o valor do operando contador ( OPER1 ) de uma unidade.




                                    Programa "ladder"




                                        - 44   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Multiplicação de Bases de Tempo




                                  Programa "ladder"




                                      - 45   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




                   COB - Contador Bidirecional




OPER1 - contador

OPER2 - passo de contagem

OPER3 - limite de contagem




Descrição


Esta instrução realiza contagens com o valor de incremento ou decremento definido por
um operando. A instrução contador bidirecional permite contagens em ambos os sentidos,
isto é, incrementa ou decrementa o conteúdo de um operando do tipo memória. O
operando OPER1 contém a memória acumuladora do valor contado, enquanto que
OPER2 especifica o valor do incremento ou decremento desejado. O operando OPER3
contém o valor limite da contagem. A contagem ocorre sempre que a entrada ativa está
energizada e as entradas incrementa ou decrementa sofrerem uma transição de
desligadas para ligadas. Se ambas as entradas sofrem a transição no mesmo ciclo de
varredura do programa, não há incremento nem decremento no valor da memória
declarada em OPER1.Caso o valor do incremento seja negativo, a entrada incrementa
provoca decrementos e a entrada decremento provoca incrementos no valor da
contagem. Se o valor de OPER1 tornar-se maior ou igual ao valor de OPER3, a saída
limite superior é energizada, não havendo incremento. Se o valor de OPER1 tornar-se
igual ou inferior a zero, a saída limite inferior é acionada, sendo armazenado zero em
OPER1.Se o valor de OPER1 está entre zero e o limite, a saída não limite é acionada. Se
a entrada ativa não está energizada, a saída limite inferior é energizada e o primeiro
operando é zerado. Em caso de acesso indireto inválido para qualquer um dos operandos
da instrução, a saída limite inferior é energizada.

ATENÇÃO:

Com a entrada ativa desativada, a saída limite inferior permanece sempre
energizada, mesmo quando a instrução estiver em um trecho comandado pela
instrução RM (relé mestre). Deve-se ter cuidado para não realizar acionamentos
indesejáveis na lógica devido a este fato.
                                      - 46   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




INSTRUÇÃO PARA MOVIMENTAÇÃO DE OPERANDOS SIMPLES


OPER 1 – OPERANDO ORIGEM
OPER 2 – OPERANDO DESTINO


DESCRIÇÃO:
Esta instrução move o conteúdo de operandos simples, sem realizar conversões entre tipos
De operandos diferentes, quando a entrada habilita é acionada.
O operando que ocupa a primeira célula da instrução ( oper 1 ) é o operando origem, cujo valor é
movimentado para o operando destino, especificado na Segunda célula ( oper 2 ).
Se o formato do operando destino for menor que o de origem, os octetos mais significativos do valor
origem são
Desprezados. Se o formato do destino for maior, seus octetos mais significativos são zerados. Se a
movimentação for realizada , a saída sucesso é acionada.
Se os índices indiretos excederem os limites de operandos declarados no módulo de configuração, a
movimentação não é efetuada e a saída sucesso não é ligada.
Não é permitida a movimentação de subdivisões de operandos. Para isto, deve ser usada a instrução
MOP.


EXEMPLO DE UTILIZAÇÃO DA INSTRUÇÃO MOV:




                                              - 47   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Instrução CAB – Carrega Bloco




                  Oper1 – operando inicial ou tabela a ser carregada
                  Oper2 – número de operandos ou posições de tabela
                  Oper3 – tabela de constantes a serem carregadas


Descrição:
Esta instrução permite a carga de até 255 valores constantes em um bloco de operandos ou tabelas.
O operando inicial ou tabela a ser carregada é especificado no primeiro parâmetro (oper1 ),
O número de operandos ou posições da tabela a serem carregados no segundo operando
( oper2 ) e o valor das constantes no terceiro ( oper3 ).O valor do segundo operando deve ser
positivo, menor ou igual a %KM+128.
O terceiro operando ( oper3 ) é composto por uma tabela de valores constantes a serem carregados.
Estes valores são declarados selecionando o botão Bloco, sendo aberta uma janela de edição no
MasterTool. As constantes são do tipo %KM se o tipo do primeiro operando for %E, %S , %A, %M,
%T ou são do tipo %KD se o primeiro operando for %D ou %TD. Caso o primeiro operando seja um
octeto ( %E, %S ou %A ), somente serão movimentados os valores dos octetos menos significativos
de cada constante declarada.
Quando o botão Bloco é selecionado, é exibida a caixa de diálogo CAB – Valores:




                                               - 48   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




              Dispositivo de Separação e Contagem


        Elaborar software aplicativo que faça a separação automática das caixas
        pequenas, conforme figura abaixo:




                    Figura -5 Dispositivo de Separação e Contagem




        Considerar as seguintes condições:
        •   Velocidade da esteira: 5 m/min;
        •   Comprimento da caixa grande: 0,8 m;
        •   Comprimento da caixa pequena: 0,2 m;
        •   Tempo de acionamento do pistão: 0,5 s.

                                      - 49   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




                  DISPOSITIVO DE PRENSAGEM COM MORSA PNEUMÁTICA



                                   Dispositivo de prensagem de peças




Descrição das entradas e Saídas:
Entradas:                           Saídas:
Start                              Sol . 1
Emergência                          Sol. 2
Fc1                                Lâmp. Emerg.
Fc2
Fc3
Fc4




                                                  - 50   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Dispositivo de Furação

Seqüência de funcionamento do dispositivo de furação
               1. Para ligar a máquina, a broca deve estar recuada (SW3 ligada) e o fim de curso
                  1 ativado (FC1).
               2. Ao acionar o botão de partida (START), o motor que dá rotação à broca é
                  ligado, é desligado o recuo (SW3) e ligado o avanço rápido (SW1).
               3. Quando é ativado o fim de curso 2 (FC2), é desligado o avanço rápido (SW1) e
                  ligado o avanço lento (SW2) para corte.
               4. Quando é ativado o fim de curso 3 (FC3), é desligado o avanço lento (SW2) e
                  ligado o recuo (SW3).
               5. No recuo, quando ativar o fim de curso 1 (FC1), desliga o motor e permanece
                  ligado apenas o recuo (SW3), deixando a maquina parada na condição de
                  partida.


               Obs.:
                  •    O Botão de STOP deve em qualquer passo da máquina:
                  •    Desligar o motor.
                  •    Desligar avanço rápido (SW1).
                  •    Desligar avanço lento (SW2)
                  •    Ligar Recuo (SW3)

Dispositivo de Furação




                                           - 51   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Fresadora
Elaborar um software aplicativo da fresadora (figura 10-5) na qual a peça é colocada manualmente.
Acionando start e a peça estando na posição (sensor      atuado), a válvula Sol. 2 (cilindro A) fixa a
peça na mesa, ligando a serra circular. Após 5s a válvula Sol. 1 avança o cilindro B até o ponto
desejado para a fresagem. O tempo de fresagem é de 8s. Após, a válvula Sol. 1 é desacionada
retornando o cilindro B e desligando a serra. A válvula Sol. 2 recua o cilindro A para soltar a peça,
que é retirada manualmente. Em qualquer momento que for acionado o botão de emergência deve
desligar a serra circular recuar cilindro A e B .




                                            Figura -6 Fresadora


             Descrição das entradas e saídas:

       Entradas:                           Saídas:

       Start                              Sol. 1
       Emergência                         Sol. 2
       Sensor de peça                     Lâmp. Emerg. Acionada
                                          Contator do Motor da Fresadora




                                                 - 52   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




           Folha deixada em branco propositalmente




                                  - 53   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




 Instruções de Chamada – CHP e CHF



Descrição - CHP

Esta instrução realiza o desvio do processamento do módulo corrente para módulo Procedimento especificado
nos seus operandos, se o mesmo estiver presente no CP.
Ao final da execução do módulo chamado, o processamento retorna para a instrução seguinte a CHP. Não há
passagem de parâmetros para o módulo chamado.
O conteúdo do primeiro operando é documentacional e especifica o nome do módulo a ser chamado. O
conteúdo do segundo operando especifica o número deste módulo, sendo implícito o fato do módulo chamado
ser do tipo procedimento.
Caso o módulo chamado não exista, a saída sucesso é desenergizada e a execução continua normalmente
após a instrução. O nome do módulo não é considerado pelo CP para a chamada, mas apenas o seu número.

Descrição - CHF

A instrução chama módulo função realiza o desvio do processamento do módulo corrente para o módulo
especificado na mesma, se este estiver presente no CP. Ao final da execução do módulo chamado, o
processamento retorna para a instrução seguinte a CHF.
Devem ser declarados o nome e o número do módulo, sendo implícito o fato do módulo chamado ser do tipo
função. Caso o módulo chamado não exista no controlador, a execução continua normalmente após a instrução
de chamada, com a saída sucesso da mesma desligada. O nome do módulo não é levado em consideração
pelo CP, estando no programa aplicativo apenas como referência documentacional, sendo considerados para a
chamada apenas o seu tipo e número.


Tecla de atalho

    Chama Procedimento                                      Chama Função

Sintaxe




                                                 - 54   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




F-ANLOG.006 – FUNÇÃO PARA CONVERSÃO A/D OU D/A




Introdução:
A função F_ANLOG.006 realiza a conversão A/D ( analógico / digital ) ou D/A ( digital / analógico )
dos dois canais analógicos disponíveis na UCP.
Utilizando-se duas instruções CHF, é possível realizar a conversão A/D em um
dos canais e D/A no outro ou o mesmo tipo de conversão em ambos.
Programação :
Operandos
As células da instrução CHF utilizada para chamada da função são programadas do seguinte modo:
   OPER1 – Especifica o número de parâmetros que são passados para a função OPER3. Este
   operando deve ser obrigatoriamente uma constante memória com valor 3 ( %KM+00003 ).
   OPER2 – Deve ser um operando do tipo constante memória com valor 0      ( %KM+00000 ).
   Determina o número de parâmetros possíveis de serem programados na janela de edição de
   OPER4. Como esta função não necessita de nenhum parâmetro em OPEr4, o valor de OPER2 é
   0.
   OPER3 – Contém os parâmetros que são passados para a função, declarados através de uma
   janela visualizada no MASTERTOOL quando a instrução CHF for editada. O número de
   parâmetros editáveis é especificado em OPER1, sendo fixo em 3 para este módulo.
   %KM+XXXXX – Especificação do canal a ser convertido. Deve-se utilizar %KM+00000 para DAC
   1 e %KM+00001 para DAC 2.
   %KM+XXXXX – Tipo de conversão a ser realizada no canal definido pelo parâmetro anterior.
   Deve-se utilizar %KM+00000 para conversão A/D e %KM+00001 para conversão D/ª
   %MXXXXX – Especificação do operando onde é armazenado o valor a ser escrito no conversor
   em caso de conversão D/A ou valor lido em caso de conversão A/D.
   OPER4 – Não utilizado.
                               Entradas e Saídas
                  Descrição das Entradas:
   Habilita – quando esta entrada esta energizada a função é chamada, sendo analisados os
   parâmetros programados na instrução CHF.
                  Descrição das Saídas:
   Sucesso – é energizada quando a função foi corretamente executada.
   Erro – é energizada caso ocorra erro na especificação dos operandos ou tentativa de acesso a
   operandos não declarados.


                                              - 55   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO



F-CONT.005 - Função para Acesso às Entradas de Contagem Rápida

Introdução


A função F-CONT.005 realiza o interfaceamento do programa aplicativo com as entradas de
contagem rápida integradas na UCP AL-600 e PL103.

A UCPs AL-600 e PL103 possuem no painel frontal duas entradas de contagem rápida, possibilitando
a contagem de pulsos com elevada freqüência (até 10 KHz), quando se torna inadequada a
contagem por
meio de pontos de entrada convencionais.


Programação

Operandos

As células da instrução CHF utilizada para a chamada da função são programadas do seguinte modo:

- OPER1 - Especifica o número de parâmetros que são passados para a função em OPER3. Este
operando deve ser obrigatoriamente uma constante memória com valor 3 (%KM+00003).
- OPER2 - Deve ser um operando do tipo constante memória com valor 0 (%KM+00000). Determina o
número de parâmetros possíveis de serem programados na janela de edição de OPER4. Como esta
função
não necessita de nenhum parâmetro em OPER4, o valor de OPER2 é 0.

- OPER3 - Contém os parâmetros que são passados para a função, declarados quando a instrução
CHF for editada. O número de parâmetros editáveis é especificado em OPER1, sendo fixo em 3 para
este
módulo:


%KM+XXXXX - Número da entrada contadora (0 ou 1).

%DXXXX - Operando que armazena o valor de contagem.

%MXXXX - Operando utilizado pela função para o controle interno do seu processamento.

ATENÇÃO:
O operando de controle não deve ter seu conteúdo alterado em nenhuma parte do programa
aplicativo, sob pena de prejudicar a execução correta da função. Cada CHF para este módulo F deve
possuir um
operando de controle exclusivo, diferente dos demais.

- OPER4 - Não utilizado.




                                             - 56   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO

Entradas e Saídas

Descrição das entradas:

- habilita - quando esta entrada está energizada a função é chamada, sendo analisados os
parâmetros programados na instrução CHF. Caso os mesmos estejam incorretos, a saída de erro é
energizada.
- zera - causa o zeramento do valor de contagem, quando habilitada.
- carrega - quando ativada, faz com que o valor armazenado no operando %D seja o novo valor de
contagem.

Descrição das saídas:

- contagem zero - é energizada quando o valor do operando %D de contagem possui valor zero.
- limite de contagem - é energizada quando o valor do operando %D de contagem possui valor
+9999999.
- erro - é energizada caso ocorra erro na especificação dos operandos ou tentativa de acesso a
operandos não declarados.

Quando se passa o CP de programação para execução a entrada ZERA das funções F-CONT.005
devem ser acionadas por uma varredura, de forma a permitir o referenciamento da função, visto que
seus
operandos de contagem e de controle foram zerado na troca de estados.

Utilização

Esta função pode ser utilizada somente nas UCPs da série AL-600, QK600, PL102, PL103 e PL104.

Descrição do Funcionamento


Cada contador realiza uma contagem incremental, de 0 a +9999999 pulsos, armazenada em um
operando %D. Quando a contagem atinge o valor limite, o operando não é mais incrementado,
ligando a saída
limite de contagem na instrução CHF.
O valor no operando de contagem pode ser inicializado com o acionamento da entrada zera da
instrução. Para começar a contagem com um valor diferente de zero, basta mover o valor desejado
para o
operando %D e acionar a entrada carrega da instrução.

A função deve ser chamada periodicamente, no ciclo de varredura normal ou no módulo executado
por interrupção de tempo E018. A freqüência máxima de contagem depende do período de chamada,
sendo
mostrada na tabela 6-4.

Freqüência Máxima de Contagem      Período de Chamada da Função

2,5 Khz        100 ms
3,4 Khz        75 ms
5,0 Khz        50 ms
10,4 Khz       25 ms




                                              - 57   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




                 SOM - Adição




                 OPER1 - primeira parcela
                 OPER2 - segunda parcela
                 OPER3 - total
Descrição:
Esta instrução realiza a soma aritmética de operandos. Quando a entrada habilita é energizada, os
valores dos operandos especificados nas duas primeiras células são somados e o resultado
armazenado no operando nas terceira célula.
Se o resultado da operação for maior ou menor do que o armazenável, a saída estouro é energizada
e o máximo ou mínimo valor armazenável é atribuído a variável total como resultado.
Se a entrada habilita não está energizada, todas as saídas são desernegizadas e o valor de OPER3
não é alterado.




                                             - 58   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




                  SUB -Subtração




                  OPER1 - primeira parcela
                  OPER2 - Segunda parcela
                  OPAR3 - resultado
Descrição:


Esta instrução realiza a subtração aritmética entre operandos. Quando habilita é energizada, o valor
do operando da segunda célula é subtraído do valor do operando da primeira célula. O resultado é
armazenado na memória especificada na terceira célula.
As linhas de saída resultado > 0, resultado = 0 e resultado < 0 podem ser usadas para
comparações e são acionadas de acordo com o resultado da subtração.
Se a entrada habilita não está energizada, todas as saídas são desernegizadas e OPER3
permanece inalterado.
Se o resultado da operação excede o maior ou menor valor armazenável no operando, o respectivo
valor limite é considerado como resultado.




                                              - 59   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




                 MUL - Multiplicação




                 OPER1 - multiplicando
                 OPER2 - multiplicador
                 OPER3 - produto
Descrição:


Esta instrução realiza a multiplicação aritmética de operandos. Quando a entrada habilita está
energizada, ocorre a multiplicação do conteúdo do operando especificado na primeira célula pelo
especificado na segunda.
O resultado é armazenado na memória especificada na terceira célula. Caso este exceda o valor
máximo armazenável em uma memória, o resultado final é este valor e a saída estouro é energizada.
Se a entrada habilita é desernegizada, nenhuma saída é ligada e OPER3 permanecerá inalterado.




                                             - 60   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




                  DIV - Divisão




                  OPER1 - dividendo
                  OPER2 - divisor
                  OPER3 - quociente
                  OPER4 - resto


Descrição:
Esta instrução realiza a divisão aritmética de operandos. Quando a entrada habilita está energizada,
ocorre a divisão do valor do operando da primeira célula pelo da segunda, sendo o resultado
armazenado na memória especificada na terceira célula e o resto da operação colocado no quarto
operando. Os operandos da primeira e segunda células podem ser do tipo memória ou constante.
Se o valor do segundo operando for zero, a saída divisão por zero é acionada e em OPER3 é
colocado o valor máximo ou mínimo armazenável no operando, conforme o sinal de OPER1. Neste
caso, em OPER4 (resto) será armazenado zero. As saídas da instrução somente são energizadas se
a entrada habilita estiver acionada. Se não estiver acionada, OPER3 e OPER4 permanecerão
inalterados.




                                              - 61   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




                  CAR - Carrega Operandos




                  OPER - operando a ser carregado
Descrição:
A instrução carrega operando realiza a carga do valor do operando especificado em registrador
especial interno ao CP, para subseqüente uso das instruções de comparação (maior, menor, igual). O
operando permanece carregado até a próxima instrução de carga, podendo ser utilizado por várias
lógicas, inclusive em ciclos de varredura subseqüentes.
A saída sucesso é acionada se a carga for realizada. Se algum acesso indireto a operando não for
possível (índice inválido), a saída sucesso não é acionada.


                  Instruções de Comparação de Operandos - Igual, Maior e Menor




Descrição:
As instruções maior, menor e igual realizam comparações do operando especificado com o valor
previamente carregado no registrador interno com a instrução CAR (Carrega Operando), fornecendo
o resultado da comparação em suas saídas. Caso algum acesso indireto seja inválido, a saída é
desacionada.
Por exemplo, a instrução maior energiza a sua saída se o valor do seu operando for maior que o valor
do operando presente na última instrução CAR ativa. As instruções igual e menor operam de forma
idêntica, mudando apenas o tipo de comparação realizada.
Se os operandos a serem comparados são do mesmo tipo, são comparados conforme o seu formato
de armazenamento (considerando o seu sinal). Se não são do mesmo tipo, são comparados ponto a
ponto (como valores binários sem sinal).




                                              - 62   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




F-RELG.048 - Função para Acesso ao Relógio de Tempo Real

A função F-RELG.048 realiza o acesso ao relógio de tempo real contido na UCP. O relógio possui horário e
calendário completos, permitindo o desenvolvimento de programas aplicativos que dependam de bases de
tempo precisas. A informação de tempo é mantida mesmo com a falta de alimentação do sistema, pois a UCP é
alimentada por baterias.
Esta função possui características semelhantes à função F-SINC.049, pois ambas executam acessos ao
mesmo relógio, diferindo apenas quanto aos métodos de acerto. Elas podem ser utilizadas simultaneamente em
um mesmo programa, caso necessário.

Programação

Operandos

As células da instrução CHF utilizada para a chamada da função são programadas do seguinte modo:
- OPER1 - Especifica o número de parâmetros que são passados para a função em OPER3. Este operando
deverá ser obrigatoriamente uma constante memória com valor 2 (%KM+00002).
- OPER2 - Deve ser um operando do tipo constante memória com valor 0 (%KM+00000). Determina o número
de parâmetros possíveis de serem programados na janela de edição de OPER4. Como esta função não
necessita de nenhum parâmetro em OPER4, o valor de OPER2 é 0.
- OPER3 - Contém os parâmetros que são passados para a função, declarados quando a instrução CHF for
editada. O número de parâmetros editáveis é especificado em OPER1, sendo fixo em 2 para este módulo:
%MXXXX ou %TMXXXX - Especificação dos operandos para onde são lidos os valores do relógio. Se este
parâmetro for especificado como memória, os valores são lidos para a memória declarada e as 6 (seis)
subseqüentes. Se for especificado como tabela, os valores são colocados a partir da posição 0 até 6. Caso os
operandos não estejam declarados, a leitura dos valores de tempo não é realizada e as saídas da instrução são
desligadas. É possível o uso de tabelas com mais de 7 posições, sendo que a função ignora as posições
excedentes. Os valores são lidos dos operandos na seguinte seqüência:

Operando       PosiçãoTabela Conteúdo     Formato
MXXXX 0        Segundos       000XX
MXXXX+1        1      Minutos 000XX
MXXXX+2        2      Horas 000XX
MXXXX+3        3      Dia do mês    000XX
MXXXX+4        4      Mês     000XX
MXXXX+5        5      Ano     000XX
MXXXX+6        6      Dia da semana 000XX

O conteúdo destes operandos pode ser lido a qualquer momento, mas são atualizados com a hora real do
relógio apenas quando a instrução for executada. Não devem ser modificados em nenhum outro ponto do
programa aplicativo. É utilizado o formato 24 horas na contagem do tempo. Os dias da semana são contados
com valores de 1 a 7:

Valor   Dia da Semana
1       Domingo
2       Segunda-feira
3       Terça-feira
4       Quarta-feira
5       Quinta-feira
6       Sexta-feira
7       Sábado




                                                   - 63   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO


%MXXXX ou %TMXXXX - Especificação dos operandos de onde são acertados os valores do relógio, com o
acionamento de alguma das entradas de acerto da função. Se este parâmetro for especificado como memória,
os valores são copiados da memória declarada e as 6 subseqüentes. Se for especificado como tabela, os
valores são copiados da posição 0 até 6. Caso os operandos não estejam declarados, o acerto não é realizado
e as saídas da instrução são desligadas. Os valores a serem copiados para o relógio devem ser colocados nos
operandos na mesma seqüência dos operandos de leitura (segundos, minutos, horas, dia do mês, mês, ano e
dia da semana).
- OPER4 - Não utilizado.


Entradas e Saídas

Descrição das entradas:

- habilita - quando esta entrada está energizada a função é chamada, sendo analisados os parâmetros
programados na instrução CHF. Caso os mesmos estejam incorretos, todas as saídas da instrução são
desenergizadas. Se estiverem corretos, os valores de tempo do relógio são transferidos para os operandos
memória ou para a tabela declarada como primeiro parâmetro em OPER3, a saída sucesso é energizada e a
saída pulso um segundo é ligada por uma varredura a cada segundo.
- acerta relógio - quando energizada, os valores dos operandos declarados como segundo parâmetro em
OPER3 são acertados no relógio, caso estejam com valores corretos. Enquanto esta entrada estiver acionada o
tempo não é contado, permanecendo a saída pulso um segundo desenenergizada.
Descrição das saídas:
- sucesso - é energizada quando a função foi corretamente executada.
- pulso um segundo - indica se houve uma mudança no contador de segundos do relógio. O pulso dura uma
varredura e pode ser usado para sincronizar eventos do programa aplicativo.
- perda de horário - esta saída é ligada caso o relógio tenha ficado sem a alimentação da bateria durante falha
na alimentação principal. É desacionada com o acerto do relógio.
Utilização
Esta função pode ser utilizada somente nas UCPs AL-2002/MSP, AL-2003, PL104 e PL105.

ATENÇÃO:
A alimentação de bateria é fornecida para a UCP através do barramento. Portanto, a remoção da UCP AL-
2002/MSP, AL-2003 ou AL-2004 do bastidor causa a perda do horário do relógio.

Sintaxe




                                                    - 64   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




                                  - 65   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Instruções de Movimentação Indexada


Esta forma de acesso é usada em conjunto com um operando memória (%M) para referenciar indiretamente
outros operandos do sistema.
O sinal *, colocado na frente de um tipo de operando, indica que este é referenciado pelo endereço contido na
memória especificada à esquerda do sinal.

Formatos:
No MASTERTOOL, o acesso indireto às tabelas é representado sem o asterisco.
São utilizados em instruções de movimentação, comparação, contagem e de temporização.

Exemplos:

%M0043*E       octeto de entrada referenciada indiretamente pela memória 43
%M1824*A       octeto auxiliar referenciado indiretamente pela memória 1824
%M0371TD       tabela decimal referenciada indiretamente pela memória 371
%M0009*M       operando memória referenciado indiretamente pela memória 9

Esta instrução movimenta o valor +431 para o operando memória cujo endereço é o valor correntemente
armazenado em %M0009. Se %M0009 conter o valor 32, então o valor +431 será armazenado em %M0032. Se
%M0009 contiver o valor 12 então o valor constante será armazenado em %M0012.

ATENÇÃO:
É responsabilidade do programa aplicativo que o valor contido na memória de referência (%M0009, no
exemplo) represente endereços válidos, não contendo valores negativos ou muito altos, acima dos
endereços existentes para o tipo de operando referenciado indiretamente. As instruções não realizam
os acessos indiretos inválidos, normalmente possuindo um sinal de saída para a indicação do erro.

Se no programa do exemplo anterior houvessem sido declarados 256 operandos %M, o valor de %M0009
deveria estar entre 0 e 255 para que a instrução fosse corretamente executada. Caso o valor não estivesse
nesta faixa, o acesso não seria realizado.




                                                    - 66   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




 Instruções de Manipulação de Tabelas


Instrução CAB – Carrega Bloco de
Constantes
Descrição
Esta instrução permite a carga de até 255 valores constantes em um bloco de operandos ou em tabelas.
O operando inicial ou tabela a ser carregada é especificado em OPER1, o número de operandos ou posições
da tabela a serem carregados em OPER2 e o valor das constantes em OPER3.
O valor de OPER2 deve ser positivo, menor ou igual a %KM+00255.
O operando OPER3 é composto por uma tabela de valores constantes a serem carregados. Estes valores são
declarados selecionando o botão Bloco, sendo aberta uma caixa de diálogo no MASTERTOOL. As constantes
são do tipo %KM se o tipo do primeiro operando for %E, %S, %A, %M, %TM ou são do tipo %KD se o primeiro
operando for %D ou %TD. Caso o primeiro operando seja um octeto (%E, %S ou %A), somente serão
movimentados os valores dos octetos menos significativos de cada constante declarada.
Quando o botão Bloco é selecionado é exibida a caixa de diálogo CAB Valores.
Para realizar a edição das constantes
1       Posicionar o cursor no índice a ser editado. Caso seja necessário rolar as páginas podem ser utilizadas
as teclas Page Down e Page Up ou a barra de rolagem vertical.
2       Digitar o valor da constante.

A saída índice destino inválido é acionada quando algum operando não puder ser acessado ou uma posição de
tabela não existir. Quando a saída índice destino inválido é acionada, nenhuma carga de constantes ocorreu.
A saída sucesso é acionada sempre que a instrução for executada corretamente. A carga dos valores
constantes é inteiramente realizada em uma só varredura do programa aplicativo, podendo ocasionar um tempo
de ciclo excessivo quando o mesmo for extenso. Na maior parte dos programas aplicativos, a instrução CAB
pode ser executada somente na inicialização do mesmo (carga de tabelas cujos conteúdos serão somente
lidos) ou em alguns momentos especiais, não precisando ser chamada em todas as varreduras. Nestes casos,
recomenda-se a sua programação no módulo de programa aplicativo de inicialização (E000) ou que seja
acionada apenas nos momentos de carga necessários.

Tecla de atalho


    Cab

Sintaxe




                                                    - 67   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




 Instrução MOT – Movimentação de Tabelas
Descrição
Esta instrução permite duas operações: transferir o valor de uma posição de tabela para um operando simples
ou de um operando simples para uma posição de tabela.
O operando OPER1 é o operando origem, cujo valor é movimentado para o operando destino especificado em
OPER3. OPER2
contém a posição da tabela declarada em OPER1 ou OPER3.

Leitura de conteúdo de tabela:

Permite ler o conteúdo de uma posição de tabela e carregá-lo em um operando memória ou decimal.

A instrução é programada da seguinte forma:

 OPER1 - especifica o endereço da tabela a ser lida (%TM, %M*TM, %TD, %M*TD)
 OPER2 - especifica a posição (%KM) a ser lida ou a memória (%M) que contém esta posição
 OPER3 - especifica para onde o conteúdo da posição de tabela deve ser transferido (%M, %M*M, %D, %M*D)

Se OPER1 referenciar indiretamente uma tabela não especificada, ou se o valor de OPER2 for negativo ou
maior que a última posição definida para a tabela, a transferência não é realizada e a saída índice origem
inválido é acionada. Se OPER3 referenciar indiretamente um operando não declarado, a transferência não é
realizada e a saída índice destino inválido é acionada.




                                                   - 68   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Escrita de valores em tabela:
Permite escrever um valor constante ou o conteúdo de um operando memória ou decimal em uma posição de
tabela.
A instrução é programada da seguinte forma:
 OPER1 - especifica o operando origem (%KM, %M, %M*M, %KD, %D, %M*D)
 OPER2 - especifica a posição (%KM) a ser escrita na tabela ou a memória (%M) que contém esta posição
 OPER3 - especifica o endereço da tabela para onde é transferido o conteúdo (%TM, %M*TM, %TD, %M*TD)
Se OPER1 referenciar indiretamente um operando não declarado, a transferência do conteúdo não é realizada
e a saída índice origem inválido é acionada. Se o valor de OPER2 for negativo ou maior que a última posição
definida para a tabela, ou se OPER3 referenciar indiretamente uma tabela não especificada, a transferência do
conteúdo não é realizada e a saída índice destino inválido é acionada.
Esta instrução simplifica a programação de uma série de algoritmos envolvendo decodificações,
seqüenciamentos, geração de curvas, armazenamento e comparação de valores, entre outros.




Tecla de atalho


    Mot




                                                   - 69   -
CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO




Instrução de Movimentação de Blocos de
Operando – MOB


Descrição
Esta instrução realiza a cópia dos valores de um bloco de operandos origem para um bloco destino.
Especifica-se o primeiro operando do bloco origem em OPER1 e o primeiro operando do bloco destino em
OPER4. O número total de transferências a serem realizadas é declarado no parâmetro OPER2, devendo
também ser especificados o número de transferências por varredura em OPER5 e uma memória acumuladora
para a contagem do número de transferências em OPER3.

Se o bloco origem ou destino for uma tabela, a transferência tem início na sua primeira posição.
Se o formato do operando destino for menor do que o origem, os octetos mais significativos do valor origem são
desprezados. Caso contrário, os octetos mais significativos do destino são zerados.
O número de transferências por varredura é limitado em 255 operandos. Na medida do possível deve-se evitar
um número elevado de transferências na mesma varredura, para diminuir o tempo de execução do programa.

Em cada instrução MOB é utilizada uma memória como operando de controle em OPER3, que deve estar
zerada antes da primeira execução.

ATENÇÃO:
O operando de controle não deve ter seu conteúdo alterado em nenhuma parte do programa aplicativo, sob

pena de prejudicar a execução correta da instrução. Cada ocorrência desta instrução no programa deve possuir

um operando de controle exclusivo, diferente dos demais. Este operando não pode ser retentivo.

Quando ligadas, as saídas índice origem inválido e índice destino inválido indicam, respectivamente, que pelo
menos um dos operandos componentes do bloco origem ou destino tem endereço superior ao número máximo
declarado para o operando ou tabela utilizado, não sendo realizada nenhuma movimentação. Caso o valor de
OPER2 seja negativo, a saída índice origem inválido é acionada.
A saída movimentação concluída é acionada na varredura em que a movimentação for completada.

ATENÇÃO:
A entrada habilita deve permanecer ativa até que a movimentação esteja concluída. Como esta instrução
é executada em múltiplos ciclos de execução, não deve ser saltada enquanto não estiver terminada a
movimentação.

Tecla de atalho

    Mob




                                                   - 70   -
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)
Apostila clp (conceitos básicos)

Weitere ähnliche Inhalte

Was ist angesagt?

Modelo+laudo+vistoria spda
Modelo+laudo+vistoria spdaModelo+laudo+vistoria spda
Modelo+laudo+vistoria spda
Paulo H Bueno
 

Was ist angesagt? (20)

Api 5 l
Api 5 lApi 5 l
Api 5 l
 
Aula disjuntor
Aula disjuntorAula disjuntor
Aula disjuntor
 
Linguagens De ProgramaçãO Clp
Linguagens De ProgramaçãO ClpLinguagens De ProgramaçãO Clp
Linguagens De ProgramaçãO Clp
 
Daewoo Doosan Mega 250-V Wheel Loader Operation and Maintenance Manual (Seria...
Daewoo Doosan Mega 250-V Wheel Loader Operation and Maintenance Manual (Seria...Daewoo Doosan Mega 250-V Wheel Loader Operation and Maintenance Manual (Seria...
Daewoo Doosan Mega 250-V Wheel Loader Operation and Maintenance Manual (Seria...
 
Processo de Corte a Plasma
Processo de Corte a PlasmaProcesso de Corte a Plasma
Processo de Corte a Plasma
 
Tubulação industrial
Tubulação industrialTubulação industrial
Tubulação industrial
 
Pedrollo 6 sr
Pedrollo 6 srPedrollo 6 sr
Pedrollo 6 sr
 
Eletroerosão
EletroerosãoEletroerosão
Eletroerosão
 
Modelo+laudo+vistoria spda
Modelo+laudo+vistoria spdaModelo+laudo+vistoria spda
Modelo+laudo+vistoria spda
 
Gas insulated substation 2
Gas insulated substation 2Gas insulated substation 2
Gas insulated substation 2
 
ATERRAMENTO & SPDA - Sistemas de Proteção contra Descargas Atmosféricas.
ATERRAMENTO & SPDA - Sistemas de Proteção contra Descargas Atmosféricas.ATERRAMENTO & SPDA - Sistemas de Proteção contra Descargas Atmosféricas.
ATERRAMENTO & SPDA - Sistemas de Proteção contra Descargas Atmosféricas.
 
Posto transf 150_kva_13,8_380-rev01-layout1
Posto transf 150_kva_13,8_380-rev01-layout1Posto transf 150_kva_13,8_380-rev01-layout1
Posto transf 150_kva_13,8_380-rev01-layout1
 
Medium Voltage Terminations- up to 42kV.| AKBAR TRADING EST.| mail@akbartradi...
Medium Voltage Terminations- up to 42kV.| AKBAR TRADING EST.| mail@akbartradi...Medium Voltage Terminations- up to 42kV.| AKBAR TRADING EST.| mail@akbartradi...
Medium Voltage Terminations- up to 42kV.| AKBAR TRADING EST.| mail@akbartradi...
 
Normas NR-10
Normas NR-10Normas NR-10
Normas NR-10
 
Soldagem
SoldagemSoldagem
Soldagem
 
EPP-0843-10/11 RAYCHEM JOINT KIT | AKBAR TRADING EST. SAUDI ARABIA|
EPP-0843-10/11 RAYCHEM JOINT KIT | AKBAR TRADING EST. SAUDI ARABIA|EPP-0843-10/11 RAYCHEM JOINT KIT | AKBAR TRADING EST. SAUDI ARABIA|
EPP-0843-10/11 RAYCHEM JOINT KIT | AKBAR TRADING EST. SAUDI ARABIA|
 
Aterramento e para-raios
Aterramento e para-raios Aterramento e para-raios
Aterramento e para-raios
 
Malha de controle de uma caldeira
Malha de controle de uma caldeiraMalha de controle de uma caldeira
Malha de controle de uma caldeira
 
Apostila festo pneumatica
Apostila festo pneumaticaApostila festo pneumatica
Apostila festo pneumatica
 
Spda
SpdaSpda
Spda
 

Andere mochten auch

Apostila+de+programação+ladder+ +clp+micrologix+1200
Apostila+de+programação+ladder+ +clp+micrologix+1200Apostila+de+programação+ladder+ +clp+micrologix+1200
Apostila+de+programação+ladder+ +clp+micrologix+1200
Jeziel Rodrigues
 
Apostila clp - blocos funcionais
Apostila   clp - blocos funcionaisApostila   clp - blocos funcionais
Apostila clp - blocos funcionais
Robisonpardim
 
Automacao De Esteira Transportora2
Automacao De Esteira Transportora2Automacao De Esteira Transportora2
Automacao De Esteira Transportora2
Lucas Peng  
 
Curso automação industrial clp senai - aula12
Curso automação industrial   clp senai - aula12Curso automação industrial   clp senai - aula12
Curso automação industrial clp senai - aula12
miroslayer
 
15507933 apostila-de-cl ps-ladder
15507933 apostila-de-cl ps-ladder15507933 apostila-de-cl ps-ladder
15507933 apostila-de-cl ps-ladder
elkbongg
 
Denny daniel collina apostila de sitemas microprocessados
Denny daniel collina   apostila de sitemas microprocessadosDenny daniel collina   apostila de sitemas microprocessados
Denny daniel collina apostila de sitemas microprocessados
Lorena Barreto
 

Andere mochten auch (20)

Apostila de automação com clp em linguagem ladder
Apostila de automação com clp em linguagem ladderApostila de automação com clp em linguagem ladder
Apostila de automação com clp em linguagem ladder
 
Apostila+de+programação+ladder+ +clp+micrologix+1200
Apostila+de+programação+ladder+ +clp+micrologix+1200Apostila+de+programação+ladder+ +clp+micrologix+1200
Apostila+de+programação+ladder+ +clp+micrologix+1200
 
Apostila clp - blocos funcionais
Apostila   clp - blocos funcionaisApostila   clp - blocos funcionais
Apostila clp - blocos funcionais
 
Automação com clp (ladder)
Automação com clp (ladder)Automação com clp (ladder)
Automação com clp (ladder)
 
Clp – controlador lógico programável
Clp – controlador lógico programávelClp – controlador lógico programável
Clp – controlador lógico programável
 
Stoe 01 p
Stoe 01 pStoe 01 p
Stoe 01 p
 
Automacao clp
Automacao clpAutomacao clp
Automacao clp
 
Automacao De Esteira Transportora2
Automacao De Esteira Transportora2Automacao De Esteira Transportora2
Automacao De Esteira Transportora2
 
Clp
ClpClp
Clp
 
Step7 200 completo
Step7 200 completoStep7 200 completo
Step7 200 completo
 
Curso automação industrial clp senai - aula12
Curso automação industrial   clp senai - aula12Curso automação industrial   clp senai - aula12
Curso automação industrial clp senai - aula12
 
15507933 apostila-de-cl ps-ladder
15507933 apostila-de-cl ps-ladder15507933 apostila-de-cl ps-ladder
15507933 apostila-de-cl ps-ladder
 
10 exemplos de aplicações com logo!
10 exemplos de aplicações com logo!10 exemplos de aplicações com logo!
10 exemplos de aplicações com logo!
 
Manual logo ago_13
Manual logo ago_13 Manual logo ago_13
Manual logo ago_13
 
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
 
Clp logo e s7 200
Clp logo e s7 200Clp logo e s7 200
Clp logo e s7 200
 
Clp giliarde
Clp giliardeClp giliarde
Clp giliarde
 
Denny daniel collina apostila de sitemas microprocessados
Denny daniel collina   apostila de sitemas microprocessadosDenny daniel collina   apostila de sitemas microprocessados
Denny daniel collina apostila de sitemas microprocessados
 
Karel – Autonomous Robot for Enhancing Learning
Karel – Autonomous Robot for Enhancing LearningKarel – Autonomous Robot for Enhancing Learning
Karel – Autonomous Robot for Enhancing Learning
 

Ähnlich wie Apostila clp (conceitos básicos)

Clp completa
Clp completaClp completa
Clp completa
panelada
 
Apostila controladores ladder (1)
Apostila controladores ladder (1)Apostila controladores ladder (1)
Apostila controladores ladder (1)
Duilho Silva
 

Ähnlich wie Apostila clp (conceitos básicos) (20)

Introducao clp
Introducao clpIntroducao clp
Introducao clp
 
Introducao clp
Introducao clpIntroducao clp
Introducao clp
 
Clp completa
Clp completaClp completa
Clp completa
 
Curso clp siemens
Curso clp siemensCurso clp siemens
Curso clp siemens
 
Curso clp siemens
Curso clp siemensCurso clp siemens
Curso clp siemens
 
S7 avançado
S7 avançadoS7 avançado
S7 avançado
 
CLP-S7-1200 NÍVEL 1.pptx
CLP-S7-1200 NÍVEL 1.pptxCLP-S7-1200 NÍVEL 1.pptx
CLP-S7-1200 NÍVEL 1.pptx
 
SIMATIC S7 AVANZADO PROGRAMACAO EMERSON EDUARDO RODRIGUES
SIMATIC S7 AVANZADO PROGRAMACAO EMERSON EDUARDO RODRIGUESSIMATIC S7 AVANZADO PROGRAMACAO EMERSON EDUARDO RODRIGUES
SIMATIC S7 AVANZADO PROGRAMACAO EMERSON EDUARDO RODRIGUES
 
Corpo relatorio
Corpo relatorioCorpo relatorio
Corpo relatorio
 
05-ModeloDeVonNeumann.pdf
05-ModeloDeVonNeumann.pdf05-ModeloDeVonNeumann.pdf
05-ModeloDeVonNeumann.pdf
 
Basico sobre clp
Basico sobre clpBasico sobre clp
Basico sobre clp
 
Automatos programaveis
Automatos programaveisAutomatos programaveis
Automatos programaveis
 
Aula 2 - Introdução aos Miconcontroladores.pptx
Aula 2 - Introdução aos Miconcontroladores.pptxAula 2 - Introdução aos Miconcontroladores.pptx
Aula 2 - Introdução aos Miconcontroladores.pptx
 
Apostila controladores ladder
Apostila controladores ladderApostila controladores ladder
Apostila controladores ladder
 
Apostila controladores ladder (1)
Apostila controladores ladder (1)Apostila controladores ladder (1)
Apostila controladores ladder (1)
 
Apostila controladores ladder
Apostila controladores ladderApostila controladores ladder
Apostila controladores ladder
 
Planejamento projeto masiero
Planejamento projeto masieroPlanejamento projeto masiero
Planejamento projeto masiero
 
Apostila supervisorio indusoft ind371
Apostila supervisorio indusoft ind371Apostila supervisorio indusoft ind371
Apostila supervisorio indusoft ind371
 
Manual getstarted
Manual getstartedManual getstarted
Manual getstarted
 
Rs logix 5000
Rs logix 5000Rs logix 5000
Rs logix 5000
 

Apostila clp (conceitos básicos)

  • 1. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO APOSTILA SOBRE CONTROLADORES PROGRAMÁVEIS Prof. Eng. Antonio Geraldo Stéfano Revisão: Maio / 2007 Curso baseado no CP Altus -1 -
  • 2. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Introdução Objetivos O curso de programação básica dos CPs aborda conceitos básicos da utilização de controladores programáveis, sistemas de numeração (binário, octal, decimal, hexadecimal), varredura de entradas e saídas, forma de execução de programas no CP (lógicas), sistema de endereçamento, conceitos básicos de hardware, operação do terminal de programação, apresentação com exercícios das instruções básicas da linguagem dos CPs. São ressaltadas as diferenças da linguagem de programação, apresentando o conceito de programação estruturada, embora não utilizando intensamente o mesmo para não tornar complexo o curso que pretende ser introdutório. O objetivo é fixar nos alunos os conceitos básicos de CPs e de sua programação, através apresentação de exemplos e da solução de exercícios simples que permitem conhecimento da operação do terminal de programação. O aluno deve ser estimulado a consultar os manuais dos produtos aprendendo o seu conteúdo e fixando locais onde pode solucionar dúvidas. Pré-requisitos Os pré-requisitos mínimos para que os alunos possam cursar satisfatoriamente o curso básico, são: Conceitos de eletricidade básica; Conceitos de lógicas de relés; -2 -
  • 3. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Histórico dos CPs Os primeiros controladores programáveis foram introduzidos em controle industrial, no início da década de 60, para substituir painéis de controle a relés. Quando era necessário inserir novos requisitos de controle, não era econômico modificar a lógica destes painéis, o que acarretava, freqüentemente, o projeto e aquisição de novos painéis. CPs foram desenvolvidos para serem reprogramados, quando as alterações de controle são necessárias, sem grandes modificações no hardware, sendo então equipamentos reutilizáveis. Os CPs passaram a ser utilizados primeiramente na indústria automobilística e, a partir daí, nos outros segmentos industriais. Assim como a sua aceitação, também a demanda por mais funções, tais como maior capacidade de memória e de pontos E/S, cresceu. A maioria dos fabricantes respondeu positivamente a estes requisitos, introduzindo novos modelos de CPs, cobrindo aplicações de pequeno (50-100 relés), médio (150-500 relés) e grande (500-3000 relés) número de pontos. Geralmente estes vários modelos não eram compatíveis uns com os outros; os módulos de E/S não eram intercambiáveis, exceto adicionando-se adaptadores, o que aumentava os custos e os problemas de manutenção. O advento do microprocessador, das facilidades de desenvolvimento de software e uma maior maturidade do mercado, deu aos CPs novo impulso. Na década de 80 surgiram microprocessadores e memórias mais compactos, permitindo a redução de custos e tamanhos, com aumento de confiabilidade. Esta nova geração de microprocessadores trouxe consigo a capacidade de interligação dos CPs entre si e com outros equipamentos (computadores) em redes industriais de comunicação, permitindo a informatização das fábricas. -3 -
  • 4. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Conceitos Básicos de CPs Ponto de entrada Considera-se cada sinal recebido pelo CP, a partir de dispositivos ou componentes externos (sensores), como um ponto de entrada para o CP. Ex.: microchaves, botões, termopares, relés, etc. Ponto de saída Cada sinal produzido pelo CP para acionar dispositivos ou componentes do sistema de controle (atuadores) constitui um ponto de saída. Ex.: lâmpadas, solenóides, motores, etc. Programa A lógica existente entre os pontos de entrada e de saída e que executa as funções desejadas, de acordo com o estado das entradas no CP, é o programa. Controlador programável (CP) É um equipamento eletrônico digital com hardware e software compatíveis com aplicações industriais (conceito ABNT). -4 -
  • 5. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Conceito de bit, byte, nibble e palavra Bit Bit (Binary DigiT) é a unidade para o sistema de numeração binário. Um bit é a unidade básica de informação e pode assumir o valor "0" ou "1". 1 bit Nibble Nibble é a unidade formada por 4 bits consecutivos. 1 nibble = 4 bits Byte Byte é uma unidade constituída de 8 bits consecutivos. Em um CP por exemplo o estado das entradas de um módulo digital de 8 pontos pode ser armazenado em um byte. 1 byte = 8 bits = 2 nibbles Palavra / Word É um conjunto de bytes que correspondem ao tamanho da palavra. No CP por exemplo, os valores numéricos resultados de operações aritméticas, contagens ou temporizações são armazenados em palavras de 16 bits. 1 palavra / Word pode Ter : 8, 16, 32 ou 64 bits -5 -
  • 6. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Sistemas de Numeração Os CPs, como todos os computadores, somente conseguem manipular valores representados no sistema binário. Números decimais Dígitos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Base: 10 Posição do algarismo no número: potências de 10 Exemplo: nº 456 = (4 x 102 )+(5 x 101 )+(6 x 100) Números binários Dígitos: 0,1 Base: 2 Posição do algarismo no número: Potências de 2 Exemplo: nº 110011 = (1 x 25)+(1 x 24)+(0 x 23)+(0 x 22)+(1 x 21)+(1 x 20) = 51D Números Hexadecimais Dígitos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F Base: 16 Posição do algarismo no número: Potências de 16 Exemplo: nº 1CD = (1 x 162)+(12 x 161)+(13 x 160) = 461D -6 -
  • 7. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Números BCD ( decimais codificados em binário) Dígitos: Números Números Binários Decimais 0 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 Exemplo: 0000 0101 0001 0011 0 x 10 3 5 x 10 2 1 x 10 1 3 x 10 0 0 500 10 3 = 513D -7 -
  • 8. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Componentes de CP Entradas Terminal de Proces- Memória Memória Dispositivo Programação de de Saídas sador Programa Dados de Fonte de Alimentação Campo Fonte de Alimentação Interna Externa Figura 0-1 Componentes de um CP. Terminal de Programação O terminal de programação é um dispositivo que conectado temporariamente ao CP permite introduzir o programa de usuário. Utiliza-se o terminal de programação para efetuar modificações em programas ou para permitir ao pessoal de manutenção o exame do estado dinâmico de um sistema de controle. É possível, através deste equipamento, verificar a operação própria ou imprópria de qualquer parte do sistema de controle, acompanhando todos os passos do programa em tempo real. Unidade Central de Processamento (UCP) A UCP é a unidade "inteligente” do CP. Na UCP são tomadas todas as decisões para controle da máquina ou processo, ela recebe os dados de entrada, realiza as decisões lógicas baseada no programa armazenado e atualiza as saídas. Entradas e saídas (E/S) Elementos (módulos) responsáveis pela interface dos CPs com o ambiente externo realizando tarefa de filtragem dos sinais adaptação de níveis de tensão e corrente. Dispositivos de campo São os elementos do sistema de controle necessários para obtenção de informações (sensores) e atuação ( atuadores ) do processo. -8 -
  • 9. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Princípio de funcionamento de um CP Um CP realiza continuamente um ciclo de varredura que consiste em: 1. Leitura de entradas; 2. Execução do programa, que consiste em calcular novas saídas em função das entradas, de acordo com a seqüência de instruções; 3. Atualização das saídas. A figura 1.2, mostra o ciclo básico de varredura de um CP, o tempo mínimo para execução de uma varredura é de 20 ms. Figura 0-2 Ciclo de varredura de um CP -9 -
  • 10. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Princípio de funcionamento de um CP - 10 -
  • 11. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Linguagens de relés e blocos Características Representação gráfica Facilidade de compreensão Linguagem mais utilizada no mundo Exemplo Exemplo de programa "ladder” - 11 -
  • 12. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Linguagens Estruturadas Ciclo de varredura linguagens estruturadas Vantagens da utilização de linguagens estruturadas Organização; Desenvolvimento de bibliotecas de rotinas utilitárias para utilização em vários programas; Facilidade de manutenção; Simplicidade de documentação e entendimento por outras pessoas além do autor do software. - 12 -
  • 13. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Redes de Comunicação Conectividade Altus Em uma fábrica existem três níveis de conectividade: o nível de planta, o nível de controle e o nível de campo: A rede na planta No nível de planta é necessário manter uma base de dados global e coletar, processar, armazenar e gerenciar diversos tipos de dados. Além disso, este nível é o que estabelece o plano básico de produção e onde são realizados os diagnósticos dos elementos do próprio nível e dos níveis inferiores. Aqui o número típico de nós é de 2 a 20 e as transferências se dão em uma velocidade de 10/s a 1/minuto. As mensagens trafegam aos megabytes e não há necessidade de determinismo na rede (o tempo para completar as mensagens não precisa ter um limite máximo). A rede em nível de planta deve ter alta confiabilidade, ser de arquitetura simples e com imunidade a ruído dentro de padrões razoáveis. As tecnologias aplicáveis aqui são a Ethernet (IPX, TCP/IP) de acordo com a norma IEEE 802.3, Nível 1. A rede Altus Ethernet TCP/IP Através de uma interface adequada, os Controladores Programáveis Altus podem conectar-se a redes do tipo Ethernet TCP/IP permitindo um completo acesso às informações de planta via este tipo de standard. Com isto, utilizando "workstations" ou sistemas de computação de maior hierarquia, as aplicações de controle podem ser acessadas de forma padronizada aumentando-se com isto o seu potencial de conectividade. A Altus disponibiliza "drivers" de software para a maioria dos supervisórios existentes no mercado, facilitando completamente a aplicação desta opção. As redes de controle O nível de controle responde pelos equipamentos que compõe a linha de produção e pela leitura e acionamento de todos os sinais de campo. É neste nível que são feitos os cálculos de algoritmos de controle e otimização, bem como a aquisição de dados, monitoração dos processos e registros de alarmes, dados de produção e manutenção. O próprio controle de qualidade da produção tem neste nível o seu centro nervoso. As mensagens trafegam aos kilobytes e o determinismo é necessário para garantir tempo mínimo para as ações de controle. A freqüência de transferência nestes casos é de 1/10 ms a 1/10s. A rede em nível de controle deve ter alta confiabilidade, não escapa de ter arquitetura mais complexa e com alta imunidade a ruído. As tecnologias aplicáveis aqui são na sua maioria proprietárias mas que tendem a atender a MAC (ISO 802.3), LLC (IEE 802.2 classe I). A rede ALNET II Implantada a partir da série de CPs AL-2000/MSP ("Multi-Station Processors") a rede ALNET II é multi-mestre e permite o controle distribuído a partir de vários processadores de forma determinística. Ela atinge a velocidade de 1 Mbaud. Possui o conceito de sub-redes, ou seja, sua arquitetura permite distribuir e isolar o tráfego de informação nas aplicações. Seu desempenho permite a real distribuição das tarefas de controle entre vários Controladores Programáveis. Possui gateways para diversos tipos de conexões, o que permite a sua convivência em ambientes já desenvolvidos com produtos de outras marcas. A rede ALNET I A rede ALNET I é uma rede de supervisão, do tipo mestre-escravo, extremamente útil na aquisição e análise de dados, utilizada em toda a linha de Controladores Programáveis Altus. Ela pode auxiliar - 13 -
  • 14. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO em muito a implantação de redes de controle quando aplicada em conjunto com a rede ALNET II. Seu protocolo é aberto e disponível para o desenvolvimento de qualquer tipo de "driver" de software. Ela pode controlar até 31 CPs a partir de uma estação mestre. As redes de campo O nível de campo é utilizado para aquisição das variáveis de processo, envio de programação de "set-points", aquisição do estado dos equipamentos, atuação sobre motores, válvulas e/ou outros equipamentos. O número típico de nós por nível é de 50 a 500 com tempos de transferência da ordem de 1/ms a 1/100 ms. As mensagens variam de 1 bit a alguns bytes e o determinismo é necessário. A rede PROFIBUS PROFIBUS é uma rede de campo aberta, padronizada na Europa e de uso internacional, definida na Norma EN 50170. Tem três versões para atender diferentes requisitos de um sistema de controle: PROFIBUS-DP O PROFIBUS DP é otimizado para conexão rápida e econômica. Esta versão é destinada especialmente para comunicação entre sistemas de controle de automação e E/S distribuídos. PROFIBUS-DP pode ser usado para substituir transmissão de sinais como 24 Vdc ou 4 a 20 mA. PROFIBUS-PA PROFIBUS-PA foi projetado especialmente para aplicação em processos contínuos. Possibilita a conexão de sensores e atuadores em barramento único comum, em áreas intrinsecamente seguras de acordo com o padrão internacional IEC 1158-2. PROFIBUS-FMS PROFIBUS-FMS é uma solução de comunicação genérica. Os serviços FMS abrangem uma larga faixa de aplicações e proporcionam grande flexibilidade. PROFIBUS-FMS geralmente é utilizado a nível de controle conectando os equipamentos responsáveis por este controle entre si. - 14 -
  • 15. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Vantagens do uso de Controladores Programáveis Os CPs oferecem um considerável número de benefícios para aplicações na indústria. Estes benefícios podem resultar em economia que excede o custo do CP em si e devem ser considerados quando da seleção de um dispositivo de controle industrial. As vantagens da utilização de CPs, se comparados a outros dispositivos de controle industrial incluem: • Menor ocupação de espaço; • Potência elétrica requerida menor; • Reutilização; • Programável, se ocorrerem mudanças de requisitos; • Confiabilidade maior; • Manutenção mais fácil; • Maior flexibilidade, satisfazendo um número maior de aplicações; • Permite a interface através de rede de comunicação com outros CPs e com microcomputadores; • Projeto do sistema mais rápido. Aplicações típicas de CPs Praticamente não existem ramos de aplicações industriais onde não existam aplicações de CPs, algumas aplicações típicas são: • Máquinas industriais (operatrizes, injetoras de plástico, têxteis, calçados, etc.); • Equipamentos industriais para processos (siderurgia, papel e celulose, pneumáticos, dosagem e pesagem, fornos, etc.); • Equipamentos para controle de energia (demanda, fator de carga); • Controle de processos com realização de sinalização, intertravamento e laços PID; • Aquisição de dados de supervisão em: fábricas, prédios inteligentes, dispositivos que necessitem de controle remoto, etc.; • Bancadas de teste automático de componentes industriais. - 15 -
  • 16. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO INTRODUÇÃO A PROGRAMAÇÀO LÓGICAS DE PROGRAMA Chama-se lógica a matriz de programação formada por 32 células ( elementos da matriz ) dispostas em 4 linhas ( 0 a 3 ) e 8 colunas ( 0 a 7 ). E cada uma das células podem ser colocadas instruções, podendo-se programar até 32 instruções em uma mesma lógica. Cada lógica presente no programa simula um pequeno trecho de um diagrama de relés real. A figura abaixo mostra o formato de uma lógica do programa aplicativo. As duas linhas laterais da lógica representam barras de energia entre as quais são colocadas as instruções a serem executadas. Estão disponíveis para a programação instruções simbólicas tipicamente encontradas em diagramas, tais como contatos, bobinas, ligações e instruções representadas em caixas, como temporizadores, contadores e aritméticas. A lógica deve ser programada de forma que bobinas e entradas das instruções de caixas sejam “energizadas “a partir do fechamento de um fluxo de “corrente “da esquerda para a direita entre as duas barras, através de contatos ou das saídas das caixas interligados. Entretanto, o fluxo de “corrente elétrica “simulado em uma lógica flui somente no sentido da barra de energia esquerda para direita, diferentemente dos esquemas elétricos reais. O conceito utilizado simplifica sobremaneira o projeto lógico de relés, uma vez que não é necessário a preocupação com caminhos de fuga de corrente. - 16 -
  • 17. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO O processamento das instruções de uma lógica é realizado em colunas, desde a coluna 0 até a 7. Uma coluna é processada na ordem seqüencial de suas linhas, desde a linha 0 até a linha 3. A figura abaixo mostra a ordem de processamento de células da lógica. O número existente dentro de cada célula indica a sua ordem de processamento. Operandos da linguagem de relés Operandos são elementos utilizados pelas instruções do Mastertool na elaboração de um programa aplicativo. Os operandos podem definir valores constantes, definidos no momento da programação, ou variáveis, identificados através de um endereço ou de um tag, com valores possíveis de serem alterados durante a execução do programa aplicativo. Identificação de um Operando pelo Endereço A identificação e utilização de um operando pelo seu endereço é caracterizada pelo caractere % como primeiro caractere do nome. O restante do nome utilizado deve seguir ás regras de formatação de endereço de operandos. Identificação de um Operando pelo seu Tag A identificação e utilização de um operando pelo seu tag é caracterizada pela utilização de um nome, com até 7 caracteres ( alfanuméricos ), que pode ser atribuído a qualquer operando, exceto constantes. Este nome passa a representar o operando nos processos de programação, monitoração, depuração e documentação de um programa aplicativo. Ex.: Atribui-se o tag CONT1 ao operando % M0000. Sempre que o operando %M0000 necessite ser utilizado na edição do programa aplicativo, pode-se utilizar o tag CONT1. - 17 -
  • 18. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Grupos de Instruções Os CP’s Altus utilizam a linguagem de relés e blocos para a elaboração do programa aplicativo, cuja principal vantagem, além de sua representação gráfica, é ser similar a diagramas de relés convencionais. A programação desta linguagem, realizada através do Mastertool, utiliza um conjunto de poderosas instruções apresentadas abaixo em 7 grupos: Conceitos de programação estruturada Funcionalmente, um projeto de programação, pode ser visto como uma coleção de módulos utilizados para realizar uma tarefa específica, também conhecido como programa aplicativo. Isto permite uma visão hierárquica do projeto com a criação de sub-rotinas e funções. Exemplo 1: Ligar e desligar uma lâmpada Representação elétrica C1 L1 Figura 0-3 Representação elétrica Equivalência no diagrama de relés do CP • C1 = E0000.0 • L1 = S0002.0 - 18 -
  • 19. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Programa "ladder" Figura 0-4 Programa "ladder" O programador MASTERTOOL VISÃO GERAL O MASTERTOOL é uma aplicação executada no ambiente operacional Windows, possuindo todas as facilidades e padronizações oferecidas por este . Sua operação, como as demais , são orientadas a comandos de menus e caixas de diálogos que permitem a realização das tarefas e escolha das opções. Com o intuito de facilitar os procedimentos mais utilizados no MASTERTOOL, existem diversos atalhos onde o pressionamento de duas teclas simultaneamente realizam um comando, bem como uma Barra de Ferramentas onde basta clicar no botão desejado para a rápida realização do comando. O MASTERTOOL possui ainda janelas de edição específicas para Módulo de Configuração, Modulo de Configuração de rede e Módulos de Programa. Estas janelas permitem uma edição eficiente e uma visualização adequada dos diversos componentes de cada módulo específico. Procedimentos de utilização de projetos O QUE É UM PROJETO ? Um projeto é um conjunto de módulos que são utilizados para a realização das tarefas de um CP ou para a configuração de um dispositivo roteador. O nome do arquivo de projeto pode possuir até 6 caracteres de comprimento e é finalizado com a extensão .MTL. Alguns caracteres possuem significado especial para o sistema operacional, sendo considerados caracteres inválidos para a formação do nome do projeto . CARACTERES INVÁLIDOS : , . / ? * | “ : ; [ ] = + - < > - 19 -
  • 20. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Existem 2 tipos de projetos: Projeto de Programação. Um Projeto de programação é utilizado para reunir todos os módulos necessários á execução das tarefas de um CP. Neste tipo de Projeto é obrigatória a existência de um módulo de configuração e de um módulo de execução E001. Quando se cria um novo projeto de programação, o módulo de configuração é automaticamente criado e visualizado na janela de edição de módulo C. O nome do módulo de configuração é formado pelo tipo do módulo ( C - ), pelo nome do projeto e pela extensão .000. O nome do módulo de execução principal é formado pelo tipo do módulo ( E- ), por um nome de até 6 caracteres ( sugere-se o nome do projeto ) e pela extensão .001. o Módulo de execução pode ser criado com o comando Novo Módulo ou pode ser inserido com a opção Inserir Módulo do comando Edita Projeto. Projeto de Roteador. Um projeto de roteador é utilizado para definir a configuração de rede e roteamento que deve ser realizado pelo dispositivo roteador. Neste tipo de projeto somente é permitida a utilização de um módulo de configuração de roteamento. Quando se cria um novo projeto de roteador, o módulo de configuração de roteamento é automaticamente criado e visualizado na janela de edição de módulo R. O nome do módulo de configuração de roteamento é formado pelo tipo do módulo ( R- ), pelo nome do projeto e pela extensão .000. CRIANDO UM PROJETO : Para a criação de um Projeto devem ser indicados o nome do projeto, o subdiretório do projeto e o tipo do projeto a ser criado. Para criar um novo projeto: 1. A partir do menu Arquivo, escolher Novo Projeto. 2. No Item Nome do Projeto, digitar o nome do Projeto a ser criado. 3. No item Tipo de Projeto, escolher Programação ou Roteadores conforme o projeto a ser criado. 4. No item Diretório, digitar o caminhamento completo do subdiretório onde deve ficar localizado o novo projeto - 20 -
  • 21. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Procedimentos de utilização de módulos de programa ABRINDO UM MÓDULO : Para que um módulo possa ser editado ou visualizado é necessário que ele esteja aberto. Ao abrir um módulo que faça parte do projeto corrente ele poderá ser visualizado e editado. Caso o módulo sendo aberto não faça parte do projeto corrente, é exibida a caixa de dialogo MASTERTOOL onde deve ser indicado se o módulo deve ser inserido no projeto ou não. Se o módulo não for inserido no projeto, somente poderá ser visualizado. Para abrir um módulo : 1. Utilizar um dos seguintes métodos: Na Barra de Ferramentas, clicar sobre o Botão Abrir. A partir do Menu Arquivo, escolher Abrir Módulo . Utilizar o Atalho de Teclado CTRL + L 2. No item Nome do Arquivo, digitar ou selecionar o nome do módulo. 3. No item Diretórios, selecionar o subdiretório onde esta localizado o módulo. 4. No item Listar Arquivos do Tipo, selecionar o tipo módulo. 5. No item Unidades , selecionar a unidade de disco onde esta localizado o módulo. 6. Quando todos os parâmetros estiverem indicando o módulo, selecionar o Botão OK. Salvando um Módulo : Após a edição de um módulo deve-se salvar o mesmo em disco para que as alterações realizadas possam ser realmente efetivadas. O nome e a localização em disco permanecem as mesmas. Sugere-se que o arquivo seja salvo freqüentemente. Para salvar um módulo no disco: 1. Utilizar um dos seguintes métodos: Na Barra de Ferramentas, clicar sobre o Botão Salvar. A partir do menu Arquivo, escolher Salvar Módulo. Utilizar o atalho de teclado CTRL + S. - 21 -
  • 22. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Configurações do Sistema O que é um módulo “C”: Módulo C é o módulo que possui todas as configurações necessárias para o uso de um projeto de programação. Configurando o Modelo de UCP : O módulo de configuração deve estar declarado de acordo com o controlador a ser utilizado. P ara isto deve-se configurar o modelo de UCP. Para configurar o modelo de UCP deve-se: Selecionar como módulo corrente o módulo C a ser configurado. No item Modelo de UCP, selecionar o modelo de UCP a ser utilizado na lista de UCP’s Configurando Operandos Simples: Deve ser declarado no módulo C a quantidade de operandos simples usada pelos demais módulos que compõe o programa aplicativo. A quantidade total de memória para operandos depende do modelo de UCP. À medida que os operandos são declarados, a quantidade de memória disponível pode ser visualizada no item Bytes Livres. Os operandos memória são alocados em blocos de 128 operandos. Caso o valor digitado não seja múltiplo deste valor, é arredondado para o primeiro valor múltiplo de 128 maior que o número digitado. Os operandos decimal são alocados em blocos de 64 operandos. Caso o valor digitado não seja múltiplo deste valor, é arredondado para o primeiro valor múltiplo de 64 maior que o número digitado. Para configurar operandos simples. No item Total de Operandos, Memória, digitar o número de operandos memória a serem utilizados. O item ao lado mostra automaticamente o intervalo dos operando memória que estão disponíveis para serem utilizados. No item Total de Operandos, Decimal, digitar o número de operandos decimal a serem utilizados. O item ao lado mostra automaticamente o intervalo dos operandos decimal que estão disponíveis para serem utilizados. - 22 -
  • 23. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Configurando Barramento : Deve ser declarado no módulo C a configuração de módulo C a configuração de módulos de entrada e saída localizados em todos os barramentos possíveis para cada modelo UCP. Na configuração do barramento são alocados operandos de entrada e saída ( % E e % S ) para os módulos digitais e indicado o endereço dos operandos de endereço no barramento (% R No item Primeiro Octeto de Saída é possível a definição do endereço do operando % S a partir do qual serão reservados os pontos de saída. Este valor é automaticamente alterado com as declarações dos módulos de E/S nos barramentos, só precisando ser modificado pelo usuário para reservar endereços % E para futuras inserções de módulos de entrada.. Para configurar o barramento. 1. Selecionar o botão Barramento. É exibido um quadro de diálogo para a configuração dos barramentos. 2. No item Primeiro Octeto de Saída, digitar o número do primeiro octeto de saída. 3. No item Troca de Módulo Energizado, deve-se selecionar o item caso seja utilizada a troca de módulos com CP energizado. Este item só existe na UCP Al-2002/MSP. 4. Selecionar o botão Barramento 0. É exibido uma tabela para a configuração do barramento 0. Cada linha da tabela corresponde a uma posição no barramento indicado pela coluna Posição. A coluna PA indica o valor a ser configurado na ponte de ajuste do módulos, ver Manual de Utilização do CP utilizado, Manuais de Características Técnicas AL-1000/AL-2000 e Manuais de Características Técnicas QUARK. 5. Na coluna Módulo, digitar ou selecionar o módulo de entrada ou saída que deve ocupar aquela posição. Se o módulo for de entrada ou saída digital são configurados os operandos %E ou %S de acordo com o número de octetos do módulo. A coluna Endereço indica o endereço no barramento a ser utilizado para acesso aos módulos analógicos e especiais. 6. Repetir este item para todos os módulos a serem inseridos no barramento 0. 7. Repetir o item 4 selecionando cada barramento a ser configurado. Repetir os item 5 para configurar os módulos de cada barramento. O número de barramentos varia de acordo com o modelo de UCP utilizado. Os botões <<Anterior e Próximo>> podem ser utilizados durante a configuração de um barramento para exibir diretamente a caixa de diálogo de configuração do barramento anterior ou do próximo barramento. - 23 -
  • 24. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Edição de lógicas Editando um Módulo de Programa O que é um módulo de programa : Módulo de programa é um módulo que possui rotinas desenvolvidas para serem executadas em um CP. Modificando um módulo de programa : Para modificar um módulo de programa: 1. Selecionar o módulo a ser modificado para a janela ativa. 2. Utilizar um método dos seguintes Na Barra de Ferramentas, clicar sobre o botão modificar. A partir do menu Edição, escolher Modificar (ALT,E,M). Realizar um duplo clique em qualquer ponto da Área de Edição. O menu passa a ser o menu de modificação de módulos possuindo 2 itens com comandos para edição e busca e vários itens contendo os grupos de instruções disponíveis. - 24 -
  • 25. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Inserindo uma Lógica: Para inserir uma lógica: 1. Utilizar um dos seguintes métodos: Na Barra de Ferramentas, clicar sobre o botão inserir nova lógica. A partir do menu Edição, escolher Nova Lógica. 2. No item Lógica, digitar o número da lógica a ser inserida. 3. No item Tag, digitar o tag para a lógica. Pode possuir até 7 caracteres. 4. No item Descrição, digitar a descrição para a lógica. Pode possuir até 60 caracteres. 5. No item Observações, digitar as observações a respeito da lógica. Pode possuir até 280 caracteres. Inserindo uma instrução: O procedimento para a inserção de uma instrução é o mesmo para todas. Para as instruções que possuem operandos, é apresentada uma caixa de dialogo para a edição dos mesmos. Para inserir uma instrução: 1. Posicionar o cursor de lógica na célula onde deve ser inserida a instrução. 2. Selecionar no menu de instruções o grupo de instruções desejado. 3. Selecionar a instrução dentro do grupo. É exibida uma caixa de diálogo com o formato da caixa da instrução. 4. Editar os operandos correspondentes a instrução selecionada indicando o endereço ou tag do operando. 5. Caso o tag indicado não existir, é exibida uma mensagem indicando a inexistência do tag e solicitando o endereço do operando e sua descrição na caixa de diálogo Criar Tag. Digitar o endereço e a descrição do operando e escolher o botão OK. Caso não seja desejado editar o tag, escolher o botão Cancelar. - 25 -
  • 26. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Seqüência de operações para transferir um programa para o CP Figura Seqüência de operações para envio de programa para o CP Caso o CP esteja em estado de erro, antes de transmitir o programa, deve-se passar o CP para o modo programação, enviar os módulos E-.001 e C-.000 após passar o CP para o modo execução . - 26 -
  • 27. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Instruções de Relés Instruções Contato RNA e RNF, Ligações Horizontal, Vertical e Negada e Bobina LISTA DAS INSTRUÇÕES Os CP’s ALTUS utilizam a linguagem de reles e blocos para a elaboração do programa aplicativo, cuja principal vantagem, além de sua representação gráfica, é similar a diagramas de relés convencionais. A programação desta linguagem, realizada através do MASTERTOOL, utiliza um conjunto de poderosas instruções apresentadas nas seguintes seções: RELÉS MOVIMENTADORES ARITMÉTICOS CONTADORES CONVERSORES GERAIS LIGAÇÕES Instruções do Grupo de Relés: As instruções do grupo de Relés são utilizadas para o processamento lógico dos diagramas de relés. Através das mesmas pode-se manipular os valores dos pontos digitais de entrada ( %E ) e saída ( %S ), bem como pontos de operandos auxiliares ( %A ), memória ( %M ) e decimal ( %D ). São usadas também para desvio do fluxo e controle do processamento do programa aplicativo. - 27 -
  • 28. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Apresentação das instruções : A descrição de cada instrução é feita da seguinte maneira: 1. A instrução é descrita com um título contendo o nome da instrução e a descrição do nome. Uma figura apresentando como a instrução é visualizada no diagrama de relés contendo seus operandos, entradas e saídas. Abaixo da figura, é exibida uma breve descrição do significado de cada operando. 2. O item Descrição contém informações descrevendo o funcionamento da instrução conforme as entradas habilitadas e os tipos de operando utilizados. Neste item também são descritas as saídas que serão acionadas após a execução da instrução. 3. O item Sintaxe descreve as combinações de operandos que podem ser utilizados na instrução. Esse item somente esta presente nas instruções que possuam operandos. 4. O item Exemplo fornece um exemplo de utilização da instrução descrevendo seu comportamento. Este item somente esta presente nas instruções que requeiram um detalhamento maior de seu funcionamento. 5. Podem existir outros itens descrevendo uma característica específica da instrução caso haja necessidade. Instruções do Grupo Relés. As instruções do grupo Relés são utilizadas para o processamento lógico dos diagramas de relés. Através das mesmas pode-se manipular os valores dos pontos digitais de entrada (%E) e saída (%S), bem como pontos de operandos auxiliares (%A), memória (%M) e decimal (%D). São usadas também para desvio do fluxo e controle do processamento do programa aplicativo. Descrição: Estas instruções refletem, logicamente, o comportamento real de um contato elétrico de um relé no programa aplicativo. O contato normalmente aberto fecha conforme o estado do seu operando associado. Caso o ponto do operando esteja no estado lógico 1 ou 0, o contato normalmente aberto está fechado ou aberto, respectivamente. - 28 -
  • 29. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO O contato normalmente fechado possui comportamento oposto ao normalmente aberto. Caso o ponto do operando associado esteja no estado lógico 1 ou 0, o contato normalmente fechado está aberto ou fechado, respectivamente. Quando um contato está fechado, a instrução transmite o estado lógico da sua entrada para a sua saída. Se estiver aberto, o valor da entrada não é colocado na saída. Descrição: As instruções bobina modificam o estado lógico do operando na memória imagem do controlador programável, conforme o estado da linha de acionamento das mesmas. A bobina simples liga ou desliga o ponto do opernado conforme a linha de acionamento, enquanto que as bobinas do tipo desliga somente ligam ou desligam os operandos quandoa linha está energizada (“set”/ “reset”). Estas instruções somente podem ser posicionadas nacoluna 7 da lógica. - 29 -
  • 30. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Bobina Liga e Bobina Desliga Descrição: Instrução Bobina de Salto A instrução bobina de salto serve para controlar a sequência de execução de um programa aplicativo, sendo usada para desviar o processamento do mesmo para uma lógica determinada. Seu operando é uma constante que determina o numero de lógicas a serem saltadas a partir da energização da bobina. A determinação da lógica destino é realizada pela soma da constante que acompanha a instrução com o número da lógica onde a mesma se encontra. Quando a linha de acionamento da bobina de salto estiver desenergizada, o salto não ocorre, e a instrução seguinte aquela em que esta bobina está declarada é executada. Exemplo: Supondo que a instrução a seguir esteja na lógica 2, a execução do programa aplicativo é desviada para a lógica 7 se a linha de acionamento estiver energizada, ou seja, se o valor do ponto %A0009.3 for 1. Se o valor deste ponto for 0, a execução continuará normalmente na lógica 003. - 30 -
  • 31. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Pode ser utilizada nesta instrução uma constante %KM com valor zero ou mesmo com valor negativo. Se programada com o valor zero, a lógica destino é a mesma que contém a bobina de salto, quando esta é energizada. Ou seja, o processamento é desviado para o início da própria lógica da bobina. Se o valor programado é negativo, o processamento é desviado para uma lógica anterior à lógica que contém a bobina de salto.O controle da execução nestas situações deve ser realizada através de um intertravamento que desligue o salto para a lógica anterior, após um certo número de laços executados no trecho de retorno. ATENÇÃO: O uso de constante zero ou negativo corresponde a um uso não convencional da instrução. Caso deseje-se utilizá-la, deve-se tomar os cuidados necessários para evitar a entrada em laço infinito de execução “loop” ou o aumento excessivo do tempo de ciclo do programa aplicativo. Recomenda-se, contudo, a utilização da bobina de salto somente com constantes positivas maiores que zero. Caso a lógica destino ultrapasse a última lógica do programa aplicativo, o CP salta para o final do programa e continua seu ciclo normal. Caso a lógica destino de um salto de retorno seja menor do que a primeira lógica do programa aplicativo, a execução é reiniciada a partir da lógica 0. Descrição: Instrução Rele de Pulso A instrução relé de pulso gera um pulso de uma varredura em sua saída, ou seja, permanece energizada durante uma varredura do programa aplicativo quando o estado da sua entrada passar de desenergizado para energizado. O relé auxiliar declarado serve como memorizador, evitando limitações quanto ao número de instruções de pulso presentes no programa aplicativo. ATENÇÃO: O valor do relé auxiliar não deve ser modificado em nenhum outro ponto do programa aplicativo. - 31 -
  • 32. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Exemplo 4: Relé de Pulso Descrição: Instrução Rele Mestre e Fim de Rele Mestre As instruções relé mestre e fim de relé mestre são utilizados para delimitar trechos de programas aplicativos, energizando ou não a barra lógica de alimentação nos mesmos, conforme o estado da sua linha de acionamento. Estas instruções não necessitam de operandos, podendo ser posicionadas somente na coluna 7 da lógica. Quando a entrada da instrução RM estiver desenergizada, a barra lógica de alimentação é desenergizada desde a lógica seguinte até a lógica que contém a instrução FRM. Como estas instruções atuam sempre na lógica seguinte a que estão contidas é aconselhável o seu posicionamento sempre como últimas instruções da lógica em que estiverem presentes. Assim sendo, o trecho de programa aplicativo delimitado visualmente pelas instruções no diagrama corresponde exatamente ao controlado pelas mesmas, evitando assim má interpretação de seu funcionamento. ATENÇÃO: As instruções COM, COB, TEE e TED contém saídas energizadas mesmo sem o acionamento das suas entradas. Estas saídas permanecem energizadas mesmo dentro de um trecho sob comando de um relé mestre desenergizado, podendo causar acionamentos indesejáveis. - 32 -
  • 33. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Relé Mestre e Fim de Relé Mestre - 33 -
  • 34. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Intertravamento básico de um motor Representação elétrica Equivalência no diagrama de relés do CP • Botão liga = E0000.0 • Nível OK = E0000.1 • Pressão OK = E0000.2 • Botão desliga = E0000.3 • Motor M1 = S0002.0 Programa "ladder" - 34 -
  • 35. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Modelos de UCP AL-2000/MSP AL- AL-2002/MSP 2000/MSP Número de Módulos de E/S 32 142 Número de E/S Digitais 512 512 Número de E/S Analógicas 512 * Memória de Programa RAM 128 k 128 k Memória de Programa "Flash" 128 k 128 k Memória de Dados 15,5 k 15,5 k Multiprocessamento Não Sim Rede ALNET I Sim Sim Rede ALNET II Sim Sim Registro de Eventos Não Sim Modelos de UCP AL-600 AL-600/4 AL-600/8 AL-600/16 Frequência de “Clock” 15 MHz 15 MHz 15 MHz Entradas Integradas 24Vdc 16 16 16 Saídas Int. (24 VDC / 0,5 A) 8 8 8 Número Máx. de Módulos 4 8 16 Contadores até 10 KHz Int. 2 2 2 Total de Pontos de E/S 90 156 284 E/S Analógica Integrada - 2 (0 a 10 VDC) 2 (0 a 10 VDC) Memória de Programa 16 kbytes 32 kbytes 64 kbytes "Flash" Memória de Programa RAM 16 kbytes 16 kbytes 16 kbytes Módulos Função Não Sim Sim Memória de Dados 8 kbytes 8 kbytes 8 kbytes Modelos de UCP QUARK QK800 QK801 QK2000/MSP Frequência de “Clock” 14,7456 MHz 14,7456 MHz 14,7456 MHz Número Máximo de E/S 256 512 512 Número Máx. de Módulos 16 32 32 Interface de Comunicação Sim Sim Sim ALNET I Interface de Comunicação Não Não Sim ALNET II Capacidade padrão de 32kb RAM 32kb RAM 32kb RAM memória 32kb FLASH 64kb FLASH 64kb FLASH Capacidade máxima de 32kb RAM 128kb RAM 128kb RAM memória 32kb FLASH 128kb FLASH 128kb FLASH Modelos de UCP PICCOLO PL101/R PL102/R PL103/R PL101/T PL102/T PL103/T Frequência de “Clock” 14,7456 MHz 14,7456 MHz 14,7456 MHz Entradas Integradas 24Vdc 8 14 16 Saídas R (relé) T (transistor) 6 10 16 Nº Máx. Mod. E/S digitais. - - 3 E/S Analógicas Integradas - - 2 (0 a 10 Vdc) Contadores até 10kHZ int. - - 2 Interface de Comunicação RS-232C RS-232C RS-232C e ALNET I EIA-485 - 35 -
  • 36. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Seqüência de operações para solução de exercícios Seqüência de operações para solução de exercícios - 36 -
  • 37. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Transportador de peças com expulsão automática Transportador de peças com expulsão automática Ao apertar o botão de Start o motor é energizado. 1 A peça será transportada até encostar no fim de curso 1 (FC1). Ao encostar no FC1 o motor é desligado parando a esteira e o solenóide S1 deve ser energizado para empurrar a peça. 2 Quando a peça passar pelo fim de curso 2 (FC2) o pistão deve ser recuado desenergizando o solenóide S1. Nesse momento o motor deve ser ligado iniciando o transporte de uma nova peça. 3 Em qualquer momento que for pressionado o botão de Stop, o motor deve ser desligado e o pistão recuado (desenergizando S1). - 37 -
  • 38. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Controle de nível de líquido Controle de nível de líquido no reservatório Elaborar um software aplicativo que implemente o controle do processo de enchimento de um reservatório. Sempre que o nível cair abaixo de um mínimo permitido (chave de nível F1), liga válvula Y1 e desliga a válvula Y2. Por outro lado, quando o nível atingir a chave de nível F2, a válvula alimentadora Y1 deve ser desligada, permitindo o acionamento de Y2. Prever uma chave manual/automático CH1. Ligar e desligar um motor com apenas um pulso Diagrama de sinais do exercício 2 Acionamento e reversão de um motor Elaborar um software aplicativo que permita o acionamento e a reversão no sentido de rotação de um motor através de um comando manual. As condições de desligamento ou não acionamento do motor devem ser: • botão stop • pressão baixa no sistema • temperatura elevada - 38 -
  • 39. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Exercicio: Engarrafamento de Bebidas Desenvolver um software aplicativo que realize as seguintes funções de controle: E0.0 = START - NA - PULSO S2.0 = SISTEMA LIGADO E0.1 = PARADA - NF - NORMAL S2.1 = MANUAL E0.2 = MANUAL=0 / AUTO=1 S2.2 = AUTO E0.4 = MOVIMENTO P/ FRENTE S2.3 = ABASTECENDO E0.6 = PRESENÇA DE GARRAFA (S1) S3.4 = ESTEIRA E0.7 = GARRAFA CHEIA (S2) - O sistema e iniciado através da entrada E0.0. - O sistema e desligado através da entrada E0.1. - A saída S2.0 liga a lâmpada quando o sistema e ligado. - O modo de operação deverá ser sinalizado por: S2.1 = manual ; S2.2 = auto. - O modo de operação manual/auto só poderá ser selecionado se o sistema estiver desligado. - Durante a operação manual, a correia transportadora pode ser movimentada para frente (E0.4). - Em operação automática, o motor de transportador (S3.4) ligará e permanecerá ligado até quando a chave de parada (E0.1) abra, ou até que o sensor (E0.6) detecte a presença de garrafa. - Depois que a garrafa é abastecida (temporizador) o transportador deverá partir automáticamente e permanecer ligado até que outra garrafa seja detectada ou até que a chave parada (E0.1) seja acionada. - Quando a garrafa esta localizada embaixo do dispositivo de abastecimento (E0.6), o procedimento de abastecimento é iniciado, simulando 05 (cinco) segundos e é sinalizado através da saída (S2.3). - O sensor (E0.7) deverá ser usado para registrar garrafas cheias, somente se o sistema estiver ligado. - Para resetar o contador a maquina deverá estar em Auto (E0.2 = 1) e apertar ( E0.4 ). - 39 -
  • 40. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Instruções Temporizador e Contador Instrução Temporizador na Energização Descrição: Esta instrução realiza contagens de tempo com a energização das suas entradas de acionamento. A instrução TEE possui dois operandos. O primeiro ( OPER1 ) especifica a memória acumuladora da contagem de tempo. O segundo operando ( OPER2 ) indica o tempo máximo a ser acumulado. A contagem de tempo é realizada em décimos de segundos, ou seja, cada unidade incrementada em OPER1 corresponde a 0,1 segundo. Enquanto as entradas libera e ativa estiverem simultaneamente energizadas, o operando OPER1 é incrementado a cada décimo de segundo. Quando OPER1 for maior ou igual a OPER2, a saída Q é energizada e –Q desenergizada, permanecendo OPER1 com o mesmo valor de OPER2. Desacionando-se a entrada libera, há a interrupção na contagem do tempo, permanecendo OPER1 com o mesmo valor. Desacionando-se a entrada ativa, o valor em OPER1 é zerado. Se OPER2 for negativo ou o acesso indireto for inválido , OPER1 é zerado e a saída –Q é energizada. O estado lógico da saída Q é exatamente o oposto da saída –Q . mesmo estando a instrução desativada. Atenção: . Com a entrada ativa desativada, a saída –Q permanece sempre energizada, mesmo quando a instrução estiver em um trecho comandado pela instrução RM ( relé mestre ). Deve-se Ter cuidado para não realizar acionamentos indesejáveis na lógica devido a este fato. Temporizador na Energização ou "on delay" - 40 -
  • 41. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Instrução Temporizador na Desenergização Temporizador na Desenergização ou "off delay" Programa "ladder" Diagrama de tempo Temporizador Monoestável Programa "ladder" 256 Diagrama de tempo - 41 -
  • 42. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Temporizador Astável Programa "ladder" Diagrama de tempo OBS : SE SUBSTITUIRMOS O OPERANDO SAÍDA S0002.0 POR UM OPERANDO AUXILIAR A00010.0 , TEREMOS UM AUXILIAR PULSANTE A CADA 2 SEGUNDOS PARA SER APLICADO EM QUALQUER PARTE DO PROGRAMA QUE SE DESEJE UM SISTEMA DE PISCA – PISCA. EXEMPLO: A SAÍDA S0002.5 É UMA LÂMPADA SINALIZADORA DE EMERGÊNCIA ACIONADA. - 42 -
  • 43. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Temporizadores em Cascata Programa "ladder" Diagrama de tempo Exercício 1) Faça uma partida automática estrela-triângulo, utilizando-se dos conhecimentos adquiridos até o momento. - 43 -
  • 44. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Instrução Contador Descrição : Esta instrução realiza contagens simples, com o incremento de uma unidade em cada acionamento. A instrução contador simples possui dois operandos. O primeiro, sempre do tipo %M, especifica a memória que contabiliza os eventos. O segundo estabelece o valor limite de contagem para energização da saída superior e pode ser do tipo %KM ou operando %M referenciado indiretamente. Se a entrada ativa esta desenergizada, a memória em OPER1 é zerada, a saída não limite energizada e a saída limite desenergizada. Quando a entrada ativa está energizada, cada transição de ligação na entrada incrementa aumenta o valor do operando contador ( OPER1 ) de uma unidade. Programa "ladder" - 44 -
  • 45. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Multiplicação de Bases de Tempo Programa "ladder" - 45 -
  • 46. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO COB - Contador Bidirecional OPER1 - contador OPER2 - passo de contagem OPER3 - limite de contagem Descrição Esta instrução realiza contagens com o valor de incremento ou decremento definido por um operando. A instrução contador bidirecional permite contagens em ambos os sentidos, isto é, incrementa ou decrementa o conteúdo de um operando do tipo memória. O operando OPER1 contém a memória acumuladora do valor contado, enquanto que OPER2 especifica o valor do incremento ou decremento desejado. O operando OPER3 contém o valor limite da contagem. A contagem ocorre sempre que a entrada ativa está energizada e as entradas incrementa ou decrementa sofrerem uma transição de desligadas para ligadas. Se ambas as entradas sofrem a transição no mesmo ciclo de varredura do programa, não há incremento nem decremento no valor da memória declarada em OPER1.Caso o valor do incremento seja negativo, a entrada incrementa provoca decrementos e a entrada decremento provoca incrementos no valor da contagem. Se o valor de OPER1 tornar-se maior ou igual ao valor de OPER3, a saída limite superior é energizada, não havendo incremento. Se o valor de OPER1 tornar-se igual ou inferior a zero, a saída limite inferior é acionada, sendo armazenado zero em OPER1.Se o valor de OPER1 está entre zero e o limite, a saída não limite é acionada. Se a entrada ativa não está energizada, a saída limite inferior é energizada e o primeiro operando é zerado. Em caso de acesso indireto inválido para qualquer um dos operandos da instrução, a saída limite inferior é energizada. ATENÇÃO: Com a entrada ativa desativada, a saída limite inferior permanece sempre energizada, mesmo quando a instrução estiver em um trecho comandado pela instrução RM (relé mestre). Deve-se ter cuidado para não realizar acionamentos indesejáveis na lógica devido a este fato. - 46 -
  • 47. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO INSTRUÇÃO PARA MOVIMENTAÇÃO DE OPERANDOS SIMPLES OPER 1 – OPERANDO ORIGEM OPER 2 – OPERANDO DESTINO DESCRIÇÃO: Esta instrução move o conteúdo de operandos simples, sem realizar conversões entre tipos De operandos diferentes, quando a entrada habilita é acionada. O operando que ocupa a primeira célula da instrução ( oper 1 ) é o operando origem, cujo valor é movimentado para o operando destino, especificado na Segunda célula ( oper 2 ). Se o formato do operando destino for menor que o de origem, os octetos mais significativos do valor origem são Desprezados. Se o formato do destino for maior, seus octetos mais significativos são zerados. Se a movimentação for realizada , a saída sucesso é acionada. Se os índices indiretos excederem os limites de operandos declarados no módulo de configuração, a movimentação não é efetuada e a saída sucesso não é ligada. Não é permitida a movimentação de subdivisões de operandos. Para isto, deve ser usada a instrução MOP. EXEMPLO DE UTILIZAÇÃO DA INSTRUÇÃO MOV: - 47 -
  • 48. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Instrução CAB – Carrega Bloco Oper1 – operando inicial ou tabela a ser carregada Oper2 – número de operandos ou posições de tabela Oper3 – tabela de constantes a serem carregadas Descrição: Esta instrução permite a carga de até 255 valores constantes em um bloco de operandos ou tabelas. O operando inicial ou tabela a ser carregada é especificado no primeiro parâmetro (oper1 ), O número de operandos ou posições da tabela a serem carregados no segundo operando ( oper2 ) e o valor das constantes no terceiro ( oper3 ).O valor do segundo operando deve ser positivo, menor ou igual a %KM+128. O terceiro operando ( oper3 ) é composto por uma tabela de valores constantes a serem carregados. Estes valores são declarados selecionando o botão Bloco, sendo aberta uma janela de edição no MasterTool. As constantes são do tipo %KM se o tipo do primeiro operando for %E, %S , %A, %M, %T ou são do tipo %KD se o primeiro operando for %D ou %TD. Caso o primeiro operando seja um octeto ( %E, %S ou %A ), somente serão movimentados os valores dos octetos menos significativos de cada constante declarada. Quando o botão Bloco é selecionado, é exibida a caixa de diálogo CAB – Valores: - 48 -
  • 49. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Dispositivo de Separação e Contagem Elaborar software aplicativo que faça a separação automática das caixas pequenas, conforme figura abaixo: Figura -5 Dispositivo de Separação e Contagem Considerar as seguintes condições: • Velocidade da esteira: 5 m/min; • Comprimento da caixa grande: 0,8 m; • Comprimento da caixa pequena: 0,2 m; • Tempo de acionamento do pistão: 0,5 s. - 49 -
  • 50. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO DISPOSITIVO DE PRENSAGEM COM MORSA PNEUMÁTICA Dispositivo de prensagem de peças Descrição das entradas e Saídas: Entradas: Saídas: Start Sol . 1 Emergência Sol. 2 Fc1 Lâmp. Emerg. Fc2 Fc3 Fc4 - 50 -
  • 51. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Dispositivo de Furação Seqüência de funcionamento do dispositivo de furação 1. Para ligar a máquina, a broca deve estar recuada (SW3 ligada) e o fim de curso 1 ativado (FC1). 2. Ao acionar o botão de partida (START), o motor que dá rotação à broca é ligado, é desligado o recuo (SW3) e ligado o avanço rápido (SW1). 3. Quando é ativado o fim de curso 2 (FC2), é desligado o avanço rápido (SW1) e ligado o avanço lento (SW2) para corte. 4. Quando é ativado o fim de curso 3 (FC3), é desligado o avanço lento (SW2) e ligado o recuo (SW3). 5. No recuo, quando ativar o fim de curso 1 (FC1), desliga o motor e permanece ligado apenas o recuo (SW3), deixando a maquina parada na condição de partida. Obs.: • O Botão de STOP deve em qualquer passo da máquina: • Desligar o motor. • Desligar avanço rápido (SW1). • Desligar avanço lento (SW2) • Ligar Recuo (SW3) Dispositivo de Furação - 51 -
  • 52. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Fresadora Elaborar um software aplicativo da fresadora (figura 10-5) na qual a peça é colocada manualmente. Acionando start e a peça estando na posição (sensor atuado), a válvula Sol. 2 (cilindro A) fixa a peça na mesa, ligando a serra circular. Após 5s a válvula Sol. 1 avança o cilindro B até o ponto desejado para a fresagem. O tempo de fresagem é de 8s. Após, a válvula Sol. 1 é desacionada retornando o cilindro B e desligando a serra. A válvula Sol. 2 recua o cilindro A para soltar a peça, que é retirada manualmente. Em qualquer momento que for acionado o botão de emergência deve desligar a serra circular recuar cilindro A e B . Figura -6 Fresadora Descrição das entradas e saídas: Entradas: Saídas: Start Sol. 1 Emergência Sol. 2 Sensor de peça Lâmp. Emerg. Acionada Contator do Motor da Fresadora - 52 -
  • 53. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Folha deixada em branco propositalmente - 53 -
  • 54. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Instruções de Chamada – CHP e CHF Descrição - CHP Esta instrução realiza o desvio do processamento do módulo corrente para módulo Procedimento especificado nos seus operandos, se o mesmo estiver presente no CP. Ao final da execução do módulo chamado, o processamento retorna para a instrução seguinte a CHP. Não há passagem de parâmetros para o módulo chamado. O conteúdo do primeiro operando é documentacional e especifica o nome do módulo a ser chamado. O conteúdo do segundo operando especifica o número deste módulo, sendo implícito o fato do módulo chamado ser do tipo procedimento. Caso o módulo chamado não exista, a saída sucesso é desenergizada e a execução continua normalmente após a instrução. O nome do módulo não é considerado pelo CP para a chamada, mas apenas o seu número. Descrição - CHF A instrução chama módulo função realiza o desvio do processamento do módulo corrente para o módulo especificado na mesma, se este estiver presente no CP. Ao final da execução do módulo chamado, o processamento retorna para a instrução seguinte a CHF. Devem ser declarados o nome e o número do módulo, sendo implícito o fato do módulo chamado ser do tipo função. Caso o módulo chamado não exista no controlador, a execução continua normalmente após a instrução de chamada, com a saída sucesso da mesma desligada. O nome do módulo não é levado em consideração pelo CP, estando no programa aplicativo apenas como referência documentacional, sendo considerados para a chamada apenas o seu tipo e número. Tecla de atalho Chama Procedimento Chama Função Sintaxe - 54 -
  • 55. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO F-ANLOG.006 – FUNÇÃO PARA CONVERSÃO A/D OU D/A Introdução: A função F_ANLOG.006 realiza a conversão A/D ( analógico / digital ) ou D/A ( digital / analógico ) dos dois canais analógicos disponíveis na UCP. Utilizando-se duas instruções CHF, é possível realizar a conversão A/D em um dos canais e D/A no outro ou o mesmo tipo de conversão em ambos. Programação : Operandos As células da instrução CHF utilizada para chamada da função são programadas do seguinte modo: OPER1 – Especifica o número de parâmetros que são passados para a função OPER3. Este operando deve ser obrigatoriamente uma constante memória com valor 3 ( %KM+00003 ). OPER2 – Deve ser um operando do tipo constante memória com valor 0 ( %KM+00000 ). Determina o número de parâmetros possíveis de serem programados na janela de edição de OPER4. Como esta função não necessita de nenhum parâmetro em OPEr4, o valor de OPER2 é 0. OPER3 – Contém os parâmetros que são passados para a função, declarados através de uma janela visualizada no MASTERTOOL quando a instrução CHF for editada. O número de parâmetros editáveis é especificado em OPER1, sendo fixo em 3 para este módulo. %KM+XXXXX – Especificação do canal a ser convertido. Deve-se utilizar %KM+00000 para DAC 1 e %KM+00001 para DAC 2. %KM+XXXXX – Tipo de conversão a ser realizada no canal definido pelo parâmetro anterior. Deve-se utilizar %KM+00000 para conversão A/D e %KM+00001 para conversão D/ª %MXXXXX – Especificação do operando onde é armazenado o valor a ser escrito no conversor em caso de conversão D/A ou valor lido em caso de conversão A/D. OPER4 – Não utilizado. Entradas e Saídas Descrição das Entradas: Habilita – quando esta entrada esta energizada a função é chamada, sendo analisados os parâmetros programados na instrução CHF. Descrição das Saídas: Sucesso – é energizada quando a função foi corretamente executada. Erro – é energizada caso ocorra erro na especificação dos operandos ou tentativa de acesso a operandos não declarados. - 55 -
  • 56. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO F-CONT.005 - Função para Acesso às Entradas de Contagem Rápida Introdução A função F-CONT.005 realiza o interfaceamento do programa aplicativo com as entradas de contagem rápida integradas na UCP AL-600 e PL103. A UCPs AL-600 e PL103 possuem no painel frontal duas entradas de contagem rápida, possibilitando a contagem de pulsos com elevada freqüência (até 10 KHz), quando se torna inadequada a contagem por meio de pontos de entrada convencionais. Programação Operandos As células da instrução CHF utilizada para a chamada da função são programadas do seguinte modo: - OPER1 - Especifica o número de parâmetros que são passados para a função em OPER3. Este operando deve ser obrigatoriamente uma constante memória com valor 3 (%KM+00003). - OPER2 - Deve ser um operando do tipo constante memória com valor 0 (%KM+00000). Determina o número de parâmetros possíveis de serem programados na janela de edição de OPER4. Como esta função não necessita de nenhum parâmetro em OPER4, o valor de OPER2 é 0. - OPER3 - Contém os parâmetros que são passados para a função, declarados quando a instrução CHF for editada. O número de parâmetros editáveis é especificado em OPER1, sendo fixo em 3 para este módulo: %KM+XXXXX - Número da entrada contadora (0 ou 1). %DXXXX - Operando que armazena o valor de contagem. %MXXXX - Operando utilizado pela função para o controle interno do seu processamento. ATENÇÃO: O operando de controle não deve ter seu conteúdo alterado em nenhuma parte do programa aplicativo, sob pena de prejudicar a execução correta da função. Cada CHF para este módulo F deve possuir um operando de controle exclusivo, diferente dos demais. - OPER4 - Não utilizado. - 56 -
  • 57. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Entradas e Saídas Descrição das entradas: - habilita - quando esta entrada está energizada a função é chamada, sendo analisados os parâmetros programados na instrução CHF. Caso os mesmos estejam incorretos, a saída de erro é energizada. - zera - causa o zeramento do valor de contagem, quando habilitada. - carrega - quando ativada, faz com que o valor armazenado no operando %D seja o novo valor de contagem. Descrição das saídas: - contagem zero - é energizada quando o valor do operando %D de contagem possui valor zero. - limite de contagem - é energizada quando o valor do operando %D de contagem possui valor +9999999. - erro - é energizada caso ocorra erro na especificação dos operandos ou tentativa de acesso a operandos não declarados. Quando se passa o CP de programação para execução a entrada ZERA das funções F-CONT.005 devem ser acionadas por uma varredura, de forma a permitir o referenciamento da função, visto que seus operandos de contagem e de controle foram zerado na troca de estados. Utilização Esta função pode ser utilizada somente nas UCPs da série AL-600, QK600, PL102, PL103 e PL104. Descrição do Funcionamento Cada contador realiza uma contagem incremental, de 0 a +9999999 pulsos, armazenada em um operando %D. Quando a contagem atinge o valor limite, o operando não é mais incrementado, ligando a saída limite de contagem na instrução CHF. O valor no operando de contagem pode ser inicializado com o acionamento da entrada zera da instrução. Para começar a contagem com um valor diferente de zero, basta mover o valor desejado para o operando %D e acionar a entrada carrega da instrução. A função deve ser chamada periodicamente, no ciclo de varredura normal ou no módulo executado por interrupção de tempo E018. A freqüência máxima de contagem depende do período de chamada, sendo mostrada na tabela 6-4. Freqüência Máxima de Contagem Período de Chamada da Função 2,5 Khz 100 ms 3,4 Khz 75 ms 5,0 Khz 50 ms 10,4 Khz 25 ms - 57 -
  • 58. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO SOM - Adição OPER1 - primeira parcela OPER2 - segunda parcela OPER3 - total Descrição: Esta instrução realiza a soma aritmética de operandos. Quando a entrada habilita é energizada, os valores dos operandos especificados nas duas primeiras células são somados e o resultado armazenado no operando nas terceira célula. Se o resultado da operação for maior ou menor do que o armazenável, a saída estouro é energizada e o máximo ou mínimo valor armazenável é atribuído a variável total como resultado. Se a entrada habilita não está energizada, todas as saídas são desernegizadas e o valor de OPER3 não é alterado. - 58 -
  • 59. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO SUB -Subtração OPER1 - primeira parcela OPER2 - Segunda parcela OPAR3 - resultado Descrição: Esta instrução realiza a subtração aritmética entre operandos. Quando habilita é energizada, o valor do operando da segunda célula é subtraído do valor do operando da primeira célula. O resultado é armazenado na memória especificada na terceira célula. As linhas de saída resultado > 0, resultado = 0 e resultado < 0 podem ser usadas para comparações e são acionadas de acordo com o resultado da subtração. Se a entrada habilita não está energizada, todas as saídas são desernegizadas e OPER3 permanece inalterado. Se o resultado da operação excede o maior ou menor valor armazenável no operando, o respectivo valor limite é considerado como resultado. - 59 -
  • 60. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO MUL - Multiplicação OPER1 - multiplicando OPER2 - multiplicador OPER3 - produto Descrição: Esta instrução realiza a multiplicação aritmética de operandos. Quando a entrada habilita está energizada, ocorre a multiplicação do conteúdo do operando especificado na primeira célula pelo especificado na segunda. O resultado é armazenado na memória especificada na terceira célula. Caso este exceda o valor máximo armazenável em uma memória, o resultado final é este valor e a saída estouro é energizada. Se a entrada habilita é desernegizada, nenhuma saída é ligada e OPER3 permanecerá inalterado. - 60 -
  • 61. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO DIV - Divisão OPER1 - dividendo OPER2 - divisor OPER3 - quociente OPER4 - resto Descrição: Esta instrução realiza a divisão aritmética de operandos. Quando a entrada habilita está energizada, ocorre a divisão do valor do operando da primeira célula pelo da segunda, sendo o resultado armazenado na memória especificada na terceira célula e o resto da operação colocado no quarto operando. Os operandos da primeira e segunda células podem ser do tipo memória ou constante. Se o valor do segundo operando for zero, a saída divisão por zero é acionada e em OPER3 é colocado o valor máximo ou mínimo armazenável no operando, conforme o sinal de OPER1. Neste caso, em OPER4 (resto) será armazenado zero. As saídas da instrução somente são energizadas se a entrada habilita estiver acionada. Se não estiver acionada, OPER3 e OPER4 permanecerão inalterados. - 61 -
  • 62. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO CAR - Carrega Operandos OPER - operando a ser carregado Descrição: A instrução carrega operando realiza a carga do valor do operando especificado em registrador especial interno ao CP, para subseqüente uso das instruções de comparação (maior, menor, igual). O operando permanece carregado até a próxima instrução de carga, podendo ser utilizado por várias lógicas, inclusive em ciclos de varredura subseqüentes. A saída sucesso é acionada se a carga for realizada. Se algum acesso indireto a operando não for possível (índice inválido), a saída sucesso não é acionada. Instruções de Comparação de Operandos - Igual, Maior e Menor Descrição: As instruções maior, menor e igual realizam comparações do operando especificado com o valor previamente carregado no registrador interno com a instrução CAR (Carrega Operando), fornecendo o resultado da comparação em suas saídas. Caso algum acesso indireto seja inválido, a saída é desacionada. Por exemplo, a instrução maior energiza a sua saída se o valor do seu operando for maior que o valor do operando presente na última instrução CAR ativa. As instruções igual e menor operam de forma idêntica, mudando apenas o tipo de comparação realizada. Se os operandos a serem comparados são do mesmo tipo, são comparados conforme o seu formato de armazenamento (considerando o seu sinal). Se não são do mesmo tipo, são comparados ponto a ponto (como valores binários sem sinal). - 62 -
  • 63. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO F-RELG.048 - Função para Acesso ao Relógio de Tempo Real A função F-RELG.048 realiza o acesso ao relógio de tempo real contido na UCP. O relógio possui horário e calendário completos, permitindo o desenvolvimento de programas aplicativos que dependam de bases de tempo precisas. A informação de tempo é mantida mesmo com a falta de alimentação do sistema, pois a UCP é alimentada por baterias. Esta função possui características semelhantes à função F-SINC.049, pois ambas executam acessos ao mesmo relógio, diferindo apenas quanto aos métodos de acerto. Elas podem ser utilizadas simultaneamente em um mesmo programa, caso necessário. Programação Operandos As células da instrução CHF utilizada para a chamada da função são programadas do seguinte modo: - OPER1 - Especifica o número de parâmetros que são passados para a função em OPER3. Este operando deverá ser obrigatoriamente uma constante memória com valor 2 (%KM+00002). - OPER2 - Deve ser um operando do tipo constante memória com valor 0 (%KM+00000). Determina o número de parâmetros possíveis de serem programados na janela de edição de OPER4. Como esta função não necessita de nenhum parâmetro em OPER4, o valor de OPER2 é 0. - OPER3 - Contém os parâmetros que são passados para a função, declarados quando a instrução CHF for editada. O número de parâmetros editáveis é especificado em OPER1, sendo fixo em 2 para este módulo: %MXXXX ou %TMXXXX - Especificação dos operandos para onde são lidos os valores do relógio. Se este parâmetro for especificado como memória, os valores são lidos para a memória declarada e as 6 (seis) subseqüentes. Se for especificado como tabela, os valores são colocados a partir da posição 0 até 6. Caso os operandos não estejam declarados, a leitura dos valores de tempo não é realizada e as saídas da instrução são desligadas. É possível o uso de tabelas com mais de 7 posições, sendo que a função ignora as posições excedentes. Os valores são lidos dos operandos na seguinte seqüência: Operando PosiçãoTabela Conteúdo Formato MXXXX 0 Segundos 000XX MXXXX+1 1 Minutos 000XX MXXXX+2 2 Horas 000XX MXXXX+3 3 Dia do mês 000XX MXXXX+4 4 Mês 000XX MXXXX+5 5 Ano 000XX MXXXX+6 6 Dia da semana 000XX O conteúdo destes operandos pode ser lido a qualquer momento, mas são atualizados com a hora real do relógio apenas quando a instrução for executada. Não devem ser modificados em nenhum outro ponto do programa aplicativo. É utilizado o formato 24 horas na contagem do tempo. Os dias da semana são contados com valores de 1 a 7: Valor Dia da Semana 1 Domingo 2 Segunda-feira 3 Terça-feira 4 Quarta-feira 5 Quinta-feira 6 Sexta-feira 7 Sábado - 63 -
  • 64. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO %MXXXX ou %TMXXXX - Especificação dos operandos de onde são acertados os valores do relógio, com o acionamento de alguma das entradas de acerto da função. Se este parâmetro for especificado como memória, os valores são copiados da memória declarada e as 6 subseqüentes. Se for especificado como tabela, os valores são copiados da posição 0 até 6. Caso os operandos não estejam declarados, o acerto não é realizado e as saídas da instrução são desligadas. Os valores a serem copiados para o relógio devem ser colocados nos operandos na mesma seqüência dos operandos de leitura (segundos, minutos, horas, dia do mês, mês, ano e dia da semana). - OPER4 - Não utilizado. Entradas e Saídas Descrição das entradas: - habilita - quando esta entrada está energizada a função é chamada, sendo analisados os parâmetros programados na instrução CHF. Caso os mesmos estejam incorretos, todas as saídas da instrução são desenergizadas. Se estiverem corretos, os valores de tempo do relógio são transferidos para os operandos memória ou para a tabela declarada como primeiro parâmetro em OPER3, a saída sucesso é energizada e a saída pulso um segundo é ligada por uma varredura a cada segundo. - acerta relógio - quando energizada, os valores dos operandos declarados como segundo parâmetro em OPER3 são acertados no relógio, caso estejam com valores corretos. Enquanto esta entrada estiver acionada o tempo não é contado, permanecendo a saída pulso um segundo desenenergizada. Descrição das saídas: - sucesso - é energizada quando a função foi corretamente executada. - pulso um segundo - indica se houve uma mudança no contador de segundos do relógio. O pulso dura uma varredura e pode ser usado para sincronizar eventos do programa aplicativo. - perda de horário - esta saída é ligada caso o relógio tenha ficado sem a alimentação da bateria durante falha na alimentação principal. É desacionada com o acerto do relógio. Utilização Esta função pode ser utilizada somente nas UCPs AL-2002/MSP, AL-2003, PL104 e PL105. ATENÇÃO: A alimentação de bateria é fornecida para a UCP através do barramento. Portanto, a remoção da UCP AL- 2002/MSP, AL-2003 ou AL-2004 do bastidor causa a perda do horário do relógio. Sintaxe - 64 -
  • 65. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO - 65 -
  • 66. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Instruções de Movimentação Indexada Esta forma de acesso é usada em conjunto com um operando memória (%M) para referenciar indiretamente outros operandos do sistema. O sinal *, colocado na frente de um tipo de operando, indica que este é referenciado pelo endereço contido na memória especificada à esquerda do sinal. Formatos: No MASTERTOOL, o acesso indireto às tabelas é representado sem o asterisco. São utilizados em instruções de movimentação, comparação, contagem e de temporização. Exemplos: %M0043*E octeto de entrada referenciada indiretamente pela memória 43 %M1824*A octeto auxiliar referenciado indiretamente pela memória 1824 %M0371TD tabela decimal referenciada indiretamente pela memória 371 %M0009*M operando memória referenciado indiretamente pela memória 9 Esta instrução movimenta o valor +431 para o operando memória cujo endereço é o valor correntemente armazenado em %M0009. Se %M0009 conter o valor 32, então o valor +431 será armazenado em %M0032. Se %M0009 contiver o valor 12 então o valor constante será armazenado em %M0012. ATENÇÃO: É responsabilidade do programa aplicativo que o valor contido na memória de referência (%M0009, no exemplo) represente endereços válidos, não contendo valores negativos ou muito altos, acima dos endereços existentes para o tipo de operando referenciado indiretamente. As instruções não realizam os acessos indiretos inválidos, normalmente possuindo um sinal de saída para a indicação do erro. Se no programa do exemplo anterior houvessem sido declarados 256 operandos %M, o valor de %M0009 deveria estar entre 0 e 255 para que a instrução fosse corretamente executada. Caso o valor não estivesse nesta faixa, o acesso não seria realizado. - 66 -
  • 67. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Instruções de Manipulação de Tabelas Instrução CAB – Carrega Bloco de Constantes Descrição Esta instrução permite a carga de até 255 valores constantes em um bloco de operandos ou em tabelas. O operando inicial ou tabela a ser carregada é especificado em OPER1, o número de operandos ou posições da tabela a serem carregados em OPER2 e o valor das constantes em OPER3. O valor de OPER2 deve ser positivo, menor ou igual a %KM+00255. O operando OPER3 é composto por uma tabela de valores constantes a serem carregados. Estes valores são declarados selecionando o botão Bloco, sendo aberta uma caixa de diálogo no MASTERTOOL. As constantes são do tipo %KM se o tipo do primeiro operando for %E, %S, %A, %M, %TM ou são do tipo %KD se o primeiro operando for %D ou %TD. Caso o primeiro operando seja um octeto (%E, %S ou %A), somente serão movimentados os valores dos octetos menos significativos de cada constante declarada. Quando o botão Bloco é selecionado é exibida a caixa de diálogo CAB Valores. Para realizar a edição das constantes 1 Posicionar o cursor no índice a ser editado. Caso seja necessário rolar as páginas podem ser utilizadas as teclas Page Down e Page Up ou a barra de rolagem vertical. 2 Digitar o valor da constante. A saída índice destino inválido é acionada quando algum operando não puder ser acessado ou uma posição de tabela não existir. Quando a saída índice destino inválido é acionada, nenhuma carga de constantes ocorreu. A saída sucesso é acionada sempre que a instrução for executada corretamente. A carga dos valores constantes é inteiramente realizada em uma só varredura do programa aplicativo, podendo ocasionar um tempo de ciclo excessivo quando o mesmo for extenso. Na maior parte dos programas aplicativos, a instrução CAB pode ser executada somente na inicialização do mesmo (carga de tabelas cujos conteúdos serão somente lidos) ou em alguns momentos especiais, não precisando ser chamada em todas as varreduras. Nestes casos, recomenda-se a sua programação no módulo de programa aplicativo de inicialização (E000) ou que seja acionada apenas nos momentos de carga necessários. Tecla de atalho Cab Sintaxe - 67 -
  • 68. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Instrução MOT – Movimentação de Tabelas Descrição Esta instrução permite duas operações: transferir o valor de uma posição de tabela para um operando simples ou de um operando simples para uma posição de tabela. O operando OPER1 é o operando origem, cujo valor é movimentado para o operando destino especificado em OPER3. OPER2 contém a posição da tabela declarada em OPER1 ou OPER3. Leitura de conteúdo de tabela: Permite ler o conteúdo de uma posição de tabela e carregá-lo em um operando memória ou decimal. A instrução é programada da seguinte forma: OPER1 - especifica o endereço da tabela a ser lida (%TM, %M*TM, %TD, %M*TD) OPER2 - especifica a posição (%KM) a ser lida ou a memória (%M) que contém esta posição OPER3 - especifica para onde o conteúdo da posição de tabela deve ser transferido (%M, %M*M, %D, %M*D) Se OPER1 referenciar indiretamente uma tabela não especificada, ou se o valor de OPER2 for negativo ou maior que a última posição definida para a tabela, a transferência não é realizada e a saída índice origem inválido é acionada. Se OPER3 referenciar indiretamente um operando não declarado, a transferência não é realizada e a saída índice destino inválido é acionada. - 68 -
  • 69. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Escrita de valores em tabela: Permite escrever um valor constante ou o conteúdo de um operando memória ou decimal em uma posição de tabela. A instrução é programada da seguinte forma: OPER1 - especifica o operando origem (%KM, %M, %M*M, %KD, %D, %M*D) OPER2 - especifica a posição (%KM) a ser escrita na tabela ou a memória (%M) que contém esta posição OPER3 - especifica o endereço da tabela para onde é transferido o conteúdo (%TM, %M*TM, %TD, %M*TD) Se OPER1 referenciar indiretamente um operando não declarado, a transferência do conteúdo não é realizada e a saída índice origem inválido é acionada. Se o valor de OPER2 for negativo ou maior que a última posição definida para a tabela, ou se OPER3 referenciar indiretamente uma tabela não especificada, a transferência do conteúdo não é realizada e a saída índice destino inválido é acionada. Esta instrução simplifica a programação de uma série de algoritmos envolvendo decodificações, seqüenciamentos, geração de curvas, armazenamento e comparação de valores, entre outros. Tecla de atalho Mot - 69 -
  • 70. CONTROLADORES PROGRAMÁVEIS – CURSO BÁSICO – TÓPICOS AVANÇADOS DE AUTOMAÇÃO Instrução de Movimentação de Blocos de Operando – MOB Descrição Esta instrução realiza a cópia dos valores de um bloco de operandos origem para um bloco destino. Especifica-se o primeiro operando do bloco origem em OPER1 e o primeiro operando do bloco destino em OPER4. O número total de transferências a serem realizadas é declarado no parâmetro OPER2, devendo também ser especificados o número de transferências por varredura em OPER5 e uma memória acumuladora para a contagem do número de transferências em OPER3. Se o bloco origem ou destino for uma tabela, a transferência tem início na sua primeira posição. Se o formato do operando destino for menor do que o origem, os octetos mais significativos do valor origem são desprezados. Caso contrário, os octetos mais significativos do destino são zerados. O número de transferências por varredura é limitado em 255 operandos. Na medida do possível deve-se evitar um número elevado de transferências na mesma varredura, para diminuir o tempo de execução do programa. Em cada instrução MOB é utilizada uma memória como operando de controle em OPER3, que deve estar zerada antes da primeira execução. ATENÇÃO: O operando de controle não deve ter seu conteúdo alterado em nenhuma parte do programa aplicativo, sob pena de prejudicar a execução correta da instrução. Cada ocorrência desta instrução no programa deve possuir um operando de controle exclusivo, diferente dos demais. Este operando não pode ser retentivo. Quando ligadas, as saídas índice origem inválido e índice destino inválido indicam, respectivamente, que pelo menos um dos operandos componentes do bloco origem ou destino tem endereço superior ao número máximo declarado para o operando ou tabela utilizado, não sendo realizada nenhuma movimentação. Caso o valor de OPER2 seja negativo, a saída índice origem inválido é acionada. A saída movimentação concluída é acionada na varredura em que a movimentação for completada. ATENÇÃO: A entrada habilita deve permanecer ativa até que a movimentação esteja concluída. Como esta instrução é executada em múltiplos ciclos de execução, não deve ser saltada enquanto não estiver terminada a movimentação. Tecla de atalho Mob - 70 -