Vous êtes sur la page 1sur 38

Histria dos microprocessadores

Foi no ano de 1960 que uma equipe de engenheiros japoneses pertencentes companhia BUSICOM foram para os Estados Unidos para construir circuitos integrados

para calculadoras a serem implementadas segundo seus projetos. A proposta foi entregue INTEL e Mrcian Hoff foi a responsvel pela sua concretizao. Como Marcian tinha feito experincia de trabalho com um computador (PC) PDP8 apresentou uma soluo diferente da construo sugerida. Esta soluo pressupunha que a funo do circuito integrado seria determinada por um programa nele armazenado. Com isso a configurao deveria ser mais simples, mas tambm era preciso muito mais memria que no caso do projeto proposto pelos japoneses. Depois de algum tempo, embora os engenheiros japoneses tenham tentado achar uma soluo mais fcil, a idia de Marcian venceu e o primeiro microprocessador nasceu. Em 1971 o primeiro microprocessador de 4 bits (4004) tinha a velocidade de 6000 operaes por segundo. No muito tempo depois a CTC pediu para INTEL e a Texas Instruments um microprocessador de 8 bits para usar em terminais, em 1972 surgiram no mercado o microprocessador de 8 bits (8008). Este podia enderear 16KB de memria, possua 45 instrues e tinha velocidade de 300000 operaes por segundo. Em 1974 microprocessador de 8 bits (8080) com capacidade de 64KB de memria e 75 instrues. E com advento de novas tecnologias estes no pararam de ser aperfeioados de acordo com a necessidade do mercado.

Microcontrolador
Podemos definir um microcontrolador (Figura A) como sendo um pequeno componente eletrnico, dotado de uma inteligncia programvel, utilizado no controle de processos lgicos. Controle de processos deve ser entendido como um controle de perifricos, tais como leds, botes, displays de 7 segmentos, displays de cristal lquido (LCD), resistncias, rels, sensores diversos (presso, temperatura, etc) e muitos outros.

So chamados controles lgicos, pois suas aes so baseadas no estado dos perifricos de entrada e sada. A inteligncia do componente est associada Unidade Lgica Aritmtica (ULA), pois nessa unidade que todas as operaes matemticas e lgicas so executadas. Quanto mais poderosa a ULA do componente, maior a sua capacidade de processar informaes. Pequeno porque em uma nica pastilha de silcio (CI ou CHIP), temos todos os componentes necessrios ao controle de um processo, ou seja, o microcontrolador est provido internamente de memria de programa, memria de dados, porta de entrada, e sada paralela, timers, contadores, comunicao serial, PWMs, conversores analgicosdigitais, etc.

Figura A: Esquema de um microcontrolador com os seus elementos bsicos e ligaes internas.

As diferenas entre um microcontrolador e um microprocessador


Existem vrios aspectos que diferenciam um microcontrolador de um

microprocessador. O aspecto mais importante est relacionado a sua funcionalidade,sendo que um microprocessador possa ser usado , outros componentes devem ser adicionados, tais como memrias e barramentos para recebimento e envio de dados. Um microcontrolador projetado para ter a maioria dos componentes externos de um microprocessador em uma mesma cpsula. Em grandes partes das aplicaes o microcontrolador no necessita de perifricos facilitando a implementao diminuindo tempo de processamento e tambm os custos de projeto. Quanto diferena de um microcontrolador PIC usado neste trabalho, e outros microcontroladores so a quantidade de memria interna (programa e dados), velocidade de processamento, quantidade de pinos de entrada e sada (I/O), alimentao, perifricos, arquitetura e set de instrues.

Arquitetura genrica de microcontrolador


Todo microcontrolador possui em sua arquitetura as partes descritas a seguir:

Memria de programa- Nesta fica as instrues que um microcontrolador deve executar, ou seja, as linhas de programao foram digitadas em um PC.

Memria de dados - a parte do controlador que permite ao programador escrever ou ler um determinado dado sempre que necessrio.

ULA- Chamada de Unidade Lgica Aritmtica (Figura B), est parte do microcontrolador responsvel por todos os clculos e a lgica matemtica para tomada de deciso das tarefas a serem realizadas.

Figura B: Unidade lgica-aritmtica. I/Os- So os braos dos microcontroladores (Figura C). por eles que consegue inserir e receber dados dos chips, bem como controlar dispositivos mecnicos e eltricos . Em outras palavras so os caminhos que fazem a interligao do microcontrolador com o mundo externo.

Figura C: Exemplo simplificado de uma unidade de entrada /sada (I/O) que fornece comunicao com o mundo exterior.

Perifricos - So circuitos que do flexibilidade ao microcontrolador para realizar controle de dispositivos. Exemplos de perifricos: Portas de converso analgico/digital, timer para temporizao de operaes, watchdog timer para evitar travamentos reiniciando a CPU quando um dado se

perde, Usarts portas para comunicao serial, portas 12c para interligar mais microcontroladores e osciladores que ajudam no clock do microcontrolador.

CPU- Conhecida como Unidade Central de Processamento esta parte do microcontrolador responsvel por todo processamento de dados da unidade. ela que interpreta os comandos e ativa os dispositivos de entrada e sada.

Figura F: Esquema da unidade central de processamento - CPU

