Sie sind auf Seite 1von 97

DANIEL AKIRA NUMAJIRI

DESENVOLVIMENTO DE UM SISTEMA DE CONTROLE DE


DISPOSITIVOS VIA ACESSO REMOTO





Projeto de um prottipo apresentado ao
Departamento de Cincia da Computao da
Universidade Federal de Lavras como parte das
exigncias do Curso de Cincia da Computao,
para obteno do ttulo de bacharel


Orientador
Prof. Rmulo Maia Alves



Lavras
Minas Gerais - Brasil
2003






DANIEL AKIRA NUMAJIRI



DESENVOLVIMENTO DE UM SISTEMA DE CONTROLE DE
DISPOSITIVOS VIA ACESSO REMOTO



Projeto de um prottipo apresentado ao
Departamento de Cincia da Computao da
Universidade Federal de Lavras como parte das
exigncias do Curso de Cincia da Computao,
para obteno do ttulo de bacharel


Aprovada em 11 de Dezembro de 2003.



______________________________
Prof. Anderson Bernardo do Santos


______________________________
Prof. Luciano Mendes do Santos



_____________________________
Prof. Rmulo Maia Alves
(Orientador)

Lavras
Minas Gerais Brasil
i
Agradecimentos

Agradeo aos meus pais, pela base pessoal ensinada e todo o incentivo
que eles me proporcionaram, a minha irm pela pacincia e companheirismo e
aos meus amigos pelo apoio, dicas e risadas trocadas nos momentos de
dificuldade.
Aos professores do Curso de Bacharelado em Cincias da Computao
pelos ensinamentos no decorrer do curso. E ao Luciano e Fabrcio, muito
obrigado.
ii
Resumo
Desenvolvimento de um Sistema de Controle de Dispositivos via acesso
remoto

Atualmente, com os avanos da tecnologia, coisas que nem imaginvamos h alguns
anos atrs se tornam possveis e viveis de implementar, tal como o fato de podermos
controlar dispositivos na nossa casa em qualquer parte do mundo atravs da internet.
Essa monografia tem como objetivo mostrar o desenvolvimento de um sistema de
monitoramento e controle de uma lmpada e o estudo das formas de conexo e
transmisso de dados na rede, os dispositivos de controle e comando gerados por
controladores e atuadores. E a partir disso estabelecer um modelo base para o
desenvolvimento futuro de outros sistemas de controle de dispositivos, como o
monitoramento de estufas, granjas, controle de irrigao e dispositivos eletrnicos.


Abstract
Development of a System of Control of Devices saw access remote
Currently, with the advances of the technology, things that nor we imagined has some
years behind become possible and viable to implement, such as the fact to be able to
control devices in our house in any part of the world through the InterNet. This
monograph has as objective to show to the development of a monitoramento system and
control of a light bulb and the study of the connection forms and transmission of data in
the net, the devices of control and command generated by controllers and actuators. E to
leave of this to establish a model base for the future development of other systems of
control of devices, as the monitoramento of greenhouses, farms, control of irrigation and
electronic devices.













iii
SUMRIO

1 Introduo 1
2 Fundamentao Terica 4
2.1 A Internet - Um pouco da histria............................................................4
2.1.1 Organizao....................................................................................5
2.1.2 Os Recursos da Internet..................................................................6
2.2 Ethernet e IEEE 802.3..............................................................................7
2.2.1 rvore da famlia Ethernet............................................................9
2.3 Introduo ao TCP/IP.............................................................................10
2.3.1 Arquitetura TCP/IP......................................................................11
2.3.2 O Protocolo IP..............................................................................13
2.3.3 O Protocolo TCP..........................................................................14
2.4 Sistema de Controles..............................................................................16
2.5 Interfaces de Comunicao.....................................................................17
2.5.1 Interface Serial.............................................................................18
2.5.2 Porta Serial...................................................................................19
2.5.3 Comunicaes Sncronas e Assncronas......................................21
2.5.4 Bits de Paridade............................................................................23
2.5.5 Polaridade de Sinal.......................................................................23
2.5.6 Velocidade de Envio dos Dados...................................................24
2.6 Micro-controladores Famlia PIC........................................................25
2.6.1 Arquitetura de Microcontroladores..............................................26
2.6.1.1 Memria de Programao.......................................................26
2.6.1.2 Memria de Dados..................................................................27
2.6.1.3 Unidade Lgica Aritmtica.....................................................27
2.6.1.4 Ciclo de Mquina....................................................................28
2.6.1.5 Pipeline....................................................................................28
2.6.1.6 Timer.......................................................................................30
2.6.1.7 Pre-scale..................................................................................30
2.6.1.8 Watchdog................................................................................30
2.6.1.9 Interrupo..............................................................................31
2.6.2 Microcontrolador PIC..................................................................33
2.6.3 PIC16F628...................................................................................33
2.7 Rels.......................................................................................................36
2.7.1 Os Rels na Prtica.......................................................................40
2.7.2 Tipos de Rels..............................................................................42
2.7.2.1 Contatos NA ou Normalmente Abertos..................................42
2.7.2.2 Contatos NF ou Normalmente Fechados................................43
iv
2.7.2.3 Contatos NA e NF ou Reversveis..........................................43
2.7.2.4 Rels abertos, fechados e selados...........................................45
2.7.3 Ligao dos rels ao circuito externo...........................................47
2.7.4 Caractersticas eltricas dos Rels................................................47
2.7.4.1 Caractersticas da bobina........................................................48
2.7.4.2 Caractersticas dos contatos....................................................50
2.7.5 Como usar um Rel......................................................................52
2.7.5.1 Proteo do circuito de acionamento......................................53
2.7.5.2 Proteo dos Contatos.............................................................55
3 Metodologia 57
3.1 Tipo de Pesquisa.....................................................................................57
3.2 Material Utilizado..................................................................................59
3.3 Planejamento..........................................................................................60
3.3.1 A escolha do dispositivo a ser utilizado.......................................60
3.3.2 O estudo do funcionamento do dispositivo..................................60
3.3.3 A criao da interface para a comunicao entre o dispositivo e o
computador...................................................................................60
3.3.4 O desenvolvimento de softwares de controle da interface...........61
3.3.5 O desenvolvimento de um servidor de comunicao remota.......61
3.3.6 A modelagem da arquitetura final do sistema..............................62
3.3.7 O desenvolvimento de sistemas web............................................62
3.3.8 O desenvolvimento do prottipo..................................................63
3.3.9 O desenvolvimento de aplicaes distribudas sobre a arquitetura
criada............................................................................................63
3.4 Desenvolvimento do Dispositivo de Controle.......................................64
3.4.1 Descrio do Sistema...................................................................64
3.4.2 Conexes via Cabo Serial e Paralelo............................................67
3.4.3 Servidor Internet...........................................................................69
3.4.4 Aplicao Desenvolvida...............................................................70
3.4.5 Software Aplicativo......................................................................73
3.4.6 Funcionamento do Hardware.......................................................77
4 Consideraes Finais 81
4.1 Dificuldades Encontradas.......................................................................81
4.2 Concluso...............................................................................................83
4.3 Trabalhos Futuros...................................................................................83





v
LISTA DE FIGURAS

Figura 1 - Camadas da arquitetura TCP/IP .........................................................12
Figura 2 - Formato do datagrama IPv4 ...............................................................14
Figura 3 - Formato do segmento TCP ................................................................16
Figura 4 - Interface serial entre um computador e um dispositivo externo.........21
Figura 5 - Ciclo de Mquiina...............................................................................28
Figura 6 - Atuao do Pipeline............................................................................29
Figura 7 - Pinagem do PIC16F628......................................................................35
Figura 8 - Estrutura eltrica do Rel....................................................................36
Figura 9 - Abertura e fechamento dos contatos...................................................37
Figura 10 - Rel de contato simples....................................................................38
Figura 11 - Ativar uma carga de alta potncia.....................................................39
Figura 12 - A bobina de um Rel.........................................................................41
Figura 13 - Rels tipo NA....................................................................................42
Figura 14 - Rels tipo NF....................................................................................43
Figura 15 - Rel Reversvel.................................................................................44
Figura 16 - Comutao de duas cargas atravs do rel reversvel.......................44
Figura 17 - Rels abertos, fechados e selados.....................................................46
Figura 18 - Rels de 4 terminais..........................................................................47
Figura 19 - Conduo de corrente na Bobina......................................................51
Figura 20 - Proteo do Rel...............................................................................53
Figura 21 - Uso de um diodo para proteger o rel...............................................54
Figura 22 - Uso de um varistor para proteger o rel............................................55
Figura 23 - Uso do diodo em paralelo para evitar altas tenses..........................56
Figura 24 - Arquitetura final do sistema..............................................................62
vi
Figura 25 - Maquete do laboratrio.....................................................................64
Figura 26 - Sensor reed-switch............................................................................64
Figura 27 - Diagrama do funcionamento do dispositivo de controle..................65
Figura 28 - Fluxograma do programa do microcontrolador................................66
Figura 29 - Fluxo das requisies e atuaes......................................................67
Figura 30 - Cdigo de Leitura.............................................................................71
Figura 31 - Cdigo de Escrita..............................................................................72
Figura 32 - Parte do cdigo main........................................................................72
Figura 33 - Cdigo main()...................................................................................73
Figura 34 - Trecho do cdigo TPageProducer.....................................................74
Figura 35 - Parte do cdigo que manipula as tags colocados dentro do html.....75
Figura 36 - Cdigo que monta as aes via serial...............................................76
Figura 37 - Trecho de cdigo para ter acesso a porta serial................................77
Figura 38 - Esquema eltrico do prottipo..........................................................78
Figura 39 - Prottipo............................................................................................79
Figura 40 - Regulador de Tenso........................................................................80









vii
LISTA DE TABELAS

Tabela 1 - Tecnologias do padro Ethernet.........................................................10
Tabela 2 - COM1/COM2 RS-232 Porta Serial ( DB-9/DB-25 ).........................20
1
Captulo 1


Introduo


Com o crescimento das novas tecnologias de comunicao e o aumento
progressivo do nmero de eletro-eletrnicos utilizando essas tecnologias, torna-
se interessante o incentivo pesquisas nesta direo.
Um dos exemplos mais conhecidos do momento a utilizao de
aparelhos celulares permitindo o acesso Internet. Juntamente com outros
dispositivos portteis como Palms, Cassiopeias, etc, estes equipamentos visam
permitir que usurios acessem servios j existentes e, em sua maioria, a um
custo maior e com uma menor qualidade.
Outros exemplos de sistemas que atuam nesta rea, porm com outro
enfoque, so os desenvolvedores de tecnologias para a interligao e
comunicao entre eletrodomsticos, nas quais equipamentos como geladeiras
so capazes de fazer o controle de qualidade e de estoque dos mantimentos nelas
armazenados. Sistemas como este, acabam por aproveitar os recursos que j
esto disponveis como, por exemplo, compras on-line.
Outro fator importante que podemos destacar a automao predial que
j est presente em muitos lugares. Na atualidade no s os grandes edifcios
corporativos de escritrio e comrcio requerem a introduo de sistemas de
automao e controle em suas instalaes, o objetivo de gerenciar a utilizao de
energia, o conforto dos ocupantes dentro dos ambientes, o acesso de pessoas, a
comunicao, os sistemas prediais e de informtica e a preveno de acidentes e
falhas de equipamentos, tambm so requeridos pelas residncias. A
implantao de um simples controle de acesso e deteco de intruso ou o
2
monitoramento de acesso e o controle remoto de eletrodomsticos esto cada
vez mais presentes no sistema de controle e gerenciamento das residncias.
Partindo deste ponto de vista, as redes de computadores, que at algum
tempo atrs, se ligavam apenas com outras redes de computadores (inclusive a
Internet), agora esto conhecendo novos vizinhos e parceiros. Cada vez mais
novas aplicaes so idealizadas e projetos so colocados em desenvolvimento
no sentido de atingir tais idias, de modo que podemos prever desde agora como
sero algumas das novidades futuras.
procurando permanecer atualizado em relao a estas novas
tecnologias, e buscando possuir o conhecimento e a experincia de trabalhar
com elas, que foi proposto o desenvolvimento deste projeto.
O objetivo deste trabalho desenvolver um sistema de controle de
dispositivos simples acessvel pela internet ou pela rede local a fim de torn-lo
um modelo base para que, sempre que possvel, abstrair as idias bsicas do
processo possibilitando sua utilizao em quaisquer outros tipos de sistemas,
com pequenas adaptaes. O objetivo secundrio ser tentar adaptar o projeto
no sistema operacional Linux, pelo fato de ser um ambiente de cdigo livre e
possuir programas semelhantes ao do sistema operacional Windows, porm com
custo zero.
A motivao principal para o desenvolvimento deste trabalho foi suprir a
falta de um projeto que envolvesse os conhecimentos adquiridos ao longo do
curso de graduao em Cincia da Computao da Universidade Federal de
Lavras. Tomando por base a grade curricular do curso, procurou-se por um
projeto que englobasse os conhecimentos de hardware e software que so
ministrados.
Partindo-se disto, o tema escolhido inicialmente foi o desenvolvimento
de uma interface para o computador de uma rede local. Sendo assim, esperamos
3
que o objetivo de se desenvolver um projeto envolvendo os conhecimentos de
hardware possam ser alcanados.
Para alcanar os objetivos de software, o tema foi expandido para a
criao de uma arquitetura de rede que desse suporte para as aplicaes
distribudas poderem acessar a interface de controle.
Desta forma, para atender ambos os objetivos (os de software e de
hardware), o trabalho dever ser o desenvolvimento de uma arquitetura para
possibilitar aplicaes controlarem dispositivos eletrnicos no convencionais
conectados a computadores. Alm disso, estaria em estudo tambm, todo o
processo de implantao e configurao de um servidor, aquisio de
conhecimento sobre a linguagem de script CGI (Common Gateway Interface),
linguagem de programao C e pginas web, para que o processo fosse
executado pela internet utilizando um browser qualquer.
Como objetivos secundrios deste trabalho destacamos o ganho de
experincia no desenvolvimento e gerenciamento de projetos, o aprendizado e
utilizao de novas tecnologias e a possibilidade de desenvolvimento de
possveis produtos comerciais futuramente.
No captulo 1, ser apresentada uma breve introduo sobre o tema
proposto, os objetivos e a organizao do trabalho.
No captulo 2, sero mostrados os fundamentos e os conceitos sobre a
Internet, o protocolo Transmission Control Protocol (TCP) e o Internet Protocol
(IP), a arquitetura de rede Ethernet, sistemas de controles, interfaces de
comunicao, microcontroladores e rels para uma melhor compreenso da rea
e que serve de base para o desenvolvimento do trabalho.
No captulo 3, ser mostrado o tipo de metodologia que o projeto
seguir, informando o material utilizado e os passos de desenvolvimento do
prottipo.
4
No captulo 4 sero mostradas as dificuldades encontradas durante o
desenvolvimento do prottipo, uma breve concluso e trabalhos futuros.


