Escolar Documentos
Profissional Documentos
Cultura Documentos
CLP Extra
CLP Extra
Os primeiros CLPs foram instalados em 1969, fazendo sucesso quase imediato. Funcionando como substitutos de rels, at mesmo estes primeiros CLPs eram mais confiveis do que os sistemas baseados em rels, principalmente devido robustez de seus componentes de estado slido quando comparados s peas mveis dos rels eletromecnicos. Os CLPs permitiram reduzir os custos de materiais, mo-de-obra, instalao e localizao de falhas ao reduzir a
necessidade de fiao e os erros associados. Os CLPs ocupavam menos espao do que os contadores, temporizadores e outros componentes de controle anteriormente utilizados. E a possibilidade de serem reprogramados permitiu uma maior flexibilidade para trocar os esquemas de controle. Talvez a razo principal da aceitao dos CLPs pela industria foi que a linguagem inicial de programao era baseada nos diagramas de contato (ladder) e smbolos eltricos usados normalmente pelos eletricistas. A maior parte do pessoal de fbrica j estava treinada em lgica ladder, adaptando-a rapidamente nos CLPs.
Diagnstico. A capacidade de localizao de falhas dos dispositivos de programao e o recurso de diagnstico incorporado no CLP permite que os usurios localizem e corrijam rapidamente os problemas de software e hardware.
1. 2. 3. 4. 5. 6.
Entradas Sadas Unidade Central de Processamento (Central Processing Unit CPU) Memria para o programa e armazenamento de dados Fornecimento de alimentao Dispositivo de programao
3.1 Entradas
Os terminais de entrada conectados no CLP formam a interface pela qual os dispositivos de campo so conectados ao CLP. Os sinais recebidos por um mdulo de entrada podem vir de dois tipos de sensores: Discretos: Chave limite; botoeira; chave de digitadora (thumbwheel); chave de presso; fotoclula; contato de rel; chave seletora; teclado. Analgicos: Transdutor de presso; transdutor de temperatura; clula de carga (strain gage); sensores de vazo; transdutores de vibrao; transdutores de corrente; transdutores de vcuo; transdutores de fora. Os sinais eltricos enviados pelos dispositivos de campo ao CLP so normalmente de 120Vca ou de 24Vcc. Os circuitos de entrada no CLP recebem esta tenso vinda do campo e a condicionam de forma que possa ser utilizada pelo CLP. Tal condicionamento necessrio j que os componentes internos de um CLP operam a 5Vcc e devem, portanto, estar protegidos de flutuaes de tenso. Para que os componentes internos fiquem eletricamente isolados dos
terminais de entrada, os CLPs empregam um isolador ptico, que usa a luz para acoplar os sinais de um dispositivo eltrico a outro.
A estrutura interna de um mdulo de entrada pode ser subdividida em seis blocos principais, como mostrado na figura abaixo: Tabela onde podemos ver a funo de cada bloco: Parte Sensores de campo Funo Informar ao controlador programvel as condies do processo Terminais para conexo dos sensores de Permitir a interligao fsica entre os campo sensores de campo e o controlador programvel. Condicionamento e converso do sinal Converter os sinais de campo em nveis de entrada baixos de tenso, compatveis com o processador utilizado. Indicadores de estado das entradas Proporcionar indicao visual do estado funcional das entradas contidas num mdulo de entrada. Isolao eltrica Proporcionar isolao eltrica entre os sinais vindos do campo e os sinais do processador. Interface/multiplexao Informar ao processador o estado de cada varivel de entrada. Dependendo da natureza do sinal de entrada, podemos dispor dos seguintes tipos de mdulos de entrada:
CARACTERSTICAS 12 Vac; 24 A 48 Vac; 110/127 Vac; 220/240 Vac 120 Vdc com isolao 12 Vdc; 12 a 24 Vdc com resposta rpida; 24 a 48 Vdc; 12 a 24 Vdc (lgica negativa) source; 12 a 24 Vdc (lgica positiva) sinking; 48 Vdc source; 48 Vdc sinking 1 a 5 Vdc; 0 a 10Vdc; -10 a +10Vdc; 4 a 20mA. TTL com suprimento; TTL com dreno; 5 a 30 Vdc selecionvel; 5Vdc contador/ decodificador; 12 a 24Vdc codificador/ contador; termopar; cdigo ASCII; cdigo Gray; pulsos de alta velocidade.
DIGTAL (DC)
ANALGICO ESPECIAL
3.2 Sadas
Os mdulos de sada tambm so considerados como elementos de interface, pois permitem que o processador se comunique com o meio externo. A estrutura interna de um mdulo de sada pode ser subdividida em sete blocos principais, relacionados a seguir:
Tabela onde podemos ver a funo de cada bloco: Parte Interface/Demultiplexao Funo Recebe os sinais vindos do processador direcionando-os para as respectivas sadas. Memorizador de sinal Armazena os sinais que j foram multiplexados pelo bloco anterior. Isolao eltrica Proporciona isolao eltrica entre os sinais vindos do processador e os dispositivos de campo. Indicadores de estado de sadas .Proporciona indicao visual do estado funcional das sadas contidas num mdulo de sada Estgio de Potncia Transforma os sinais lgicos de baixa potncia vindos do processador em sinais de potncia, capazes de operar os diversos tipos de dispositivos de campo Terminais para conexo dos Permite a conexo fsica entre CLP e os dispositivos de campo dispositivos de campo. Dispositivos de campo Consiste em dispositivos eletromecnicos que atuam no processo/equipamento, em funo dos sinais de controle enviados pelo CP. Dependendo da natureza dos dispositivos de campo e do tipo de sinal de controle necessrio para comand-los, podemos dispor dos seguintes tipos de mdulos de sada: TIPO Digital (AC) Digital (DC) CARACTERSTICAS 12Vac; 24 a 48Vac; 120Vac; 220/240Vac; 120Vac com isolao. 12 a 60Vdc; 12 a 24Vdc com resposta rpida; 24 a 48Vdc; 12 a 24Vdc com suprimento; 12 a 24Vdc com dreno; 48Vdc com suprimento; 48Vdc com dreno. 1 a 5Vdc; 0 a 10Vdc; -10 a +10Vdc; 4 a 20mA. TTL com suprimento; TTL com dreno; 5 a 30Vdc selecionvel; contato NA; contato NF; sada em ASCII; servo-motor; motor de passo.
Analgico Especial
Os circuitos de sada funcionam de maneira similar aos circuitos de entrada: os sinais emitidos pela CPU passam por uma barreira de isolamento antes de energizar os circuitos de sada. Os CLPs utilizam vrios circuitos de sada para energizar seus terminais de sada: rels, transistores e triacs.
Rels. Os Rels podem ser usados com alimentao alternada ou contnua. Os rels eletromagnticos de CLPs tradicionais aceitam correntes de at alguns ampres. Os rels suportam de forma melhor os picos de tenso porque contm uma camada de ar entre seus contatos que elimina a possibilidade de ocorrncia de fuga. No entanto, so comparativamente lentos e sujeitos a desgaste com o tempo. Transistores. Os transistores chaveiam corrente contnua, so silenciosos e no contm peas mveis sujeitas a desgaste. Os transistores so rpidos e podem reduzir o tempo de resposta, mas suportam cargas de, no mximo, 0,5A. Certos tipos especiais de transistores, os FETs (Transistores de Efeito de Campo) podem aceitar cargas maiores, normalmente de 1A. Triacs. Os triacs chaveiam exclusivamente corrente alternada. Como os transistores, as sadas triacs so silenciosas, no tem peas mveis sujeitas a desgaste, so rpidas e transportam cargas de at 5A. Obs. As sadas de estado slido (triacs e transistor) podem ser danificadas e destrudas em caso de sobre tenso ou sobrecarga. Os mdulos de sada podem acionar os seguintes tipos de dispositivos de sada: Discretos: Controladores de motores, indicadores de painel, contator, vlvula solenide, display, bobina de rel, sistemas de alarme e segurana, sirena. Analgicos: Acionadores AC, vlvula de controle, acionadores DC.
MEMRIA
0 1 2 3 4 255 Sistema Reservada ladder ladder Ladder Ladder ARQUIVO DE DADOS ARQUIVO DE PROGRAMA
O I S B T C R N F X
0 1 2 3 4 5 6 7 8 255
Sada Entrada Status Binrio Temporizador Contador Controle Inteiro Ponto Flutuante
Os CLPs podem ser de Estrutura Fixa ou Estrutura Modular. Estrutura Fixa. So unidades que j incluem o processador, a fonte de alimentao e as E/S reunidas em um s bloco. Estrutura Modular. aquele que tem componentes separados, porm interligados e podem ser expandidos com o acrscimo de mais mdulos de E/S no chassi.
Incio
Fim
Ciclo normal de um programa O termo varredura ou scan, so usados para dar um nome a um ciclo completo de operao (loop). O tempo gasto para a execuo do ciclo completo chamado Tempo de Varredura, e depende do tamanho do programa do usurio, e a quantidade de pontos de entrada e sada.
uma sada ser ou no energizada. O estado resultante das sadas armazenado em uma regio da memria denominada tabela imagem de sada. 3. Varredura das sadas. o tempo necessrio para que o controlador varra e escreva todos os dados de sada. Baseado nos dados da tabela imagem de sada, o CLP energiza ou desenergiza seus circuito de sada que exercem controle sobre dispositivos externos. 4. Comunicao. o momento do ciclo de operao no qual a comunicao se realiza com outros dispositivos, tais como um terminal porttil de programao, um computador, entre CLPs atravs de uma rede. 5. Housekeeping / overhead. o tempo gasto no gerenciamento da memria e na atualizao dos temporizadores e registros internos.
A memria no voltil retm seu contedo programado, sem usar bateria ou capacitor, mesmo se houver interrupo do fornecimento de alimentao. A memria EEPROM (Electrically Erasable Programmable Read Only Memory Memria de Leitura Eletricamente Apagvel e Programvel) uma memria no voltil com a mesma flexibilidade da memria RAM, sendo programada por meio de um sofware de aplicao que roda em um computador pessoal ou por meio de um Terminal de Programao (Hand-Held). Apesar das memrias RAM e EEPROM poderem salvar os programas aplicativos em caso de interrupo do fornecimento de alimentao, elas no salvam necessariamente os dados do processo, tais como os valores acumulados de um temporizador ou contador. Caso a reteno de dados de um processo seja importante em uma determinada aplicao, escolha um CLP que oferea 100% de reteno dos dados. Em caso de falha de alimentao, este tipo de CLP salva automaticamente os dados do processo na memria EEPROM no voltil.
T4:7.ACC um endereo de palavra, onde o ponto separa o elemento da palavra dentro do elemento. J que os arquivos de Temporizador possuem elementos de 3 palavras, o endereo T4:7.ACC aponta para a palavra de Acumulador (terceira palavra) no elemento Nm. 7 do arquivo de Temporizador T4. B3:64/15 um endereo de bit, onde a barra separa o bit do elemento. J que os arquivos de bits possuem elementos de uma palavra, o endereo B3:64/15 aponta para o bit Nm. 15 na palavra Nm. 64 no arquivo de Bits B3. I:4.1/3 um endereo de bits, onde a barra separa o bit da palavra, e o ponto separa a palavra do slot. Esta uma maneira alternativa de enderear terminais de E/S 16 e superiores. Outra maneira de representar este endereo digitar I:4/19. Apesar dos CLPs operarem de forma binria (1 e 0), eles tambm usam o binrio para converter, aceitar e manipular dados de outros sistemas de numerao. Estes sistema incluem o decimal, o hexadecimal, o decimal codificado em binrio (BCD) e o octal. Ver anexo 01. Decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Hexadecima l 0 1 2 3 4 5 6 7 8 9 A B C D E F Binrio 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 Octal 0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17
6 Fornecimento de alimentao
A fonte de alimentao fornece energia aos elementos internos do controlador, converte a tenso de entrada em uma forma utilizvel e protege os componentes do CLP contra os picos de tenso. Como a maior parte das instalaes passa por flutuaes de tenso na linha, as fontes de tenso do CLP so projetadas para manter a operao normal mesmo quando a tenso varia entre 10 e
15%. As quedas e surtos de tenso so causados por quedas da rede pblica ou partidas/paradas de equipamentos pesados (tais como motores ou mquinas de solda). Em condies particularmente instveis de tenso, talvez seja necessrio instalar um estabilizador de tenso entre o CLP e a fonte primria de alimentao. Outro fator que afeta o funcionamento do CLP a interferncia eletromagntica ou rudo eltrico. Apesar dos CLPs serem mais robustos que a maioria dos equipamentos eletrnicos (especialmente os PCs ou os controladores dedicados, que so s vezes usados no lugar dos CLPs), a interferncia eletromagntica pode ser um problema. Neste caso, o CLP deve ser isolado por meio da instalao de um transformador de isolao.
7 Dispositivos de Programao
Para inserir um programa em um CLP, os dois dispositivos mais utilizados so o computador pessoal (PC) e o Terminal Porttil de Programao (TPP). O PC usado para rodar o software de programao do CLP. Este software permite aos usurios criar, editar, documentar, armazenar e localizar as falhas dos diagramas ladder, gerando tambm relatrios impressos. As instrues dos softwares so baseadas em smbolos grficas para as vrias funes. No necessrio o conhecimento das linguagens mais avanadas de programao para se usar o software, bastando um entendimento genrico dos diagramas eltricos funcionais (veja figura abaixo). Apesar do TPP poder ser utilizados para programar o CLP, seu uso mais freqente na localizao de falhas, pois compacto e tem sua prpria memria para armazenar os programas. Os terminais TPP so extremamente teis quando se trata de localizar falhas em equipamentos nas fbricas, modificar programas e transferir programas a vrias mquinas. A linguagem usada pelo TPP uma forma grfica de programao de lista de instrues, baseada nas instrues de lgica ladder do CLP (veja figura abaixo).
8 Linguagens de Programao
Um programa uma srie de instrues ou comandos que o usurio desenvolve para fazer com que o CLP execute determinadas aes. Uma linguagem de programao estabelece regras para combinar as instrues de forma que gerem as aes desejadas.
8.1 Classificao
Podemos classificar as diversas linguagens utilizadas na programao de dispositivos microprocessados em dois grupos: Linguagem de baixo nvel Linguagem de alto nvel 8.1.1 Linguagem de baixo nvel
A linguagem de mquina considerada a de mais baixo nvel, pois cada instruo composta por combinaes dos bits 0 e 1. A linguagem Assembly considerada de baixo nvel, apesar das instrues consistirem em vocbulos simblicos (mneumnicos). Neste tipo de linguagem, cada instruo do programa fonte corresponde a uma nica instruo do programa objeto.
MICROPROCESSADOR
A linguagem de baixo nvel apresenta - alguns inconvenientes no momento da sua utilizao, pois requer do usurio conhecimento sobre a arquitetura do microprocessador. 8.1.2 Linguagem de alto nvel
Uma linguagem de programao passa a ser de alto nvel medida que esta se aproxima da linguagem corrente utilizada na comunicao entre pessoas. Apresenta uma estrutura rgida devido s regras utilizadas no momento da elaborao do programa. Uma nica instruo em linguagem de alto nvel (programa fonte), corresponder a vrias instrues em linguagem de mquina (programa objeto). Como vantagens, temos: No requer do usurio conhecimento sobre a arquitetura do microprocessador; Reduz o tempo gasto na elaborao de programas. Como desvantagens, temos: O nmero de instrues do programa objeto s ser conhecido aps a compilao do programa fonte O tamanho dos programas em geral fica maior. Os controladores programveis utilizam linguagens de alto nvel para a sua programao. A seguir, temos alguns exemplos de utilizao das linguagens de programao em funo da aplicao.
NOME DA LINGUAGEM FORTRAN COBOL PASCAL BASIC STEP 5 AL3800 MASTER TOOL PGM SPW IPDS SUCOS 3
USO Aplicaes tcnico-cientficas Aplicaes comerciais Uso geral Uso geral Programao de CLP SIEMENS/MAXITEC Programao de CLP ALTUS Programao de CLP ALTUS Programao de CLP SISTEMA Programao de CLP WEG Programao de CLP ALLEN-BRADLEY Programao de CLP KLKNER
Mesma linguagem utilizada em lgica digital, onde sua representao grfica feita atravs das chamadas portas lgicas. E1 E2
& >=1
&
S1
8.2.3
Diagrama de Contatos
Esta forma de programao, tambm conhecida como: Diagrama de rels; diagrama escada ou diagrama ladder. Esta forma grfica de apresentao est muito prxima a normalmente usada em diagramas eltricos. Vamos comparar um hard-logic (programao atravs de fios comando) e o soft-logic (programao atravs de software ladder) A figura abaixo permite comparar as trs representaes
Esta posio habilita o controlador ao modo de programao. o controlador no varre/executa o programa ladder e as sadas so desenergizadas. possvel desenvolver a edio do programa on-line. O modo do controlador pode ser alterado somente atravs da posio da chave seletora. O modo programao permite que o usurio altere a memria do processador da seguinte forma: acrescentando novos dados e/ou instrues; alterando as informaes j gravadas na memria; apagando informaes previamente gravadas. As operaes executadas, quando o sistema programador se encontra no modo programaes, podem ocorrer de duas formas: Off-line Neste modo de programao, o CLP poder estar ou no em operao, pois o programa que estiver sendo desenvolvido no sistema de programao no ser transferido para o CLP durante o seu desenvolvimento. Portanto, alteraes ou apagamentos de programa no provocaro alteraes nos dispositivos de sada. Este modo de programao o mais seguro, pois o programa s ser transferido para o CLP quando o mesmo estiver parado. On-line O modo de programao on-line permite que se alterem dados e/ou instrues na memria do processador, com o CLP em operao. Portanto, qualquer alterao efetuada no programa ser executada imediatamente pelo processador.
FORA
E21 E4
COMANDO
B0
B1
C1
C2
C2
C1
B2
C2
C1
C1
C2
E22
LADDER
E4
E1 E3
B0
E2
B1
C2
S1
C1
( )
E4
C1
( )
C2
B2
C1
( )
C2
END
Modo Execuo RUN Esta posio habilita o controlador ao modo de operao. O controlador varre/executa o programa ladder, monitora dispositivos de entrada e sada e ativa os pontos forados de E/S habilitados. O modo do controlador pode ser alterado somente atravs da posio da chave seletora. No possvel desenvolver a edio do programa on-line. Para mudar o modo do controlador para RUN, gire a chave seletora de PRPG ou REM para RUN. Ao selecionar a chave no modo RUN, no possvel utilizar uma interface de operao/programao para alterar o modo do controlador. Modo Remoto - REM Esta posio habilita o controlador ao modo remoto. Modos REM/RUN, REM/PROG ou REM/TEST. O modo do controlador pode ser alterado atravs da posio da chave seletora ou mudando o modo atravs de uma interface de programao/operao. possvel desenvolver a edio de programa on-line nessa posio. Quando a chave seletora estiver na posio REM, possvel utilizar uma interface de programao/operao para mudar o modo do controlador.
Entende-se como configurao remota RIO, aquela em que os mdulos I/O, esto montados fora do rack da CPU em distncias acima de 15 metros. Para tal finalidade so necessrios mdulos especiais para interligao de racks remotos (Scanner Remote I/O 1747-SN). Cada Scanner 1747-SN suporta 4 chassis de 256 E/S cada um. Podem ser conectados a uma rede RIO (Remote I/O), no mximo 16 dispositivos. A distncia mxima para este tipo de configurao gira em torno de 3000 metros. Entende-se como configurao Remota DeviceNet, aquela que conecta os dispositivos de cho de fbrica diretamente ao sistema de controle, reduzindo o nmero de interfaces de E/S e a fiao associada. A Rede de comunicao DeviceNet uma rede completamente aberta e possui o suporte de fabricantes de sensores, atuadores e dispositivos de controle.
CPU
I/O LOCAL
Configurao local
Em uma configurao tpica, o Scanner DeviceNet 1747-SDN atua como uma interface entre os dispositivos e os controladores SLC 500. O Scanner comunica os dispositivos DeviceNet atravs da rede para: 1. Ler as entradas de um dispositivo; 2. Escrever as sadas para um dispositivo; 3. Descarregar os dados de configurao; 4. Monitorar o status operacional de um dispositivo. Comprimento mximo da Devicenet: 500 m. Entende-se como configurao em rede, aquela em que diversas CPUs e mdulos I/O, esto montados e interligados por um cabo de comunicao. A rede utilizada para os controladores SLC 500 chamada de DH-485. A rede DH-485 foi projetada de modo a passar informaes entre os dispositivos instalados na planta. A rede monitora os parmetros do processo e das CPUs, o status das CPUs e do processo e os programas de aplicao de modo a suportar a aquisio e monitoramento de dados, o carregamento/descarregamento do programa e o controle de superviso. A rede DH-485 oferece: 1. Interconexo de 32 dispositivos; 2. A habilidade de adicionar ou remover ns sem interromper a rede; 3. Comprimento mximo da rede: 1219 m.
9.1.1
Instrues de Examinar
So duas as Instrues de Examinar: Examinar se Energizado (XIC) Examinar se Desenergizado (XIO) a) Examinar se Energizado (XIC) Formato da Instruo XIC
Quando um dispositivo de entrada fecha seu circuito, o terminal de entrada conectado ao mesmo indica um estado energizado, que refletido no bit correspondente do arquivo de entrada.Quando o controlador localiza uma instruo com o mesmo endereo, ele determina que o dispositivo de entrada est energizado ( 1 ), ou fechado, e ajusta a lgica da instruo para verdadeira. Quando o dispositivo de entrada no mais fecha seu circuito, o controlador verifica que o bit est desenergizado ( 0 ) e ajusta a lgica dessa instruo para falsa (tabela 1A). Tabela 1.A Lgica da Instruo XIC Estado do Bit 0 1 Instruo XIC Falsa Verdadeira
b) Examinar se Desenergizado (XIO) A figura abaixo ilustra o formato da Instruo Examinar se Desenergizado Formato da Instruo XIO
Quando um dispositivo de entrada no acionado, o terminal de entrada conectado a ele indica um estado desenergizado, que refletido no bit correspondente do arquivo de entrada. Ao localizar uma instruo XIO com o mesmo endereo, o controlador determina que a entrada est desenergizada ( 0 ) e ajusta a lgica da instruo para verdadeira. Quando o dispositivo acionado, o controlador ajusta a lgica dessa instruo para falsa (tabela 1.B). Tabela 1.B Lgica da Instruo XIO Estado do Bit 0 1 Instruo XIO Verdadeira Falsa
Instrues de condio e seus resultados: Dispositivo De Entrada Boto NA - No Ativado Terminal de Entrada No CLP A
A X O/2 ON
Programa Ladder
Boto NA - Ativado
O/2
ON
A
A X O/2 OFF
Boto NF - No Ativado
O/2
ON
B
B Z O/2 OFF
Boto NF - Ativado
O/2
OFF
B
B Z O/2 ON
9.1.2
As instrues Energizar/desenergizar Sada so empregadas para energizar ou desenergizar um bit especfico. Essas instrues so as seguintes: Energizar Sada (OTE) Energizar Sada com Reteno (OTL) Desenergizar Sada com Reteno (OTU)
a) Energizar Sada (OTE) A figura abaixo ilustra o formato da instruo Energizar Sada (OTE).
O estado de um terminal de sada indicado atravs de um bit especfico do arquivo de sada. Ao ser estabelecida uma lgica verdadeira na linha de programa que contm a instruo OTE, o controlador energiza o respectivo bit ( 1 ), fazendo com que o terminal de sada seja energizado e o dispositivo de sada conectado a este terminal seja acionado. Caso essa lgica verdadeira no seja estabelecida, o controlador desenergiza o bit ( 0 ), a instruo OTE desabilitada e o dispositivo de sada associado desenergizado. A instruo OTE no-retentiva e a mesma desabilitada quando: o controlador for alterado para o modo Operao ou Teste, ou quando a alimentao restaurada; ocorrer um erro grave. Deve-se observar que uma instruo OTE habilitada em uma rea de subrotina permanecer habilitada at que haja uma nova varredura na rea de subrotina.
b) Energizar Sada com Reteno e Desenergizar sada com Reteno A figura abaixo ilustra o formato das instrues Energizar Sada com Reteno (OTL) e Desenergizar Sada com Reteno (OTU). Formato das Instrues OTL E OTU
Essas instrues so instrues de sada retentiva e geralmente, so utilizadas aos pares para qualquer bit da tabela de dados controlado pelas mesmas. Tambm podem ser empregadas para inicializar valores de dados em nvel de bit. Quando se determina um endereo para a instruo OTL que corresponde ao endereo de um terminal do mdulo de sada, o dispositivo de sada conectado a este terminal ser energizado assim que o bit na memria for energizado. O estado habilitado deste bit determinado pela lgica da linha anterior s instrues OTL e OTU. Caso a lgica verdadeira seja estabelecida com instrues de entrada, a instruo OTL habilitada. Se a mesma no for estabelecida e o bit correspondente na memria no tiver sido energizado previamente, a instruo OTL no ser habilitada. Entretanto, se a lgica verdadeira for estabelecida previamente, o bit na memria ser retido energizado e assim permanecer, mesmo aps as condies da linha terem se tornado falsas.
Uma instruo OTU com o mesmo endereo da instruo OTL rearma (desabilita ou desenergiza) o bit na memria. Quando uma lgica verdadeira estabelecida, a instruo OTU desenergiza seu bit correspondente na memria. O programa de aplicao pode examinar um bit controlado pelas instrues OTL e OTU sempre que necessrio. 9.1.3 Monoestvel Sensvel a Borda de subida (OSR)
A figura abaixo ilustra o formato da instruo Monoestvel Sensvel Borda de Subida (OSR). Formato da instruo OSR-
Essa instruo torna a linha verdadeira durante uma varredura com uma transio de falsa para verdadeira da condio anterior atual da linha. As aplicaes para esta instruo incluem iniciar eventos acionados por um boto de comando, como por exemplo, congelar valores exibidos muito rapidamente (LED). A figura abaixo a seguir, exibe a utilizao da instruo OSR. Exemplo 1 de Instruo OSR para controlador SLC-5/03
Na figura anterior quando a instruo de entrada passa de falsa para verdadeira, a instruo OSR condiciona a linha de forma que a sada fique verdadeira durante uma varredura do programa. A sada passa a falsa e assim permanece durante vrias varreduras at que a entrada realize uma nova transio de falsa para verdadeira. O Controlador Micrologix permite utilizar uma instruo OSR por sada em uma linha. Importante: Recomenda-se no utilizar um endereo de sada juntamente com a instruo OSR, devido a pequena durao do tempo de uma varredura.
Diagrama ilustrativo da Instruo OSR Uso da Instruo OSR em Branch (Paralelo) No exemplo da figura abaixo, a instruo OSR no poder ser usada dentro de uma Branch (paralelo).
No exemplo da Figura abaixo, a linha verdadeira, porque a instruo OSR esta fora do Branch.
9.1.4
Instrues de Temporizador
Temporizador Retentivo (RTO) Essas instrues encontram-se descritas nas sees a seguir. Temporizador na Energizao (TON): conta intervalos de base de tempo quando a instruo verdadeira. A base de tempo selecionada entre 0,01s ou 1,0s para os Controladores SLC-5/03; Temporizador na Desenergizao (TOF): conta intervalos de base de tempo quando a instruo falsa. A base de tempo selecionada entre 0,01s ou 1,0s para os Controladores SLC-5/03. Temporizador Retentivo (RTO): este temporizador retm o seu valor acumulado quando a instruo se torna falsa. As instrues de Temporizador e Contador requerem trs palavras do arquivo de dados. A palavra 0 a palavra de controle que contm os bits de estado da instruo. A palavra 1 o valor Predefinido. A palavra 2 corresponde ao valor acumulado. Figura abaixo:
ACC. Para os temporizadores, o valor acumulado o nmero atual de intervalos temporizados que transcorreram; para contadores, o nmero de transies de falso para verdadeiro que ocorreram. PRE. O valor Predefinido o valor inserido para controlar a temporizao ou contagem da instruo. Quando o valor acumulado for igual ou maior que o valor Predefinido, o bit de estado ser energizado. Pode-se utilizar este bit para controlar um dispositivo de sada. Os valores Predefinido e acumulado para temporizadores variam de 0 a +32.767 e os valores para contadores variam de -32.768 a +32.767. Se o valor acumulado ou Predefinido do temporizador for um nmero negativo, ocorrer um erro de run-time, causando falha no controlador.
a) Temporizador na Energizao - TON A figura a seguir ilustra o formato da instruo de temporizador na Energizao (TON) Formato da Instruo TON
TON Temporiz. de Energ. Temporizador Base de Tempo Predefinido Acum 0< T4:7 1.0 5< ( TT ) ( EN ) ( DN )
A instruo de Temporizador na Energizao (TON) inicia a contagem dos intervalos da base de tempo quando a condio da linha se torna verdadeira. medida que a condio da linha permanece verdadeira, o temporizador incrementa seu valor acumulado (ACC) a cada varredura at atingir o valor Predefinido (PRE). O valor acumulado zerado quando a condio da linha for falsa independente do temporizador ter ou no completado a temporizao.
Diagrama ilustrativo da Instruo TON O bit de executado (DN) energizado quando o valor acumulado igual ao valor Predefinido e desenergizado quando a condio da linha se torna falsa. O bit de temporizado (TT) do temporizador energizado quando a condio da linha verdadeira e o valor acumulado menor que o valor Predefinido. Quando o bit de executado energizado ou a condio da linha falsa, esse bit desenergizado. O bit de habilitao (EN) do temporizador energizado quando a condio da linha verdadeira. Caso contrrio, esse bit desenergizado. Se o controlador for passado do modo Operao ou Teste para Programao, ou ento, se a alimentao for perdida enquanto uma instruo TON est contando o tempo sem ainda ter atingido o valor Predefinido, ocorre o seguinte: os bits de habilitao e temporizado permanecem energizados. o valor acumulado permanece o mesmo.
Quando o controlador retorna ao modo Operao ou Teste. pode acontecer o seguinte: se a linha for verdadeira, o valor acumulado zerado e os bits de habilitao e temporizado permanecem energizados. se a linha for falsa, o valor acumulado zerado e os bits de controle so desenergizados. b) Temporizador na Desenergizao - TOF A figura a seguir ilustra o formato da instruo de Temporizador na Desenergizao (TOF) Formato da Instruo TOF TOF Temporiz. de Desenerg. Temporizador Base de Tempo Predefinido Acum 0< T4:1 0.01 40< ( EN ) ( DN ) ( TT )
A instruo de Temporizador na Desenergizao (TOF) inicia a contagem dos intervalos da base de tempo quando a linha realiza uma transio de verdadeira para falsa. medida que a condio da linha permanece falsa, o temporizador incrementa o seu valor acumulado (ACC) a cada varredura at atingir o valor Predefinido (PRE). O valor acumulado zerado quando a condio da linha for verdadeira, independente do temporizador ter realizado a temporizao.
c) Temporizador Retentivo - RTO A figura a seguir ilustra o formato da instruo RTO. Formato da Instruo RTO RTO Temporiz. Retent. Ativado Temporizador Base de Tempo Predefinido Acum T4:2 1.0 25< 0<
( EN ) ( DN ) ( TT )
A instruo RTO inicia a contagem dos intervalos da base de tempo quando a condio da linha se torna verdadeira. medida que a condio da linha permanece verdadeira o temporizador incrementa o seu valor acumulado (ACC) a cada varredura at atingir o valor Predefinido (PRE). O valor acumulado retido quando: a condio da linha se torna falsa o controlador alterado de Operao ou Teste para Programao o controlador perde a alimentao (desde que seja mantida a bateria de back-up) ocorre uma falha
Diagrama ilustrativo da Instruo RTO Quando o controlador retorna ao modo Operao ou Teste e/ou a condio da linha passa a verdadeira, a temporizao continua a partir do valor acumulado retido. Ao reter o seu valor acumulado, o temporizador retentivo mede o perodo em que a condio da linha est verdadeira. Pode-se utilizar essa instruo para energizar ou desenergizar uma sada dependendo da lgica do programa. Os bits de estado da instruo RTO operam como descrito a seguir:
bit de executado (DN) energizado quando o valor acumulado igual ao valor Predefinido. No entanto, esse bit no desenergizado quando a condio da linha se torna falsa, ele s desenergizado quando a instruo RES habilitada. bit de temporizado (TT) da instruo de Temporizador Retentivo energizado quando a condio da linha verdadeira e o valor acumulado menor que o valor Predefinido. Quando a condio da linha passa a falsa ou quando o bit de executado energizado, o bit de temporizado desenergizado. bit de habilitao (EN) energizado quando a condio da linha verdadeira e desenergizado quando a condio se torna falsa.
O valor acumulado deve ser zerado pela instruo RES. Quando a instruo RES (reset), com o mesmo endereo da instruo RTO, for habilitada, o valor acumulado zerado e os bits de controle so desenergizados. OBS: A instruo RES de contador/temporizador no deve ser empregada com a instruo TOF. 9.1.5 Instrues de Contador Crescente (CTU) E Decrescente (CTD)
As Instrues de Contador so as seguintes: Contador Crescente (CTU) Contador Decrescente (CTD) Rearme (RES) Estas Instrues encontram-se descritas a seguir.
a) Contador Crescente (CTU): A contagem incrementada a cada transio de falso para verdadeiro. Formato da instruo CTU CTU Cont. Cresc. Contador Predefinido Acum C5:2 ( DN ) 12 0
( CU )
b) Contador Decrescente (CTD): A contagem decrementada a cada transio de falso para verdadeiro. Formato da Instruo CTD CTD Cont. Decr. Contador Predefinido Acum C5:4 ( DN ) 2 10
( CD )
As instrues de Contador Crescente (CTU) e Contador Decrescente (CTD) contam as transies de falsa para verdadeira, as quais podem ser causadas por eventos que ocorrem no programa, tais como peas que passam por um detetor. c) Rearme (RES): Esta instruo zera o valor acumulado e os bits de estado de um Temporizador e Contador. Quando a Instruo RES habilitada, zerado o valor acumulado (ACC) no Temporizador na Energizao (TON), no Temporizador na Desenergizao (TOF), no Temporizador Retentivo (RTO), no Contador Crescente (CTU) e no Contador Decrescente (CTD) que tenham o mesmo endereo da instruo (RES). As Instrues de Contador requerem trs palavras do arquivo de dados. A palavra 0 a palavra de controle e contm os bits de estado da Instruo. A palavra 1 o valor de preset. A palavra 2 o valor do acumulador.A palavra de controle contm seis bits de estado como representado na figura a seguir.
Os valores acumulado e Predefinido so armazenados como nmeros inteiros (os valores negativos so armazenados na forma de complemento de 2). Quando as condies da linha para uma instruo CTU passam de falsa para verdadeira, o valor acumulado incrementado de um, desde que haja uma varredura entre essas transies. Quando isto ocorre sucessivamente at que o valor acumulado se torne igual ao valor Predefinido, o bit de executado (DN) energizado, permanecendo nesse estado se o valor acumulado exceder o valor Predefinido. O bit 15 da palavra de controle da instruo de Contador o bit de habilitao de Contador Crescente (CU). Esse bit energizado quando a condio da linha verdadeira e desenergizado quando a condio da linha se torna falsa ou uma instruo RES, com o mesmo endereo da CTU, habilitada. A instruo CTU pode contar alm de seu valor Predefinido. Quando a contagem ultrapassa o valor Predefinido e atinge (32.767 + 1), ocorre uma condio de overflow. Isso indicado quando o bit 12, bit de overflow (OV), energizado. Pode-se desenergizar o bit de overflow habilitando-se uma instruo RES com o mesmo endereo da instruo CTU. Tambm possvel desenergiz-lo, decrementando a contagem para um valor menor ou igual a 32.767 com uma instruo CTD. Quando o bit de overflow (OV) energizado o valor acumulado atinge -32.768 e continua a contagem crescente a partir da. As instrues CTD tambm contam as transies da linha de falsa para verdadeira. O valor acumulado do contador decrementado a cada transio de falsa pare verdadeira. Quando ocorre um nmero suficiente de contagens e o valor acumulado se torna menor que o valor Predefinido, o bit de executado (bit 13) do contador desenergizado. O bit 14 da palavra de controle da instruo de Contador o bit de habilitao de Contador Decrescente (CD). Esse bit energizado quando a condio da linha verdadeira e desenergizado quando a condio da linha se torna falsa (contador decrescente desabilitado) ou a instruo apropriada de desenergizao habilitada. Quando a instruo CTD conta alm do seu valor Predefinido e atinge (-32.768 - 1), o bit de underflow (bit 11) energizado. Pode-se desenergizar esse bit, habilitando-se a instruo RES apropriada. Pode-se tambm desenergiz-lo. incrementando a contagem para um valor maior ou igual a -32.768 com uma instruo CTU com o mesmo endereo da instruo CTD. Quando o bit de underflow (UN) energizado, o valor acumulado atinge +32.767 e continua a contagem decrescente a partir da. As instrues CTU e CTD so retentivas. O valor acumulado (ACC) retido depois que a instruo CTU ou CTD passa a falsa e quando a alimentao do controlador removida e, a seguir, restaurada.
Os estados energizado ou desenergizado dos bits de executado, overflow e underflow tambm so retentivos. Esses bits de controle e o valor acumulado so zerados quando a instruo RES habilitada. Cada contagem retida quando as condies da linha se tomam falsas e, assim permanece at que uma instruo RES, com o mesmo endereo da instruo de contador, seja habilitada. Cada instruo de contador possui um valor Predefinido e acumulado, e uma palavra de controle associada.
d) Como o Contador trabalha A figura 21, demonstra como o controlador trabalha. O valor da contagem deve estar entre, (-32768 a 32767). Se o valor do Contador vai acima de 32 767 ou abaixo de 32 768 o status do Contador acusar overflow (OV) ou underflow (UN) e o bit setado. O Contador pode ser resetado a zero usando a Instruo (RES) .
Figura 21
9.1.6
Instrues de Comparao
As instrues de Comparao so usadas para testar pares de valores de forma a condicionar a continuidade lgica de uma linha.
a) Igual a (EQU) Testa se dois valores so iguais. Se a Origem A e Origem B so iguais, a lgica da linha verdadeira.
Origem A deve ser um endereo. Origem B pode ser uma constante do programa ou um endereo. A figura a seguir apresenta o formato da instruo EQU Igual a Origem A Origem B C5:1.ACC 17
b) Diferente (NEQ) Testa se o primeiro valor no igual ao segundo. Se Origem A e Origem B so diferentes, a lgica da linha verdadeira. Origem A deve ser um endereo. Origem B pode ser uma constante do programa ou um endereo. A figura a seguir apresenta o formato da instruo NEQ NEQ No Igual a Origem A Origem B 5:25.PRE 37
c) Menor que (LES) Testa se o primeiro valor menor que o segundo. Se a Origem A menor que o valor da Origem B a lgica da linha verdadeira. Origem A deve ser um endereo. Origem B pode ser uma constante do programa ou um endereo. A figura a seguir apresenta o formato da instruo
d) Menor ou igual a (LEQ) Testa se o primeiro valor menor ou igual ao segundo. Se o valor da Origem A menor ou igual Origem B, a lgica da linha verdadeira. Origem A deve ser um endereo. Origem B pode ser uma constante do programa ou um endereo. A figura a seguir apresenta o formato da instruo LEQ Menor que ou Igual a (A<=B) Origem A Origem B N7:10 N7:12
e) Maior que (GRT) Testa se o primeiro valor maior que o segundo. Se o valor da Origem A maior que o valor da Origem B, a lgica da linha verdadeira. Origem A deve ser um endereo. Origem B pode ser uma constante do programa ou um endereo. A figura a seguir apresenta o formato da instruo GRT Maior que (A>B) Origem A Origem B 4:19.ACC N7:12
f) Maior ou igual a (GEQ) Testa se o primeiro valor maior ou igual ao segundo. Se o valor da Origem A maior ou igual ao valor da Origem B, a lgica da linha verdadeira. Origem A deve ser um endereo. Origem B pode ser uma constante do programa ou um endereo. A figura a seguir apresenta o formato da instruo
Exemplo: LIM Teste de Limite Lim Inf Teste Lim Sup 590 N7:12 610
LIM testa se o valor de Teste est dentro ou fora da faixa especificada por Limite Inferior (Lim Inf) e Limite Superior (Lim Sup). Para testar se o valor de Teste est dentro da faixa, o Limite Inferior deve ter um valor igual a ou menor que o Limite Superior. A instruo ser verdadeira quando o valor de Teste estiver entre os limites ou for igual a um dos limites. Se o valor de Teste estiver fora dos limites, a instruo ser falsa. Para testar se o valor de Teste est fora da faixa, o Limite Inferior deve ter um valor maior que o Limite Superior. A instruo ser verdadeira quando o valor de Teste estiver fora dos limites ou for igual a um dos limites. Se o valor de Teste estiver entre os limites, a instruo ser falsa
Fornecendo Parmetros Dependendo de como voc define o parmetro Teste, os parmetros Limite Inferior e Limite Superior podem ser um endereo de palavra ou uma constante de programa. Veja abaixo. Se Teste for Constante Endereo de Palavra Limite Inferior Endereo de Palavra Endereo de Palavra ou Constante Limite Superior Endereo de Palavra Endereo de Palavra ou Constante
9.1.7
Instrues Matemticas
As Instrues Matemticas consideram um par de valores e realizam a operao desejada. O resultado colocado em uma localizao separada. Parmetros das Instrues Origem - Endereos dos valores em que a operao matemtica ser executada. Podem ser endereos de palavra ou constantes de programa. Se a instruo tiver dois operandos Origem, no possvel introduzir constantes de programa nos dois operandos. Dest - Endereo destino referente ao resultado da operao.
a) Adio (ADD) Adiciona o valor Origem A ao valor Origem B e armazena o resultado no destino. A figura a seguir apresenta o formato da instruo ADD Adicionar Origem A Origem B Dest C5:5.ACC 35 N7:33
b) Subtrao (SUB) A instruo SUB subtrai o valor Origem B do valor Origem A e armazena o resultado no destino (Dest).
A figura a seguir apresenta o formato da instruo SUB Subtrair Origem A Origem B Dest N7:10 19 N7:33
c) Multiplicao (MUL) A instruo MUL multiplica o valor origem A pelo valor origem B e armazena o resultado no destino (Dest). A figura a seguir apresenta o formato da instruo
d) Diviso (DIV) A instruo DIV divide o valor origem A pelo valor origem B e armazena o resultado arredondado no destino (Dest). A figura a seguir apresenta o formato da instruo DIV Dividir Origem A Origem B Dest T4:21.ACC N7:73 N7:39
e) Zeramento (CLR) Zera todos os bits de uma palavra A figura a seguir apresenta o formato da instruo CLR Limpar Dest N7:90
f) Raiz Quadrada (SQR) Calcula a raiz quadrada do valor Origem e coloca o inteiro resultante no destino Dest. A figura a seguir apresenta o formato da instruo SQR Raiz quadrada Origem Dest C5:10.ACC N7:76
g) Mover (MOV) Move o valor da origem para o destino; A figura a seguir apresenta o formato da instruo MOV Mover Origem Dest C5:10.ACC N7:76
ANEXO 1
SISTEMAS DE NUMERAO.
Todos ns, quando ouvimos pronunciar a palavra nmeros, automaticamente a associamos ao sistema decimal com o qual estamos acostumados a operar. Este sistema est fundamentado em certas regras que so base para qualquer outro. Vamos, portanto, estudar estas regras e aplic-las aos sistemas de numerao binria, octal e hexadecimal. Estes sistemas so utilizados em computadores digitais, circuitos lgicos em geral e no processamento de informaes dos mais variados tipos. O nmero decimal 573 pode ser tambm representado da seguinte forma: 57310 = 500 + 70 + 3 ou 57310 = 5 x 102 + 7 x 101 + 3 x 100 Isto nos mostra que um dgito no sistema decimal tem, na realidade, dois significados. Um, o valor propriamente dito do dgito, e o outro o que esta relacionado com a posio do dgito no nmero (peso). Por exemplo: o dgito 7 no nmero acima representa 7 x 10, ou seja 70, devido a posio que ele ocupa no nmero. Este principio aplicvel a qualquer sistema de numerao onde os dgitos possuem "pesos", determinados pelo seu posicionamento. Sendo assim, um sistema de numerao genrico pode ser expresso da seguinte maneira: N = dn. Bn +...+ d3.B3 + d2.B2 + dl.B1+ d0.B0 Onde: N = dn = B = n = Representao do nmero na base B Dgito na posio n Base do sistema utilizado Valor posicional do dgito
por exemplo, o nmero 1587 no sistema decimal representado como: N = d3.B3 + d2.B2 + dl.B1 + d0.B0 158710 = 1.103 + 5.102 + 8.101 + 7.100
O sistema binrio utiliza dois dgitos (base 2), para representar qualquer quantidade. De acordo com a definio de um sistema de numerao qualquer, o nmero binrio 1101 pode ser representado da seguinte forma: 11012 = l x 22 + l x 22 + 0 x 21 + l x 20 11012 = 8 + 4 + 0 + l = 1310 Note que os ndices foram especificados em notao decimal, o que possibilita a converso binria-decimal como descrito acima. Atravs do exemplo anterior, podemos notar que a quantidade de dgitos necessrios para representar um nmero qualquer, no sistema binrio, muito maior quando comparada ao sistema decimal. A grande vantagem do sistema binrio reside no fato de que, possuindo apenas dois dgitos, estes so facilmente representados por uma chave aberta e uma chave fechada ou, um rel ativado e um rel desativado, ou, um transistor saturado e um transistor cortado; o que torna simples a implementao de sistemas digitais mecnicos, eletromecnicos ou eletrnicos. Em sistemas eletrnicos, o dgito binrio (0 ou 1) chamado de BIT, enquanto que um conjunto de 8 bits denominado BYTE. Converso Binrio - Decimal A converso de um nmero do sistema binrio para o sistema decimal efetuada simplesmente adicionando os pesos dos dgitos binrios 1, como mostra o exemplo a seguir a) 1 1 0 1 02 Soluo: a) 1 1 0 1 02 = 1.24 + 1.23 + 0.22 + 1.21 + 0.20 1 1 0 1 02 = 16 + 8 + 0 + 2 + 0 1 1 0 1 02 = 2610 b) 1 1 0 0 1 0 02 = 1.26 + 1.25 + 0.24 + 0.23 + 1.22 + 0.21 + 0.20 1 1 0 0 1 0 02 = 64 + 32 + 0 + 0 + 4 + 0 + 0 1 1 0 0 1 0 02 = 10010 Converso Decimal - Binrio Para se converter um nmero decimal em binrio, divide-se sucessivamente o nmero decimal por 2 (base do sistema binrio), at que o ltimo quociente seja 1. Os restos obtidos das b) 1 1 0 0 1 0 02
divises e o ltimo quociente compem um nmero binrio equivalente, como mostra o exemplo a seguir. Converter os seguintes nmeros decimais em binrio. a) 2310 b) 5210 2310 = 1 0 1 1 12 5210 = 1 1 0 1 0 02 Adio com nmeros Binrios
A adio no sistema binrio efetuada de maneira idntica ao sistema decimal. Devemos observar, entretanto, que o transporte (vai um) na adio em binrio, ocorre quando temos 1+1. A tabela abaixo ilustra as condies possveis para adio de Bits.
A+B
0+0 0+1 1+0 1+1
SOMA
0 1 1 0
TRANSPORTE
no ocorre no ocorre no ocorre ocorre
Observe, nos exemplos seguintes, como efetuada uma adio em binrio. Adicionar os seguintes nmeros binrios. a) 1 0 1 1 1 02 + 1 0 0 1 0 12 b) 1 0 0 12 + 1 1 0 02 Soluo: a) 1 11 101110 +1 0 0 1 0 1 1010011 b) 1 1001 +1 1 0 0 10101
OBSERVAO: O termo transporte (vai um), utilizado para indicar o envio de um dgito para a posio imediatamente superior do nmero chamado de CARRY em ingls. Este termo ser utilizado a partir de agora, em lugar de "transporte", por ser encontrado na literatura tcnica.
Subtrao em nmeros Binrios As regras bsicas para subtrao binria so equivalentes subtrao decimal, e esto apresentadas na tabela a seguir.
A-B
0-0 0-1 1-0 1-1
DIFERENA
0 1 1 0
TRANSPORTE
no ocorre ocorre no ocorre no ocorre
Observe nos exemplos seguintes como efetuada uma subtrao em binrio. a) b) Soluo: a) 111 101 010 b) 1101 1010 0011 1 1 12 - 1 0 12 1 1 0 1 2 - 1 0 1 02
OBSERVAO: O termo transporte (pede um), utilizado para indicar a requisio de um dgito da posio imediatamente superior do nmero, chamado BORROW em ingls. Este termo ser utilizado, a partir de agora, em lugar de transporte, por ser o encontrado na literatura tcnica. O processo de subtrao efetuado na maioria dos computadores digitais realizado atravs da representao de nmeros negativos. Por exemplo, a operao 7 - 5 pode ser representada como sendo 7 + (-5). Observe que, na segunda representao, a operao efetuada uma adio de um nmero positivo com um negativo. Os nmeros binrios negativos so representados atravs do 2o complemento. Vejamos como isto feito. O segundo complemento de um nmero binrio obtido adicionando-se l ao primeiro complemento do mesmo. O primeiro complemento obtido simplesmente, complementando os dgitos que formam o nmero. Exemplo: Calcule o 20 complemento dos seguintes nmeros binrios.
a)
1 0 0 12
b)
1 1 0 12
No exemplo a o nmero 910 ( 1 0 0 12 ) tem como segundo complemento 0 1 1 12. O segundo complemento a representao negativa do nmero binrio, ou seja, -910 representado como sendo 0 1 1 12. A subtrao binria atravs do segundo complemento, realizada somando-se o subtrator com o segundo complemento do subtraendo, como mostra o exemplo a seguir. Subtraia os seguintes nmeros em binrios. a) 1310 - 710 Soluo: a) 1310 = 1 1 0 12 710 = 0 1 1 12 Calculando o 2o complemento de 710 ( 0 l l l2 ), temos: 0111 1 0 0 0 1o complemento + 1 1 0 0 1 2O complemento logo: 13 = 1 1 0 1 7 = +1 0 0 1 6 0110 b) 610 - 910
OBSERVAO: Sempre que houver carry do bit mais significativo, ele dever ser desprezado. b) 610 = 0 1 1 02 910 = 1 0 0 12 Calculando o 2o complemento de 910 ( 1 0 0 12 ), temos: 1001 0 1 1 0 1o complemento + 1 0 1 1 1 2o complemento
Se no resultado da soma ( 1 1 0 1 ) no existe carry, devemos achar o 2o complemento deste nmero e acrescentar o sinal negativo. 1101 0 0 1 0 1o complemento + 1 0 0 1 1 2o complemento OBSERVAO: Podemos achar o 2o complemento de um nmero binrio a partir da seguinte regra: conservamos o primeiro bit 1 (um) menos significativo e efetuamos o 1o complemento dos bits mais significativos ( bits da esquerda ) Sistema de Numerao Hexadecimal O sistema hexadecimal, ou sistema de base 16, largamente utilizado nos computadores de grande porte, tais como, IBM system 360, IBM system 370, IBM 1130, Honeywell 200, RCA spectra 70, entre outros. Neste sistema so utilizados 16 smbolos para representar cada um dos dgitos hexadecimais, conforme a tabela a seguir: NO DECIMAL 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 NO BINRIO 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 ento: 69 = 3 ou seja: 0011
DGITO HEXADECIMAL 0 1 2 3 4 5 6 7 8 9 A B C D E F
Novamente aplicamos para o sistema hexadecimal a definio de um sistema de numerao qualquer. Assim temos: N = dn.l6n + . . . + d2.162 + dl.l61 + d0.l60 Para se efetuar a converso, basta adicionar os membros da segunda parcela da igualdade, como ilustra o exemplo a seguir: a ) 2316 Soluo: a) 2316 = 2 x 161 + 3 x 160 2316 = 2 x 16 + 3 x 1 2316 = 3510 b) 3B16 = 3 x 161 + 11 x 160 3B16 = 3 x 16 + 11 x 1 3B16 = 5910 Observe que o dgito hexadecimal "B", no exemplo (b), equivalente ao nmero 11 decimal, como mostra a tabela apresentada anteriormente. Converso Decimal - Hexadecimal A converso decimal-hexadecimal efetuada atravs das divises sucessivas do nmero decimal por 16, como demonstrado no exemplo a seguir. a) 15210 S o l u o: a) l 52 b) 249 Nmeros Decimais Codificados em Binrio (BCD) Como j foi discutido anteriormente, os sistemas digitais, em geral, trabalham com nmeros binrios. Com o intuito de facilitar a comunicao homem-mquina, foi desenvolvido um cdigo que representa cada dgito decimal por um conjunto de 4 dgitos binrios, como mostra a tabela seguinte: b) 24910 b) 3B16
No DECIMAL 0 1 2 3 4 5 6 7 8 9
REPRESENTAO BINRIA 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 0 0 0 1 0 1 0 1 0 1 0 1
Este tipo de representao denominado de cdigo BCD (Binary-Coded Decimal). Desta maneira, cada dgito decimal representado por grupo de quatro bits, como ilustrado a seguir: 52710 = 0101 0010 0111 52710 = 0101001001112 Observe que as converses decimal-BCD e BCD-decimal so diretas, ou seja, separando-se o dgito BCD em grupos de 4 bits, cada grupo representa um dgito decimal, como ilustrado a seguir. a) 29010 Soluo: a) 29010 = 0010 1001 0000 29010 = 0010100100002 b) 63810 = 0110 0011 1000 63810 = 0110001110002 Exemplo: Converter os seguintes nmeros BCD para decimal. a) 1001010000001000 Soluo: a) 1001010000001000 = 1001 0100 0000 1000 1001010000001000 = 9 4 0 8 = 9 4 0 810 001001101001 = 0010 0110 1001 001001101001 = 2 6 9 = 2 6 910 b) 1001101001 b) 63810
b)
EXERCCIOS
01 Desenvolva um programa para ligar e desligar uma lmpada utilizando um boto liga NA
(verde) e um boto desliga NF (vermelho). Use instrues de bit: XIC e OTE.
02 - Desenvolva um programa para ligar e desligar uma lmpada utilizando um boto liga NA
(verde) e um boto desliga NF (vermelho). Use instrues de bit: XIC, XIO, OTL e OTU.
03 - Desenvolva um programa para ligar e desligar uma lmpada utilizando apenas o boto liga
NA (verde). Use instrues de bit: XIC, XIO, OTE e arquivo B3.
04 - Desenvolva um programa para ligar e desligar uma lmpada utilizando apenas o boto liga
NA (verde). Use instrues de bit: XIC, XIO, OSR, OTE e arquivo B3.
05 - Desenvolva um programa para ligar trs lmpadas em sequncia quando o boto liga NA
(verde) for acionado por trs vezes consecutivas, e desligar, as trs lmpadas ao mesmo tempo, quando o boto desliga NF (vermelho) for acionado. Use instrues de bit: XIC, XIO, OSR, OTL e OTU.
06 - Desenvolva um programa para ligar trs lmpadas em sequncia quando o boto liga NA
(verde) for acionado por trs vezes consecutivas, e desligar, as trs lmpadas ao mesmo tempo, quando o boto desliga NF (vermelho) for acionado. Use instrues de bit: XIC, XIO, OSR, OTE e arquivo B3.
07 - Desenvolva um programa para ligar trs lmpadas em sequncia quando o boto liga NA
(verde) for acionado por trs vezes consecutivas, e desligar, as trs lmpadas ao mesmo tempo, quando o boto liga NA (verde) for acionado pela quarta vez. Use instrues de bit: XIC, XIO, OSR, OTE e arquivo B3.
08 - Desenvolva um programa para ligar um motor quando o boto liga NA (verde) for
acionado, sendo que o mesmo desligar automaticamente aps 10s ou quando o boto desliga NF (vermelho) for acionado. Uma lmpada verde dever estar acesa sinalizando o motor desligado e uma vermelha o motor ligado. Use instrues XIC, XIO, OTE, arquivo B3 e de temporizao TON.
09 - Desenvolva um programa para ligar um motor quando o boto liga NA (verde) for
acionado, sendo que o mesmo desligar automaticamente aps 10s ou quando o boto desliga NF (vermelho) for acionado. Uma lmpada verde dever estar acesa sinalizando o motor desligado e uma vermelha o motor ligado. Use instrues XIC, XIO, OTE, arquivo B3 e de temporizao TOF.
10 - Desenvolva um programa para ligar um motor quando o boto liga NA (verde) for
acionado. O motor funcionar obedecendo o seguinte ciclo de operao: 10s ligado e 5s
desligado. O ciclo de operao ser interrompido quando o boto desliga NF (vermelho) for acionado. Uma lmpada verde dever estar acesa sinalizando o motor desligado e uma vermelha o motor ligado. Use instrues XIC, XIO, OTE, arquivo B3 e de temporizao TON e TOF.
12 - Desenvolva um programa para ligar um motor quando o boto liga NA (verde) for
acionado, sendo que o mesmo desligar automaticamente aps 10s ou quando o boto desliga NF (vermelho) for acionado. Uma lmpada verde dever estar acesa sinalizando o motor desligado e uma vermelha o motor ligado. Use instrues XIC, XIO, OTE, arquivo B3 e de temporizao RTO.
13 - Desenvolva um programa para ligar um motor quando o boto liga NA (verde) for
acionado. Aps 10 voltas o motor dever desligar automaticamente ou quando o boto desliga NF (vermelho) for acionado. Uma lmpada verde dever estar acesa sinalizando o motor desligado e uma vermelha o motor ligado Use instrues XIC, XIO, OTE, arquivo B3 e de contagem CTU e RES.
14 - Desenvolva um programa para ligar um motor quando o boto liga NA (verde) for
acionado. Aps 10 voltas o motor dever parar automaticamente ou quando o boto desliga NF (vermelho) for acionado. Uma lmpada verde dever estar acesa sinalizando o motor desligado e uma vermelha o motor ligado. Quando o motor for desligado o acumulado do contador dever ser zerado. Use instrues XIC, XIO, OTE, arquivo B3 e de contagem CTD e RES.
15 - Desenvolva um programa para ligar um motor quando o boto liga NA (verde) for
acionado. O motor funcionar obedecendo o seguinte ciclo ininterrupto de operao: 10 voltas e 5s desligado. O ciclo de operao ser interrompido quando o boto desliga NF (vermelho) for acionado. Uma lmpada verde dever estar acesa sinalizando o motor desligado e uma vermelha o motor ligado. Use instrues XIC, XIO, OTE, arquivo B3 e de temporizao TON ou TOF e CTU ou CTD.
16 - Desenvolva um programa para ligar um motor quando o boto liga NA (verde) for
acionado. O motor funcionar obedecendo o seguinte ciclo ininterrupto de operao: 10 voltas no sentido horrio e 5s desligado / 10 voltas no sentido anti-horrio e 5s desligado. O ciclo de operao ser interrompido quando o boto desliga NF (vermelho) for acionado. Uma lmpada verde dever estar acesa sinalizando o motor desligado e uma vermelha o motor ligado. Use instrues XIC, XIO, OTE, arquivo B3 e de temporizao 2TON ou 2TOF e 2CTU ou 2CTD.
17 - Desenvolva um programa para ligar um motor quando o boto liga NA (verde) for
acionado. O motor funcionar obedecendo o seguinte ciclo ininterrupto de operao: 10 voltas no sentido horrio e 5s desligado / 10 voltas no sentido anti-horrio e 5s desligado. O ciclo de operao ser interrompido quando o boto desliga NF (vermelho) for acionado. Uma lmpada
verde dever estar acesa sinalizando o motor desligado e uma vermelha o motor ligado. Use instrues XIC, XIO, OTE, arquivo B3 e de temporizao 1TON ou 1TOF e 1CTU ou 1CTD.
22 - Desenvolva um programa que converta Graus Fahrenheit em Celcius, aplicando a formula C = 5(F 32) / 9 . Quando a temperatura estiver entre 15 e 35 graus Celcius a lmpada verde
estar acesa e quando a temperatura estiver fora desta faixa, abaixo de 14 ou acima de 36 graus Celcius a lmpada vermelha acender. Use Instrues de bit, matemticas e de comparao. No se esquea de usar o arquivo N7 para entrada e armazenamento de dados.