Dentre os mais famosos microcontroladores podemos citar a srie de PICs da MICROCHIP, 8051 controladores da motorola MC68H Atmel.

CISC, RISC
O microcontrolador PIC, que ser utilizado neste trabalho, apresenta uma arquitetura do tipo Havard. Esta arquitetura baseia-se em um conceito mais recente que a de VonNeumann, tendo vindo da necessidade de por o microcontrolador a trabalhar mais rpido.

Na arquitetura Havard existem dois barramentos, sendo um de dados e outro de instrues no caso dos microcontroladores PIC, o barramentos de dados sempre de 8 bits e

o de instrues podem ser de 12, 14, 16 bits dependendo do microcontrolador. Este tipo de arquitetura permite que enquanto uma instruo executada outra seja buscada na memria, o que torna o processo mais rpido. Alm disso, como o barramento de instrues maior que 8 bits, o OPCODE (Cdigo de Operao) da instruo j inclui o dado e o local onde ele vai operar (quando necessrio), significa que apenas uma posio de memria utilizada por instruo, economizando muita memria de programa. A arquitetura Havard tambm possui um repertrio com menos instrues que a de Von-Neumann, e essas so executadas apenas num nico ciclo de relgio. Os microcontroladores com arquitetura Havard, so tambm designados por microcontroladores RISC (Computador com microcontroladores com uma arquitetura Conjunto Reduzido de Instrues). Os Von-Neumann so designados por

microcontroladores CISC (Computador com um Conjunto Complexo de Instrues).

Figura E: Arquitetura Harvard versus von Neumann

Maneiras de se programar um microcontrolador PIC


Em primeiro lugar teremos que criar e/ou modificar os arquivo que contm o programa para o PIC, denominado programa fonte. O programa fonte ser compilado e ser criado o respectivo arquivo contendo os cdigos hexadecimais que representam a linguagem de mquina. Os arquivos hexadecimais esto aptos a serem utilizados diretamente pelo

programa que vai gravar o arquivo na memria flash do PIC, no permitindo qualquer alterao do seu contedo. Os arquivos fontes podem ter uma extenso *.ASM (ASSEMBLER) ou .C (LINGUAGEM C). Nestes casos permitido alterar o contedo do programa com o qual pretendemos programar o PIC podendo ser utilizado qualquer editor de texto. Depois de criar ou alterar o arquivo podemos usar diferentes softwares.Entre eles esto o MPASM do fabricante do PIC (Microchip), e o MPLAB que compilam o arquivo .ASM (ASSEMBLER) ou .C (Linguagem c) criando o respectivo hexadecimal. Uma janela ir mostrar a compilao sendo executada. Ao final deste processo, o sistema voltar ao ambiente de trabalho, e uma nova janela ir apresentar um relatrio sobre a compilao. Caso tenha sido bem sucedida, aparecera a mensagem Buld Complete Successfully no final do relatrio.

Existem trs grupos de avisos que so emitidos nos relatrios de compilao.

Warning: uma espcie de alerta do compilador, algo est estranho e deve ser checado. Normalmente um warning seguido de um erro, mas ele sozinho no causa erro na compilao.

Error: Quando aparece este aviso que realmente um erro aconteceu, impedindo que a compilao tenha sucesso. Pode ser um erro de sintaxe , de argumentos, etc.

Message: Trata-se apenas de um comunicado do compilador para o programador. Ele est avisando que alguma ao est sendo feita e que isso pode gerar algum problema se no for corretamente implementada. O aparecimento de mensagens normal em alguns programas, mas elas no devem ser despresadas. Para cada aviso do relatrio, ser mostrada o seu tipo, seguido do cdigo especifico para a situao, o nome do arquivo, a linha na qual ele ocorreu e sua descrio. Para facilitar basta clicar duas vezes sobre o aviso, que o MPLAB j altera para o cdigo fonte, na linha do erro. Ento s resolver o problema e compilar novamente.

Alguns tipos de microcontrolador PIC

Famlia Instrues PIC16C5xx 12bit PIC16Cxx 14bit PIC17Cxx 16bit PIC16Fxx 12,14,16bit PIC12Cxx PIC24Cxx

N de Instrues Nvel de Acumulador Memria 33 2 ROM 35 8 EEPROM 55 16 EEPROM 35 FLASH

Recursos do microcontrolador PIC.


A grande vantagem da famlia PIC que todos os modelos possuem um set de instrues bem parecido. Desta forma conhecendo e estudando a caracterstica de um PIC possvel a familiarizao com todos os microcontroladores, o que torna a migrao para outros modelos muito mais simples. Possui um total de 13 I/Os separados em dois grupos denominados portas: Porta A e Porta B PortaA. Possui 5 pinos que podem ser configurados como entrada ou sada e seus nomes so definidos como RA0, RA1, RA2, RA3, RA4. O pino referente ao RA4 pode ser configurado tambm para incrementar o contador TMR0. Porta B possui 8 pinos configurveis como entrada ou sada, sendo seus nomes RB0, RB1, RB2, RB3, RB4, RB5, RB6, RB7. O RB0 pode ser utilizado para gerar uma interrupo externa, assim como os pinos RB4 a RB7 podem gerar uma interrupo por mudana de estado.

Existe tambm o pino denominado MCLR que se refere ao mster clear externo. Sempre que este pino for colocado em nvel lgico baixo (GND), o programa ser resetado. Ao ser colocado em nvel alto (+5Vcc) ser retomado o programa do ponto inicial.