Captulo 2

Fundamentao Terica


Neste captulo so apresentados os fundamentos e os conceitos das
tecnologias que servem de base para o desenvolvimento do trabalho. Estas
tecnologias so importantes para que sejam alcanados os objetivos do trabalho
e o conseqente entendimento destes objetivos.

2.1 A Internet Um pouco da histria

Grande parte da Internet resultou da "evoluo" de um sistema criado
em 1969. Nesta poca, uma diviso do Departamento de Defesa dos EUA - a
Agncia de Projetos de Pesquisa Avanada em Defesa (DARPA) concluiu que
o pas precisava criar um modo fcil de trocar informaes militares entre
cientistas e pesquisadores localizados em diferentes regies geogrficas.
O objetivo, segundo [Stang (1994)], era desenvolver um conjunto de
protocolos de comunicao, os quais permitiriam computadores ligados em rede
comunicarem-se de forma transparente entre vrias redes diferentes. O sistema
de protocolos que foi criado chamou-se TCP/IP.
Uma rede simples de quatro computadores, conhecida como
DARPANET, foi desenvolvida. Algum tempo depois foi rebatizada de
5
ARPANET e, em 1972, cresceu a ponto de incluir 37 computadores e, ao mesmo
tempo, o modo de utilizao da rede comeou a mudar. Alm de ser empregado
para trocar informaes importantes, sobre atividades militares, os usurios da
ARPANET, comearam a enviar mensagens eletrnicas por meio de caixas de
correio pessoais.
Em 1990 a Internet comercial comeou a funcionar. Desde ento, o
crescimento da internet tem sido simplesmente um fenmeno. O nmero de
usurios saltou de 5.000 pessoas para cerca de 30 milhes em apenas dez anos,
resultando em crescimento vertiginoso de 6.000%.

2.1.1 Organizao

A estrutura da Internet formada basicamente por trs figuras
principais: os backbones, os provedores de acesso e os usurios finais.
Backbones so grandes redes de computadores de alta velocidade,
projetadas para a transmisso de um grande volume de dados. Pode-se dizer
que os backbones so a espinha dorsal das redes de computadores. A Internet
formada por vrios backbones espalhados pelo mundo, sendo que seu backbone
principal encontra-se nos EUA.
Um provedor de acesso conecta-se diretamente aos backbones da
Internet, formando conexes dedicadas e permanentes. O objetivo do provedor
de acesso fornecer aos usurios finais acesso Internet e a outros servios
correlatos.
Os usurios finais podem ser particulares ou empresas que desejam obter
acesso Internet. Os usurios finais conectam-se aos provedores de acesso
atravs de uma rede local ou da rede telefnica, via modem, e podem utilizar
todos os recursos disponveis na Internet.
6
A estrutura dos backbones, provedores de acesso ou usurios finais na
Internet formada por hosts, que so computadores que esto conectados a uma
nica rede fsica e tm o objetivo de executar programas aplicativos, e
roteadores, que so computadores conectados a duas ou mais redes fsicas e so
responsveis pela transmisso entre as redes.

2.1.2 Os Recursos da Internet

Mesmo possuindo recursos ilimitados, a cada dia surgem novas
possibilidades e tecnologias de utilizao da rede. Cita-se os principais:
a) correio eletrnico: baseado no protocolo de aplicao Simple Mail
Transfer Protocol (SMTP), um recurso que permite a troca de
mensagens entre usurios. A troca das mensagens baseada em
endereos no formato usurio@domnio, onde usurio corresponde a
um nico usurio ou a um conjunto de usurios, e domnio
corresponde ao nome do domnio de uma rede onde est localizada a
caixa postal do usurio;
b) telnet (Telecomunications Network): trata-se de um emulador de
sistemas que, atravs de um programa cliente telnet, permite ao
usurio conectar-se a outro host e, dependendo das suas permisses,
executar aplicativos deste host, como se estivesse trabalhando nele
localmente;
c) network news: baseado no protocolo de aplicao Network News
Transfer Protoco (NNTP), fornece artigos referentes a vrios assuntos,
que so agrupadas em categorias denominadas newsgroups. Atravs de
um programa de leitura de news o usurio pode conectar-se a um
servidor de network news e ler os artigos disponveis;
7
d) transferncia de arquivos: baseado no protocolo de aplicao File
Transfer Protocol (FTP) um recurso especializado na transmisso de
arquivos pela Internet. Atravs de um cliente de FTP o usurio pode
conectar-se a um host, analisar o sistema de arquivos em que est
conectado e escolher quais arquivos deseja pegar ou enviar;
e) www (World Wide Web): baseado no protocolo de aplicao
Hipertext Transfer Protocol (HTTP) um sistema de busca de
informaes em que a passagem de um documento para outro est
embutida no prprio documento. A este mecanismo dado o nome de
navegao por hipertexto. A www permite que sejam incorporados aos
documentos recursos de multimdia e imagens. O usurio utiliza um
programa denominado browser para ler os documentos da www.
no protocolo HTTP que focaremos parte do nosso processo de
desenvolvimento do sistema de controle de dispositivos, criando uma interface
de computador capaz de comunicar com um microcontrolador que ser
responsvel pelo envio de dados de leitura e escrita do dispositivo(liga/desliga)
que ser criado, no caso, uma lmpada.
Nesta interface ser feito um estudo na parte de programao de pginas
web, linguagem de script CGI e linguagem de programao C, que far a
comunicao entre o usurio e o dispositivo.

2.2 Ethernet e IEEE 802.3

A Ethernet a tecnologia de rede local (LAN) mais amplamente usada.
A Ethernet foi projetada para ocupar o espao entre as redes de longa distncia,
com baixa velocidade e as redes especializadas de sala de computao que
transportam dados em alta velocidade por distncias muito limitadas. A Ethernet
8
bem adequada a aplicativos em que um meio de comunicao local deva
transportar trfego espordico, ocasionalmente intenso, a altas taxas de dados.
A arquitetura de rede Ethernet, segundo [Tanenbaum (1997)], tem suas
origens nos anos 60, na Universidade do Hava, onde o mtodo de acesso que
usado pela Ethernet, carrier sense multiple access/collision detection
(CSMA/CD), foi desenvolvido. O Palo Alto Research Center (PARC), da Xerox
Corporation, desenvolveu o primeiro sistema Ethernet experimental no incio
dos anos 70. Isso foi usado como base para a especificao 802.3 do Institute of
Electrical and Electronic Engineers (IEEE), lanada em 1980.
Logo aps a especificao 802.3 de 1980 da IEEE, a Digital Equipment
Corporation, a Intel Corporation e a Xerox Corporation desenvolveram
conjuntamente e lanaram uma especificao Ethernet, verso 2.0, que foi
substancialmente compatvel com a IEEE 802.3. Juntas, a Ethernet e a IEEE
802.3 detm atualmente a maior fatia de mercado de todos os protocolos LAN.
Hoje, o termo Ethernet freqentemente usado para se referir a todas as LANs
baseadas em CSMA/CD que normalmente esto em conformidade com as
especificaes Ethernet, incluindo a especificao IEEE 802.3.
A Ethernet e a IEEE 802.3 especificam tecnologias similares: ambas so
LANs baseadas em CSMA/CD. Estaes em uma LAN CSMA/CD podem
acessar a rede a qualquer momento. Antes de enviar dados, as estaes
CSMA/CD escutam a rede para determinar se ela j est em uso. Se estiver,
ento elas aguardam. Se a rede no estiver em uso, as estaes transmitem.
Uma coliso ocorre quando duas ou mais estaes escutam o trfego da rede,
no ouvem nada e transmitem simultaneamente. Neste caso, as transmisses so
prejudicadas e as estaes devem retransmitir mais tarde. Algoritmos de recuo
determinam quando as estaes que colidiram podem retransmitir. As estaes
CSMA/CD devem detectar colises, assim, elas sabem quando devem parar a
transmisso para retransmitir mais tarde.
9
[Tanenbaum (1997)] diz que ambas as LANs Ethernet e IEEE 802.3 so
redes de broadcast. Isso significa que todas as estaes de uma LAN podem ver
todos os quadros, independentemente de serem ou no o destino daqueles dados.
Cada estao deve examinar os quadros recebidos para determinar se ela o
destino. Se for, o quadro passado a um protocolo de camada mais alto dentro
da estao para processamento apropriado.
As diferenas entre as LANs Ethernet e IEEE 802.3 so sutis. A
Ethernet fornece servios correspondentes s camadas 1 e 2 do modelo de
referncia OSI, enquanto a IEEE 802.3 especifica a camada fsica, a camada 1, e
a parte de acesso a canais da camada de enlace, a camada 2, mas no define um
protocolo de controle de enlace lgico, o que feito pelo IEEE 802.2 (Logical
Link Control - LLC). Ambas as LANs Ethernet e IEEE 802.3 so
implementadas atravs de hardware. Normalmente, a parte fsica desses
protocolos uma placa de interface em um host ou um conjunto de circuitos em
uma placa de circuitos principal no host.

2.2.1 rvore da famlia Ethernet

Segundo [Tanenbaum (1997)], existem pelo menos 18 variedades de
Ethernet especificadas ou em processo de especificao. A Tabela 1 reala
algumas das mais comuns e mais importantes tecnologias Ethernet.







10
Tabela 1: Tecnologias do padro Ethernet














2.3 Introduo ao TCP/IP

O termo TCP/IP refere-se aos dois principais protocolos que o
constituem: Transmission Control Protocol (TCP) e o Internet Protocol (IP).
Existem inmeros outros protocolos que permitem a comunicao entre
computadores, sendo o TCP/IP o mais difundido atualmente.
O incio se deu quando o Departamento Americano de Defesa, no final
da dcada de 60, resolveu criar um software de comunicao entre computadores
de forma que fosse possvel a comunicao remota ou local, entre sistemas
operacionais iguais ou diferentes utilizando ou no o mesmo tipo de hardware.
O protocolo permitiu que, no comeo da dcada de 70, os computadores
pudessem comunicar-se remotamente, sendo de suma importncia em navios de
guerra ou entre porta-avies.
Segundo [Starlin (1999)], para que isto fosse possvel, foi necessrio
criar um sistema de comunicao onde a rede como um todo fosse dividida em
pequenas redes independentes, passando a usar como padro de interconexo
o TCP/IP.
10Base-T
10Base-FL
100Base-TX
100Base-FX
UTP Cat 5
Fibra ptica
UTP Cat 5
Fibra ptica
10Mbps
10Mbps
100Mbps
100Mbps 100m
100m
2000m
2000m
Estrela
Estrela
Estrela
Estrela
Barramento
Barramento
Barramento
Barramento
Tipo Meio
Taxa
Mxima
Comprimento
mximo do
segmento
Topologia
fsica
Topologia
lgica
11
Como o Departamento Americano de Defesa sempre foi um dos maiores
compradores de sistemas de informtica, comunicou que somente compraria as
tecnologias que tivessem incorporado o TCP/IP. Desde ento, todos os sistemas
operacionais e produtos trazem implementado o conjunto TCP/IP.
O TCP/IP possui como algumas de suas caractersticas bsicas a
independncia tecnolgica, interconexo universal, comunicao fim-a-fim,
padres de protocolos para as diversas aplicaes. Uma das caractersticas mais
importantes a flexibilidade de adaptao s tecnologias de redes existentes e
futuras, pois o TCP/IP foi concebido de forma independente das tecnologias de
redes.
A comutao por pacote packet-switching, segundo [Redes (2001)], a
base de sua tecnologia de comunicao e utiliza o pacote datagram como
unidade de transmisso de dados. Cada host conectado rede possui um
endereo nico, possibilitando que a mquina emitente reconhea a mquina
receptora.

2.3.1 Arquitetura TCP/IP

Segundo [Comer (1998)], a arquitetura TCP/IP, apresentada na Figura 1,
trata de um conjunto de protocolos divididos em quatro camadas, sendo que
cada uma destas camadas possui funes bem definidas.







12


Camada de Aplicao Dados


Camada de Transporte Cabealho Dados


Camada Internet Cabealho Cabealho Dados


Enlace de Cabealho Cabealho Cabealho Dados
Dados


Figura 1: Camadas da arquitetura TCP/IP

Conforme a Figura 1, as camadas so:
a) camada de aplicao: segundo [Stevens (1994)] nesta camada que
esto os protocolos de alto nvel como terminal virtual (TELNET),
protocolo de transferncia de arquivos (FTP), protocolo de envio de
correio eletrnico (SMTP) entre outros. nesta camada que esto os
programas dos usurios.
b) camada de transporte: responsvel por uma comunicao entre dois
hosts fim a fim, podendo oferecer comunicaes orientadas ou no
orientadas conexo. Fazem parte desta camada os protocolos
Transmission Control Protocol (TCP) e User Datagram Protocol
(UDP).
c) camada inter-redes ou internet: onde est implementado o protocolo
Internet Protocol (IP). Equivalente camada de Rede no modelo OSI,
onde feito o roteamento e a entrega dos pacotes IP.
d) camada de enlace: responsvel por encapsular os pacotes da camada
inter-redes no formato especfico da rede associada e extrair os pacotes
13
dos quadros vindos da rede e encaminh-los camada Inter-redes. O
protocolo ARP encontra-se nessa camada.

2.3.2 O Protocolo IP

O Internet Protocol (IP) teve origem em 1970 no desenvolvimento da
ARPANET, a qual foi depois interligada a outras redes formando em 1980 um
vasto conjunto que passou a ser conhecido por Internet. Com a incluso do
protocolo IP no UNIX, em 1982, um grande nmero de universidades passou a
formar as suas redes que por sua vez tambm foram ligadas Internet.
O Internet Protocol (IP) designado para o uso em sistemas de
computadores interconectados (redes), utilizando troca de pacotes. O IP fornece
transmisso de blocos de dados chamados datagramas entre origem e destino,
sendo que origem e destino so hosts identificados por um endereo de tamanho
fixo.
Outra funo do IP, definido na [RFC 791 (2001)], a fragmentao e
desfragmentao de datagramas longos, se necessrio, para transmisso atravs
de redes que apresentam um desempenho melhor com pacotes menores.
O protocolo IP especificamente limitado em escopo para fornecer as
funes necessrias para entregar um pacote de bits (um datagrama internet) de
uma origem para um destino em uma rede de computadores. No h
mecanismos para aumentar a confiana fim-afim dos dados, assegurar a
seqncia dos datagramas, ou outros servios comumente encontrados em outros
protocolos host-to-host.
Segundo [Comer (1998)], o pacote pode ser perdido, reproduzido,
atrasar-se ou ser entregue com problemas, mas o servio no detectar tais
condies, nem informar isso ao transmissor nem ao receptor. Tambm
considerado sem conexo porque cada pacote, segundo [Comer (1998)],
independente dos outros. Uma seqncia de pacotes enviados de um computador
14
a outro pode trafegar por caminhos diferentes, ou alguns podem ser perdidos
enquanto outros so entregues.
O formato do datagrama IP est ilustrado na Figura 2:

