Registradores Especiais
Registrador status

IRP - Seletor de banco de memria usado para endereamento indireto. RP1 e RP0- Seletor de banco de memria utilizado para endereamento direto. TO - Indicao de Timer-down PD - Indicao de Power-down Z - Indicao de zero DC- Digit Carry/Borrow C- Carry/Borrow

Registrador Option

10

RBPU - Habilitao dos pull-ups internos para o PortB. INTEDG - Configurao da borda que gerar a interrupo externa no RB0 TOCS - Configurao do incremento para TMRO TOSE - Configurao da borda que incrementara o TMRO no pino RA4/TOCK1, quando TOCS=1 PSA - Configurao de aplicao do prescaler PS2, PS1, PS0- Configurao do valor do prescaler

Registrador Intcon

GIE - Habilitao geral das interrupes(chave geral) EEIE - Habilitao da interrupo de final de escrita na EEPROM (chave individual) IOIE - Habilitao de interrupo de estouro do TMRO INTE - Habilitao de interrupo externa no pino RBO RBIE - Habilitao de interrupo por mudana de estado nos pinos RB4 a RB7 TOIF - Identificao da interrupo de estouro TMRO INTF - Identificao da interrupo externa no pino RBO RBIF - Identificao de interrupo por mudana de estado nos pinos RB4 a RB7

11

Figura F: Esquema das interrupes no microcontrolador

Registrador PCL

Este armazena os 8 bits menos significativos do PC (program counter), indicando qual a prxima linha do programa ser executada no momento. A cada ciclo o Pc automaticamente alterado.

Registradores TrisA e TrisB

Esses registradores servem para configurar os pinos das portas como entrada ou sada. Quando colocado 1 em um bit do Tris, o pino relacionado configurado como entrada. Para configurar o pino como sada deve-se escrever 0 no pino relacionado. Para configurar o PortA, deve ser utilizado o TrisA, e para configurar o PortB deve ser utilizado o TrisB.

Registradores PortA e PortB

Quando um pino dessas portas configurado como entrada, ao lermos o seu bit relacionado, encontramos diretamente o seu nvel lgico aplicado a esse pino. Da mesma forma , quando configuramos para a sada.

12

Registrador TMR0

um contador de 8 bits que pode ser acessado, tanto para leitura quanto para escrita.A diferena entre ele e os demais registradores que seu incremento automtico e pode ser feito pelo clock da mquina ou por um sinal externo. Vale lembrar que o estouro desse contador pode gerar uma interrupo.

Figura G: Estrutura de um registrador TMRO

Registrador EEADR

Trata-se de um registrador em que ser especificado o endereo para escrita ou leitura da EEPROM interna do PIC.

13

Registrador EEDATA

Possui duas funes distintas, nas operaes de escrita da EEPROM, ele deve ser preenchido como dado a ser armazenado, j nas operaes de leitura, ele armazena o dado lido.

Registrador EECON1

Responsvel pelas operaes de escrita na EEPROM. EEIF - Identificao da interrupo de final de escrita na EEPROM WRERR - Identificao de erro durante a escrita na EEPROM WREN - Habilitao de escrita na EEPROM (bit de segurana) WR - Ciclo de escrita na EEPROM RD - Ciclo de leitura da EEPROM

Registrador EECON2 Utilizado para iniciar corretamente a escrita na EEPROM.

Registrador FSR um registrador em que pode ser escrito um outro endereo de memria que ser acessado indiretamente, como se fosse apenas um ponteiro.

Set de instrues que so divididas em quatro. Operaes com registradores Operaes com literais Operaes com bits Controles

14

Operaes com Registradores

Instru Argumento o s Descrio Soma W e f gardando o resultado em d. Logica "E" entre w e f guarda o resultado em d Limpa f Calcula o complemento de f guardando o resultado em d Decrementa f guardando o resultado em d

ADDWF f,d ANDWF f,d CLRF COMF DECF DECFS Z f,d f,d f,d f,d

Decrementa f guardando o resultado em d e pula a prxima linha se o resultado for zero.

INCF

f,d

Incrementa f guardando o resultado em d Incrementa f guardando o resultado em d e pula a prxima linha se o resultado for 1.

INCFSZ f,d

IORWF f,d MOVF f,d

Lgica "ou" entre w e f guardando o resultado em d Move f para d (copia f em d) move w para f ( copia w em f) Rotaciona f um bit para esquerda Rotaciona f um bit para direita Subtrai w de f (f-w) guardando o resultado em d Executa uma inverso entre as partes alta e baixa de

MOVWF f RLF RRF f,d f,d

SUBWF f,d

SWAPF f,d XORWF f,d

f,guardando em d Lgica "ou exclusivo" entre k e w guardando o resultado em d

15

Operaes com Literais

Instruo Argumentos Descrio AADLW K ANDLW K IORLW K Soma k com w ,guardando o resultado em w Lgica "E" entre k e w guardando o resultado em w Lgica "OU" entre k e w guardando o resultado em w Move k para w Subtrai w de k (k-W) guardando o resultado em w Lgica "OU EXCLUSIVO"entre k e w guardando o resultado XORLW K em w

MOVLW K SUBLW K

Operaes com bit


Instruo Argumentos Descrio BCF BSF f,b f,b Impe 0(zero) ao bit do registrador f Impe 1 (um) ao bit do registrador f Testa o bit b do registrador f e pula a prxioma linha se for 0 BTFSC f,b (zero) Testa o bit b do registrador f e pula a prxima linha se for 1 BTFSS f,b (um)

Controles
Instru Argumento o CLRW NOP s Descrio Limpa w Gasta um ciclo de mquina sem fazer nada

16

CALL CLRWD T GOTO

Executa a rotina R

Limpa o registrador WDT para no acontecer reset Desvia para o ponto R mudando o pc Retorna de uma interrupo Retorna de uma rotina com k em w

RETFIE RETLW K RETUR N -

Retorna de uma rotina sem afetar w Coloca o PIC em modo sleep ( dormindo ) para economia de

SLEEP

energia.

Os equipamentos ou perifricos que podem ser ligados ou controlados pelo PIC


perfeitamente adequado para uma variedade de aplicaes, como na indstria automobilstica, sensores remotos, fechaduras eltricas e dispositivas de segurana. Pode-se utilizar para cartes inteligentes, em dispositivos onde o armazenamento permanente de vrios parmetros seja necessrio (cdigos para transmissores, velocidade de um motor , freqncia de recepo, etc). Controle de perifricos: leds, botes, displays de segmento, displays de cristal liquido (LCD), resistncias, rels, sensores (presso, temperatura, etc) e muitos outros. Quanto necessidade de outros dispositivos para o controle ir depender muito da tenso de trabalho, pois caso esta seja superior a 5Vcc ser a necessrio o interfaceamento com dispositivos que se adequam tenso de sada do PIC e com eles acionando outros com um nvel de tenso maior, como rels, sensores, contatores para acionamento de motores entre outros.

17

CLP(Controlador Lgico Programvel) Histria


O primeiro CLP foi especificado em 1968 por uma diviso da GENERAL MOTORS CORPORATIOM. O objetivo inicial era eliminar o alto custo com sistemas a rels. As especificaes iniciais queriam um sistema de estado slido com flexibilidade do computador, capaz de suportar o ambiente industrial, ser facilmente programado e reprogramado, manuteno fcil e possvel de se expandir e utilizvel. Devido ao intuito inicial de substiturem os painis de rels no controle discreto ,foram chamados de Controladores Lgicos Programveis (CLP). Porem atualmente, os controladores so bem mais complexos e no executam somente lgica do tipo E e OU, motivo pelo qual passaram a ser chamados apenas de controladores programveis-CP. Os primeiros controladores tinham pouca capacidade de processamento e suas aplicaes se limitavam a maquinas e de pequenos processos que necessitavam de operaes repetitivas. A partir de 1970, com o advento da tecnologia dos microprocessadores, os controladores passaram a ter um grande capacidade de processamento e alta flexibilidade de programao e expanso. Entre outras caractersticas citamos a capacidade de operar com nmeros, realizar operaes aritmticas com ponto decimal flutuante, manusear dados e se comunicar com computadores. Desta forma, ao CLPs atuais podem atuar tanto em controle discreto, tais como, automao da manufatura onde as maquinas apresentam aes

18

automticas e discretizada no tempo, como em controle continuo, tais como, processos qumicos e siderrgicos, com caractersticas primordialmente analgicas. O sistema utilizado para programar o controlador era um dispositivo dedicado e acondicionado em uma maleta porttil, chamada de maleta de programao, de forma que podia ser levada para campo a fim de alterar dados e realizar pequenas modificaes no programa . O sistema de memria do controlador no permitia facilidades de programao por utilizar memrias do tipo EPROM. Inovaes no hardware e software entre 1975 e 1979 proporcionaram ao controlador maior flexibilidade e capacidade de processamento, isto significou um aumento da capacidade de memria e de entradas e sadas, permitiu I/Os remotas, controle analgico, controle de posicionamento, comunicaes etc. A expanso de memria permitiu um programa de aplicao maior e uma maior quantidade de dados de forma que os programas de controle no ficassem restritos lgica e sequenciamento, mas tambm realizassem aquisio e manipulao de dados.Com desenvolvimento do controle analgico, o controlador programvel preencheu o gap entre controle discreto e controle contnuo. Os custos foram reduzidos significativamente com capacidade de se comunicar com subsistemas de entradas/sadas remotas distante da unidade central de processamento e perto do equipamento a ser controlado. Os sinais passaram a ser multiplexados e transmitidos para o CLP utilizando um nico par de fios tranados para transmisso dos dados. Em 1979 foi desenvolvida a rede de comunicao de alta velocidade (Data Highways) permitindo um controle sincronizado entre vrios controladores e outros sistemas. Atualmente existem vrios tipos de controladores, desde pequena capacidade at os mais sofisticados realizando operaes que antes eram consideradas especificas para computadores. A evoluo do Hardware conduziu a melhoras significativas do controlador entre outros citamos:

Reduo do tempo de varredura; Interfaces de E/S microprocessadas. Ex: Modulo PID, ASCII e Modulo de posicionamento;

Interface Homem Mquina (IHM);

19

No software surgiram novas caractersticas como;