Figura 2: Formato do datagrama IPv4

2.3.3 O Protocolo TCP

O Transfer Control Protocol (TCP) um protocolo de transporte
orientado conexo. Ele garante a confiabilidade da comunicao entre pares de
processos localizados em mquinas ligadas ou no a uma mesma rede.
Possui como caractersticas principais o estabelecimento e a liberao de
conexes em trs fases (handshake triplo); a manipulao da entrega confivel
dos pacotes; a entrega seqencial dos pacotes (na ordem em que foram
enviados); controle do fluxo de dados, impedindo que pacotes sejam
processados em uma velocidade superior capacidade do aplicativo; a
recuperao de erros no caso de perda, alterao ou duplicao de pacotes; a
demultiplexao do trfego de entrada entre as mltiplas aplicaes usurias.
VERS HLEN Service type Total Length
Identification Fragment offset FLAGS
Time To Live Protocol Header Checksun
Source IP Address
Destination IP Address
IP Options (IF ANY)
DATA
Pauding
0 4 8 16 19 24 31
15
O protocolo TCP especifica o formato dos dados e das confirmaes que
dois computadores trocam para oferecer uma transferncia confivel e, tambm,
os procedimentos de que se valem os computadores para assegurar que os dados
cheguem corretamente. Especifica ainda como o software TCP confirma os
mltiplos destinos em determinada mquina e como as mquinas recuperam-se
de erros como pacotes duplicados ou perdidos.
O TCP trata o fluxo de dados recebidos da aplicao como uma cadeia
(stream) de bytes ou octetos, que vo sendo agrupados dentro do buffer de
transmisso. Periodicamente o TCP separa um determinado conjunto de dados a
adiciona um cabealho, formando o que chamado de segmento, sendo este a
unidade bsica de transferncia de dados.
O TCP permite que programas aplicativos mltiplos, de determinada
mquina, comuniquem-se simultaneamente. Como o UDP, o TCP utiliza
nmeros de porta de protocolo para identificar o destino final em uma mquina.
Os projetistas preferiram utilizar o mesmo nmero de portas para qualquer
servio que seja acessvel pelo TCP e UDP, tornando-os assim independentes.
Os segmentos so trocados para estabelecer conexes, transferir dados, enviar
confirmaes, informar tamanho de janelas e encerrar conexes. O formato do
segmento TCP pode ser visualizado na Figura 3.
Os protocolos TCP de ambas as pontas precisam concordar sobre o
segmento mximo que iro transmitir, pois nem todas as redes tm o mesmo
tamanho de segmento. Essa negociao feita utilizando o campo opes do
segmento, especificado pelo MSS (maximum segment size). O tamanho ideal o
que permite que os datagramas IP que transportam os segmentos sejam os
maiores possveis, sem exigir a fragmentao em qualquer ponto ao longo do
caminho.


16














]


Figura 3: Formato do segmento TCP

Para que seja possvel que as diversas aplicaes que utilizam o
protocolo TCP comuniquem-se entre si, necessrio que ocorra um
estabelecimento de conexo. Neste momento s mquinas passam a se conhecer
trocando diversas informaes de controle e realizando uma verificao de
autenticidade entre elas.
O TCP um protocolo complexo que promove a comunicao atravs
de uma grande variedade de tecnologias de rede. Segundo [Redes (2001)], a
generalidade do TCP no parece interferir no seu desempenho. Informaes
mais detalhadas podem ser encontradas em [Comer (1998)].

2.4 Sistema de Controles

Segundo [Kuo (1995)], um sistema de controle so coisas que acontece
em nossa vida diria, que so numerosos objetivos que precisam ser realizados.
Por exemplo, no domnio domstico, ns necessitamos regular a temperatura e
umidade de residncias e edifcios para uma vida confortvel. Para o transporte,
ns necessitamos controlar o automvel e avio para ir exatamente e com
Porta Origem Porta Destino
Nmero de Seqncia
Nmero do Reconhecimento
Tamanho da janela de
Recepo
Tamanho
do
cabealho
Reserv.
U
R
G
A
C
K
P
S
T
S
Y
N
P
S
H
F
I
N
Checksun
Porteiro de dados urgentes
Opes
Enchimento
Dados
0 4 16 24 31
17
segurana de um ponto a outro. Industrialmente, os processos de produo
contm objetivos numerosos para os produtos que vo satisfazer s exigncias
da eficcia da preciso e de custo. Um ser humano capaz de executar uma
escala larga das tarefas, incluindo a tomada de deciso. Algumas destas tarefas
tais como pegar um objeto e andar de um ponto a outro, so realizadas
geralmente em uma forma rotineira.
Sob determinadas circunstncias, algumas destas tarefas so executadas
da melhor maneira possvel. Por exemplo, um atleta que percorre um trecho de
100 jardas tem o objetivo de percorrer essa distncia no menor tempo possvel.
Um corredor de maratona, em outro caso, no somente deve percorrer a
distncia no menor tempo possvel, como tambm, ele ou ela deve controlar o
consumo da energia e planejar a melhor estratgia para a corrida. Os meios de
conseguir estes "objetivos" envolvem geralmente o uso de sistemas de controle
que implementam certas estratgias de controle.
Baseado nos acontecimentos da nossa vida diria procurarei desenvolver
um sistema de controle capaz de fornecer maneiras mais eficazes, rpidas e
confortveis de suprir nossas tarefas do dia-a-dia.

2.5 Interfaces de Comunicao

No computador existem duas interfaces de comunicao clssicas: a
interface paralela e a interface serial. A alguns anos atrs, toda impressora era
conectada interface paralela e todo mouse era um dispositivo serial. Hoje,
muitas inpressoras usam a interface USB e nos PCs mais novos, a porta padro
para o mouse a PS/2. Contudo, as interfaces paralela e serial ainda existem em
todos os computadores e podem ser muito teis.


18
2.5.1 Interface Serial

O termo oficial promulgado pela IBM para a porta serial porta de
comunicaes de dados assncrona. Embora normalmente seja abreviado para
porta assncrona ou porta de comunicao. Alm disso, como a grande maioria
das ligaes seriais aceita pela industria do PC opera sob um padro chamado
RS-232 (um nome dado por uma associao industrial, a Electronics Industry
Association, ou EIA), a porta serial comum normalmente descrita por sua
especificao como porta RS-232.
Devido a simplicidade do hardware, a interface serial muito utilizada
dentro da indstria eletro-eletrnica. Hoje, o padro de comunicao serial mais
utilizado o EIA/TIA 232 ou, simplesmente, RS-232 (Recommended
Standard). Com esse padro, pode-se estabelecer uma comunicao bidirecional
entre dois dispositivos usando apenas trs fios. Da vem a sua simplicidade e
praticidade.
A comunicao RS-232 muito utilizada em microcontroladores. A
maioria deles tem um perifrico exclusivo para comunicao RS-232. Por isso, a
interface serial uma maneira simples e prtica de fazer o computador
comunicar-se com o seu projeto. Por exemplo, voc pode construir um pequeno
rob e fazer com que a sua programao seja feita conectando-se o
microcontrolador (que controla o rob) ao seu computador atravs de uma
interface serial.
O problema de se utilizar comunicao serial entre o PC e um
microcontrolador so os nveis de tenso exigidos pela interface serial.
Geralmente, os microcontroladores trabalham com nveis de tenso entre 0 e 5V.
Na interface serial do PC, os nveis envolvidos so -12 e 12V. Por isso, voc
deve utilizar drivers de tenso para no "torrar" o seu microcontrolador. O
driver de interface serial que utilizei neste projeto foi o MAX232.
19

2.5.2 Porta Serial

A porta serial o denominador comum das comunicaes por
computador. At mesmo os PCs e perifricos mais primitivos aceitam uma
porta serial.
No importa o nome usado, todas as portas seriais da IBM so iguais,
pelo menos funcionalmente. Todas usam 8, 16 ou 32 bits paralelos que um
computador apanha do seu bus (barramento) de dados e vira de lado
transformando uma tira de dados digitais em uma cadeia de pulsos que caminha
bit a bit. Essa forma de comunicao recebe o nome serial porque os bits
individuais de informao so transferidos em longas sries.
Muitos infortnios podem cair sobre o vulnervel bit de dado serial
medida que percorre a conexo. Um dos bits de um byte inteiro de dados pode
se desviar deixando um pedao de dado com um valor menor na chegada do que
na partida. Com a vaga no fluxo de dados, todos os outros bits pularo um lugar
e assumiro novos valores. Ou ento pode ocorrer o caso oposto, de erros no
fluxo da comunicao empurrar todos os bits para trs. De qualquer forma, o
prognstico no bom. Com essa forma elementar de comunicaes seriais, um
bit a mais ou a menos causar um erro em todos os bytes seguintes.
Estabelecer comunicaes seriais confiveis significa contornar esses
problemas de erro de bit e muitos outros mais. Graas a alguma engenhosidade
digital, no entanto, as comunicaes seriais funcionam e funcionam bem o
bastante para que um PC dependa delas.
A tabela 3 apresenta a pinagem de conectores de 9 (DB-9) e 25 (DB-25)
pinos de acordo com o padro RS-232. A maioria dos computadores atuais
utilizam o conector de 9 pinos.

20
Tabela 2: COM1/COM2 RS-232 PORTA SERIAL ( DB-9 - DB25 )
DB 9
DB
25
PINO
SINAL
PINO
1
CD -
Deteco da
portadora
8
2
RXD -
Recepo de
dados
3
3
TXD -
Transmisso
de dados
2
4
DTR -
Terminal de
dados pronto
20
5 GND -Terra 7
6
DSR - Dado
pronto
6
7
RTS -
Permisso
para envio
4
8
CTS -
Permisso
fornecida
5
DB9 MACHO




9
RI -
Indicador de
chamadas
22
DB25 MACHO


No projeto da interface para conexo a um dispositivo a ser controlado
via porta serial, bastam 3 pinos (3 fios): pino 5 Terra, pino 3 transmisso de
dados, pino 2 recepo de dados. A figura 5 mostra como ficaria o cabo serial
com os devidos conectores para conectar um PC a um dispositivo externo.





21

Tx 3

3 Tx

Rx 2

2 Rx
Rx 2

2 Rx

Tx 3

3 Tx
GND 5

5 GND

GND 5

5 GND



Figura 5: Interface serial entre um computador e um dispositivo externo

2.5.3 Comunicaes Sncronas e Assncronas

Dois dos principais mtodos de comunicao serial so usados para
evitar o desastre dos erros em bits seriais. Em um deles, os sistemas de envio e
recepo so sincronizados por meio de algum tipo de sinal auxiliar, de modo
que os dois lados da conexo estejam sempre alerta. Um clock, sincronizado
entre a unidade de transmisso e recepo, temporiza com preciso o perodo
que separa cada bit de dados. Um bit a mais ou a menos pode ser inesperada no
fluxo de bits. Apenas olhando o relgio, voc pode distinguir as comunicaes
por computador, um bit de dados real do rudo de interferncia. Essa forma de
transferncia serial sincronizada pelo tempo chama-se comunicao sncrona,
sendo uma tcnica usada principalmente em sistemas de grande porte.
O sistema sincronizado falha sempre que os sistemas de envio e
recepo perdem sua tranca de sinal mtuo. O fluxo de dados torna-se pouco
mais do que um rudo.
A alternativa incluir marcadores de lugar no fluxo de bits para ajudar
acompanhar cada bit. Um marcador poderia, por exemplo, indicar a posio
atribuda a um bit. Um bit ocorrendo sem o seu marcador poderia ser
considerado como erro. Naturalmente, esse esquema simples teria muito
desperdcio, exigindo dois sinais digitais (o marcador e o bit de dados) para cada
bit de informao transferido.
PC DB-9
fmea
DB-9
macho
DB-9
macho
Dispositivo DB-
9 fmea
22
Um sistema intermedirio funciona melhor. Em vez de indicar cada bit,
o marcador poderia indicar o inicio de um pequeno fluxo de bits. A posio de
cada bit no fluxo poderia ser definida sincronizando-os a intervalos regulares.
Embora esse mtodo seja semelhante a transferncia sncrona, os sistemas
transmissor e receptor no precisam ficar presos, exceto por pequenos intervalos
entre os marcadores. A chegada de um marcador indica ao sistema receptor para
comear a procurar os bits e rodar um temporizador curto. O problema de
enviar e receber timers fora de sincronismo so eliminados reiniciando-se o
clock a cada marcador, reduzindo o perodo entre os marcadores, no h tempo
suficiente para o timer se perder.
Esse sistema de curto prazo temporizado normalmente chamado
comunicao assncrona, pois os sistemas de envio e recepo no precisam
estar sincronizados exatamente um com o outro. Os bits marcadores oferecem a
tranca temporria necessria para distinguir um fluxo curto de bits de dados em
seguida. A maioria das comunicaes seriais no PC usa esse esquema. Na
maior parte dos sistemas assncronos, os dados so divididos em pequenos
pedaos, cada um correspondendo aproximadamente a um byte. Cada um deles
chama-se palavra, e pode conter de cinco a oito bits de dados. Os tamanhos de
palavra mais usados so sete e oito bits, o primeiro porque inclui todos os
caracteres de texto maisculos e minsculos em cdigo ASCII; o segundo
porque cada palavra corresponde exatamente a um byte de dados.
Como dados seriais, os bits de uma palavra so enviados um de cada vez
por um canal de comunicao. Por conveno, o bit menos significativo da
palavra enviado primeiro. O restante dos bits segue em ordem de grandeza
crescente.
Junto a esses bits de dados h um pulso muito especial de tamanho
duplo chamado bit de incio; ele indica o incio de uma palavra de dados. Um ou
mais bits de fim indicam o final da palavra. Entre o ltimo bit da palavra e o
23
primeiro bit de fim, um bit de paridade costuma ser includo para a verificao
da integridade dos dados. Junto, os bits de dados, o bit de incio, o bit de
paridade e os bits de fim compem um quadro de dados.

2.5.4 Bits de Paridade

Cinco tipos de bits de paridade podem ser usados na comunicao serial,
dois deles oferecendo um meio de detectar erros de transmisso ao nvel de bit.
Essa deteco de erros funciona contando o nmero de bits na palavra de dados
e determinando se o resultado par ou mpar. Na paridade mpar, o bit de
paridade ativado (passado para o nvel lgico um) quando o nmero de bits da
palavra impar. A paridade par ativa o bit de paridade quando o total de bits de
uma palavra par.
Na paridade marca, o bit de paridade sempre ativado no importando o
total de bits da palavra. A paridade espao sempre deixa o bit de paridade
desativado. Nenhuma paridade significa que o quadro no tem espao para um
bit de paridade. Embora emitindo um bit de integridade de dados (que pode ser
fornecido por outros meios), isso permite comunicaes mais eficientes,
comprimindo mais informaes em um determinado nmero de bits
transmitidos.

2.5.5 Polaridade de Sinal