Linguagem em blocos funcionais e estruturao de programa; Linguagem de programao de alto nvel, baseadas em BASIC; Diagnsticos e deteco de falhas; Operaes matemticas em ponto flutuantes atravs decoprocessadores matemticos, etc;

Os CLPs so definidos Controladores Lgicos Programveis e so muito utilizados na industria atuais. Este dispositivo contm a parte de hardware e software que so utilizados para realizar as funes de controle, consistindo em 5 partes bsicas:

Processador Memria Sistema de entradas/sadas Fonte de alimentao Terminal de programao

A CPU (Unidade Central de Processamento) formada pelo processador, memria e fonte de alimentao. Operacionalmente, a CPU l os dados de entradas dos dispositivos de campo atravs da interface de entrada, ento executa ou realiza os controles do programa que tinham sido armazenados na memria. Os programas so normalmente realizados na linguagem LADDER, a linguagem que mais se aproxima de um esquema eltrico baseado em rels, e so colocados na memria da CPU em forma de operaes. Finalmente baseado no programa, o CLP escreve ou atualiza as sadas atuando nos dispositivos de campo. Este processo conhecido como ciclo de varredura e continua na mesma seqncia sem interrupes, as mudanas so realizadas apenas atravs de comandos do programa. A (Figura I) ilustra a estrutura genrica de um CLP. Com avano da tecnologia de CLP hoje temos diferentes linguagens de programao e capacidade de comunicao e muitas outras caractersticas. Hoje eles oferecem ciclo de varredura mais rpido, sistemas de entradas e sadas mais compactas, interfaces especiais que permitem aparelhos sejam conectados diretamente no CLP. Alm da capacidade de se

20

comunicar com outros sistemas de controle tambm podem realizar funes que indicam suas prprias falhas, da mquina ou do processo. Pequenos, os CLPs sem mdulos, (conhecidos como CLPs de I/Os fixos ) Geralmente tem menos memria e acomodam um nmero menor de entradas e sadas na configurao fixa. Os CLP modular, possuem bases ou racks que permitem a instalao de mltiplos mdulos de entradas e sadas, e so utilizados em aplicaes mais complexas.

Figura I: Estrutura genrica de um CLP

Exemplos de CLPs
Altus- Piloto 2k2000 AL 200 x / Ponto

ABB- t200 CS31 / COMLI protocolo /modbus/ Indax /Triax/Pentax/Bivectur 300

21

Allen- Bradley- SLC500/PLC5/DH 485/Contro/logix5/micrologix COU 1000-1500IMC S- CLASS

Bosch- CL 150/200/400/500

Siemens- S5 AG90135/s7 200,300,400 PPI/MPI Simovert Vc

Toshiba- EXT1/T2/T3/M20/M40

Onron- H/Host Link/CS1/CJ1 Sydrive 3G3EV

Moeller- PS4 200/PS306/PS416/PS416-CPU400

O CLP um sistema microprocessador, ou seja, constitui-se de CPU, microprocessador (ou microcontrolador), programa monitor, memria de programa, memria de dados, uma ou mais interfaces de entrada, uma ou mais interfaces de sada e circuitos auxiliares.

Unidade de Processamento
Tambm chamada de CPU e responsvel pelo funcionamento lgico de todos os circuitos.Nos CLPs modulares a CPU est em uma placa (ou mdulo) separada das demais, podendo apresentar combinaes de CPU e fonte de Alimentao.

22

Figura J: Funes tpicas de um frontal de CPU

Bateria
As baterias so usadas nos CLPs para manter o circuito do relgio ou tempo real, reter parmetros ou programas (em memrias RAM), mesmo em caso de corte de energia, guarda configuraes de equipamentos e etc. Normalmente so usadas baterias recarregveis do tipo Ni-Cd, essas incorporam os circuitos carregadores.

Estrutura da memria
A memria do controlador lgico programvel pode ser visualizada como um grande conjunto bidimensional de clulas unitrias de armazenamento, onde cada uma armazena uma nica informao na forma de 1 ou 0. , por isso, que o sistema de numerao binrio usado para representar a informao armazenada na memria, cada clula chamada de bit. Um bit ento a menor unidade de estrutura de memria e armazena informaes na forma de 1s e 0s. O bit considerado ON se a informao armazenada 1 e OFF se a informao armazenada zero. Portanto, um bit suficiente para armazenar o estado de chaves, botoeiras, fim de cursos, motores e outros dispositivos externos que podem ser conectados ao CLP. Freqentemente necessrio que o CLP manipule mais do que um bit. Por exemplo, muito mais eficiente manipular um grupo de bits quando se deseja transferir dados para/da memria. Um grupo de 8 bits manipulado simultaneamente chamado de byte e um grupo de 16 bits chamado de palavra. A Figura J abaixo ilustra os conceitos definidos acima.

23

Figura L: Estrutura da memria

Memria do Programa Monitor


O programa monitor o responsvel pelo funcionamento geral do CLP. Responsvel por todo gerenciamento das atividades. No pode ser alterado pelo usurio e fica armazenado em memrias do tipo PROM, EPROM ou EEPROM. Ele funciona de maneira similar ao sistema Operacional dos microcomputadores. o programa monitor que permite a transferncia de programas entre um mocrocomputador ou terminal de programao e o CLP, gerencia o estado da bateria do sistema, e controla os diversos opcionais etc.