Todos os bits de um sinal serial no padro RS-232 so enviados pela
linha de comunicao como pulsos passando para negativo superpostos a uma
voltagem positiva normal mantida na linha de dados. Ou seja, a presena de um
bit na palavra serial interromper uma voltagem positiva contnua com um breve
pulso negativo.
24
Comparado com os sistemas lgicos normais, os dados no padro RS-
232 parecem estar de cabea para baixo. No h um motivo particularmente
bom para essa inverso, exceto por ser o modo como as coisas tm sido feitas e,
no caso das comunicaes, as coisas funcionam melhor quando todos usam o
mesmo padro.

2.5.6 Velocidade de Envio dos Dados

Uma outra caracterstica importante de todo sinal serial a velocidade
em que os bits no trem de dados serial so nominalmente enviados. O formato
padro dessa medida muito simples: o nmero de bits enviados por segundo,
com a unidade padro sendo um bit por segundo, ou bps.
Por questes um tanto arbitrrio, as velocidades de bit so enumeradas
em incrementos pouco usuais. A velocidade mnima comum 300 bps, embora
esteja disponvel submltiplo mais lento: 50 100 e 150 bps. As velocidades mais
rpidas simplesmente duplicam as velocidades anteriores, passando para 600,
1200, 4800, 9600 e 19200, a velocidade mais rpida aceita oficialmente pela
IBM com portas seriais comuns controladas por microprocessador, encontradas
nos modelos 50 a 80 do PS/2.
Essas velocidades oficiais lentas so importantes porque o controle da
porta serial por software impe uma carga to grande sobre o microprocessador
do sistema que os chips mais lentos no podem trabalhar com velocidades
maiores. Como as maiores velocidades no podem ser aceitas por todo o
software, a IBM escolheu no sancionar tais velocidades em seus computadores
mais antigos.



25
2.6 Micro-controladores Famlia PIC

O micro-controlador definido como sendo um sistema computacional
integrado, pois ele possui unidade de processamento, memria e entradas e
sadas integrados em um nico chip.
A maioria das pessoas entende o sistema computacional como sendo o
nosso computador pessoal. No entanto todo sistema que a partir de dados de
entrada, executa algum processamento mediante um programa armazenado em
uma memria gerando uma sada chamado de sistema computacional.
Neste projeto, utilizei um microcontrolador da famlia PIC, portanto
darei uma viso geral das caractersticas e funes deste microcontrolador. Um
dos aspectos mais interessantes do PIC que, mesmo sendo a maior famlia de
micro-controladores do mercado em termos de variedade de modelo, todos os
modelos foram desenvolvidos a partir da mesma filosofia de produto.
Esta caracterstica da famlia PIC permite a compatibilidade de cdigos
(linguagem assembler) e a estruturao das aplicaes, pois um cdigo escrito
para um modelo de PIC poder ser migrado para outro modelo equivalente em
termos de recursos necessrios sem que sejam necessrias grandes mudanas no
cdigo fonte. Isto facilita o trabalho de quem desenvolve e preserva o
investimento de quem produz.
Um sistema computacional composto por uma unidade de
processamento, memria e portas de entrada/sada (I/O).
A maioria das pessoas limita os conceitos de sistema computacional ao
computador que temos em casa, vulgo PC (Personal Computer). No entanto
todo sistema que a partir de dados de entrada, executa algum processamento
mediante um programa armazenado em uma memria gerando uma sada
chamado de sistema computacional. Podemos definir micro-controlador como
sendo um sistema computacional integrado, pois ele possui unidade de
26
processamento, memria e entradas e sadas integrados em um nico chip.
Alguns ainda possuem perifricos como conversores A/D e D/A, comparadores.
Os microcontroladores chegam a custar muitas vezes mais barato do que
um transistor. Existe uma quantidade grande de C no mercado, veja alguns
nomes a baixo:

Famlia 8051 fabricante Intel
PIC fabricante Microchip
AVR fabricante Atmel
BASIC Stamp fabricante Parallax
BASIC Step fabricante Tato Equipamentos

2.6.1 Arquitetura de Microcontroladores

A arquitetura de um sistema digital define quem so e como as partes
que compe o sistema esto interligadas. As duas arquiteturas mais comuns
para sistemas computacionais digitais so as seguintes:
Arquitetura de Von Neuman: A Unidade Central de Processamento
interligada memria por um nico barramento. O sistema composto
por uma nica memria onde so armazenados dados e instrues.
Arquitetura de Harvard: A Unidade Central de Processamento
interligada a memria de dados e a memria de programa por
barramento especfico.

2.6.1.1 Memria de Programao

A memria de programao onde as instrues do programa so
armazenadas. No caso do 16F628 esta memria de 2048 palavras (words) de
27
14 bits cada uma. Partes destes 14 bits informam o OPCODE (cdigo da
instruo) e o restante traz consigo o argumento da instruo correspondente. Na
familia PIC existem trs tipos de memria de programa: EPROM (O.T.P. One
Time Programable), EEPROM (janelado) e FLASH. Existem duas posies da
memria do programa que recebem nomes especiais: vetor de reset e vetor de
interrupo.
O vetor de reset para onde o programa vai quando ele inicializado,
enquanto que o vetor de interrupo a posio da memria de programa para
onde o processamento desviado quando ocorre uma interrupo.

2.6.1.2 Memria de Dados

A memria de dados uma memria voltil do tipo R.A.M. (random
access memory). O mapa de memria divido em duas partes: registradores
especiais (special function register - S.F.R.) e registradores de uso geral (general
purpose register - G.P.R.). Como o ponteiro da memria de programa tem
capacidade de enderear somente 128 posies de memria de cada vez (7 bits),
a memria de programa dividida em bancos (banco 0 e banco 1 no 16F84).
Esta diviso implica em termos posies de memria que somente
podero ser acessadas caso o banco a que ela pertena seja previamente
selecionado atravs de um bit especfico do S.F.R. STATUS.


2.6.1.3 Unidade Lgica Aritmtica

A unidade lgica aritmtica onde todas as operaes lgicas (funes
lgicas booleanas): e ou, (exclusivo e complemento) e aritmticas (soma e
subtrao) so efetuadas. O registrador W sempre estar envolvido de alguma
forma em toda operao lgica ou aritmtica. Existem dois destinos possveis
28
para estas operaes: o W (work) ou um registrador (posio da memria de
dados) definido no argumento da instruo.

2.6.1.4 Ciclo de Mquina

Um micro-controlador pode ser entendido como sendo uma mquina
que executa operaes em ciclos. Todos os sinais necessrios para a busca ou
execuo de uma determinada instruo devem ser gerados dentro de um
perodo de tempo denominado Ciclo de Mquina. Nos PIC com memria de
programa de 12 e 14 bits um Ciclo de Mquina corresponde a quatro perodos de
clock (1:4) denominados Q1,Q2,Q3 e Q4, conforme pode ser verificado na
figura 5.


Figura 5: Ciclo de Mquina

2.6.1.5 Pipeline

Se para efeito de anlise dividirmos o processamento interno do PIC em
ciclos de busca e execuo, podemos afirmar que para cada instruo executada
foi necessria a execuo prvia de um ciclo de busca. Imagine um sistema que
implemente um ciclo de busca e ao mesmo tempo processe um ciclo de
1 Ciclo de mquina = 4 Perodos de clock
Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
GLK
Q1
Q2
Q3
Q4
Ciclo de Mquina
29
execuo. Desta forma, no incio de cada Ciclo de Mquina haver uma
instruo pronta para ser executada.
No entanto algumas instrues fazem com que este sistema seja
desarticulado: so as chamadas instrues de desvio. As instrues de desvio
so aquela que alteram o valor do Program Counter (contador/ponteiro de
programa).
Quando ocorre um desvio a instruo que j foi previamente buscada
pelo sistema de Pipeline no vlida, pois estava na posio de memria de
programa apontada pelo PC antes dele ter seu valor alterado para o destino
especificado. Conseqentemente torna-se necessrio a execuo de um novo
ciclo de busca, que obviamente demandar mais um ciclo de mquina,
resultando em um tempo de total de processamento igual a dois ciclos de
mquinas. A figura 6 mostra a atuao do pipeline.


Figura 6: Atuao do Pipeline

Toda instruo do PIC demanda um Ciclo de Mquina para ser
executada, exceto aqueles que provocam desvio no programa que demanda dois
Ciclos de Mquina.

30
2.6.1.6 Timer

O PIC possui internamente um recurso de hardware denominado
Timer0. Trata-se de um contador de 8bits incrementado internamente pelo ciclo
de mquina ou por um sinal externo (borda de subida ou descida), sendo esta
opo feita por software durante a programao (SFR). Como o contador possui
8 bits ele pode assumir 256 valores distintos (0 at 255). Caso o ciclo de
mquina seja de 1us, cada incremento do Timer corresponder a um intervalo de
1us. Caso seja necessrio intervalos de tempos maiores para o mesmo Ciclo de
Mquina, utilizaremos o recurso de PRE-SCALE.

2.6.1.7 Pre-scale

O Pre Scale um divisor de freqncia programvel do sinal que
incrementa o Timer0. Quando temos um pre scale de 1:1, cada ciclo de mquina
corresponde a um incremento do Timer0 (unidade de Timer0). Ao alterarmos o
pre scale para, por exemplo, 1:4 (os valores possveis so as potencias de dois
at 256), o Timer0 ser incrementado uma vez a cada quatro ciclos de mquina.

2.6.1.8 Watchdog

O watchdog um recurso disponvel no PIC que parte do princpio que
todo sistema passvel de falha. Se todo sistema pode falhar, cabe ao mesmo ter
recursos para que, em ocorrendo uma falha, algo seja feito de modo a tornar o
sistema novamente operacional.
Dentro do PIC existe um contador incrementado por um sinal de relgio
(clock) independente. Toda vez que este contador extrapola o seu valor mximo
retornando a zero, provocado a reinicializao do sistema (reset).
31
Clear Watchdog: Se o sistema estiver funcionado da maneira correta, de
tempos em tempos uma instruo denominada clear watchdog timer
(CLRWDT) zera o valor deste contador, impedindo que o mesmo
chegue ao valor mximo. Desta maneira o Watchdog somente ir
"estourar" quando algo de errado ocorrer.
Pre Scale: O perodo normal de estouro do Watchdog Timer de
aproximadamente 18 ms. No entanto, algumas vezes este tempo
insuficiente para que o programa seja normalmente executado. A sada
neste caso alocar o recurso de Pre Scale de modo a aumentar este
perodo. Se sem o pre scale o perodo de 18ms, quando atribumos ao
Watchdog Timer um PRE SCALE de 1:2 (um para dois) nos dobramos
este perodo de modo que o processamento possa ser executado sem que
seja feita uma reinicializao.

2.6.1.9 Interrupo

As Interrupes so causadas atravs de eventos assncronos (podem
ocorrer a qualquer momento) que causam um desvio no processamento. Este
desvio tem como destino o vetor de interrupo.
Uma boa analogia para melhor entendermos o conceito de interrupo
a seguinte: voc est trabalhando digitando uma carta no computador quando o
seu ramal toca. Neste momento voc, interrompe o que est fazendo, para
atender ao telefone e verificar o que a pessoa do outro lado da linha est
precisando. Terminada a conversa, voc coloca o telefone no gancho novamente
e retoma o seu trabalho do ponto onde havia parado. Observe que no
precisamos verificar a todo instante, se existe ou no algum na linha, pois
quando o ramal chamado, o telefone toca avisando que existe algum querendo
falar com voc.
32
A habilitao das interrupes nos PIC segue a seguinte filosofia. Existe
uma chave geral (general interrupt enable) e chaves especficas para cada uma
das interrupes. Deste modo, se eu quiser habilitar a interrupo de tempo
(TMR0) eu devo setar o bit da chave geral e tambm o bit da chave especfica
(T0IE), ambos presentes no registrador especial (S.F.R.) INTCON.
POWER ON RESET: um sistema faz com que durante a energizao o
pino de Master Clear (/MCLR) permanea durante algum tempo em
zero, garantindo a inicializao.
POWER UP TIMER: um temporizador que faz com que o PIC,
durante a energizao (power up), aguarde alguns ciclos de mquina
para garantir que todo o sistema perifrico (display, teclado, memrias,
etc) estejam operantes quando o processamento estiver sendo executado.
BROWN OUT: O Brown Out monitora a diferena de tenso entre
VDD e VSS, provocando a reinicializao do PIC (reset) quando esta
cai para um valor inferior ao mnimo definido em manual.
SLEEP: O modo de operao Sleep foi includo na famlia PIC para
atender um mercado cada vez maior de produtos que devem funcionar
com pilhas ou baterias. Estes equipamentos devem ter um consumo
mnimo para que a autonomia seja a mxima.
Quando o PIC colocado em modo Sleep (dormir), atravs da instruo
SLEEP, o consumo passa da ordem de grandeza de mA (mili mperes) para uA
(micro mperes). Existem trs maneiras de "acordar o PIC": por interrupo
externa/estado, estouro de Watchdog ou reinicializao (/MCRL).





33
2.6.2 Microcontrolador PIC

Os microcontroladores da famlia PIC so dispositivos RISC (Reduced
Instruction Set Computer Computador com conjunto reduzido de instrues)
com arquitetura HARVARD (Barramentos de memria de programa e de
memria de dados diferentes) e fluxo de instrues PIPELINE (Enquanto se
executa uma determinada instruo, a prxima j est sendo lida) de ltima
gerao, seu uso praticamente ilimitado e seu preo baixo, levando-se em
conta as suas excelentes caractersticas. Os PICs so muito versteis, podem
possuir de 6 at 66 pinos de I/O, trabalhar em frequncias de at 40MHz, eles
podem ter ainda:
ADCs = Conversores analgico para digital;
DACs = Conversores digital para analgico;
Endereadores de memria externa;
I/Os seriais;
Memria EEPROM de dados, entre outros.

2.6.3 PIC16F628