Memria do Usurio
onde armazena o programa de aplicao desenvolvido pelo usurio, como ilustra a (Figura M) abaixo. J que uma das vantagens do uso dos CLPs a flexibilidade de programao. Inicialmente era constituda de memrias do tipo EPROM, sendo hoje utilizadas memrias do tipo RAM (cujo programa mantido pelo uso da bateria), EEPROM e FLAS H - EPROM, sendo tambm comum o uso de cartuchos de memria, que permitem a troca do programa com a troca do cartucho de memria. A capacidade desta memria varia bastante de acordo com a marca/modelo do CLP, sendo normalmente dimensionado em passos de programa.

24

Figura M: Programa de aplicao

Memrias de Dados
a regio da memria destinada a armazenar os dados do programa do usurio. Estes dados so valores de temporizadores, contadores, cdigos de erro, senha de acesso, etc. So normalmente partes da memria RAM do CLP. So valores armazenados que sero consultados ou alterados durante a execuo do programa usurio. Em alguns CLPs, utilizase a bateria para reter os valores desta memria no caso de uma queda de energia.

Memria Imagem das entradas/sadas


Essa regio de memria funciona como uma espcie de tabela onde a CPU ir obter informaes das entradas ou sadas para tomar as decises durante o processamento do programa usurio.

25

Tabela Imagem das entradas TIE


A tabela imagem das entradas armazena o estado das entradas digitais conectadas ao CLP. Isto significa que para cada entrada digital tem um bit correspondente na tabela imagem das entradas. Se a entrada estiver energizada (ON), o bit correspondente na tabela imagem 1. Se a entrada estiver desenergizada (OFF), o bit correspondente na tabela imagem 0. Veja a Figura N. Durante o incio do ciclo de varredura a tabela imagem das entradas atualizada para refletir o estado corrente do dispositivo.

Figura N: Tabela imagem das entradas

26

Tabela Imagem das sadas TIS


A tabela imagem das sadas armazena o estado das sadas externas conectadas ao CLP. Durante a execuo do programa do usurio, quando o processador interpreta e executa a lgica programada, esta tabela imagem atualizada. De forma similar, para cada ponto de sada externo ao CLP deve existir um ponto correspondente nesta tabela imagem (Figura N).

Figura O: Tabela imagem das sadas

Bobinas internas

27

Bobinas internas, tambm chamadas de bobinas lgicas ou sadas internas, so utilizadas somente para realizar intertravamentos e armazenamentos de estados lgicos internos no programa do usurio. Diferentemente das sadas externas, as bobinas internas no possuem um ponto fsico correspondente no sistema de sadas do CLP.

Circuitos Auxiliares
So circuitos responsveis para atuar em caso de falha do CLP. Alguns deles so:

Power on Reset: Quando se energiza um equipamento eletrnico digital, no possvel prever o estado lgico dos circuitos internos. Para que no ocorra um acionamento indevido de uma sada, que pode causar um acidente, existe um circuito encarregado de desligar as sadas no instante em que se energiza o equipamento. Assim que o microprocessador assume o controle do equipamento esse circuito desabilitado.

Power Down: Quando um equipamento subitamente desenergizado. O contedo da memria pode ser perdido. Existe um circuito responsvel para monitorar a tenso de alimentao, e em caso do valor desta cair abaixo de um limite pr-determinado, o circuito acionado, interrompendo o processamento. Ao mesmo tempo, o microprocessador avisado e envia uma ordem para a memria em tempo hbil.

Watch-Dog-Timer: Para garantir que o programa no entre em loop no caso de falha do microprocessador, o que seria um desastre, existe um circuito denominado co de guarda que deve ser acionado em intervalos de tempo pr-determinados. Caso no seja acionado, ele assume o controle do circuito sinalizando uma falha geral.

Mdulos ou interfaces de entrada: So circuitos utilizados para adequar eletricamente os sinais de entrada para que possa ser processado pela CPU (ou microprocessador) do CLP. Temos dois tipos bsicos de entrada: os digitais e os analgicos.

28

Entradas digitais: So aquelas que possui apenas dois estado possveis, ligado ou desligado, e alguns exemplos de dispositivos que podem ser ligados a elas so: botoeiras, chaves, micros fim de curso, sensores de proximidade, indutivos ou capacitivos, chaves comutadoras, pressostatos, controle de nvel (bia), etc. As entradas digitais podem ser construdas para operarem em corrente continua ou (24Vcc) ou alternada (110/220Vca). Em corrente continua elas podem ser do tipo N (NPN) ou do tipo P(PNP). No tipo N, necessrio fornecer o potencial negativo (-) da fonte de alimentao ao borne de entrada para que a mesma seja atuada, como mostra a (Figura P). No tipo P necessrio fornecer um potencial positivo (+) no borne de entrada como mostra a (Figura Q).

Figura P: Entrada lgica negativa (tipo N)

29

Figura Q: Entrada lgica positiva (tipo P)