O PIC16F628 possui arquitetura Harvard. A memria de dados do tipo
RAM (voltil) e a memria de programa so do tipo Flash (letra F no cdigo).
Este PIC possui 18 pinos e pode ser classificado na faixa superior em
termos de recursos disponveis, pois ele possui interrupes e conversores AD
ou portas de comunicao serial. O PIC16F628 melhorou as caractersticas do
ncleo, a pilha de oito nveis, e fontes internas e externas mltiplas da
interrupo. As barras de comunicao separadas da instruo e de dados da
arquitetura de Harvard permitem que uma palavra de 14-bit de larga instruo
use dados de 8-bit separados. A faixa de dois estgios da instruo permite que
34
toda a instruo seja executada em um nico-ciclo, exceo das filiais do
programa (que requerem dois ciclos).
O microcontrolador consegue tipicamente uma compresso de cdigo de
2:1 e uma melhoria da velocidade de 4:1 sobre outros microcontroladores 8-bit
em sua classe. Os dispositivos do PIC16F628 tm as caractersticas especiais
para reduzir componentes externos, assim reduzindo o custo do sistema,
realando a confiabilidade do sistema e reduzindo o consumo de potncia.
H oito configuraes do oscilador, apenas o oscilador do pino ER fornece uma
soluo de baixo custo. O oscilador LP minimiza o consumo de potncia, XT
um cristal padro, INTRC um oscilador interno e o HS para cristais de alta
velocidade.
A modalidade do SLEEP (baixo consumo) oferece economias de
energia. O usurio pode ativar a micro plaqueta do SLEEP de diversas
interrupes e restaurao externas e internas.
A tecnologia FLASH faz a customizao dos programas de aplicao
(nveis da deteco, gerao do pulso, temporizadores, etc.) extremamente
rpido e conveniente. Os pacotes pequenos da entrada fazem esta srie do
microcontrolador ideal para todas as aplicaes com limitaes do espao.
Baixo custo, baixo consumo, alta performance, facilidade de utilizao e
flexibilidade de I/O faz do PIC16F628 muito verstil. A figura 7 mostra a
pinagem do PIC16F628.

35

Figura 7: Pinagem do PIC16F628

Caractersticas tcnicas:
Freqncia de operao DC a 20 MHz
Memria do programa 3.5K
Numero de instrues 2048
RAM 224 bytes
EEProm 128 bytes
PORT A: RA0 ... RA4 (5 PINOS)
PORT B: RB0 ... RB7 (8 PINOS)
1 Mdulo CCP
2 Comparadores
Presena de Power On Reset
Presena de Brown-out Detect
Temporizador 1x16bit 2x8bit WDT W/RC
Presena da Tenso de Referncia Vref
Capacidade de corrente 25mA
Presena do Programa de Circuito Serial

36
2.7 Rels

Os rels so dispositivos comutadores eletromecnicos. A estrutura
simplificada de um rel mostrada na figura 8 e a partir dela explicaremos o seu
princpio de funcionamento.
Nas proximidades de um eletro-im instalado uma armadura mvel
que tem por finalidade abrir ou fechar um jogo de contatos. Quando a bobina
percorrida por uma corrente eltrica criado um campo magntico que atua
sobre a armadura, atraindo-a. Nesta atrao ocorre um movimento que ativa os
contatos, os quais podem ser abertos, fechados ou comutados, dependendo de
sua posio, conforme mostra a figura 9.


Figura 8: Estrutura eltrica do Rel

ARMADURA
BOBINA
37


Figura 9: Abertura e fechamento dos contatos

Isso significa que, atravs de uma corrente de controle aplicada bobina
de um rel, podemos abrir, fechar ou comutar os contatos de uma determinada
forma, controlando assim as correntes que circulam por circuitos externos.
Quando a corrente deixa de circular pela bobina do rel o campo magntico
criado desaparece, e com isso a armadura volta a sua posio inicial pela ao da
mola.
Os rels se dizem energizados quando esto sendo percorridos por
uma corrente em sua bobina capaz de ativar seus contatos, e se dizem
desenergizados quando no h corrente circulando por sua bobina.
Este rel fecha os contatos com a
energizao da bobina
Este rel abre os contatos com a
energizao da bobina
Este rel comuta a corrente desviando-a
de A para B
ATRAO
CONTATOS
FECHADOS
CONTATOS
ABERTOS
corrente
38
A aplicao mais imediata de um rel com contato simples no controle
de um circuito externo ligando ou desligando-o, conforme mostra a figura 10.
Observe o smbolo usado para representar este componente.

Figura 10: Rel de contato simples

Quando a chave S1 for ligada, a corrente do gerador E1 pode circular
pela bobina do rel, energizando-o. Com isso, os contatos do rel fecham,
permitindo que a corrente do gerador E2 circule pela carga, ou seja, o circuito
controlado que pode ser uma lmpada.
Para desligar a carga basta interromper a corrente que circula pela
bobina do rel, abrindo para isso S1.
Uma das caractersticas do rel que ele pode ser energizado com
correntes muito pequenas em relao corrente que o circuito controlado exige
para funcionar. Isso significa a possibilidade de controlarmos circuitos de altas
correntes como motores, lmpadas e mquinas industriais, diretamente a partir
de dispositivos eletrnicos fracos como transistores, circuitos integrados,
fotoresistores etc.
A corrente fornecida diretamente por um transistor de pequena potncia
da ordem de 0,1A no conseguiria controlar uma mquina industrial, um motor
ou uma lmpada, mas pode ativar um rel e atravs dele controlar a carga de alta
potncia. (figura 11).
39

Figura 11: Ativar uma carga de alta potncia

Outra caracterstica importante dos rels a segurana dada pelo
isolamento do circuito de controle em relao ao circuito que est sendo
controlado. No existe contato eltrico entre o circuito da bobina e os circuitos
dos contatos do rel, o que significa que no h passagem de qualquer corrente
do circuito que ativa o rel para o circuito que ele controla.
Se o circuito controlado for de alta tenso, por exemplo, este isolamento
pode ser importante em termos de segurana.
Do mesmo modo, podemos controlar circuitos de caractersticas
completamente diferentes usando rels: um rel, cuja bobina seja energizada
com apenas 6 ou 12V, pode perfeitamente controlar circuitos de tenses mais
altas como 110V ou 220V.
O rel que tomamos como exemplo para analisar o funcionamento
possui uma bobina e um nico contato que abre ou fecha.
Na prtica, entretanto, os rels podem ter diversos tipos de construo,
muitos contatos e apresentar caractersticas prprias sendo indicados para
aplicaes bem determinadas.




40
2.7.1 Os Rels na Prtica

O que determina a utilizao de um rel numa aplicao prtica so suas
caractersticas. O entendimento dessas caractersticas fundamental para a
escolha do tipo ideal.
A bobina de um rel enrolada com um fio esmaltado cuja espessura e
nmeros de voltas so determinados pelas condies em que se deseja fazer sua
energizao.
A intensidade do campo magntico produzido e, portanto, a fora com
que a armadura atrada depende tanto da intensidade da corrente que circula
pela bobina como do nmero de voltas que ela contm.
Por outro lado, a espessura do fio e a quantidade de voltas determinam o
comprimento do enrolamento, o qual funo tanto da corrente como da tenso
que deve ser aplicada ao rel para sua energizao, o que no fundo a
resistncia do componente. Todos estes fatores entrelaados determinam o
modo como a bobina de cada tipo de rel enrolada.
De um modo geral podemos dizer que nos tipos sensveis, que operam
com baixas correntes, so enrolados milhares ou mesmo dezenas de milhares de
voltas de fios esmaltados extremamente finos, alguns at mesmo mais finos que
um fio de cabelo! (figura 12).

41


Figura 12: A bobina de um Rel

As armaduras dos rels devem ser construdas com materiais que
possam ser atrados pelos campos magnticos gerados, ou seja, devem ser de
materiais ferromagnticos e montadas sobre um sistema de articulao que
permita sua movimentao fcil, e retorno posio inicial quando o campo
desaparece.
Peas flexveis de metal, molas ou articulaes so alguns dos recursos
que so usados na montagem das armaduras.
A corrente mxima que os rels podem controlar depende da maneira
como so construdos os contatos. Alm disso, existe o problema do
faiscamento que ocorre durante a abertura e fechamento dos contatos de rel,
principalmente no controle de determinado tipo de carga (indutivas).
O material usado deve ento ser resistente, apresentar boa capacidade de
conduo de corrente e, alm disso, ter um formato prprio, dependendo da
aplicao a que se destina o rel.
42
Dentre os materiais usados para a fabricao dos contatos podemos citar
o cobre, a prata e o tungstnio. A prata evita a ao de queima provocada pelas
fascas, enquanto os contatos de tungstnio evitam a oxidao.
O nmero de contatos e sua disposio vo depender das aplicaes a
que se destinam os rels.

2.7.2 Tipos de Rels

2.7.2.1 Contatos NA ou Normalmente Abertos

Os rels so dotados de contatos do tipo normalmente abertos, quando
estes permanecem desligados at o momento em que o rel seja energizado.
Quando o rel energizado, os contatos fecham, e com isso pode circular
corrente pelo circuito externo. Podemos ter rels com um ou mais contatos do
tipo NA, conforme mostra a figura 13.



Figura 13: Rels tipo NA

1 CONTATO N A 2 CONTATO N A
3 CONTATO N A
TERMINAIS
DA BOBINA
REL DE 1 CONTATO N A
43
Usamos rels com contatos do tipo NA quando queremos ligar uma
carga externa ao fazer uma corrente percorrer a bobina do rel, ou seja, quando o
energizarmos.

2.7.2.2 Contatos NF ou Normalmente Fechados

Estes rels apresentam um ou mais contatos que esto fechados,
permitindo a circulao pela carga externa, quando a bobina estiver
desenergizada. Quando a bobina percorrida por uma corrente, o rel abre seus
contatos, interrompendo a circulao de corrente pela carga externa. (figura 14).



Figura 14: Rels tipo NF

Usamos este tipo de rel para desligar uma carga externa ao fazer uma
corrente percorrer a bobina do rel.

2.7.2.3 Contatos NA e NF ou Reversveis

Os rels podem tambm ter contatos que permitem a utilizao
simultnea dos contatos NA e NF ou de modo reversvel, conforme mostra a
figura 15.

REL DESENERGIZADO REL ENERGIZADO
CONTATO NF CORRENTE INTERROMPIDA
CORRENTE
CARGA CARGA
44


Figura 15: Rel Reversvel

Quando o rel est com a bobina desenergizada, o contato mvel C faz
conexo com o contato fixo NF, mantendo fechado este circuito. Energizando a
bobina do rel o contato C (comum) passa a encostar-se ao contato NA,
fechando ento o circuito. Podemos usar este tipo de rel para comutar duas
cargas, conforme sugere a figura 16.

Figura 16: Comutao de duas cargas atravs do rel reversvel

A energia da fonte E passa ento do circuito de carga 1 para o circuito
de carga 2.
O nmero de contatos NA e NF de um rel pode variar bastante, o que
garante uma enorme versatilidade para este componente. Assim, jogando com
os dois contatos reversveis, podemos fazer inverses do sentido de circulao
da corrente.
N.F. - normalmente fechado
C - comum
N.A. - normalmente aberto
REL
DESENERGIZADO
REL
ENERGIZADO
Carga
1
Carga
2
Carga
1
Carga
2
45
Os rels podem ainda ter bobinas para operar tanto com corrente
contnua como com corrente alternada.
No caso de corrente contnua, a constncia do campo garante um
fechamento firme, sem problemas. No entanto, no caso do acionamento por
corrente alternada, a inverso do sentido da corrente numa determinada
freqncia faz com que o campo magntico aparea e desaparea dezena de
vezes por segundo, o que leva a armadura e os contatos a uma tendncia de
vibrao.
Para evitar este problema tcnicas especiais de construo so usadas,
sendo que a mais eficiente consiste na colocao numa das metades do ncleo da
bobina de um anel de cobre. Neste anel ento induzida uma forte corrente que
cria um segundo campo magntico, o qual divide o campo principal em dois
fluxos defasados. Assim, no existe um instante em que o campo seja nulo,
quando a armadura pode "descolar", e com isso causar as vibraes.
Por este motivo, os rels usados em corrente contnua no so os mesmos
empregados em circuitos de corrente alternada.

2.7.2.4 Rels abertos, fechados e selados

Dependendo das aplicaes, temos ainda para os rels montagens
diferentes do conjunto de peas que o formam. Os rels podem ser abertos, ou
seja, sem proteo, se forem usados em equipamentos fechados, que no estejam
sujeitos a poeira, umidade ou outros elementos que prejudiquem o componente.
Temos tambm rels fechados, mas sem vedao alguma que so
utilizados na maioria das aplicaes comuns. Estes rels possuem coberturas de
materiais diversos, como por exemplo, o plstico que pode ser opaco ou
transparente.
46
Existem ainda os rels hermticos que so encerrados em invlucros que
impedem a penetrao de ar do meio ambiente.
Em especial estes rels so empregados em aplicaes que ficam em
atmosferas combustveis, j que o acionamento dos contatos pode ser
acompanhado de fascas que causariam a ignio do combustvel e com isso o
perigo de exploso. Na figura 17 h trs tipos da linha de produtos rels com as
mais diversas especificaes adicionais.


Figura 17: Rels abertos, fechados e selados

Esta proteo evita que a poeira se acumule principalmente nos contatos,
vindo a prejudicar o funcionamento do rel.
Rels abertos
Rel fechado Rels vedados
47
2.7.3 Ligao dos rels ao circuito externo

Outro fato importante na construo de um rel a maneira como ele vai
ser ligado ao circuito externo. Para esta finalidade, os rels so dotados de
terminais. O tipo mais simples possui, ento, 4 terminais sendo 2 para a
conexo bobina e 2 para os prprios contatos. (figura 18).


Figura 18: Rels de 4 terminais

O nmero de terminais aumentar na proporo em que aumenta o
nmero de contatos e estes podem ter as mais diversas aparncias. Em
aplicaes profissionais, onde a eventual substituio rpida de um rel deve ser
feita com presteza, so usados encaixes em bases fixas. So os rels de encaixe
ou plug-in. Temos ainda rels que comutam sinais de altas freqncias, e que
utilizam conectores para os contatos do tipo coaxial. Este tipo de configurao
necessrio para que no ocorram perdas na transferncia das correntes que o rel
deve comutar em seus contatos.

2.7.4 Caractersticas eltricas dos Rels

Como acionar um rel? Quais circuitos externos podem ser controlados
por um rel? Na utilizao de qualquer tipo de rel num projeto fundamental
ter respostas para as duas perguntas acima, e em alguns casos para outras. Nos
manuais de fabricantes de rels encontramos informaes que permitem a
avaliao do que um rel pode fazer e como deve ser usado. No entanto,
48
preciso saber interpretar estas informaes, para que no aconteam surpresas
desagradveis num projeto. Iniciaremos ento nossas explicaes pelas
caractersticas eltricas dos rels.

2.7.4.1 Caractersticas da bobina