Entradas analgicas: Permitem que o CLP possa manipular grandezas analgicas, enviadas normalmente por sensores eletrnicos. As grandezas analgicas eltricas so normalmente tenso e corrente. No caso de tenso as faixas de utilizao so: 0 10Vcc, 0 5Vcc, 1 5Vcc, -10 10Vcc, no caso de entradas que permitem positivas e negativas so chamadas de entradas diferenciais. E no caso de corrente so utilizados: 0 20mA, 4 20mA. Os principais dispositivos utilizados como entrada so sensores de presso manomtrica, sensores e presso mecnica, encoder, transdutores (temperatura, presso, vazo), transmissores de umidade relativa entre, etc. A respeito das entradas analgicas e sua resoluo. Esta normalmente medida em bits. Uma entrada analgica com maior nmero de bits permite uma melhor representao da grandeza analgica, por exemplo: uma entrada analgica de 0 10Vcc com uma resoluo de 8 bits permite uma sensibilidade de 39,2mV, enquanto que a mesma faixa de entrada em 12 bits permite uma sensibilidade de 2,4 mV e uma de 16 bits permite uma sensibilidade de 0,2 mV.

30

Mdulos especiais de entrada


Existem mdulos especiais de entrada com funes bastante especializadas. Exemplos: Mdulos contadores de fase nica. Mdulos contadores de dupla fase. Mdulos para encoder incremental. Mdulos para encoder absoluto. Mdulos para termopares do tipo (J, K, L, S, etc). Mdulos para termoresistncia (Pt100, Ni100, Cu-25, etc). Mdulos para sensores de ponte balanceada do tipo Strain-Gauges. Mdulos para leitura de grandezas eltricas (Kw, Kwh, Cs Fi, I, V, etc).

Mdulos ou interface de sadas.


Estes se adquam eletricamente aos sinais vindos do microprocessador para que se possa atuar nos circuitos controlados. Existem dois tipos bsicos de interfaces de sada: as digitais e as analgicas.

Sadas digitais: As sadas digitais admitem apenas dois estados ligado ou desligado. Podemos com elas controlar dispositivos do tipo: Rels, Contatores, Rels de estado-slido, bobinas solenides, vlvulas, Inversores de freqncia etc. As sadas digitais podem ser constitudas de trs formas bsicas: sada digital Rel, Transistor e Triac.

Sadas Analgicas: As sadas analgicas convertem valores numricos em sinais de sada de tenso ou correntes. No caso de tenso normalmente 0 10Vcc ou 0 5Vcc, e no caso de corrente de 0 20 mA ou 4 20mA.Estes dispositivos so utilizados para controlar dispositivos atuadores do tipo:

Vlvulas proporcionais 31

Motores CC Servo-motores CC Inversores de Freqncia Posicionadores Rotativos Etc.

Mdulos de Sadas Especiais Mdulos P.W.M para controle de motores CC Mdulos para controle de servomotores Mdulos para controle de motores de passo (step motor) Mdulos para I.H.M (Interface Homem maquina) Etc.

Capacidade de um C.L.P.
Micro-CLPs: so de pouca capacidade de E/S (Maximo 16 entrada e 16 sadas), normalmente s digitais composto de um s modulo (ou placa), baixo custo e reduzida capacidade de memria (Maximo 512 passos).

CLPs de Mdio Porte: Com uma capacidade de entrada e sada de at 256 pontos, digitais e analgicas, podendo ser formado por um modulo bsico, que pode ser expandido. Permitem at 2048 passos de memria, que podem ser interna ou externa(mdulos em cassetes de estado slido, soquetes de memria, etc) ou podem ser totalmente modulares.

CLPs de Grande Porte: Os de grande porte se caracterizam por uma constituio modular, constituda por uma fonte de alimentao, CPU principal, CPUs auxiliares, CPUs dedicadas, mdulos de E/S digitais e analgicas, mdulos de E/S especializados, mdulos de redes locais ou remotas, etc, que so agrupadas de acordo com a necessidadee complexidade da automao. Permitem a utilizao de at 4096 pontos de E/S. So montados em Bastidor (ou Rack) que permite um cabeamento estruturado.

32

Mdulo PID
Numa planta industrial, o mdulo PID permite combinar o controle discreto com o controle analgico. Em algumas verses de controladores no existe um mdulo especfico para o controle PID (Proporcional-Integral-Derivativo) sendo que o controle realizado pelo prprio processador, atravs de instrues no programa de usurio. Quando se trata de um mdulo PID, este conectado no rack do controlador como se fosse um carto comum. A finalidade em se empregar este mdulo em uma planta industrial controlar uma determinada grandeza fsica (temperatura, vazo, etc.) continuamente de modo que essa grandeza assuma um valor preestabelecido (set-point). O mdulo dotado de um microprocessador, memrias, conversores A/D e D/A e todo o circuito necessrio para interface com os dispositivos de campo utilizados para controle. Basicamente o controle PID um controle em malha fechada que compara o valor da varivel de medida (VM) com o valor desejado ou valor de referncia, tambm chamado de ponto de ajuste (PA). O erro resultante (e = PA - VM) ento processado seguindo uma combinao das parcelas proporcional, integral e derivativa. O resultado um valor, varivel de atuao (VA), a ser aplicado no elemento atuador. O controle atua de forma a minimizar o erro, isto , a varivel de processo tende para o valor de referncia. O mdulo executa o controle independente do controlador. O controlador programvel interage com o mdulo atravs de instrues de transferncias de blocos de palavras. O controlador envia ao mdulo os parmetros de ajuste de controle, tais como, ganhos, valores de set-point, valores de alarme de alta e baixa e limites mximos de sada. O controlador pode obter do mdulo os dados referentes ao processo, tais como, valores de entradas e sadas analgicas, limites de alarme e diagnsticos do prprio mdulo.