Para que o rel seja energizado corretamente e os contatos atuem,
preciso que uma corrente de intensidade mnima determinada circule pela sua
bobina. Devemos ento aplicar uma tenso de determinado valor, que em
funo da resistncia do enrolamento vai permitir que a corrente mnima
determinada seja estabelecida. Na prtica os rels so especificados em termos
da corrente que deve passar pelo enrolamento para uma determinada tenso que
a tenso de funcionamento. Na verdade preciso levar em conta que, para
fechar o rel, precisamos de uma certa intensidade de campo magntico que
puxe a armadura para perto da bobina com certa fora, mas uma vez que a
armadura se aproxima, o campo j no precisa ser to forte para mant-la junto
bobina, e com isso o rel fechado. Devemos ento distinguir a tenso que aciona
o rel da tenso que o mantm fechado que muito menor.
A corrente que aciona o rel denominada corrente de acionamento,
enquanto que a corrente que o mantm fechado (muito menor) a corrente de
manuteno. Fixando a tenso que deve disparar um rel de corrente contnua, a
corrente que vai circular por sua bobina funo da resistncia do enrolamento,
o que pode ser calculado facilmente pela lei de Ohm. Assim, se um rel for
especificado para uma tenso nominal de 24 volts, quando ento circula uma
corrente de 20 mA (0,02 A), podemos calcular a resistncia com uma simples
diviso:
R = V/I = 24/0,02 = 1200 ohms
49
As caractersticas da bobina do rel de corrente contnua (resistncia,
corrente e tenso) ficam ento perfeitamente definidas quando temos duas das
trs grandezas acima citadas: Se tivermos a tenso (V) e a corrente (I),
calculamos a resistncia (R) pela frmula:
R = V/I
Se tivermos a tenso (V) e a resistncia (R), calculamos a corrente pela frmula:
I = V/R
Finalmente, se tivermos a corrente (I) e a resistncia (R), calculamos a tenso
(V) pela frmula:
V = R x I
Veja que estas tenses so "valores nominais", ou seja, aqueles que so
recomendados numa operao normal. Na prtica o rel pode fechar seus
contatos com tenses menores, mas este fator deve, ser levado em conta quando
se desejar mxima confiabilidade do componente. Os valores superiores
tambm so admitidos, apenas at certo limite. Se a aplicao de uma tenso
num circuito que tenha uma certa resistncia, como a bobina de um rel,
significa a produo de calor, temos a um motivo claro da limitao. As bobinas
podem dissipar apenas uma quantidade definida de calor, que no deve ser
superada. Os fabricantes de rels indicam ento qual a porcentagem acima da
tenso nominal que pode ser aplicada no mximo na bobina de um rel sem o
perigo de haver aquecimento. Valores tpicos esto entre 10 e 15% acima da
tenso nominal. Resumindo: as caractersticas eltricas da bobina de um rel,
que devem ser levadas em conta num projeto, so:
Tenso nominal, tenso de operao e tenso mxima de trabalho
Corrente nominal
Resistncia hmica
Potncia nominal dissipada

50

2.7.4.2 Caractersticas dos contatos

Alm do nmero de contatos e o tipo, devemos tambm conhecer
caractersticas eltricas desses contatos, para utiliz-los sem problemas em
qualquer projeto. A primeira caracterstica que nos interessa a corrente
mxima que podem controlar. A abertura e fechamento dos contatos de um rel
exigem um certo tempo, o que significa que nos pontos de aproximao mxima
podem ocorrer arcos, ou seja, pequenas fascas que tendem a queim-los com o
tempo. Estas fascas so mais intensas quando se comuta um circuito indutivo
como, por exemplo, um transformador, um motor, um solenide etc.
A superfcie dos contatos determina, por outro lado, a intensidade
mxima da corrente que pode ser controlada. Estes dois fatores devem ser
levados em conta na utilizao de um rel. Assim, temos a especificao da
corrente mxima que cada contato pode controlar tanto em circuitos resistivos
como indutivos. Evidentemente, a corrente mxima num circuito resistivo
sempre maior que a permitida para um circuito indutivo. Alguns recursos
permitem a proteo dos contatos com o prolongamento de sua vida til, na
comutao e controle de cargas indutivas "amortecendo" as fascas, mas isso
ser visto posteriormente.
A vida til de um rel est basicamente determinada pela durabilidade
dos contatos, e como o desgaste ocorre nos momentos em que ocorrem as
comutaes, esta caracterstica dada em termos de abertura e fechamento do
rel em milhares ou mesmo milhes de vezes. Temos ainda como especificao
importante a tenso mxima que os circuitos do contato podem admitir. Esta
caracterstica importante levando-se em conta a possibilidade de ocorrer
faiscamentos ou mesmo fugas entre os contatos dado o seu afastamento na
posio em aberto, se a tenso mxima for superada.Valores tpicos esto na
51
faixa dos 150 aos 250V.Como a potncia controlada no circuito de carga dada
pelo produto da corrente pela tenso, em alguns casos especifica-se a potncia
mxima tambm.
Existem casos em que no se recomenda que a corrente mxima
especificada para os contatos seja aplicada tambm com a tenso mxima.
Limita-se assim a potncia.
Uma outra especificao importante em certas aplicaes o tempo que
o rel demora para fechar seus contatos. Existe ento um intervalo de tempo
mnimo indicado pelo fabricante que decorre entre a aplicao da tenso na
bobina e o pleno fechamento dos contatos. Este valor varia de tipo para tipo e
dado tipicamente em milisegundos (ms). Veja ento que os dois tempos devem
ser levados em conta quando se deseja que o rel opere em ciclos rpidos.
Do mesmo modo, existe um tempo determinado para o desaparecimento
do campo magntico na bobina a partir do instante em que a corrente
interrompida. As linhas de foras do campo magntico se contraem em
velocidade limitada pela indutncia da bobina, e isso influi diretamente no
tempo em que os contatos demoram para abrir (figura 19). Os fabricantes
especificam tambm o tempo de abertura do rel em milisegundos.


Figura 19: Conduo de corrente na Bobina

Linhas de fora de contrao
Tenso gerada na abertura do
interruptor
52
Estes tempos determinam a mxima freqncia que o rel pode
responder. claro que no se recomenda a utilizao deste tipo de componente
em aplicaes que exijam a repetio de muitos ciclos de operao rapidamente,
pois existe uma limitao para a vida til dos contatos. Esta vida til indicada
em termos de quantidade de operaes, ficando tipicamente entre 250 mil e 30
milhes, conforme a corrente controlada. Finalmente devemos levar em conta a
resistncia dos contatos que pode ser expressa de diversas formas.Uma das
maneiras consiste em se indicar a resistncia de contato inicial, que a
resistncia de um contato que ainda no comutou carga e, portanto, ainda no
sofreu desgaste pelo faiscamento. Esta resistncia expressa em milsimos de
ohm (mohms) situando-se tipicamente entre 10 e 100. Alm destas
especificaes todas existem outras que eventualmente podem ser necessrias
nas aplicaes mais crticas. Dentre elas podemos citar o isolamento entre a
bobina e os contatos, a capacitncia entre os contatos quando eles esto abertos,
j que nestas condies podemos consider-los como as placas de um capacitor.
Temos ainda o peso do componente, a vibrao, a rigidez dieltrica entre bobina
e contatos e entre os contatos etc.

2.7.5 Como usar um Rel

Alguns pequenos cuidados no projeto de circuitos com rels podem ser
importantes, tanto no sentido de se obter maior durabilidade para o componente,
como de proteger os prprios componentes do circuito de acionamento.
Analisemos os principais casos:




53
2.7.5.1 Proteo do circuito de acionamento

No momento em que um rel desenergizado, as linhas de fora do
campo magntico da bobina, que se encontram em seu estado de expanso
mxima, comeam a se contrair. Nesta contrao, as espiras da bobina do
prprio rel so cortadas, havendo ento a induo de uma tenso. Esta tenso
tem polaridade oposta quela que criou o campo e pode atingir valores muito
altos.
O valor desta tenso depende da velocidade de contrao do campo
(di/dt) e da indutncia da bobina (L). Se o componente que faz o acionamento
do rel no estiver dimensionado para suportar esta tenso, se no houver uma
proteo adequada, sua queima ser inevitvel (figura 20).



Figura 20: Proteo do Rel

Do mesmo modo, existe um tempo determinado para o desaparecimento
do campo magntico na bobina a partir do instante em que a corrente
interrompida. As linhas de foras do campo magntico se contraem em
velocidade limitada pela indutncia da bobina, e isso influi diretamente no
tempo em que os contatos demoram para abrir (figura 19). Os fabricantes
especificam tambm o tempo de abertura do rel em milisegundos.
Diversas so as tcnicas empregadas para eliminar este problema, sendo
a mais conhecida a que faz uso de um diodo, conforme mostra a figura 21.
Componente
que pode
queimar
Alta tenso
na abertura
do rel
Rel
54

.

Figura 21: Uso de um diodo para proteger o rel

O que ocorre neste caso que o diodo est polarizado inversamente em
relao a tenso que dispara o rel. Assim, quando ocorre a induo de uma alta
tenso nos extremos da bobina no momento da interrupo da corrente, o diodo
polarizado no sentido direto passa a ter uma baixa resistncia absorvendo assim
a energia que, de outra forma, poderia afetar o componente de disparo.
Outra tcnica, menos comum dado o custo do componente, a que faz
uso de um varistor ligado em paralelo com a bobina do rel, conforme mostra a
figura 18.
O varistor ou VDR um componente, normalmente de xido de zinco
que apresenta uma caracterstica no linear de corrente versus tenso, conforme
mostra a curva da mesma figura. Quando a tenso supera certo valor a
resistncia do componente cai abruptamente.
Esta propriedade pode ser usada para absorver a corrente no instante em
que o rel desenergizado e que poderia causar problemas aos componentes de
disparo.




Tenso de
controle
Diodo de
proteo
IN4148
Corrente na
abertura do
rel
Rel
+5 e 24V
55


Figura 22: Uso de um varistor para proteger o rel

A tenso do VDR ou Varistor deve ser escolhida de tal modo a ser maior
que a tenso de disparo do rel, porm menor que a tenso mxima suportada
pelo elemento usado no disparo.
A utilizao de um capacitor + resistor em paralelo com a bobina
tambm um meio de proteo, mas que nem sempre recomendado, dada a
velocidade com que ocorre a comutao.

2.7.5.2 Proteo dos Contatos

Alm da observao das limitaes de corrente e tenso que devem
aparecer nos contatos de um rel, existem alguns cuidados adicionais que podem
prolongar sua vida e, com isso, a vida do prprio rel.
Na comutao de cargas indutivas conveniente agregar-se ao circuito
elementos de proteo contra faiscamento.

Varistor
Rel
Corrente (A)
Tenso (V)
56


Figura 23: Uso do diodo em paralelo para evitar altas tenses

Na figura 23 temos um diodo usado em paralelo com a carga indutiva de
modo que seja evitado o aparecimento de altas tenses nos contatos na sua
abertura. Estas elevadas tenses poderiam causar faiscamento excessivo e com
isso a queima dos contatos.
Outro recurso consiste no emprego do varistor e at mesmo de
capacitores e resistores. Os capacitores e resistores so indicados para os
circuitos de corrente alternada, onde o diodo no pode ser empregado.






Diodo de
proteo
VDR
proteo
Carga
indutiva
Carga
Rel
Rel
57
Captulo 3


Metodologia


3.1 Tipo de Pesquisa

Nesta monografia sero mostrados um estudo e implementao de um
prottipo, desde os conceitos at a implantao de todos os recursos utilizados
durante o processo de desenvolvimento de software e hardware do sistema de
controle de dispositivos via web.
Este projeto foi desenvolvido nos Laboratrios da Computao, do
Departamento de Cincia da Computao e na maioria das vezes em casa com
auxlio do computador pessoal. O projeto iniciou efetivamente no ms de Maro
de 2003 e foi concludo aproximadamente no ms de Dezembro de 2003.
O projeto foi dividido nas seguintes fases:
Escolha do dispositivo a ser utilizado
Estudo do funcionamento do dispositivo
Criao de uma interface de comunicao entre o dispositivo e o
computador
Desenvolvimento de softwares de controle da interface
Desenvolvimento de um servidor de comunicao remota
Modelagem da arquitetura final do sistema
Desenvolvimento de sistemas web
Desenvolvimento do prottipo
Desenvolvimento de aplicaes distribudas sobre a arquitetura criada
Durante as fases citadas, os conceitos bsicos necessrios envolvem Circuitos
Eletrnicos, onde os conceitos de componentes eletrnicos so amplamente
58
utilizados nas fases de desenvolvimento de microcontroladores e da interface de
comunicao com o computador; Lgica Digital, que d todo o suporte para a
interface a partir do momento que comeamos a manipular dados digitais;
Arquitetura de Computadores, assim como a lgica digital, prov o suporte de
manipulao de endereos dos dispositivos na arquitetura x86; Programao
em Linguagem C, que permite a comunicao de softwares com o hardware
sem limitaes atravs da porta paralela, possibilitando uma maior flexibilidade
na manipulao dos dispositivos; Programao de Computadores, que a
base para as fases de software, onde os conceitos de orientao a objeto sero
amplamente explorados durante a implementao dos softwares da arquitetura
proposta; Sistemas Distribudos, que prov a base para a computao
distribuda, os conceitos dos sistemas Cliente/Servidor e Comunicao em
Grupo; Linguagens Comerciais, que dar suporte aos sistemas baseados na
web, bem como o ambiente de programao em C para PIC, da CCS, que um
ambiente muito eficiente e proporciona uma rapidez na execuo de projetos e o
software Delphi da Borland; Sistemas Operacionais, visto que em alguma parte
do projeto haver a necessidade de aplicaes utilizarem recursos de hardware,
alm da possibilidade de implementao deste projeto no somente em
ambientes Microsoft, mas tambm em ambientes Unix; Redes de
Computadores, provendo o conhecimento necessrio sobre as pilhas de
protocolos, arquiteturas e topologias de redes; e Engenharia de Software,
proporcionando o conhecimento necessrio para o gerenciamento deste projeto,
a distribuio e evoluo das fases, modelagens para os sistemas, formas de
implementao e de testes.



59
3.2 Material Utilizado