Mdulos de entradas/sadas remotos


Em sistemas de maior porte usual a instalao de mdulos de entradas/sadas distante do controlador programvel. Um subsistema de entradas/sadas remoto composto por fontes de alimentao, mdulos I/O e adaptadores de comunicao. Existem duas formas de conexo dos racks remotos ao processador: configurao em

33

barramento ou em estrela. A Figura R ilustra a configurao em barramento. distncia que o rack remoto pode ser colocado em relao ao processador depende do fabricante e da configurao.

Figura R: Sistema de E/S remoto

As entradas/sadas remotas oferecem vantagens em termos de fiao de campo e custos de manuteno em grandes sistemas. O controlador pode ficar instalado em uma sala de controle ou em um ponto estratgico da planta conectado aos racks remotos atravs de um link de comunicao (cabo coaxial ou par de fios tranados). A distribuio de entradas/sadas ainda permite a instalao e o startup de uma forma modular e independente, facilitando o entendimento e a soluo dos problemas iniciais bem como as manutenes futuras.

LINGUAGEM DE PROGRAMAO BSICA


Existem 5 tipos bsicos de linguagem que normalmente so encontradas em controladores programveis e so padronizadas pela norma IEC 61131-3:

Linguagens de rels ou diagrama de contatos; Linguagens por blocos funcionais; 34

SFC - Sequential Function Chart (diagramas de funes seqenciais); Lista de instrues; Texto estruturado. Dos 5 tipos apresentados acima, a mais difundida e encontrada em quase todos os controladores a linguagem de rels. Os blocos funcionais tambm podem ser encontrados com facilidade. Sendo esta ltima uma extenso da primeira no sentido de incluir instrues mais poderosas e tornar mais claro sua programao, esta tem sido a linguagem preferida dos fabricantes. Atualmente o SFC vem recebendo vrias implementaes nos melhores CLPs, afirmando-se como uma linguagem ideal para processos seqenciais. A linguagem de rels uma representao grfica da linguagem de programao do controlador. Esta linguagem utilizada para implementar os programas de controle de mquinas e processos. Conforme o prprio nome sugere as instrues bsicas se originaram no diagrama eletromecnico, cujo elemento principal de controle o rel, especificamente sua bobina e seus contatos. Por ser a primeira linguagem utilizada pelos fabricantes muito difundida e recebeu vrios nomes desde sua criao, entre eles citamos: diagrama de escada ("ladder"), diagrama de contatos e linguagem de contatos. Na programao de contatos de rels, dentro do formato de programao, qualquer arranjo de contatos normalmente aberto ou fechado pode ser utilizado. Pode-se fazer tantas referncias quanto se desejar a uma determinada bobina atravs de uma instruo NA ou NF. As conexes ou espaos horizontais e verticais podem ser programadas. Estas caractersticas dependem exclusivamente do ambiente utilizado para programar o controlador, isto , do software de programao que normalmente fornecido pelo fabricante do controlador. Observa-se, porm que isto significa ocupao de rea de memria. Portanto recomenda-se manter um estilo de programao que procure otimizar esta rea. Procure programar instrues prximas, evitando conexes desnecessrias. Bobinas e contatos so smbolos utilizados nesta linguagem. Os smbolos de contatos programados em uma linha representam as condies que sero avaliadas de acordo com a lgica, e como resultado determinaro o controle de sada que ser representado por um smbolo de bobina. Recomenda-se que as bobinas de sada (externa ou interna) sejam programadas apenas uma vez no programa, com exceo das especiais, porm podem ser feitas tantas referncias quantas forem necessrias a determinada bobina.

35

A forma de execuo da lgica programada muito dependente de como o fabricante implementou as instrues. Alguns fabricantes definem uma malha ou tambm chamada de lgica de programao. Nesta lgica podem ser programadas as instrues da linguagem e so definidas linhas de programao, onde o usurio poder programar suas instrues bsicas ou blocos, porm existe um nmero limite para o nmero de linhas que podem ser programadas. Normalmente este nmero de linhas define o nmero de bobinas que podem ser utilizadas e que podem funcionar em um formato quase paralelo.

Exemplo de programao: Partida de um motor


A Figura S ilustra o esquema de controle de partida de um motor utilizando rels eletromecnicos. Em seguida apresentaremos a soluo deste mesmo ciucuto feito com um CLP, o esquema de ligao e o programa do controlador programvel para realizar a mesma funo.

Figura S: Partida de um com partida convencional.

Soluo:
Quando se considera o controlador programvel como elemento de controle em uma aplicao deve-se inicialmente identificar quais sero as sadas e entradas para o controlador.

36

As chaves e botoeiras externas devero ser adequadamente conectadas ao mdulo do CLP, bem como os elementos de atuao e sinalizao. No caso, teremos como entrada para o controlador as botoeiras Liga, Desliga, Permisso e o Contato de Sobrecarga. Como sada teremos as lmpadas de sinalizao L1 e L2 e o contator do motor. Neste caso uma sada do CLP utilizada para energizar a bobina do contator de potncia. A Figura T ilustra a soluo atravs de um CLP.

37

Figura T: Soluo atravs de um CLP.

38

Vous aimerez peut-être aussi