Durante o desenvolvimento deste projeto, vrios equipamentos de
hardware, sistemas operacionais, softwares, editores e compiladores sero
utilizados. Abaixo esto relacionados os softwares e hardwares utilizados.
Equipamentos de hardware:
multmetro
osciloscpio
fonte
Soldador e estanho
transistor
resistor
Diodos
Capacitores
Circuito integrado (MAX232)
Rel
Cabo LPT (impressora)
Conectores DB9 fmea/macho e DB25 macho
Leds
Reed-switch, lmpada, plug e tomada
Fios para interligao dos componentes
Microcontrolador 16F628
Matriz de contato
Sistemas operacionais:
Microsoft Windows 98 / 2000
Linux
Compiladores:
C para PIC da CCS (http://www.ccsinfo.com)
Borland Delphi
kylix
gcc (http://www.gnu.org/)
Softwares adicionais:
Apache Web Server 2.0.45 (http://www.apache.org)
Script CGI (http://cgiclube.cidadeinternet.com.br/)
Biblioteca parapin_0.90 para gcc
Browser
Hosts de desenvolvimento:
60
AMD AthlonXP 1700+ 256MB RAM
Suporte rede ethernet 100 Mbps com acesso Internet

3.3 Planejamento

3.3.1 A escolha do dispositivo a ser utilizado

A escolha do dispositivo a ser utilizado tomou por base trs fatores. Em
primeiro lugar, o fator financeiro, que levou-nos a procurar um dispositivo que
pudesse ser completamente acessvel de modo que o prejuzo fosse mnimo o
caso de danos permanentes. Em segundo, o fator dificuldade, procuramos um
dispositivo que possusse funcionalidades de fcil compreenso. Por fim, o fator
praticidade, onde visamos trabalhar com algo que pudesse ser facilmente
transportado e que no exigisse cuidados especiais.
Levando em conta tais fatores, o dispositivo escolhido foi uma lmpada.
Pois a partir deste dispositivo que ser testado, poderemos utilizar nosso sistema
para qualquer outro dispositivo semelhante, basta adaptarmos nosso sistema.

3.3.2 O estudo do funcionamento do dispositivo

Especificado o dispositivo a ser utilizado, ser dado incio fase de
estudos sobre seu funcionamento. Nesta fase, sero aplicados os conceitos de
Circuitos Eletrnicos para a compreenso do funcionamento dessa lmpada com
relao ao sistema de controle. Sero realizados testes operacionais sobre o
circuito eletrnico at que toda sua lgica seja conhecida.

3.3.3 A criao da interface para a comunicao entre o dispositivo e
o computador

Aps a compreenso do funcionamento do circuito eletrnico do
dispositivo, iniciar uma fase de projeto de uma interface de comunicao para a
61
interao entre o circuito e o computador. A forma adotada para prover a
comunicao entre o computador e o circuito foi a utilizao da porta paralela do
computador. Nesta fase sero aplicados os conhecimentos de Arquitetura de
Computadores e Circuitos Eletrnicos. Os programas teste sero
desenvolvidos sobre o Windows de forma a verificar a sua funcionalidade.

3.3.4 O desenvolvimento de softwares de controle da interface

Depois de criar e validar a interface de comunicao entre o computador
e o dispositivo, iniciaremos a fase de desenvolvimento de softwares para o
controle e operao deste dispositivo. Nesta fase sero utilizados cdigos em
linguagens orientadas a objeto (C e Delphi) juntamente com a linguagem CGI
para que as aplicaes possam acessar a porta paralela. Da mesma forma como
nas fases anteriores, os testes de validao sobre o que foi gerado tambm sero
realizados.

3.3.5 O desenvolvimento de um servidor de comunicao remota

Neste ponto do projeto, passaremos para a fase de desenvolvimento de
servidores para suporte computao distribuda. Utilizando os conceitos de
sistemas Cliente/Servidor e o conhecimento dos protocolos correntes das redes
de computadores, os servidores sero modelados e desenvolvidos utilizando o
protocolo TCP (Transmition Control Protocol). Novamente, realizaremos uma
fase de teste para validar nosso dispositivo. A partir da, j teremos uma boa
parte da arquitetura idealizada concluda.



62
3.3.6 A modelagem da arquitetura final do sistema

Em paralelo com o desenvolvimento das fases restantes do projeto,
daremos incio modelagem da arquitetura do sistema, partindo-se do que
iremos implementar e chegando no que seria a arquitetura final do escopo deste
projeto. Baseando-se nas fases que sero concludas, chegaremos a uma
estrutura final como segue abaixo:







3.3.7 O desenvolvimento de sistemas web

Com base nos resultados das implementaes das fases anteriores, a
continuidade do projeto visou a disponibilizao de um sistema para a
manipulao do dispositivo atravs de browsers para a Internet. Nesta fase, os
conceitos de programao para a Internet foram amplamente utilizados. Partindo
da configurao de servidores apache e especificao e implementao de
aplicaes CGI, foi disponibilizado um sistema web para a manipulao do
Rede local
ou internet
RS232
Atuadores
Figura 24: Arquitetura final do sistema
PC com browser
TCP/IP
Lmpada
PC com web server e aplicao
dedicada

microcontrolador
63
dispositivo a partir de HTTP (Hiper Text Transfer Protocol). Aps a
implementao do sistema, o browser ser utilizado para a realizao de testes e
validao.

3.3.8 O desenvolvimento do prottipo

Com a disponibilizao de um sistema para a manipulao do
dispositivo atravs de browsers para a Internet, ser desenvolvido um prottipo
para o envio de comandos atravs da porta serial ou paralela. Este prottipo ser
responsvel pela interao do usurio com o dispositivo. Nesta fase, os conceitos
de circuito integrado, microcontroladores e componentes eletrnicos foram
amplamente utilizados. Finalizada a instalao e configurao dos sistemas web
e de cabeamento, o prottipo ser implantado no sistema para a realizao de
testes e validao.

3.3.9 O desenvolvimento de aplicaes distribudas sobre a
arquitetura criada

Com o trmino das implementaes que compe a arquitetura final,
descrita anteriormente, a fase que segue a de desenvolvimento de aplicaes
sobre esta arquitetura criada. Esta fase uma fase que no possui fim, visto que
inmeras aplicaes podero ser criadas baseando-se no que j existe e muitas
outras podem vir a serem criadas partindo-se de novas tecnologias. O projeto
restringiu-se apenas a criao de um web site que utiliza o servidor html criado
(para a utilizao do dispositivo atravs da internet em qualquer parte do
mundo), uma aplicao remota que faz uso do servidor TCP e uma aplicao que
manipula o dispositivo localmente.


64
3.4 Desenvolvimento do Dispositivo de Controle

O objetivo do prottipo ser uma ferramenta para a monitorao e
controle de dispositivos eletrnicos. Este prottipo ter como interface, o
browser da Internet e os comandos de gerenciamento sero feitos utilizando o
programa CGI, Delphi e linguagem C. O monitor estar instalado em um host
conectado a uma rede Ethernet utilizando o protocolo TCP/IP. Neste captulo
sero abordados os detalhes relevantes sobre o desenvolvimento do prottipo.

3.4.1 Descrio do Sistema

Antes de entrar na parte tcnica, mostrarei uma breve explicao do
funcionamento do sistema e sua estrutura.
Primeiramente, observe a figura 25, note que a planta de um cmodo
de uma casa. No projeto ser feita uma maquete para simular este cmodo. Este
setor ser nosso laboratrio de testes. Nas partes onde esto localizadas a porta
e a janela, sero instalados sensores do tipo reed-switch (figura 26) para saber se
a porta ou a janela est fechada ou aberta. No laboratrio encontra-se tambm
uma lmpada e uma bancada, onde sero instalados um rel e um contador para
poder lig-las remotamente.




Lmpada
Porta
Janela
Bancada
Figura 25: Maquete do laboratrio Figura 26: Sensor reed-switch
65
Agora observe o diagrama representado na figura 27, nele encontra-se
um PC (computador) com um browser e outro PC que vai estar no laboratrio
que, por sua vez, est conectado em um microcontrolador atravs de um canal
serial RS-232 que vai monitorar os sensores (porta e janela) e controlar os
atuadores (luz e bancada).
Os dois computadores se comunicam entre si utilizando protocolos
TCP/IP dentro de uma Rede Local ou Internet. A idia do funcionamento bem
simples, no browser do PC o usurio digita o endereo do WEB Server que, por
sua vez, se comunica com o microcontrolador executando comandos de escrita
para comandar os atuadores (luz e bancada) e comandos de leitura para saber os
estados dos sensores (porta e janela).








O componente mais importante do prottipo responsvel pela execuo
dos atuadores e sensores o microcontrolador, onde ser definido o protocolo de
comunicao dentro do canal serial RS-232. Esse protocolo ser gerenciado
Rede Local
ou Internet
TCP/IP
PC com Browser
PC com servidor
WEB e aplicao
dedicada
Microcontrolador
Serial RS232
Janela Lmpada
Porta Bancada
Sensores Atuadores
TCP/IP
Figura 27: Diagrama do funcionamento do dispositivo de controle
66
pela aplicao de controle do laboratrio. Teoricamente, o computador onde
est instalado o WEB Server s responde se tiver uma requisio atravs de um
browser. Isso facilitar o algoritmo que ser aplicado no microcontrolador, que
ficar monitorando o canal serial at receber os comandos de escrita ou leitura.
A figura 28 representa o fluxograma do programa do microcontrolador.










Figura 28: Fluxograma do programa do microcontrolador

Para este projeto, o microcontrolador escolhido foi o PIC16F628 que
pino compatvel com o PIC16F84, a diferena que tem um custo menor e tem
mais perifricos. Foi adotado tambm o ambiente de programao em C para
PIC, da CCS (Custom Computer Services), que um ambiente muito eficiente e
proporciona uma rapidez na execuo de projetos.
Para fazer a aplicao de controle da serial e enviar resposta via HTML
(Hypertext Markup Language), ser utilizado o ambiente Delphi. Basicamente, a
Incio
Comando
recebido
Leitura
Escrita
L sensores
Envia
resposta
Escreve nos
atenuadores
Sim
No
No
Sim
No
Sim
67
aplicao ser um CGI (Common Gateway Interface) standalone. Essa aplicao
receber requisies HTML (vindas de um browser), far o processamento da
requisio (comandos de leitura ou escrita na serial) e responder via HTML
para o browser. A figura 29 mostra o fluxo das requisies e atuaes.







3.4.2 Conexes via Cabo Serial e Paralelo

O interessante de uma conexo via cabo paralelo ou serial a facilidade
de se executar, e o custo do material, pois utiliza somente dois conectores e
alguns metros de cabo, e nenhum equipamento ou placa adicional. Utiliza-se
somente a porta paralela ou serial, que j padro em qualquer PC.
Normalmente pode-se utilizar este tipo de conexo para jogos,
transferncia de arquivos entre PCs, dispositivos externos e em ambientes
industriais na qual utilizada para a comunicao dos mais diversos tipos de
Microcontrolador
PC com
servidor WEB
e aplicao
dedicada
Requisio
HTML
Requisio
HTML
PC com
browser
Resposta
HTML
Resposta
HTML
Envia
Resposta
Recebe
Comando
1
2
3 4
5
6
Rede Local ou
Internet
Figura 29: Fluxo das requisies e atuaes
68
equipamentos microprocessado devido exatamente ao seu baixo custo de
implantao.
Antigamente era utilizado somente para a transferncia de arquivos em
ambiente DOS e no WINDOWS 3.1 havia o hiper terminal que ainda existe nos
WIN95,98, NT ,2000. No windows 95 em diante foi criada a conexo direta via
cabo, que aumentou muito as possibilidades de aplicao para este tipo de
conexo. Pode-se, por exemplo, conectar-se a outro PC remoto como em um
ambiente de rede completo, compartilhando arquivos, pastas, cd-rom,
impressoras. Neste tipo de conexo (Internet Conection Sharing) no possvel
utilizar o compartilhamento de acesso a Internet devido inexistncia de um
adaptador de rede real (o adaptador Dial-Up virtual).
Para a conexo serial utilizasse a sada RS 232 de 9 ou 25 pinos presente
em qualquer PC, j para a conexo paralela, a sada paralela ( LPT1 , LPT2 ... )
de 25 pinos.
H vrias maneiras de ligar um dispositivo externo a um computador,
como, conexo via cabo paralelo (hardware e software), rdio frequncia, a
interface infravermelho (IrDA), a porta USB (Universal Serial Bus) e conexo
via cabo serial (hardware).
O uso do cabo paralelo foi uma das opes para realizar a conexo entre
o prottipo e o computador, pelo fato de todos os computadores possurem uma
porta paralela (porta DB25 da impressora), esta porta nem sempre est sendo
utilizada a todo o tempo (a serial utilizada pelo mouse), a velocidade de
transmisso bem mais alta que a do cabo serial, pois a serial possui somente
uma via de dados e a paralela possui oito, ideal para transmitir grande volume de
dados entre os computadores. Apesar da vantagem do cabo paralelo, utilizei
tambm como opo o cabo serial, pois atualmente o mouse utiliza a porta PS/2
e com isso a porta do mouse fica disponvel. Portanto, para que o prottipo se
69
comunicasse com o computador atravs das duas opes, utilizei neste projeto a
serial RS-232 (adaptvel ao conector de 9 e 25 pinos).

3.4.3 Servidor Internet

Como foi implementado no projeto a comunicao TCP/IP, foi
desenvolvido tambm um servidor para receber e enviar os comandos de leitura
e escrita entre o browser e o microcontrolador atravs da interface serial RS232.
O servidor utilizado para aplicao do script CGI foi o Apache, pelo fato de sua
instalao e configurao ser fcil e simples de executar.
A verso utilizada para este projeto foi o Apache 2.0.45. Este servidor
pode ser encontrado no seguinte site (http://www.apache.org). A instalao do
Apache feita como qualquer outro programa do Windows. Depois de instalado,
necessrio fazer a configurao do servidor, atravs do arquivo httpd.conf. O
mnimo que deve ser configurado o diretrio onde os documentos estaro,
atravs da opo DocumentRoot.
Basta procurar a opo e escrever o nome do diretrio, como no
exemplo: DocumentRoot "C:\akira\" Uma outra configurao bsica a
DirectoryIndex, que informa ao servidor quais os arquivos sero exibidos
automaticamente como ndice do diretrio. isso que faz com que ao digitar,
por exemplo, "www.projeto.com.br", o servidor saiba qual dos arquivos do
diretrio deve ser exibido. Abaixo temos um exemplo da utilizao do
DirectoryIndex:

DirectoryIndex index.html index.htm.

Para definir essa configurao, cria-se um arquivo com um dos nomes
definidos como ndice e este alocado no diretrio definido como root. Para
70
saber se o servidor foi instalado corretamente, basta executar o Apache e acessar
o endereo "http://localhost" pelo browser. Se a pgina for exibida, porque o
servidor foi instalado corretamente.
Em seguida deve-se configurar o Apache para reconhecer o script cgi.
Atualmente o apache j vem configurado para executar cgi, caso isso no ocorra,
deve-se configurar a diretiva ScriptAlias e LoadModule da seguinte maneira:

ScriptAlias /cgi-bin/ "C:/Apache Group/Apache2/cgi-bin/"
LoadModule cgi_module modules/mod_cgi.so (deixar ativo)

Com o servidor pronto para testar o executvel do laboratrio, ser
desenvolvido o programa que enviar e receber os comandos vindos do
microcontrolador e as respostas de envio e recebimento do status do dispositivo
atravs da Internet.

3.4.4 Aplicao Desenvolvida

Primeiramente foi desenvolvida uma aplicao para carregar as variveis
de comando e leitura no microcontrolador e para que o software aplicativo possa
executar e verificar o estado dos componentes do laboratrio.
Esse aplicativo foi desenvolvido na linguagem de programao C e foi
utilizado o compilador CCS que possui algumas diretivas que facilitam o acesso
a porta serial e o envio e recebimento de dados. Na figura 30 descrito o cdigo
de leitura do status dos dispositivos que esto presentes no laboratrio.
71

Figura 30: Cdigo de Leitura

Foi includo o header 16F628 que a classe do microcontrolador
16F628 da famlia PIC. As demais diretivas se referem aos pinos utilizados do
microcontrolador e ao tipo de acesso a porta de comunicao. Em seguida foram
definidas as variveis referentes aos dispositivos. Esta funo apenas verifica o
estado de cada sensor (porta e janela).
Na figura 31 descrito o cdigo de escrita para os atuadores (lmpada e
bancada). E na figura 33 temos a implementao bsica da main()
72
]
Figura 31: Cdigo de Escrita


Figura 32: Parte do cdigo main


73

Figura 33: Cdigo main()

A funo resposta() utilizada apenas para mostrar os resultados de
cada requisito. A funo executa_cmd() para definir o tipo de requisio. E
por fim temos o programa principal responsvel pela leitura e escrita dos
dispositivos.

3.4.5 Software Aplicativo

A interface que o usurio utiliza para acessar os dispositivos o browser
da Internet. Esta interface manipulada no computador que possui o servidor
web e o aplicativo de comunicao com a serial, como visto na figura B. Para
ter acessa a esta interface, necessrio que o usurio esteja conectado a Internet.
Caso o acesso a esta interface seja numa rede local, basta digitar o ip da
mquina.
Para desenvolver esta interface, foi utilizado o Delphi para acessar a
serial e o CGI para atualizar e alterar os comandos de leitura e escrita dos
dispositivos. O uso do CGI facilita o monitoramento dos dispositivos, pois a
cada alterao feita no laboratrio, a interface atualizada automaticamente.
74
O software aplicativo utiliza as seguintes bibliotecas: SysUtils, Classes,
HTTPApp, HTTPProd, CPort, uCiaComport. Essas bibliotecas j vm prontas
no Delphi, isso possibilita um enfoque mais detalhado no programa principal.
Para gerar a pgina HTML foi criado um mdulo chamado
TPageProducer. A partir dele, ser enviado aos atuadores os comandos de
escrita e verificado nos sensores os comandos de leitura. Na figura 34 vemos
um trecho do cdigo TPageProducer.


Figura 34: Trecho do cdigo TPageProducer

No programa principal h uma rotina que manipula as tags colocados
dentro do html. Tags so marcas <#BOTAOLUZ> que, quando o pageproducer
processa o html e encontra a tag, chama esta rotina para a substituio da tag por
algum valor texto. As tags so inseridas dentro do html que est na propriedade
HTMLDoc do componente main (que um PageProducer). Na figura 35 vemos
parte do cdigo que manipula as tags colocados dentro do html.

75

Figura 35: Parte do cdigo que manipula as tags colocados dentro do html

Neste cdigo vemos que h vrias instrues que verificam se as tags do
pageproducer foram chamadas para serem aplicadas no microcontrolador. No
exemplo do atuador da luz na figura Y, se o HardwareStatus for 1, indica que a
luz est acesa, caso contrrio, est apagada.
Se houver algum tipo de requisio dos atuadores, estes so aplicados na
varivel CMD para montar as aes via serial, como visto na figura 36.
76

Figura 36: Cdigo que monta as aes via serial

Na figura 37 vemos o cdigo para ter acesso a porta serial e enviar e
receber comandos de leitura e escrita. Neste cdigo a varivel COMM foi
definida como COM1 para ter acesso a serial COM1. Para ter acesso a COM2
basta alterar a varivel COMM. Para enviar o comando de leitura via serial
utiliza-se a funo WriteStr e para receber o status dos dispositivos utiliza-se a
funo ReadStr.
Ao compilar o programa, ser criado um executvel chamado lab1.exe
para ter acesso a COM1. O lab2.exe ser utilizado para ter acesso a COM2. O
uso deste programa na Internet feito da seguinte maneira. Como o servidor est
pronto para executar um programa CGI, basta enviar o arquivo lab1.exe e
lab2.exe para o subdiretrio cgi-bin do Apache. Para testar o laboratrio,
utilizamos um browser qualquer e digitamos no endereo o seguinte caminho:
http://localhost/cgi-bin/lab1.exe
77

Figura 37: Trecho de cdigo para ter acesso a porta serial

3.4.6 Funcionamento do Hardware

Os principais componentes utilizados para desenvolver o prottipo so o
microcontrolador, o Rel e o circuito integrado MAX232. Capacitores,
resistores, diodos e transistores foram utilizados para evitar curto circuito ou
inverso da polaridade. A figura 38 mostra o esquema eltrico do prottipo.
78

Figura 38: Esquema eltrico do prottipo

Como foi dito no referencial terico, o microcontrolador 16F628 foi
utilizado devido a sua eficincia e baixo custo. O uso de rels neste prottipo
tambm muito importante, pois eles so responsveis pelo controle dos
dispositivos ligando ou desligando-os. E para enviar os dados por uma sada
serial, utilizou-se o chip MAX 232, que converte os nveis de tenso TTL para
RS-232.
O conector DB9 (fmea) foi utilizado para conectar na porta serial do
computador, no caso na porta COM1 ou COM2, nota-se que so utilizados
apenas os pinos 2, 3 e 5. O pino 2 ligado ao pino 14 do MAX232 e o pino 3 do
conector ligado ao pino 13 do circuito integrado. Sendo o pino 2 receptor e o
pino 3 transmissor de dados. O pino 5 o terra da serial. A figura 39 mostra a
estrutura do prottipo desenvolvida.
PIC16F628
MAX
232
1
2
3
4
5
6
7
8
9
12
13
15
16
5
14
8
7
10
11
11
1
3
5
4
13
14
2 6
15
2
3
5
12
16
+5V
+12V
+5V
+5V
+12V
+12V
+12V
+5V
7805
LUZ
Contador
bancada
Reed-
switch
R2
R3
R1
79

Figura 39: Prottipo

O MAX232 utilizado para compatibilizar os nveis de tenso
apresentados pela porta serial (-12V/+12V) com os nveis aceitos pelo
transmissor e pelo receptor (+5 volts), a alimentao do MAX232 deve ser de
+5V e esta tenso adquirida pelo pino 16. O pino 15 o terra do circuito.
Capacitores so utilizados para permitirem o funcionamento correto do
MAX232 conforme apresentado em seu manual.
80
Os dados do circuito integrado so transmitidos atravs dos pinos
11(receptor) e 12(transmissor) e ligados aos pinos 7 e 8 do microcontrolador. O
PIC converte esses sinais digitais em pequenas tenses que so transmitidas para
os rels, atravs dos pinos 10 e 11. Como foi visto no referencial terico,
quando um rel recebe uma certa tenso, o contato ativado e assim a corrente
passa pelo circuito (Este circuito pode ser uma lmpada).
Foi criado um regulador de tenso para alimentar o MAX232 e o
microcontrolador. Este regulador utiliza uma tenso de +12V/100mA vindos da
serial. Como nenhum pino da serial no tem essa tenso, criou-se um software
para que um dos pinos que no est sendo utilizado na comunicao ficar com
nvel 0, sendo que nvel 0 no RS232 12V e nvel 1 -12V. Esta tcnica
bastante utilizada e pode alimentar circuitos que consomem pouca corrente. A
figura 40 mostra o regulador de tenso.

Figura 40: Regulador de Tenso


81
Captulo 4


Consideraes Finais


4.1 Dificuldades Encontradas

As etapas que realmente foram implementadas do prottipo foram a
aquisio de dados atravs da Internet utilizando o protocolo TCP/IP e o acesso
aos comandos de leitura e escrita atravs da serial RS232. Este procedimento
atualizado constantemente, de acordo com o tempo configurado. Quando o
usurio quiser ligar ou desligar algum dispositivo, basta pressionar os botes que
esto disponveis na interface de comunicao e os dados sero enviados pela
porta serial, para um microcontrolador e deste para o computador que retornar
com o status do dispositivo.
As funcionalidades do projeto que envolvia a serial RS232 no foram
implementadas. Aps ter sido estudada a melhor soluo para realizar esta
tarefa, foi escolhido o componente MAX232, da Maxim, que possui perifricos
disponveis como a serial RS232. Foi feito ento todo o estudo para integrao
do mesmo com o microcontrolador PIC (hardware), bem como o Rel para
poder ativar ou desativar os dispositivos que foram instalados para testes. Todas
estas funcionalidades j foram descritas no referencial terico.
A primeira dificuldade encontrada foi em relao alimentao do
MAX232 e do PIC16F628. Isto foi resolvido usando um regulador de tenso,
que converte a tenso de 12V para 5V utilizando um regulador 7805. Outro
problema encontrado foi carregar um software no microcontrolador para ter
acesso a serial e aos dispositvios. Para isto, foi desenvolvido um programa em C
82
para acessar seus componentes. A grande dificuldade em desenvolver esse
programa foi a falta de um compilador compatvel com o programa. O
desenvolvimento do programa em linguagem Assembly foi uma das opes,
porm, no havia material suficiente que mostrasse todos os recursos que seriam
utilizados pelo prottipo como, por exemplo, o acesso a serial RS-232 e ao
microcontrolador da famlia PIC. Havia um compilador da CCS compatvel com
as diretivas do programa. Porm, depois de compilado o programa, surge mais
um empecilho, um aparelho que desse suporte ao microcontrolador. Quer dizer,
o programa precisaria ser armazenado na memria do programa do PIC16F628,
para que o software criado em html tivesse acesso ao programa do
microcontrolador. Havia um gravador da ALLMAX na UFLA, porm esse
aparelho era muito antigo e no era compatvel com o PIC16F628. Logo no foi
possvel fazer o download do programa no microcontrolador.
O que foi ento realmente implementado foi o microcontrolador com
comunicao serial. Esta comunicao serial feita com o MAX232 e software
de configurao, responsvel em receber e enviar os valores de comando e
mostr-los em um browser na Internet. No circuito foram instalados vrios
capacitores, diodos, transistores, resistores para evitar perda de componentes
importantes tal como o circuito integrado MAX232 e o PIC16F628. O nico
dispositivo a ser testado foi a interface de comunicao entre o usurio e o
prottipo.
Foi utilizada uma fonte de tenso externa, colocada no regulador para
verificar seu correto funcionamento. O sinal de tenso enviado para o conector
P4 e deste passa para o regulador 7805 convertendo em um sinal de tenso de
5V. Os teste seriam realizados da seguinte maneira, seriam utilizados uma
lmpada, uma bancada e dois sensores, sendo um instalado na porta e outro na
janela do laboratrio. Seriam 2 tipos de testes, um atravs da Internet e outro
atravs da rede local.
83

4.2 Concluso

Nesta monografia foram descritos todo o funcionamento do
microcontrolador, protocolo TCP/IP, Rels, servidor e interface serial. Foram
dadas as descries de todo o circuito e tambm da parte de software. O
prottipo foi desenvolvido de forma correta e a configurao de software
funcionou normalmente atingindo o objetivo proposto. O que no foi atingido
no projeto, apresentado como proposta inicial, foi o desenvolvimento deste
projeto no linux. Um dos empecilhos foi a falta de material completo para a
implementao do software no kylix e o acesso a porta serial ser muito
complexa. O que foi desenvolvido foi um controlador com comunicao serial
RS-232. As principais dificuldades encontradas no projeto foram relacionadas ao
compilador do programa, o acesso ao microcontrolador atravs do software
desenvolvido em linguagem C, montagem do prottipo e a implantao do
projeto no sistema operacional Linux. O grande empecilho foi o gravador de
PIC que estava indisponvel no momento em que se realizariam os testes.
Mesmo que no tenham sido implementadas toda as funcionalidades propostas,
aprendi a lidar com o protocolo TCP/IP, rede Ethernet, rels, ambiente WEB e
sua aplicao utilizando microcontroladores PIC. Aprendi tambm que todo o
processo de desenvolvimento necessita de um bom gerenciamento e organizao
para no se perder durante o processo.

4.2 Trabalhos Futuros

A minha recomendao, caso algum se interesse em dar continuidade
ao projeto, sugiro que continue utilizando o compilador da CCS, pois o seu
84
planejamento de projetos muito eficaz. H vrios outros tipos de trabalhos que
podem ser feitos sobre esse projeto, como por exemplo, o meio de comunicao.
Ao invs de utilizar cabo serial, pode-se adaptar a estrutura de
comunicao pela tecnologia wireless (sem fio). Embora a instalao do sistema
seja um pouco mais cara, no futuro, pode economizar tempo e dinheiro, j que
elimina a necessidade de instalao de um novo cabeamento. O Sistema wireless
expandiria a rede de dados j existente ou aumentaria o nmero de dispositivos
em locais onde seria difcil a passagem de cabos.
Outro trabalho bastante interessante seria adaptar o projeto sobre o
sistema operacional Linux, pois assim garantiria o cdigo livre de todas as
ferramentas utilizadas durante o processo.
Outra dica seria implantar um sistema de segurana na interface de
comunicao entre o usurio e o dispositivo. Um sistema de acesso com senha
ou de segurana tipo firewall, antivrus e outros sistemas que impediria o acesso
de qualquer pessoa a no ser o usurio ao sistema.
Como o projeto desenvolvido um prottipo base, h uma infinidade de
adaptaes que podem ser feitas sobre o projeto.






85
Referncias Bibliogrficas

[Bernardes & Chostakovis (2002)] Bernardes, L. H. C. & Chostakovis, R. Con-
trole de Dispositivos pelo Internet Explorer. Eletrnica Total n
88, 2002.

[Comer (1998)], Douglas E; Interligao em rede com TCP/IP. Rio de Janeiro
Campus, 1998.

[Kuo (1995)], Benjamin C.; Automatic Control Systems, seventh edition,
1995.

[Redes (2001)], Curso de. Trabalho sobre as camadas de rede. Proena,
mar [2001?]. Disponvel em: <http://proenca.uel.br/curso-
redes-graduacao/1998/trab-08>. Acesso em: 25 mar. 2003.

[RFC 791(2001)]. Internet Protocol. Califrnia, mar [2000?]. Disponvel
em <http://www.netsys.com/rfc/rfc791.txt>. Acesso em:
12 mar. 2003.

[Stang (1994)], David J; MONN, Sylvia. Segredos de segurana em rede. Rio de
Janeiro: Berkeley, 1994.

[Starlin (1999)], Gorki. Manual Completo do Hacker: como ser e evita-los. Rio
de Janeiro: Book Express, 1999.

[Stevens (1994)], Richard. TCP/IP Illustrated, Volume 1:The Protocols,Addison
-Wesley, 1994

[Tanembaum (1997)], Andrew S. Redes de computadores. Rio de Janeiro: Cam-
pus, 1997.

[MAXIM(2001)]. Datasheets de componentes. Disponvel em:
<http://www.maxim-ic.com>. Acesso em: 15 de julho de 2003.

[MICROCHIP(2000)]. Datasheets de componentes e notas de aplicao.
86
Disponvel em: <http://www.microchip.com>. Acesso em: 05 de
Agosto de 2003.

[SEIKO]. Datasheets de componentes. Disponvel em:
<http://www.iready.com>. Acesso em: 05 de Agosto de 2003.

[Souza], David Jos de. Desbravando o PIC. So Paulo: Ed. rica, 2000. 2
Edio.

[Malvino], A. P. & LEACH, D. P. Eletrnica Digital - Princpios e Aplicaes.
So Paulo: Editora McGraw-Hill, vol 1 e 2. 1987

Das könnte Ihnen auch gefallen