Post on 08-Nov-2020
Centro Universitário Positivo - UnicenP Núcleo de Ciências Exatas e Tecnológicas NCET
Engenharia da Computação
Leonardo Saba
GUIA ELETRÔNICO DE INFORMAÇÕES
Curitiba
2004
Centro Universitário Positivo - UnicenP Núcleo de Ciências Exatas e Tecnológicas NCET
Engenharia da Computação
Leonardo Saba
GUIA ELETRÔNICO DE INFORMAÇÕES
Monografia apresentada à disciplina de
Projeto Final, como requisito de conclusão
do Curso de Engenharia da Computação.
Orientador: Prof. Marcelo Mikosz
Gonçalves
Curitiba
2004
iii
TERMO DE APROVAÇÃO
Leonardo Saba
GUIA ELETRÔNICO DE INFORMAÇÕES
Monografia aprovada como requisito parcial à conclusão do curso de
Engenharia da Computação do Centro Universitário Positivo, pela seguinte banca
examinadora:
Prof. Marcelo Mikosz Gonçalves (Orientador)
Prof. Edson Pedro Ferlin (Banca examinadora)
Prof. Adriana Cursino Thomé (Banca examinadora)
Curitiba, 8 de dezembro de 2004
iv
AGRADECIMENTOS
A Virgem Maria e Nossa Senhora da Aparecida que estão comigo em todos os
momentos de minha vida e que sem Elas, não poderia ter escrito nem esta frase.
Aos meus pais Jorge Saba Neto e Izabel Denário Saba à irmã Gracielle Saba
pelas alegrias e descontração que me proporcionaram durante todo o
desenvolvimento deste trabalho.
A CELEPAR pela oportunidade e apoio com importantes recursos técnicos
para o desenvolvimento deste trabalho.
A Secretaria da Segurança Pública do Estado do Paraná e especialmente ao
Núcleo de Informática e Informações pelo apoio recebido dos colegas de trabalho.
Ao professor orientador Marcelo Mikosz pela condução do projeto, apoio,
incentivo e compreensão em momentos de dificuldade.
A todos os professores do curso que com os seus conhecimentos,
contribuíram de forma efetiva para a realização deste trabalho.
Aos meus amigos e amigas todos que direta ou indiretamente contribuíram
para este trabalho.
Aos laboratoristas em geral, e aos colegas que me ajudaram.
v
SUMÁRIO
TERMO DE APROVAÇÃO III
AGRADECIMENTOS IV
SUMÁRIO V
LISTA DE FIGURAS VIII
LISTA DE TABELAS IX
LISTA DE SIGLAS X
RESUMO XI
ABSTRACT XII
INTRODUÇÃO 13
CAPÍTULO 1 15
1
O PROJETO 15
1.1 DESCRIÇÃO DO TEMA 15 1.2 MOTIVAÇÃO DO DESENVOLVIMENTO 15 1.3 CONTEXTO EM QUE ESTÁ INSERIDO 16 1.4 METAS A SEREM ALCANÇADAS 16 1.5 CONTRIBUIÇÃO 17 1.6 ORGANIZAÇÃO 17
CAPÍTULO 2 20
2
OBJETIVOS DO PROJETO 20
2.1 OBJETIVOS GERAIS 20 2.2 OBJETIVOS ESPECÍFICOS 20
vi
CAPÍTULO 3 21
3
ESTUDO TEÓRICO 21
3.1 TÉCNICAS DE TRANSMISSÃO DE DADOS 21 3.2 LEITORES DE CÓDIGO DE BARRAS 24 3.3 TRANSMISSORES E RECEPTORES UTILIZADOS NO PROJETO 25 3.4 TRANSMISSÃO DE DADOS 25 3.5 MICROCONTROLADOR 8051 26 3.6 DISPLAY LCD 27 3.7 LEITOR DE CÓDIGO DE BARRAS 28 3.8 JUSTIFICATIVA DA ESCOLHA ENTRE OS MÓDULOS ESTUDADOS 28
CAPÍTULO 4 30
4
DESCRIÇÃO 30
4.1 DESCRIÇÃO GERAL DO SISTEMA 30 4.2 MÓDULOS E SUB-MÓDULOS 32
CAPÍTULO 5 36
5
ESPECIFICAÇÃO DO HARDWARE 36
5.1 DIAGRAMAS ESQUEMÁTICOS 36 5.2 DIAGRAMAS DE SEQÜÊNCIA DE HARDWARE 42
CAPÍTULO 6 45
6
ESPECIFICAÇÃO DO SOFTWARE 45
6.1 AMBIENTE DE DESENVOLVIMENTO 45 6.2 LINGUAGENS E FERRAMENTAS 45 6.3 INTERFACE COM O USUÁRIO 46 6.4 DIAGRAMA EM BLOCOS 46 6.5 DIAGRAMAS UML 48 6.6 SOFTWARE 59 6.7 FLUXOGRAMAS 63
CAPÍTULO 7 70
7
COMUNICAÇÃO HARDWARE E SOFTWARE 70
CAPÍTULO 8 74
vii
8
RESULTADOS 74
CAPÍTULO 9 77
9
ESPECIFICAÇÃO DE VALIDAÇÃO DO PROJETO 77
CAPÍTULO 10 81
10
CONCLUSÃO 81
REFERÊNCIAS BIBLIOGRÁFICAS 83
ANEXOS 85
viii
LISTA DE FIGURAS
Figura 3. 1 Modulação em amplitude A. M. .....................................................................................................22 Figura 3. 2 Modulação em freqüência FM. ......................................................................................................22 Figura 3. 3 Transmissão PAM Pulse Amplitude Modulation. .....................................................................23 Figura 3. 4 Modulação ASK - Amplitude Shift Keying. ...................................................................................23 Figura 3. 5 Modulação FSK - Frequency Shift Keying. ..................................................................................24
Figura 4. 1 Módulo de identificação do local. ..................................................................................................33 Figura 4. 2 Módulo de identificação de objeto. ................................................................................................34 Figura 4. 3 Leitura do código de barras pelo usuário. ....................................................................................34 Figura 4. 4 Transmissão do cód. para um computador central. ...................................................................35 Figura 4. 5 Computador central envia as informações sobre o respectivo código de barras. .................35
Figura 5. 1 Mostra o esquemático do microcontrolador 8051.......................................................................37 Figura 5. 2 Forma ilustrativa do receptor. ........................................................................................................38 Figura 5. 3 Montagem do circuito transmissor e suas configurações para envio de mensagens. ..........39 Figura 5. 4 Figura representa todo kit que está na posse do usuário..........................................................40 Figura 5. 5 Mostra o esquema utilizado para a montagem do computador central e da sala. ................41 Figura 5. 6 Seqüência da configuração da sala. .............................................................................................42 Figura 5. 7 Seqüência do envio de informações para o usuário. .................................................................43 Figura 5. 8 Mostra a seqüência de como é feita a leitura do código de barras..........................................43 Figura 5. 9 Figura mostra como é feita a resposta a uma consulta de um objeto. ....................................44
Figura 6. 1 Ilustra todos os componentes do sistema. ...................................................................................46 Figura 6. 2 Ilustra o usuário entrando com os dados do objeto para o cadastro do mesmo. ..................47 Figura 6. 3 Figura mostra a forma de consulta feita pelo usuário. ...............................................................47 Figura 6. 4 Caso de uso Funcionário - Sistema. .............................................................................................50 Figura 6. 5 Caso de uso Dispositivo(8051) - Sistema. ...................................................................................51 Figura 6. 6 Classe CBrokerObjetos. .................................................................................................................51 Figura 6. 7 Classe ComPort. ..............................................................................................................................52 Figura 6. 8 Classe CInterface_Broker_Objeto.................................................................................................52 Figura 6. 9 Classe CObjetos. .............................................................................................................................52 Figura 6. 10 Representa o diagrama de classe; forma de como elas se relacionam................................53 Figura 6. 11 Diagrama de seqüência para a parte da inclusão, pesquisa e exclusão de dados.............55 Figura 6. 12 Diagrama de seqüência para a parte da configuração das salas. .........................................56 Figura 6. 13 Figura mostrando a seqüência de busca de um objeto realizada pelo microcontrolador. .57 Figura 6. 14 Figura ilustrando como se dá o envio da descrição do produto ao microcontrolador. ........57 Figura 6. 15 Diagrama de colaboração da comunicação serial para configuração da sala. ....................58 Figura 6. 16 Diagrama de colaboração da integração com o banco de dados. .........................................58 Figura 6. 17 Figura mostrando a tela inicial do software. ..............................................................................60 Figura 6. 18 Figura mostrando a parte da configuração das salas no software. .......................................61 Figura 6. 19 Formulário de inclusão, exclusão e busca de um código de barras no sistema..................62 Figura 6. 20 Figura mostrando a parte automática das consultas no software..........................................63 Figura 6. 21 Fluxograma do firmware existente para o funcionamento do dispositivo na sala. ..............64 Figura 6. 22 Fluxograma mostrando a sequencia executada pelo firmware no módulo receptor...........67 Figura 6. 23 Fluxograma representando o funcionamento do computador central. ..................................69
ix
LISTA DE TABELAS
Tabela 6. 1 Tabela auxiliar para entendimento da Lista de Eventos. ..........................................................49 Tabela 6. 2 Lista de Eventos do Software. ......................................................................................................49 Tabela 6. 3 Descrição do uso de cada botão existente no formulário do software para o cadastro de objetos. ..................................................................................................................................................................54 Tabela 6. 4 Descrição do uso de cada botão existente no formulário do software para a configuração das salas. ..............................................................................................................................................................56
x
LISTA DE SIGLAS
A. M. Modulação em Amplitude;
Amp Ops Amplificadores Operacionais;
ASK Amplitude Shift Keying;
CCD Coupled Charge Device Dispositivo de Carga Acoplada;
CMRR Relação de Rejeição de Modo Comum;
Conversor AD Conversor Analógico Digital;
Conversor DA Conversor Digital Analógico;
CPU Unidade Central de Processamento;
DFD Diagrama de Fluxo de Dados;
E/S Entrada / Saída;
F. M. Modulação em Freqüência;
FSK Frequency Shift Keying;
HW Hardware;
I/O Input / Output;
Kbps Kilo bytes por segundo;
LCB Leitor de Código de Barras;
LCD Liquid Crystal Display;
MHz Mega Hertz;
P. A. M. Pulse Amplitude Modulation;
RAM Ramdom Access Memory Memória de Acesso Aleatório;
RF Rádio Freqüência;
RH Recusos Humanos;
ROM Read Only Memory Memória Apenas de Leitura.
SW Software;
UML Linguagem Única de Modelo.
xi
RESUMO
Este projeto tem por objetivo apresentar uma solução via rádio freqüência que
desperte o interesse e a curiosidade de pessoas fora de seus ambientes rotineiros ao
se localizarem com relação ao local onde elas estão visitando e com os objetos
pertencentes a este lugar.
Neste contexto, todas as trocas de mensagens são feitas via rádio freqüência
o que permite aos usuários do sistema uma maior agilidade e flexibilidade na
recepção das informações, ou seja, eles não precisam estar em pontos pré-definidos
para receberem as mensagens.
Este projeto tem como benefício trazer a satisfação e a comodidade para as
pessoas ao serem informadas automaticamente do local onde elas se encontram e
também destas poderem fazer a pesquisa sobre um determinado objeto que por elas
é duvidoso.
Palavras-chave: rádio-freqüência, trocas de mensagens, agilidade,
flexibilidade, informações.
xii
ABSTRACT
This project have the purpose of presenting a solution by radio frequency in
order to awake the interest and curiosity of people outside their routine environments
to see about places they are visiting and objects related to these places.
In this context, all messages exchanges are made by radio frequency which
allows the users of the system a greater agility and flexibility in the reception of the
information, which means that they don t need to be in pre-defined point to receive
these messages.
This project has the benefit to bring wellness to people when automatically
informed of the local they are at and also research about some object that is doubtful.
Key Words: radio frequency, messages exchange, agility, flexibility
information.
13
INTRODUÇÃO
O objetivo do trabalho proposto é fazer com que as pessoas estejam
sintonizadas do lugar onde elas se encontram e também sanar possíveis dúvidas
que as mesmas podem ter com relação aos objetos existentes dentro deste local
onde elas se encontram.
Na realidade, o projeto visa a parte da comunicação entre pessoa-máquima.
Por isso, este trabalho veio com o objetivo de apresentar uma forma de comunicação
eletrônica para as pessoas fora de seu ambiente rotineiro, combinando técnicas
adequadas para a transmissão e recepção de dados por rádio freqüência,
pretendendo-se com isso obter um aumento na satisfação das pessoas ao serem
informadas do lugar onde elas estão.
Todo o contexto do trabalho está dividido na construção de quatro módulos
que juntos formam uma equipe que fazem as trocas de mensagens, informações e
com isso mantém o usuário informado de onde ele se encontra e a descrição dos
objetos existentes neste local.
Esses módulos estão nomeados como sendo: Módulo sala, Módulo receptor,
Módulo computador central e o Módulo do software.
O módulo sala é responsável por enviar periodicamente o perfil da sala, ou
seja, nome e uma pequena descrição sobre a sala.
O módulo receptor é responsável por receber as informações referentes a
sala, enviar as informações do código de barras para o módulo computador central
para uma busca futura, e também por receber as informações do objeto procurado.
O módulo computador central é responsável por receber um código de barras
vindos do módulo receptor e enviá-los para o software de computador, além de
receber as informações de um objeto vindas do software e enviá-las para o módulo
receptor.
14
O módulo do software é responsável por permitir as configurações dos perfis
das salas, receber, fazer a busca e enviar as informações de um código de barras,
além de permitir o cadastro, busca e exclusão de um objeto qualquer.
Todo o objetivo aqui é fazer que os módulos se comuniquem entre si
utilizando rádio freqüência de forma que ao final se tenha como resultado
informações de diferentes salas e a busca de um determinado objeto.
15
CAPÍTULO 1
1 O PROJETO
Neste capítulo inicial, serão mostradas algumas das características do projeto,
bem como uma introdução ao seu tema, a motivação para que este seja realizado,
trazendo consigo seus benefícios sociais, as metas que deverão ser alcançadas com
o desenvolvimento do mesmo e a forma de como esta documentação está
estruturada.
1.1 Descrição do tema
O Guia Eletrônico de Informações tem por seu principal objetivo orientar
pessoas sobre um determinado local. Assim, quando esta estiver em uma
determinada área, ela recebe uma mensagem contendo informações relacionadas à
área correspondente.
Como um exemplo prático, podemos pensar em uma empresa com seus
vários setores tal como: Setor de Informática, RH, Departamento Médico, entre
outros. Sendo assim, quando algum visitante chegar na empresa, ele recebe uma
mensagem, VOCÊ ESTÁ NA EMPRESA XXX , e a cada setor em que este vier a
entrar, ele recebe uma mensagem dizendo o nome setor em que ele se encontra.
1.2 Motivação do desenvolvimento
Atualmente, as pessoas do mundo inteiro estão procurando uma forma de se
adaptarem em ambientes totalmente fora de suas rotinas, procurando informações
relacionadas ao tipo do local e ao conjunto de objetos que formam este local.
16
Como recentemente a procura da informação, pelas empresas e pessoas se
tornou algo muito importante, quanto mais rápida esta informação chegar ao seu
destino melhor.
Levando em consideração estas afirmações, todos os aspectos motivam ao
desenvolvimento de uma solução viável para que as pessoas vistas como visitantes
ou turistas, não se sintam perdidos ou desorientados em lugares por elas
desconhecidos, a fim de poderem tirar um maior proveito de conhecimento sobre o
local.
1.3 Contexto em que está inserido
Este projeto é voltado para adaptação, familiarização de pessoas em novos
ambientes, ambientes estes totalmente ou parcialmente desconhecidos.
A finalidade aqui é fazer com que as pessoas se sintonizem no espaço onde
elas se encontram, a fim de conhecerem parcialmente ou completamente todas as
características do local.
1.4 Metas a serem alcançadas
O principal objetivo do projeto é voltado para o conhecimento, onde as
informações são emitidas quando o visitante ou o turista entrar em um espaço por
ele desconhecido.
Para a criação e desenvolvimento do projeto alguns pontos são levados em
consideração para que no final, ou seja, na apresentação do protótipo, não haja
nenhuma desproporção em relação aos equipamentos e componentes utilizados.
Tais pontos são descritos a seguir:
Criação de uma forma de comunicação entre visitante e espaço físico,
baseada em transmissores e receptores.
Adaptação de um display para o trabalho desejado, ou seja, estudar
qual display se adapta melhor ao projeto.
17
Forma de comunicação entre o perfil da sala e o receptor que fica na
posse do usuário.
Forma de armazenamento das informações da sala em um dispositivo
capaz de emiti-las periodicamente.
Estudar uma forma de armazenamento do perfil da sala para que este
não seja fixo em somente uma configuração.
Criar um conjunto de hardware simples, com objetivo de trabalho
genérico entre o hardware localizado na sala e o hardware situado no
computador central, a fim de que um possa substituir o outro em
ocasiões futuras.
Criar uma forma de intercalar a habilitação entre os transmissores e
receptores para que não haja nenhum conflito na transmissão e
recepção dos dados.
1.5 Contribuição
A técnica proposta neste trabalho oferece as principais contribuições:
Melhoria na velocidade em que as informações são disponíveis para
uma pessoa com relação a um determinado lugar;
Aumento do conhecimento da pessoa com relação ao local visitado;
Redução da insatisfação dos clientes perante o local de visita;
Possibilidade de criação de uma nova tecnologia para troca de
informações para benefício geral e social da população;
1.6 Organização
Esta Monografia está organizada em 11 capítulos assim distribuídos:
Capítulo 1, Introdução: Este Capítulo tem por objetivo a apresentação
da importância do trabalho, metas a serem alcançadas, aspectos que
motivaram ao desenvolvimento do projeto, a proposta para o
desenvolvimento de um hardware capaz de transmitir e receber
18
informações via rádio freqüência e as principais contribuições que este
projeto pode ofertar;
Capítulo 2, Objetivos do Projeto: Este é caracterizado com os objetivos
do projeto, definindo-os como objetivos gerais e objetivos específicos, a
fim de esquematizar um alvo que deve ser seguido durante toda a fase
de implementação e documentação deste projeto;
Capítulo 3, Estudo Teórico: Neste capítulo, é apresentada toda a
argumentação teórica que está embasada o sistema, relatando as
técnicas de transmissão de dados, códigos de barras e a justificativa da
escolha de uma técnica de transmissão perante as existentes;
Capítulo 4, Descrição: Apresenta toda a descrição de como é feito o
projeto, apresentando o sistema de uma forma global e em seguida
dividindo este em partes para um melhor entendimento do projeto. São
apresentados também os diagramas em blocos de toda a composição
do sistema;
Capítulo 5, Especificação do Hardware: Este tem a função de
apresentar toda a configuração de hardware utilizado no projeto,
comentando as características de cada um dos componentes que serão
utilizados individualmente, além das amostras dos diagramas
esquemáticos de cada função do protótipo.
Capítulo 6, Especificação do Software: Este capítulo aborda tudo que
está relacionado à parte de software do projeto, com relação ao
ambiente de desenvolvimento, ferramenta utilizada, interface com
usuário e todos os diagramas existentes entre os agentes que compõe
o sistema, todos eles seguindo o padrão sugerido pela UML.
Capítulo 7, Comunicação Hardware e Software: O seguinte capítulo
tem por objetivo mostrar como se dá a interação entre os dispositivos
de hardware e a comunicação entre hardware e software.
Capitulo 8, Resultados: Este tem por objetivo descrever todos os
resultados obtidos com relação ao funcionamento do projeto,
19
mostrando o que foi alcançado durante a fase de implementação do
mesmo.
Capítulo 9, Especificação de Validação do Projeto: Este capítulo é
voltado à apresentação da validação do projeto, ou seja, como é feita
toda parte de teste para que se possa dizer que este projeto está
totalmente correto e por sua vez totalmente finalizado.
Capítulo 10, Conclusão: Apresenta uma conclusão geral sobre o
projeto, relacionando as dificuldades e aquilo que foi devidamente
implementado.
Capítulo 11, Cronograma: Apresenta o cronograma seguido durante a
fase de implementação do projeto, relatando todas as datas em que um
determinado tópico é estudado e implementado, bem como a conclusão
do projeto e a parte de ação corretiva se for o caso.
20
CAPÍTULO 2
2 OBJETIVOS DO PROJETO
Aqui é descrito o que deverá ser obtido com o protótipo.
Os objetivos aqui serão divididos em objetivos gerais e objetivos específicos a
fim de situar quais as partes integrantes do sistema.
2.1 Objetivos Gerais
O objetivo geral do projeto é fazer com que o visitante de um determinado
local saiba o nome do local onde ele se encontra. Desta forma quando ele entrar em
um laboratório de química, por exemplo, ele recebe uma mensagem de texto
informando a situação, Você está no laboratório de química .
Além disso, ele pode fazer também uma consulta de um determinado objeto
pelo seu código de barras, assim quando ele ler um certo código, em um curto
espaço de tempo ele recebe a informação referente ao código lido.
2.2 Objetivos Específicos
Criar uma forma de comunicação entre os módulos existentes no projeto
utilizando componentes de rádio freqüência, transmissores e receptores, como sendo
o principal componente nesta comunicação.
Fazer o desenvolvimento dos módulos utilizando os conceitos vistos nas
disciplinas de microcontroladores e engenharia de software, além de fazer o
reaproveitamento dos módulos, a fim de que um possa trabalhar de duas formas
diferentes, ou seja, um módulo possa substituir as atividades de outro. Sendo assim
o principal objetivo aqui é cumprir os objetivos gerais.
21
CAPÍTULO 3
3 ESTUDO TEÓRICO
Nesta parte serão descritos todos os estudos feitos sobre cada componente
do sistema com relação ao seu funcionamento, com o objetivo de mostrar todo o
conhecimento adquirido e relatar posteriormente qual é o melhor elemento a ser
utilizado, ou seja, qual possui melhor adaptação ao projeto.
3.1 Técnicas de transmissão de dados
Existem várias técnicas de transmissão de dados.
Como neste projeto se faz necessário à utilização do envio e recebimento de
mensagens de texto a uma distância não muito considerável, alguns tipos de
transmissão de dados foram estudados e um deles foi escolhido para que este
tivesse uma melhor adaptação ao protótipo. A seguir serão detalhadas as técnicas
de transmissão estudadas.
Modulação em Amplitude A. M;
Modulação em Freqüência F.M;
Transmissão PAM
Pulse Amplitude Modulation;
ASK
Amplitude Shift Keying;
FSK
Frequency Shift Keying;
Modulação em Amplitude - A.M.
Na modulação AM, existe uma variação na amplitude da portadora1
diretamente proporcional ao sinal que está sendo enviado.
A figura 3.1 ilustra um exemplo de modulação AM.
1 Portador é uma forma de transmissão usada para prover uma maior potência na transmissão de um dado e fazer a diferenciação do sinal das estações transmissoras.
22
Sinal a transmitir Portadora Sinal modulado
Sinal a transmitir Portadora Sinal modulado
Figura 3. 1 Modulação em amplitude A. M.2
Podemos observar que a portadora toma basicamente a mesma forma do
sinal a transmitir.
Modulação em Freqüência F.M.
A modulação FM varia a freqüência da portadora em relação ao sinal que está
sendo enviado.
Como mostra a figura, foi observado que a freqüência da portadora varia de
acordo com o sinal a ser transmitido.
Figura 3. 2 Modulação em freqüência FM.
Transmissão PAM
Pulse Amplitude Modulation
A modulação PAM
Pulse Amplitude Modulation (modulação por amplitude
do pulso) utiliza-se de picos de amplitudes para simular símbolos ou dados. O
tamanho dos picos fazem referência ao conteúdo de cada informação.
Com base na Figura, se tivermos transmitindo o bit 0, este não será
representado por nenhum pico ou pulso, agora se estivermos transmitindo um
2 Figura retirada da página de Adriano Moreita. http://piano.dsi.uminho.pt/netshare/adriano/Teaching/Comum/TecModul.html
23
0 2 1 3 2 0 1 20
1
2
3
"00" "10" "01" "11" "10" "00" "01" "10"
2 Tb
"0" "1" "0" "1" "1" "0"
conjunto de bits, o pulso é representado pela quantidade de bits que estão sendo
transmitidos.
Figura 3. 3 Transmissão PAM Pulse Amplitude Modulation.3
ASK
Amplitude Shift Keying
A modulação ASK é uma forma de modulação derivada da modulação AM. A
diferença entre elas é que aqui os dados são representados por bits, ou seja, eles
são amostrados digitalmente e não mais analogicamente. Por exemplo, o bit 0 não
varia a amplitude da portadora, enquanto que o bit 1, faz a amplitude da portadora
variar.
Figura 3. 4 Modulação ASK - Amplitude Shift Keying.
FSK
Frequency Shift Keying
Esta modulação é uma forma de modulação derivada da modulação FM,
porém ao invés de modificar a portadora em relação a um sinal analógico, aqui a
portadora é modificada com relação aos seus bits. Se o bit transmitido for um bit 0,
3 Figura retirada da página de Adriano Moreita. http://piano.dsi.uminho.pt/netshare/adriano/Teaching/Comum/TecModul.html
24
então a portador tem sua forma de onda mais aberta, de forma oposta, a forma de
onda da portadora se fecha quando um bit 1 é transmitido.
Figura 3. 5 Modulação FSK - Frequency Shift Keying.4
3.2 Leitores de Código de Barras
Atualmente existem quatro tipos de leitores de códigos de barras disponíveis
no mercado, cada um com uma tecnologia diferente para a leitura e decodificação.
Tais leitores estão classificados como:
Leitores Esferográficos5;
Scanner/Laser;
Leitores CCD;
Leitores com câmeras
Leitores Esferográficos
São constituídos de uma fonte de luz e um fotodiodo. Sua leitura é feita
através de um movimento retilíneo sobre o código.
A leitura e identificação do código se dá através do fotodiodo que mede a
intensidade da luz refletida gerando uma onda usada para avaliar o tamanho das
barras e dos espaços no código.
4 Figura retirada da página de Adriano Moreita. http://piano.dsi.uminho.pt/netshare/adriano/Teaching/Comum/TecModul.html
5 Retirado da página de notícias do terra. http://noticias.terra.com.br/ciencia/interna/0,,OI157168-EI1426,00.html
"0" "1" "0" "1" "1" "0"
25
Scanner/Laser
Possui o mesmo princípio de funcionamento que os leitores esferográficos,
porém utilizam raio laser como fonte de luz. Neste tipo de leitor, também é utilizado
um fotodiodo para medir a intensidade da luz refletida a partir do código.
Leitores CCD
Utilizam o conceito de matriz com sensores alinhados em uma linha na ponta
do leitor. Aqui os sensores fazem o trabalho do fotodiodo, medindo também a
intensidade da luz refletida pelo código.
Leitores com câmeras
Este é sem dúvida o leitor mais sofisticado. Pois vê o código de barras como
sendo uma imagem. Este leitor utiliza técnicas de processamento de imagem digital
para decodificar os códigos.
3.3 Transmissores e Receptores utilizados no projeto
Os componentes para a transmissão e recepção dos dados utilizados no
projeto são os chamados TWS-434A e RWS-434.
Sua taxa de transferência é de aproximadamente 2,4Kbps e opera em uma
freqüência estimada entre 433,90 e 433,94 MHz.
3.4 Transmissão de dados
Existem basicamente duas formas de transmissão de dados. A primeira é a
transmissão por cabos, por exemplo, de fios de cobre (par trançado, cabo coaxial),
ou fibra ótica. E a segunda pode ser feita pelo ar, ou seja, sem a necessidade de um
meio físico para a propagação de sinais eletromagnéticos, podendo talvez, ser
considerado como melhor meio de transmissão de dados. Tal afirmação baseia-se
no fato de que o ar provê uma interconexão completa, ou seja, uma boa interface
26
para a troca de informações, além de permitir uma grande flexibilidade na localização
das estações.
Porém, existem ainda alguns fatores como o custo e leis governamentais que
proporcionam uma redução no crescimento desta forma de comunicação, pois o
preço da aparelhagem é alto e existem algumas restrições governamentais para a
utilização do espectro de freqüência.
Como tudo que é mais sofisticado possui um nível de complexidade maior,
para que a transmissão dos dados seja realizada é necessário estarmos consciente
de alguns fatores, tais como:
Banda passante desejada;
Área de cobertura;
Disponibilidade do espectro;
Interferências e fontes de ruído;
Regulamentação pública;
Custos dos equipamentos.
Tais fatores são de extrema importância quando pensamos em transmissão
de dados pelo ar.
3.5 Microcontrolador 8051
O microcontrolador 8051 é um chip muito popular dentre os
microcontroladores hoje disponíveis no mercado. Este chip pode ser comparado a
um microcomputador normal, iguais aos que utilizamos hoje em nossas casas,
porém claro com um poder de processamento extremamente reduzido. Tais
semelhanças são porque este chip possui uma memória de dados, CPU e E/S para
comunicações com o mundo externo.
Este microcontrolador pode trabalhar de duas formas: A forma mínima e a
forma expandida.
Na forma mínima de trabalho, é utilizado somente os recursos internos do
chip, por exemplo, 4Kbytes de memória de programa (memória ROM) e 128bytes de
27
memória de dados (memória RAM), podendo estas serem diferenciadas de acordo
com o modelo e fabricante do chip escolhido.
Já no modo de trabalho expandido, o microcontrolador pode ser adaptado
para utilizar memórias auxiliares conhecidas como memória externa, ou seja, ele
busca os dados em outro chip, o chamado chip de expansão. Sendo assim ambas as
memórias, RAM e ROM podem ser expandidas para 64Kbytes.
Devido a estas formas de trabalho, os microcontroladores possuem uma
grande flexibilidade. Outras duas grandes características dos microcontroladores é
que estes possuem um baixo consumo de potência e também podem se comunicar
com o mundo real, por exemplo, com um computador ou outro microcontrolador,
pois, possuem uma interface de comunicação serial. Além deste, podemos citar mais
um exemplo prático da comunicação do microcontrolador com o mundo real, tal
exemplo é até mesmo utilizado no projeto e se refere ao uso do leitor de código de
barras para fazer a consulta de um determinado objeto. Com ele o usuário lê o
código desejado e este código é gravado em cada uma das posições internas da
memória RAM interna do microcontrolador.
3.6 Display LCD
O display de LCD é normalmente utilizado como uma interface de saída muito
útil em sistemas microprocessados. Podem ser utilizados tanto para saídas gráficas
quanto para saídas em texto, em outras palavras, caracteres. Aqui no projeto, este
display é utilizado para mostrar mensagens de texto. Existem vários módulos de LCD
para saídas gráficas, entre eles estão as resoluções de 122x32, 128x64, 240x64 e
240x128 dots pixel, e na maioria das vezes estão disponíveis com 20 pinos para
conexão.
Já os displays comuns do tipo caracteres possuem uma forma de trabalho
bastante variada, pois são especificados em número de linhas por colunas e são
encontrados em diversas configurações.
28
Tanto o display quanto o microcontrolador são utilizados no projeto para
processarem as informações vindas do receptor e mostrarem no display do usuário o
local onde ele se encontra.
3.7 Leitor de Código de Barras
No instante em que um leitor serial interpreta um determinado código de
barras, a informação referente ao código lido é armazenada em um buffer e esta fica
guardada até que um programa faça a leitura dos dados e mostre-os na tela. Com
relação ao projeto, o usuário não precisa ficar sabendo qual é o código de barras do
objeto, a única coisa que ele precisa é fazer a leitura do código e o sistema por si se
responsabiliza pelo resto.
Assim que a informação do código de barras estiver na memória de dados do
microcontrolador, este disponibiliza os dados para um decodificador acoplado ao
transmissor para que este possa enviar o respectivo código para a consulta, sem que
haja algum tipo de interferência externa.
3.8 Justificativa da escolha entre os módulos estudados
Em relação às modulações pesquisadas e estudadas, foi definido que este
projeto utilizará a modulação AM para a transmissão e recepção dos dados, uma vez
em que para este tipo de transmissão, transmissão de pequeno porte, a quantidade
de material de pesquisa é consideravelmente boa em relação às outras formas de
modulação.
As modulações PAM, ASK e FSK, foram as primeiras a serem descartadas
devido ao fato destas não possuírem um grande número de argumentação teórica
para o desenvolvimento.
A dúvida maior estava entre as modulações AM e FM. Como a modulação AM
possui um índice de aplicação considerável, toda parte de transmissão e recepção
dos dados do projeto, é feita através da modulação em amplitude AM.
29
Com o estudo feito sobre os tipos de leitores de código de barras, o leitor do
tipo esferográfico ou laser tem um maior peso na elaboração de um futuro projeto
devido à sua facilidade na aplicação em que se dá o projeto, pois aqui não é
necessário um leitor de ótima resolução, descartando a hipótese de ser usado um
leitor com câmeras ou CCD.
30
CAPÍTULO 4
4 DESCRIÇÃO
Serão relatadas aqui todas as especificações que compõe o sistema levando
em consideração às suas divisões, módulos e sub-módulos, utilizados no protótipo,
onde cada componente está localizado e de que forma, dentre outras informações.
4.1 Descrição geral do sistema
O contexto principal do sistema está dividido em 4 (quatro) grupos.
Transmissores;
Receptores;
Leitor de código de barras (pode ou não fazer parte do projeto);
Microcontroladores.
Transmissores
O sistema é composto por dois transmissores. Sendo um deles utilizados mais
de uma vez, ou seja, em mais de um módulo.
O primeiro deles está localizado em áreas específicas, por exemplo, dentro de
cada setor de uma empresa, de uma sala ou em uma área aberta marcando o início
de uma determinada área, por exemplo, em um parque de diversões delimitando o
início de uma certa área de recreação.
O segundo transmissor fica na posse do visitante, assim toda vez em que este
desejar saber as informações de um determinado objeto, o transmissor passa a
funcionar emitindo os dados coletados a partir do leitor de código de barras para um
computador central.
31
Já o terceiro é acoplado ao computador central, aquele que possui as
informações de todos os objetos cadastrados, assim este pode enviar as
informações de um objeto em específico novamente para o receptor do visitante.
Resumindo, tais transmissores estão assim distribuídos: no computador
central (aquele que obtém as informações de todos os objetos), no receptor
(aparelho que é entregue ao visitante), e em uma determinada área, seja ela ar livre
ou não.
Vale lembrar que teoricamente em todo o projeto o número de transmissores é
igual a três. Porém, na prática o número de transmissores utilizados é apenas dois.
Isso se deve ao fato do hardware da sala ser exatamente igual ao hardware do
computador central, sendo o que os diferencia é apenas o firmware6 contido nas
EPROM s de cada componente.
Receptores
O sistema também possui dois receptores.
O primeiro na posse do visitante, funciona quando ele entrar em uma
determinada área. Assim o receptor contendo os dados emitidos pelo transmissor,
manda estes para um display fazendo com que esta seja uma das saídas do
sistema, informando ao visitante o local onde ele se encontra.
O segundo receptor é acoplado ao computador que possui as informações,
assim este receptor tem por objetivo receber os dados obtidos do leitor de código de
barras e enviá-las para o computador para que este possa fazer a pesquisa do
referente código.
Leitor de código de barras
Apenas um dos três dispositivos projetados, contém um leitor de código de
barras que está acoplado ao microcontrolador que está na posse do cliente. Assim
toda vez em que o usuário desejar saber de alguma informação de um determinado
objeto, este coleta os dados do código de barras.
6 Programas gravados em memórias semi permanentes.
32
A saída principal do sistema está no display que está sempre mostrando as
informações do local e do objeto para o usuário e também no computador central que
mostra o código de barras lido pelo usuário
Microcontroladores
Sendo o sistema constituído de transmissores, receptores, display e de um
leitor de código de barras, para a transferência, manipulação e aquisição de dados,
os microcontroladores aqui utilizados funcionarão como um gerenciador de
informações, guardando em um buffer7 os dados a serem transmitidos e enviados.
São eles os responsáveis por fazer um dos principais objetivos do projeto, o de
conter as informações que serão transmitidas e as que já foram recebidas.
Quando estudamos um dos microcontroladores do projeto olhando no aspecto
da transmissão de dados, pode-se dizer que é ele que possui em sua memória RAM
interna todos os dados que serão enviados.
Por outro lado, agora olhando para a forma da recepção de dados, este tem
por objetivo captar os dados enviados pela sala ou computador central e mostrar tais
informações no display.
4.2 Módulos e Sub-módulos
O projeto está dividido em três módulos. Tais módulos foram nomeados como
sendo sala, computador central e receptor.
Módulo de identificação do local (sala);
Módulo de identificação do objeto (receptor);
Microcomputador com o sistema Receptor, Transmissor e Software
(computador central).
7 No contexto, buffer tem a função de guardar por um determinado período um certo valor.
33
Módulo de identificação do local (sala)
Este módulo consiste na apresentação do local ao visitante. Ele é o
responsável em avisar ao visitante que ele está localizado em um certo lugar, por
exemplo, Você está no setor de Informática .
Seu objetivo é somente enviar, a cada um determinado período de tempo, o
perfil da sala ao receptor, fazendo com que todas as pessoas que vieram a entrar na
sala em tempos diferentes recebam a informação da sala correspondente.
A figura 4.1 mostra um visitante munido do conjunto receptor, transmissor e
leitor de código de barras, recebendo a informação de que ele se encontra no Setor
de Administração de uma empresa qualquer ao entrar no setor.
Setor de Administração
Figura 4. 1 Módulo de identificação do local.
Módulo de identificação do objeto (receptor)
Este módulo tem por objetivo mostrar uma descrição sobre uma sala e um
determinado objeto, objeto este de escolha do visitante. Tais informações podem
ajudar no reconhecimento de uma imagem, por exemplo, um quadro em um museu,
onde não se consegue descrever o que a imagem pintada, ou a imagem exposta
quer realmente nos passar.
A figura 4.2 ilustra uma pessoa retirando informações do código de barras de
uma mesa do setor de administração, informações estas que pode estar relacionada
Setor de Administração
Transmissor emitindo o perfil da
sala.
Perfil da sala chega ao receptor e é mostrado no display do usuário.
34
ao número de patrimônio, data de aquisição, por quem foi adquirida a mesa dentre
outras informações.
Setor de Administração
Figura 4. 2 Módulo de identificação de objeto.
Sub-módulo de identificação do objeto (computador central)
Este sub-módulo tem por objetivo enfocar a questão da leitura e transmissão
do código de barras. Ele entra em funcionamento toda vez em que o usuário
(visitante), desejar conhecer as características de um determinado objeto.
Ele está compreendido por três etapas sendo elas:
Leitura do código de barras;
Transmissão deste para um computador central;
Computador central envia as informações sobre o respectivo código de
barras para o aparelho do usuário tendo a saída das informações em
um display.
Estes passos estão ilustrados nas figuras 4.3, 4.4, 4.5.
Figura 4. 3 Leitura do código de barras pelo usuário.
R + T + LCB
Pessoa tirando informações do código de barras da mesa
Leitor Cód. Barras
35
Figura 4. 4 Transmissão do cód. para um computador central.
Figura 4. 5 Computador central envia as informações sobre o respectivo código de barras.
Microcomputador com o sistema Receptor, Transmissor e Software
(computador central)
É nesta parte da implementação que o sistema faz a identificação do código
de barras do objeto e envia a mensagem do correspondente objeto.
O hardware utilizado aqui segue o mesmo princípio de utilização descrito nas
etapas anteriores, porém a única mudança é que esta informação depende do
usuário se ele desejar obter a informação de um objeto ou não.
Pensando no computador central, existe uma base de dados na qual estão
localizadas todas as informações sobre todos os objetos contidos na empresa,
parque de diversões ou em qualquer outra aplicação que vier a utilizar o projeto. Nela
serão gravados registros contendo o código de barras e uma descrição do referente
código.
A segunda parte deste módulo, ou seja, a que trabalha juntamente com o
servidor é a parte da transmissão e recepção dos dados. Neste caso o receptor
recebe os dados referentes ao código de barras escolhido e as disponibiliza para que
o computador colete as informações deste e faça a pesquisa do referente código de
barras, retornando então as informações do objeto em questão. Em seguida estas
informações são disponibilizadas serialmente na saída do servidor e em seguida
transmitidas para o receptor do usuário, que por sua vez disponibiliza estes dados
para o display de LCD.
Transmissão do cód. para um computador central
Envio das informações para o visitante
36
CAPÍTULO 5
5 ESPECIFICAÇÃO DO HARDWARE
Os dispositivos de hardware utilizados no projeto serão para o envio de
mensagens relacionadas ao local em que o indivíduo está localizado e a um
determinado objeto que se encontra dentro do local.
Este capítulo trata da parte técnica do projeto, apresentando os diagramas
esquemáticos, relacionamento entre módulos e as seqüências que são feitas a cada
interação do projeto.
5.1 Diagramas Esquemáticos
Nesta parte do projeto é descrito sobre cada um dos diagramas esquemáticos
que foi utilizado em todo o projeto.
Tais diagramas foram divididos em quatro partes, assim distribuídos:
Circuito do microcontrolador 8051;
Circuito Receptor;
Circuito Transmissor;
Conjunto de Consulta envolvendo Transmissor e Receptor.
Circuito do Microcontrolador 8051
O microcontrolador tem por objetivo fazer o controle das informações que são
enviadas e recebidas por rádio freqüência. É ele quem faz o tratamento dos dados e
os disponibiliza para suas possíveis saídas que no projeto pode ser para o display,
para o Port1 ou para uma comunicação serial.
Além disso, é ele quem faz o controle da habilitação entre transmissor e
receptor na hora apropriada, garantindo com isso que não haja nenhum conflito na
37
transmissão e recepção dos dados, uma vez que estamos usando transmissores de
mesma freqüência.
O circuito esquemático do microcontrolador é mostrado na figura 5.1.
Figura 5. 1 Mostra o esquemático do microcontrolador 8051.
Circuito Receptor
Este circuito tem uma finalidade somente ilustrativa e didática, ou seja, ele é
aqui apresentado de forma independente antes de ser acoplado ao microcontrolador
do computador central e do receptor.
Pela figura 5.2 podemos observar que o receptor - RWS-434 - quando recebe
os dados envia estes para um circuito decodificador
HT-648L
e este por sua vez
disponibiliza os dados recebidos para as saídas rotuladas como D10..D17. Tais
saídas futuramente serão ligadas em um microcontrolador e deste para um display
38
que exibe os dados recebidos de uma forma legível ao usuário algum tipo de
informação.
Figura 5. 2 Forma ilustrativa do receptor.
Circuito Transmissor
O circuito transmissor mostrado pela figura 5.3 é o circuito que é utilizado em
cada uma das salas, no computador central e no receptor. Assim sendo, o
computador central, sala e receptores, poderão trocar mensagens para informar o
visitante do local onde ele acabou de entrar e objeto que deseja consultar.
VCC +5V
VCC +5V
HT-648L DECODER IC9
11
13141516171819202122
231234567
8
10
2412
DIN
OSC1
A0A1A2A3A4A5A6A7A8A9
D10D11D12D13D14D15D16D17
VT
OSC2
VDDVSS
RWS-434
1 2 3 4 8765
GN
DD
IGIT
AL
DA
TA
OU
TP
UT
LIN
EA
R O
UT
PU
TV
CC
AN
TE
NA
GN
DG
ND
VC
C
LED10K
ANTENA
390K
Saída A2Saída A3Saída A4Saída A5Saída A6Saída A7
Saída A0Saída A1
REPRESENTAÇÃO ESQUEMÁTICA DO MÓDULO RECEPTOR LOCALIZADO COM O USUÁRIO.
VT = pino de validação da transmissão.
39
Como mostrado aqui existe uma forma de captação de um início e um final de
transmissão e também qual receptor deve receber um determinado tipo de
informação.
A seguir vemos a figura do transmissor que é utilizado nas salas, nos
aparelhos do usuário e pelo computador de consulta.
VCC +5VVCC +5V
VCC +5V
HT-640 ENCODER IC
123456789
101112 13
1415161718192021222324
D1D2D3D4D5D6D7DOUTTEOSC1OSC2GND A0
A1A2A3A4A5A6A7A8A9D0
VCC
TWS-434A
1 2 3 4
GN
DD
AT
A I
NP
UT
VC
CR
F O
UT
PU
T
12
390K
ANTENA
REPRESENTAÇÃO ESQUEMÁTICA DO MÓDULO TRANSMISSOR LOCALIZADO UM POR SALA.
Figura 5. 3 Montagem do circuito transmissor e suas configurações para envio de mensagens.
40
+5V
+5V
+5V
+5v +5V
+5V
HT-640 ENCODER IC
1234567
8
9
1011
12
13141516171819202122
23
24
D1D2D3D4D5D6D7
DOUT
TE
OSC1OSC2
GND
A0A1A2A3A4A5A6A7A8A9
D0
VCC
TWS-434A
1 2 3 4
GN
DD
AT
A I
NP
UT
VC
CR
F O
UT
PU
T
390K
ANTENA
U4
74LS245
23456789
191
1817161514131211
A1A2A3A4A5A6A7A8
GDIR
B1B2B3B4B5B6B7B8
Port P1 do mic. 8051
12345678
12345678
ANTENA
1
390K
RWS-434
1 2 3 4 8765
GN
DD
IGIT
AL
DA
TA
OU
TP
UT
LIN
EA
R O
UT
PU
TV
CC
AN
TE
NA
GN
DG
ND
VC
C
U3
74LS245
23456789
191
1817161514131211
A1A2A3A4A5A6A7A8
GDIR
B1B2B3B4B5B6B7B8
HT-648L DECODER IC
9
11
13141516171819202122
231234567
8
10
2412
DIN
OSC1
A0A1A2A3A4A5A6A7A8A9
D10D11D12D13D14D15D16D17
VT
OSC2
VDDVSS
Ligado no P3.4 (T0) domicrocontrolador 8051
Ligado no P3.4 (T0) domicrocontrolador 8051
Ligado no P3.5 (T1) domicrocontrolador 8051
Figura 5. 4 Figura representa todo kit que está na posse do usuário.
41
+5V
+5V
+5V
+5V
+5V
+5V
HT-640 ENCODER IC
1234567
8
9
1011
12
13141516171819202122
23
24
D1D2D3D4D5D6D7
DOUT
TE
OSC1OSC2
GND
A0A1A2A3A4A5A6A7A8A9
D0
VCC
TWS-434A
1 2 3 4
GN
DD
AT
A I
NP
UT
VC
CR
F O
UT
PU
T
390K
ANTENA
U4
74LS245
23456789
191
1817161514131211
A1A2A3A4A5A6A7A8
GDIR
B1B2B3B4B5B6B7B8
Port P1 do mic. 8051
12345678
12345678
ANTENNA
1
390K
RWS-434
1 2 3 4 8765
GN
DD
IGIT
AL
DA
TA
OU
TP
UT
LIN
EA
R O
UT
PU
TV
CC
AN
TE
NA
GN
DG
ND
VC
C
U3
74LS245
23456789
191
1817161514131211
A1A2A3A4A5A6A7A8
GDIR
B1B2B3B4B5B6B7B8
HT-648L DECODER IC
9
11
13141516171819202122
231234567
8
10
2412
DIN
OSC1
A0A1A2A3A4A5A6A7A8A9
D10D11D12D13D14D15D16D17
VT
OSC2
VDDVSS
Ligado no P3.5 (T1) domicrocontrolador 8051
Ligado no P3.4 (T0) domicrocontrolador 8051
Ligado no P3.4 (T0) domicrocontrolador 8051
Figura 5. 5 Mostra o esquema utilizado para a montagem do computador central e da sala.
Conjunto de Consulta envolvendo Transmissor e Receptor
Este módulo apresentado na figura 5.5 é o módulo que é acoplado junto ao
computador principal, àquele que possui todas as informações referentes aos objetos
existentes em um determinado tipo de local.
É esta parte que envolve a parte da comunicação do software com o hardware
propriamente dito. Aqui todos os dados vindos do transmissor do usuário com
relação a um determinado código de barras é enviado para o receptor que por sua
vez disponibiliza tais dados para a leitura da porta. Em seguida de posse dos dados,
o software identifica o objeto e disponibiliza na saída da serial os dados referentes ao
42
objeto. Estes dados por sua vez são enviados novamente ao aparelho do usuário e
mostrados no display de LCD.
5.2 Diagramas de Seqüência de Hardware
É mostrado aqui o diagrama de seqüência, ou seja, o processo seqüencial de
como se dá o tráfego de ações dentro do projeto. Vale mostrar que o principal
objetivo está relacionado com o envio do nome da sala e com as informações do
objeto para o usuário.
Seqüência de Configuração da sala
Figura 5. 6 Seqüência da configuração da sala.
Guia Eletrônico de Informações
1. Funcionário envia perfil da sala para o software Kit 8051
2 Software envia serialmente o perfil definido
3. 8051 grava byte-a-byte do perfil na memória RAM.
43
Seqüência de envio de informações da sala para o usuário
Figura 5. 7 Seqüência do envio de informações para o usuário.
Seqüência de leitura do código de barras
Figura 5. 8 Mostra a seqüência de como é feita a leitura do código de barras.
1. Lê um byte de uma posição da RAM.
5. Guarda o byte recebido na RAM
Kit 8051
Transmissor
2. Envia todo byte lido para o transmissor
Receptor Kit 8051
3. Transmissor envia o byte para o receptor
4. Receptor recebe o byte Display LCD
6. Envia uma letra para o display
Leitor de Código de Barras
1. Lê todo código de barras
Kit 8051
2. Envia serialmente a cada 255ms um nº do correspondente código lido 3. 8051 grava o número
recebido na memória RAM.
44
Seqüência do computador central enviando informações para o
receptor
Figura 5. 9 Figura mostra como é feita a resposta a uma consulta de um objeto.
Display LCD
2. Lê um byte de uma posição da RAM.
6. Guarda o byte recebido na RAM
Kit Transmissor
3. Envia todo byte lido para o transmissor
Receptor
Kit
4. Transmissor envia o byte para o receptor
5. Receptor recebe o byte
7. Envia uma letra para o display
Guia Eletrônico de Informações
1. Software envia serialmente o perfil do objeto
45
CAPÍTULO 6
6 ESPECIFICAÇÃO DO SOFTWARE
Este capítulo tem por objetivo, detalhar as informações relacionadas ao
software e ao firmware utilizado no projeto. Primeiramente serão detalhadas as
informações relacionadas ao software e em seguida é detalhado o firmware,
mostrando o fluxograma de cada um utilizado no projeto.
O software utilizado no projeto está dividido em duas partes sendo uma para
consulta, cadastro e exclusão de objetos identificados pelos seus devidos códigos de
barras e uma segunda parte para a configuração de uma determinada sala.
Na primeira parte, que corresponde ao cadastro, consulta e exclusão de um
objeto, todo e qualquer funcionário têm total liberdade para adicionar novos objetos,
excluir aqueles que já não estão mais sendo usados e realizar buscas passando o
código de barras do correspondente objeto para fins de atualização e exclusão.
Já na segunda parte, este pode configurar os dispositivos que ficarão nas
salas identificando-as.
6.1 Ambiente de desenvolvimento
O software e/ou o banco de dados a ser utilizado trabalha em cima da
plataforma Windows.
6.2 Linguagens e ferramentas
A linguagem utilizada para a realização do software é a linguagem C/C++
tendo como ferramenta de desenvolvimento o Borland C/C++ Builder versão 6.
46
Em relação à parte da diagramação do software, esta foi feito em cima dos
padrões determinados pela UML, o que torna o software mais simples de ser
implementado e mais apresentável.
6.3 Interface com o usuário
A interface com o usuário é destinada ao cadastro das informações
relacionadas ao objeto para a configuração do perfil de determinadas salas e para a
consulta de objetos, porém esta, trabalha de forma automática, ou seja, quando um
código de barras estiver pronto para ser pesquisado, o sistema pega o código e
busca o seu referente registro no banco e logo em seguida manda tais informações
para o receptor.
6.4 Diagrama em blocos
A figura 6.1 mostra parte do software com as suas devidas funções, a função
de configuração da sala e a de consulta, inclusão e exclusão de um objeto.
Figura 6. 1 Ilustra todos os componentes do sistema.
Módulo de Configuração da sala
O objetivo da configuração da sala é basicamente fazer a configuração do
dispositivo, ou seja, passar para ele um perfil da sala em que ele ficará para que este
possa trabalhar de forma independente enviando os dados sobre a sala
Consulta, Inclusão e Exclusão.
Configuração da sala.
47
correspondente. Uma vez configurado, o dispositivo envia os dados da sala num
tempo de aproximadamente trinta segundos.
Uma outra grande vantagem deste tipo de configuração das salas por
software é que quando uma sala precisar ser reconfigurada com outro nome e
descrição, isto é feito facilmente através da reconfiguração do dispositivo que se
encontra na sala em questão.
Módulo de Consulta, Inclusão e Exclusão
Este módulo tem por objetivo a alimentação do banco com os dados
provenientes do objeto que se deseja obter a informação.
Este cadastro contém um campo para identificação do objeto (código de
barras) e outro para a sua característica (descrição do objeto).
Figura 6. 2 Ilustra o usuário entrando com os dados do objeto para o cadastro do mesmo.
O módulo de consulta tem por objetivo coletar as informações de um
determinado objeto e enviá-las para um computador, para que este possa fazer a
pesquisa e devolver a resposta ao usuário. Essa coleta das informações é feita
através do leitor de código de barras existente no aparelho do usuário. Este aparelho
então coleta as informações e as envia para um computador central que faz a
distinção dos dados e retorna com as características do objeto em questão.
Figura 6. 3 Figura mostra a forma de consulta feita pelo usuário.
Cadastro Usuário
Usuário envia informações sobre o objeto em específico
Consulta
Aparelho do usuário emite os dados de código de barras
Informação é retornada com as características do objeto
48
6.5 Diagramas UML
Nesta parte serão mostrados todos os diagramas elaborados e estudados
para a construção do software na qual ajuda na implementação e no entendimento
do software do projeto. Os diagramas foram elaborados seguindo um modelo
proposto pela UML, salvo a lista de eventos, que não faze parte da UML. Tais
diagramas estão organizados da seguinte forma:
Lista de Eventos;
Diagrama de Caso de Uso;
Diagrama de Seqüência;
Diagrama de Classes;
Diagrama de Colaboração.
Lista de Eventos
A lista de eventos serve para mostrar, relatar uma listagem de todos os
eventos existentes em um sistema. Tal lista foi realizada juntamente com o
desenvolvimento da DFD para que não haja nenhum erro na forma de representação
dos fluxos de dados na lista. Esses eventos são numerados de acordos com os
fluxos de dados existentes na DFD (Diagrama de Fluxo de Dados).
As colunas da tabela podem ser compreendidas da seguinte forma:
49
Tabela 6. 1 Tabela auxiliar para entendimento da Lista de Eventos.
Nome da coluna Descrição
Nº Corresponde ao número do fluxo de dados
Evento Nome do Evento do fluxo de dados
Descrição É quando um certo evento ocorre
Estímulo Possui o mesmo nome do fluxo de dados
Tipo
Corresponde ao fluxo de dados, podendo ser da
forma: Fluxo entrando, Fluxo saindo, Fluxo
temporal, Fluxo de Controle
Ação É o que o sistema irá fazer quando tal evento
ocorre
Reposta É uma resposta ao evento realizado.
Após compreender cada uma das colunas existentes na lista de eventos, é
mostrado abaixo os eventos existentes no software.
Tabela 6. 2 Lista de Eventos do Software.
Nº Evento Descrição Estímulo Tipo Ação Resposta
1 Configuração de Sala
Quando uma nova sala for configurada
Configuração da Sala F* Cadastrar
nova sala -
2 Cadastro de Objetos
Quando um novo objeto for
cadastrado
Cadastro dos Objetos F* Cadastrar
novo objeto -
3 Pesquisa de Objetos
Quando o microcontrolador enviar dados de
um código de barras
Pesquisa Objeto F*
- Verificar existência do
registro - Enviar
informações do objeto
Pesquisa Objeto e
Emissão de Informações
4
Emissão de informações
de objetos
Quando um objeto for
pesquisado
Emissão de Informação
F** Emitir
informações do objeto
-
F* representa entrada de fluxo no caso de uso.
F** representa saída de fluxo no caso de uso.
Diagrama de Caso de Uso
Um diagrama de caso de uso mostra a relação entre os atores e os casos de
uso existentes em um sistema, ou seja, ele especifica uma interação de um usuário
50
com o sistema. Neste contexto o sistema não é mais visto como uma única caixa
preta, mas sim visto como sendo várias caixas pretas cada uma possuindo a sua
determinada função e interagindo com um ator.
No projeto são mostrados dois diagramas de caso de uso em separado devido
ao fato do sistema se comunicar com duas entidades externas, o chamado
funcionário e dispositivo (microcontrolador).
Quando o caso de uso é voltado para o funcionário, existe uma interação do
operador junto ao sistema no que está relacionado ao Cadastro de Objetos e a
Configuração da sala. A seta unidirecional significa que somente o sistema é
alimentado, ou seja, não existe nenhum retorno de informações do software para o
usuário.
Já no caso de uso centrado para o dispositivo (microcontrolador), existe a
interação deste com o mundo externo. Isso ocorre toda vez que um usuário qualquer
quiser saber algum tipo de informação sobre um certo objeto. Neste caso o
microcontrolador de posse de um código de barras envia-os para o sistema que por
sua vez, faz a busca do objeto e devolve as especificações equivalentes ao objeto.
Isto explica o porque das setas bidirecionais em cada um dos casos de uso.
Segue abaixo a Figura dos respectivos casos de uso.
Figura 6. 4 Caso de uso Funcionário - Sistema.
51
Figura 6. 5 Caso de uso Dispositivo(8051) - Sistema.
Diagrama de Classe
Um diagrama de classe é uma forma de representação das classes de um
sistema que descreve as possíveis instâncias de dados. Nela podemos ver seu
nome, atributos e métodos que as formam. Basicamente ela serve para verificarmos
como cada método é instanciado, o que ele deve retornar e se deve retornar algum
valor.
Nas figuras abaixo são ilustradas todas as quatro classes utilizadas no
software e logo após a forma de como elas interagem entre si. Assim verifica-se que
existem métodos que devem retornar algum tipo de valor e outros que simplesmente
enviam informações sem necessariamente retornar algum tipo de valor.
Figura 6. 6 Classe CBrokerObjetos.
52
Figura 6. 7 Classe ComPort.
Figura 6. 8 Classe CInterface_Broker_Objeto
Figura 6. 9 Classe CObjetos.
53
Figura 6. 10 Representa o diagrama de classe; forma de como elas se relacionam.
Diagrama de Seqüência
O diagrama de seqüência tem por seu objetivo ilustrar as interações entre
objetos, bem como seus envios e recebimentos de mensagens, mensagens estas
que podem ser consideradas como uma chamada a um determinado método de uma
classe.
Neste diagrama também serão mostrados os diagramas de seqüência para os
quatro casos de uso existentes, o cadastro das informações no banco de dados, o
envio de informações para o mundo externo, a pesquisa de um objeto e a emissão
das informações ao usuário.
No primeiro caso, temos a interação do usuário com o formulário criado,
através dos botões de acesso criado e rotulado como: Novo Objeto, Gravar Objeto,
Excluir Objeto, Buscar Objeto.
Esses botões são representados e utilizados da seguinte forma:
54
Tabela 6. 3 Descrição do uso de cada botão existente no formulário do software para o
cadastro de objetos.
Nome do botão Função dentro do formulário
Novo Objeto Tem por objetivo apenas de limpar os campos
para um novo cadastro de um objeto.
Gravar Objeto Grava no banco o objeto cuja descrição e código
de barras foi informado pelo usuário.
Excluir Objeto Apaga o registro de um objeto do banco.
Buscar Objeto
Realiza uma pesquisa no banco de dados, a fim
de retornar as informações referentes ao objeto
pesquisado.
Voltando ao contexto, o usuário tem somente acesso ao formulário para
realizar qualquer uma das operações citadas acima.
Sendo assim, a classe responsável por todo o tratamento e manipulação das
informações é a classe denominada CInterface_Broker_Objeto. Esta classe funciona
como sendo uma controladora, enviando e retornando dados do formulário (dados
enviados pelo funcionário) para o formulário (dados que serão visto pelos
funcionários), ou seja, para cada tipo de ação feita pelo usuário, esta classe acessa o
método correspondente.
Assim sendo, pode-se concluir que é esta classe que tem permissão para
acessar diretamente através de métodos as outras duas classes, Objetos e
CBrokerObjetos.
Comentando a respeito das classes existentes, a classe Objetos, contém as
informações referentes aos objetos, por exemplo, código de barras(long int) e
descrição do objeto(AnsiString), e a classe CBrokerObjetos, contém métodos de
acesso à coleção de registros de objetos.
As comunicações entre a classe controladora (CInterface_Broker_Objeto) e as
demais classes são feitas através de objetos que interagem entre si, a fim de garantir
uma resposta adequada a um certo tipo de comando instruído pelo usuário.
Este diagrama de seqüência é ilustrado da seguinte forma:
55
Figura 6. 11 Diagrama de seqüência para a parte da inclusão, pesquisa e exclusão de dados.
A mesma forma de raciocínio foi utilizada para representar a comunicação
serial entre os dispositivos. Portanto quando o usuário clicar nos botões de
Comunicar, Configurar Sala e Receber, ele está se comunicando diretamente com o
formulário que por sua vez, chama a classe responsável por fazer a comunicação
serial passando para ela, os devidos parâmetros.
A função dos botões é mostrada na tabela 6.4 e logo após o diagrama de
seqüência desta operação também é mostrado.
56
Tabela 6. 4 Descrição do uso de cada botão existente no formulário do software para a
configuração das salas.
Nome do botão Função dentro do formulário
Comunicar
Faz a comunicação com a porta serial, se existir
algum problema nesta comunicação retorna o
tipo do erro ocorrido para o usuário.
Configurar Sala Este botão tem por objeto limpar as informações
digitadas na caixa de diálogo pelo usuário.
Receber Tem a função de receber bit a bit cada uma das
informações vindas na porta serial.
Figura 6. 12 Diagrama de seqüência para a parte da configuração das salas.
O diagrama de seqüência a abaixo, mostra a forma de como se dá a procura
por um determinado objeto quando uma solicitação de busca é feita pelo turista.
Podemos notar aqui, que não existe o papel do funcionário interagindo com o
57
sistema e sim um microcontrolador que possui as informações do código de barras e
as disponibiliza para o sistema.
Figura 6. 13 Figura mostrando a seqüência de busca de um objeto realizada pelo
microcontrolador.
No caso de uso relacionado à emissão das informações ao usuário que
efetuou a pesquisa com o leitor, o processo se iguala à seqüência mostrada para a
configuração da sala, porém aqui ao invés de mandarmos a configuração da sala,
estamos mandando a descrição do objeto.
Figura 6. 14 Figura ilustrando como se dá o envio da descrição do produto ao microcontrolador.
58
Diagrama de Colaboração
Um diagrama de colaboração é uma outra forma de expressar a comunicação
entre os objetos. Porém aqui, os objetos interagem por meio de casos de uso e cada
uma das mensagens levam consigo um número para identificá-las e
conseqüentemente para saber a ordem em que a comunicação ocorre.
Os dois diagramas mostrados logo abaixo mostram de maneira fácil, como o
controlador trabalha respondendo a estímulos e como se dá a comunicação entre os
objetos, bem como a seqüência em que eles ocorrem.
Figura 6. 15 Diagrama de colaboração da comunicação serial para configuração da sala.
Figura 6. 16 Diagrama de colaboração da integração com o banco de dados.
::FrmTransmissaoRecepcao ::TransmissaoRecepcao
1. Comunicar
2. Configurar Sala
3. Receber
::ComPort 1.1 verifica_Erro()
2.1 enviar_Menssagem(Char)
3.1. receber_Codigo()
3.1.1. DeletarRegistro(long)
2.1.1. getField(long, AnsiString)
::FrmTransmissaoRecepcao ::TransmissaoRecepcao
1. Novo Objeto
2. Gravar Objeto()
3. Excluir Objeto()
4. Buscar Objeto()
1.1. Limpar Campos
::Objetos
2.1. NovoObjeto(long, AnsiString)
3.1. DeletarObjeto(long)
4.1.ProcuraObjeto()
:: CBrokerObjetos
2.1.2. Desmaterializa(CObjetos)
4.1.1. Materializa(long)
::CInterface_Broker_Objeto
59
6.6 Software
Aqui é detalhada cada uma das telas existentes no software, através de
figuras e textos explicativos, para que se tenha conhecimento do perfil visual utilizado
no formulário, além do conhecimento do funcionamento do mesmo.
Tela Inicial
A tela inicial do programa possui duas opções: Arquivo e Sair.
No menu Arquivo é que são encontrados os links para uma nova configuração
de sala, cadastro de um novo objeto no banco de dados, consulta de um objeto no
modo automático, ou seja, nesta opção é que o software faz automaticamente a
consulta de um código de barras e envia as devidas informações para o
microcontrolador que se encarregue de enviá-las por RF e também um atalho para a
saída do sistema.
60
Figura 6. 17 Figura mostrando a tela inicial do software.
Configuração da sala
É na tela de CONFIGURAR SALA, que um perfil de uma sala é configurado.
Inicialmente é escolhida uma porta para a comunicação serial entre
computador e microcontrolador e depois é feita a descrição de qual é o nome da
sala, o que representa esta sala, dentre outras informações.
O interessante é que várias salas podem ser configuradas de maneira rápida,
basta apenas clicar no botão NOVA SALA e uma nova sala, um novo
microcontrolador pode ser programado com um perfil de uma sala.
61
Figura 6. 18 Figura mostrando a parte da configuração das salas no software.
Novo Objeto
Esta opção possibilita fazer o cadastro de novos objetos no banco de dados.
Através dos botões existentes no formulário, os objetos podem ser
cadastrados, excluídos e também pesquisados, bastando para apenas informar o
código de barras que deseja buscar ou excluir.
62
Figura 6. 19 Formulário de inclusão, exclusão e busca de um código de barras no sistema.
Consultar Objeto
Esta parte do software está relacionada à consulta de códigos de barras no
sistema. Ela é uma parte automática do software, que funciona por si só, detectando
uma nova consulta de um código de barras, processando tal consulta e retornando
para o microcontrolador o resultado da referente pesquisa, ou seja, a descrição sobre
um certo código de barras.
63
Figura 6. 20 Figura mostrando a parte automática das consultas no software.
6.7 Fluxogramas
Aqui é mostrado o fluxograma correspondente aos firmware s utilizados no
projeto. Ao todo serão mostrados 3 (três) fluxogramas, cada qual representando a
sua devida função.
As funções que serão descritas pelos fluxogramas são: Sala, Receptor, e
Computador Central.
Sala
O firmware correspondente à sala tem por função capturar através de
interrupções o nome das salas e armazená-las em posições da memória RAM. Uma
vez todo o nome da sala configurado e armazenado, o firmware tem por função
habilitar o transmissor e fazer a leitura de cada uma das posições da memória RAM
64
a fim de disponibilizar cada uma das informações para o transmissor. Lembrando
que a leitura da memória é feita periodicamente.
Figura 6. 21 Fluxograma do firmware existente para o funcionamento do dispositivo na sala.
MAIN
Configura
comunicação serial
Aguarda interrupção
Houve Interrupção?
Não
É stop-bye?
Sim
Não
Espera 15 segundos
Sim
Grava na
RAM
Habilita Transmissor
Não
Manda um dado da RAM para por1 e incrementa uma
posição
Envia dado em P1 por rádio freqüência
Envia dado em P1 por rádio freqüência
Sim
É stop-byte?
Envia start-byte por rádio freqüência
65
Receptor
O firmware encontrado no receptor é sem dúvida o mais interessante, pois é
nele que os dados vindos da sala ou do computador central é mostrado no display de
LCD. O receptor tem por objetivo ler de tempos em tempos o Port1 do
microcontrolador e mostrar tal dado no display de LCD. E nele que é identificado o
término de uma informação, ou seja, uma mensagem, seja ela da sala, do código de
barras lido com o leitor ou a descrição do objeto.
Nele existe uma interrupção serial que faz com que os dados lidos pelo leitor
de código de barras sejam armazenados na memória RAM do microcontrolador. Em
seguida estes dados são enviados e depois recebidos novamente com os dados do
referente objeto pesquisado.
Neste firmware também existe o controle da habilitação entre transmissor e
receptor.
66
MAIN
Escreve: GUIA ELETRONICO
DE INFORMACOES
Habilita Receptor
É start-byte?
Não
Lê port1
Lê port1
255 milissegundos
Sim
Escreve dado lido no LCD
É stop-byte?
Não
Configura comunicação serial
Aguarda interrupção
Houve Interrupção?
Não
Sim
É stop-bye?
Sim
Grava na
RAM
Habilita Transmissor
1
Sim
Não
67
Figura 6. 22 Fluxograma mostrando a sequencia executada pelo firmware no módulo receptor.
Computador Central
O firmware encontrado no computador central é responsável também por
fazer o controle das habilitações entre o transmissor e o receptor. É ele quem recebe
o código de barras vindo do receptor e os emite para o software do computador. Ele
faz além disso, o mesmo processo de gravação do perfil da sala, porém aqui, ele
recebe a descrição de um determinado objeto, armazena na RAM estas informações
e depois as emite novamente para o receptor, que por sua vez mostra os dados no
display de LCD.
1
Não
Manda um dado da RAM para por1 e incrementa uma
posição
Envia dado em P1 por rádio freqüência
Envia dado em P1 por rádio freqüência
Sim
É stop-byte?
Envia start-byte por rádio freqüência
FIM
68
MAIN
Configura timer da comunicação serial
Habilita Receptor
É start-byte?
Não
Lê port1
Lê port1
255 milissegundos
Sim
Manda para o computador
É stop-byte?
Não
Sim
Configura comunicação serial
Aguarda interrupção
Houve Interrupção?
Não
É stop-bye?
Sim
Grava na
RAM
Habilita Transmissor
Não
Sim
1
69
Figura 6. 23 Fluxograma representando o funcionamento do computador central.
1
Não
Manda um dado da RAM para por1 e incrementa uma
posição
Envia dado em P1 por rádio freqüência
Envia dado em P1 por rádio freqüência
Sim
É stop-byte?
Envia start-byte por rádio freqüência
FIM
70
CAPÍTULO 7
7 COMUNICAÇÃO HARDWARE E SOFTWARE
É comum a comunicação entre software - hardware e entre hardware
hardware no projeto.
Tal discussão a seguir tem por objetivo mostrar como os dispositivos do
projeto se interagem.
A conversação entre os componentes do sistema se dá na seguinte maneira:
Configuração da sala;
Leitura do código de barras;
Transferência do código lido para o computador central;
Comunicação do computador central com o computador que contém o
banco de dados;
Transferência dos dados do objeto para o receptor.
Configuração da sala
O processo de configuração da sala se dá pela comunicação entre o software
e o hardware. Esta comunicação é feita através da porta serial. É ela a responsável
por fazer a comunicação entre computador e o kit do microcontrolador.
O processo de interação entre as duas partes começa quando é aberta a
porta de comunicação. Em seguida, a especificação da porta é definida, bem como a
velocidade de comunicação, por exemplo, porta COM1 com velocidade de 1200 bits
por segundo. Vale lembrar que tanto o software quanto o firmware contido no
hardware devem estar configurados para utilizarem a mesma velocidade de
comunicação, neste caso, 1200 bits por segundo.
Logo após este processo, tanto o software quanto o hardware estão prontos
para iniciar a comunicação. A transmissão de um dado só ocorre quando uma tecla
71
for pressionada, isso porque o firmware contido no kit trabalha com interrupções da
serial, ou seja, se não há nenhuma interrupção gerada pelo software nada é feito.
Uma interrupção é gerada a cada letra pressionada, por isso, cada uma das
letras que fazem parte da configuração da sala estão localizadas em posições
distintas na memória de dados do microcontrolador.
A comunicação só é desligada, quando o usuário terminar de configurar uma
sala e clicar no botão de Configurar Sala que se encontra no software. Quando este
botão é pressionado, antes de desconectar-se da comunicação serial, uma letra que
corresponde ao stop-byte é enviada ao microcontrolador simbolizando o final de uma
configuração.
Quando isto ocorre tanto o hardware quanto o software deixam de se
comunicarem, passando agora a ser dispositivos independentes.
O símbolo utilizado para fazer o encerramento da comunicação é o £, que
corresponde ao código 163 na tabela ASCII.
Leitura do código de barras
O processo de leitura do código de barras também utiliza o conceito da
comunicação serial, sendo assim, tanto o microcontrolador quanto o leitor devem
estar com suas taxas de comunicações e que quantidade de bits de transmissão
iguais. Porém o mais interessante aqui é o fato de poder configurar o próprio leitor de
acordo com a sua forma de trabalho, no caso do projeto, utilizando 8 bits de dados,
velocidade de comunicação de 1200 bits por segundo e o tempo de atraso entre
caracteres de 255 milissegundos.
Com estas configurações, a cada 255 milissegundos, o leitor gera uma
interrupção e manda o dado direto para uma certa posição da memória de dados do
microcontrolador.
Transferência do código lido para o computador central
O processo da transferência de dados coletados a partir do leitor de código de
barras, se dá logo após a detecção do stop-byte. Tal stop-byte é transmitido pelo
leitor ao final de cada código lido. Assim sendo, quando o microcontrolador fizer a
72
detecção da chegada do stop-byte, ele armazena-o em uma certa posição da
memória de dados e em seguida um dos registradores do microcontrolador é
posicionado para a primeira posição, onde se encontra o primeiro dado lido, neste
caso o primeiro número do código de barras.
A transmissão começa quando o conteúdo do registrador for movido para o
Port1 do microcontrolador. Assim, a cada 255 milissegundos, o registrador é
incrementado e um novo valor do código de barras é levado ao Port1 até a chegada
do stop-byte.
Comunicação do computador central com o computador que contém
o banco de dados
Assim que o microcontrolador já recebeu todo o código de barras lido pelo
leitor e este por sua vez os enviou por rádio freqüência para o outro
microcontrolador, este tem por objetivo enviar estas informações ao computador
central, de forma que este possa fazer a pesquisa e retornar o resultado da busca.
A comunicação do microcontrolador com o computador é feita sem
interrupções, ou seja, somente com a configuração dos timers e o controle do
registrador TI.
Depois de o computador receber os dados do código de barras e ter realizado
a pesquisa no banco de dados, uma nova comunicação serial é feita entre
computador
microcontrolador, porém esta agora, é feita via interrupções. O
principio de funcionamento segue o mesmo raciocínio lógico da configuração da sala,
porém aqui, não é necessário ter um funcionário digitando as informações, pois os
dados são gerados através da busca no banco e são automaticamente enviados
letra-a-letra pelo software ao microcontrolador.
O microcontrolador por sua vez, pega cada uma destas letras vindas do
computador e as guarda em uma posição da memória de dados do microcontrolador,
para que futuramente, estes venham a ser enviados novamente para o seu lugar de
origem, o receptor do usuário.
73
Transferência dos dados do objeto para o receptor
Uma vez em que o microcontrolador já possui em sua memória de dados
todas as informações referentes ao código de barras pesquisado, este então passa a
disponibilizar em seu port P1 os valores em binários que correspondem cada uma
das letras. Tais valores são disponibilizados a cada 255 milissegundos, ou seja, a
cada 255 milissegundos uma nova posição da memória de dados do
microcontrolador é incrementada, até que se chegue no stop-byte que corresponde
ao final de transmissão.
74
CAPÍTULO 8
8 RESULTADOS
Este capítulo é dedicado aos resultados obtidos no projeto.
É comentado primeiramente o resultado obtido com cada uma das partes que
compõe o sistema em separado, ou seja, kit 8051, leitor código de barras,
transmissor, receptor e display lcd e em seguida o resultado geral, a conseqüência
da junção de todos os módulos.
Kit 8051
Os dois kits do 8051 utilizados têm por objetivo receber, armazenar,
disponibilizar, mostrar as informações relacionadas ao código de barras e sala e
fazer o controle das habilitações entre transmissor e receptor de forma que nenhum
dos dois transmissores e receptores estejam habilitados ao mesmo tempo.
Para isso, testes foram de envio e recebimento de dados foram realizados
para verificar o correto funcionamento de cada uma das partes descritas acima.
De uma forma geral o kit recebe serialmente as informações da sala e do leitor
através de interrupções da serial, armazena tais informações em sua memória de
dados e disponibiliza como resultado o nome sala e a informação de um certo objeto.
A comunicação entre estes dois kits é feita via rádio freqüência a uma taxa de
transmissão igual a 2,4 K bits por segundo.
Leitor Código de Barras
Aqui o leitor captura todo o código de barras e guarda tais informações em um
buffer interno do leitor. Em seguida, a cada 255ms o leitor gera uma interrupção
serial e envia um elemento do código de barras. Tal processo é repetido até que o
buffer do leitor esteja vazio.
75
Este processo de funcionamento ocorre devido a programação do leitor de
código de barras feita pelo desenvolvedor do projeto.
O resultado obtido com o leitor é ter todo o código de barras disponibilizado
serialmente para o microcontrolador com um atraso de 255ms entre cada byte.
O teste do atraso entre caracteres foi realizado utilizando a ferramenta
HyperTerminal que permite acesso à porta serial em uma velocidade pré-definida.
Transmissor e Receptor
Este sem dúvida é um dos focos principais do projeto, produzindo como
resultado a garantia de que os mesmos dados enviados sejam os mesmos dados
recebidos sem nenhum tipo de interferência, além de disponibilizar estes para o kit
8051.
Seu objetivo aqui é só o de mandar e receber os dados que são para eles
disponibilizados.
Display LCD
Este está totalmente relacionado ao resultado do projeto. Sem ele não
conseguiríamos ter a certeza de que todo o conjunto de transmissão, recepção,
leitura dos dados estão corretos.
É ele quem mostra todas as informações referentes a sala, e ao código de
barras lido.
Resultado Geral
A conseqüência da junção de todos os módulos descritos acima proporcionou
como resultado, uma transmissão de alta velocidade para o projeto, onde a taxa de
transmissão é de 2,4Kbps a uma distância de aproximadamente 30 (trinta) metros,
dependendo da antena utilizada e da potência que é gerada no transmissor.
Foi possível notar que esta metragem referente à distância entre os módulos
pode variar de acordo com a tensão aplicada na alimentação do transmissor, ou seja,
como a tensão no transmissor pode variar de 2Volts até 12Volts, quanto mais for a
tensão aplicada ao transmissor, maior será a sua potência de transmissão,
76
acarretando com isso em uma maior distância entre os módulos, porém se esta
tensão for diminuída a distância entre os módulos também se reduz
proporcionalmente.
Os possíveis ruídos que poderiam influenciar na transmissão dos dados,
foram em sua maioria eliminados com a ajuda de um protocolo existente no firmware
e também pela utilização de codificadores e decodificadores.
Outro resultado obtido é o contínuo envio de informações da sala para o
receptor do usuário, fazendo com que vários receptores, ou seja, novos usuários
recebam a informação da sala ao entrarem nela. Com isso, somente os novos
usuários recebem as informações e aqueles que já receberam uma vez não recebem
mais.
Relacionado a parte do código de barras, foi visto que este, para um cadastro,
uma consulta e exclusão não pode possuir mais do que dez dígitos numérico devido
à forma de implementação do software, pois o mesmo trata o código de barras como
sendo um long int ao invés de uma string.
A consulta de um código de barras gera dois tipos de resultado, o resultado do
objeto existente e o resultado de um inexistente. Se a pesquisa realizada produzir um
resultado válido, a informação do referente objeto é passada para o usuário, porém a
consulta de um objeto inexistente, àquele que não possui registro no banco de
dados, retorna uma informação ao usuário dizendo que tal objeto não está
cadastrado.
O cadastro das informações de um objeto gera como resultado final o perfil
deste, que pode ser alterado facilmente via software. Tal definição de perfil resulta
nas características do objeto, tal como o nome, autor, ano de criação, etc, sendo
estas as mesmas que serão vistas no display pelo usuário na hora de uma consulta.
77
CAPÍTULO 9
9 ESPECIFICAÇÃO DE VALIDAÇÃO DO PROJETO
O processo de validação do projeto é feito após a finalização de todos os
testes, comprovação do funcionamento dos módulos e se necessário quando as
ações corretivas forem concluídas.
Tais testes serão realizados após a finalização de cada módulo, sendo que
estes estão distribuídos na seguinte forma:
Teste do transmissor e receptor;
Teste do código de barras;
Teste do envio das informações do código de barras;
Teste da coleta de informações pela porta serial;
Teste da pesquisa do código de barras pelo Software;
Teste do envio das informações do código de barras para o usuário;
Teste do software;
Teste do microcontrolador.
Teste do Transmissor e Receptor
Esta avaliação é feita enviando uma seqüência de bits que é aplicada ao
transmissor e verificando se a mesma seqüência enviada aparece de forma correta
na saída do receptor.
Se isto acontecer, o projeto é levado a diante, caso contrário será feito um
estudo de toda montagem, inclusive do diagrama esquemático e se houver algum
tipo de alteração a documentação poderá também sofrer adaptações.
Teste do Código de Barras
Este teste tem por objetivo verificar qual a forma de trabalho de um leitor de
código de barras, verificando a forma de como os dados são disponibilizados em sua
78
saída após a leitura de um código de barras. Esta parte também engloba o conceito
de configuração do leitor, ou seja, o tempo de atraso entre caracteres, velocidade de
comunicação e se existe ou não paridade.
Seu teste foi comprovado após a leitura de um código de barras e visto como
este é disponibilizado na saída, juntamente com o atraso entre caracteres.
Teste do Envio das Informações do Código de Barras
Este exame é realizado após a identificação de como um leitor de código de
barras disponibiliza os dados coletados na saída do leitor. Tais dados serão
analisados e depositados na memória RAM do microcontrolador que futuramente
disponibiliza na entrada do transmissor para que seja feita a transmissão deste
código. Após a transmissão, o código lido deve ser enviado para o receptor junto ao
computador central.
Sendo assim, o teste se dá como aprovado quando os mesmos bits que
saíram do leitor de código de barras estiverem disponíveis no receptor alocado no
computador central onde se dá a pesquisa do objeto.
Teste da Coleta da Informação pela Porta Serial
Após os dados do código de barras ou os dados de configuração da sala
estarem disponíveis no microcontrolador, dá-se início a parte de comunicação HW e
SW. Assim sendo, o computador faz uma leitura da porta serial, a fim de coletar as
informações do código de barras ou da sala, é feita uma checagem para verificar se
exatamente os dados enviados são realmente os dados recebidos, através da
observação dos dados na tela.
Teste da Pesquisa do Código de Barras pelo Software
É atribuído um valor de código de barras qualquer. Em seguida é verificada a
informação sobre o código e o software é responsável por disponibilizar, novamente
na paralela, as informações do referente código.
79
Teste do Envio das Informações do Código de Barras para o Usuário
Para a validação deste módulo, existe uma verificação manual do conteúdo
mostrado no display do usuário com o conteúdo as informações de um objeto
cadastrado no sistema. Se estas informações forem iguais, sem perda de
informação, esta etapa passa no teste, caso contrário é feito uma reavaliação de
todo o conjunto envolvendo os dados do leitor, os dados que estão sendo
pesquisados e os dados que estão sendo enviados.
Teste do Software
O software por ser dividido em duas partes, teve a sua fase de testes também
desmembrada, sendo que a primeira parte cuidou da parte de gravação e acesso
das informações no banco de dados e a segunda foi voltada para a parte da
comunicação serial utilizando métodos já pré-definidos pelo compilador.
No que diz respeito ao banco de dados, foram feito testes para a inclusão de
um registro no banco, exclusão e buscar. O teste de busca de registros, foi feito em
registros cadastrados no banco e em registros inexistentes para verificar se a busca
retornava algum valor e também de forma indireta para testar se realmente o registro
pesquisado foi incluído no banco.
Na parte de teste da comunicação serial com o software, foi utilizado
inicialmente o programa HyperTerminal, disponibilizado pela Microsoft e em seguida
o mesmo procedimento foi usado para testar o software.
Teste do Microcontrolador
O teste do microcontrolador foi feito em etapas a medida que o programa em
assembly foi progredindo. Primeiramente foi testado se os dados enviados pelo
computador através do software desenvolvido eram recebidos na porta P1 do
microcontrolador. Em seguida esses dados foram colocados byte a byte na memória
de dados, RAM, um em cada posição e para testar este procedimento, foi
desenvolvido um programa que objetiva ler cada uma das informações da RAM
partindo de um endereço inicial e disponibilizando-as na porta P1 do
microcontrolador.
80
O projeto é validado quando a parte de comunicação dos dados for realizada,
ou seja, quando o envio e o recebimento de alguma informação com relação ao local
acontecer, ou seja, quando um visitante entra em uma sala de uma determinada
empresa.
O módulo e sub-módulo do grupo identificação de objetos e o módulo de
microcomputador com o sistema receptor, transmissor e do software ou banco de
dados não devem ser usados para a validação do projeto, uma vez em que estes são
módulos adicionais que podem estar em funcionamento até a apresentação completa
do protótipo, porém estes estando ou não em conformidades não devem ser
influenciados na validação do projeto, devido à restrição de tempo aplicada ao
desenvolvimento do mesmo.
OBS: Todos os módulos de testes poderão ou não ser aprovados. Caso um ou mais
destes módulos não passarem no teste, é feita uma avaliação de toda sua estrutura
física e lógica a fim de acharmos os devidos erros. Se estes erros são erros de
projeto, toda sua estrutura estará sujeita a alterações, sendo estas relatadas na parte
final do projeto.
81
CAPÍTULO 10
10 CONCLUSÃO
O trabalho enfoca as áreas de transmissão e recepção de dados,
microcontroladores e interface de comunicação serial, bem como as interrupções e
timers, além de englobar a disciplina de engenharia de software.
Todo projeto foi desenvolvido utilizando os conceitos citados acima de tal
forma:
Transmissão e Recepção de dados: Utilizada para fazer a comunicação
entre os dois kits, através da troca de mensagens.
Interrupções da serial: Utilizada para fazer com que o microcontrolador
se comunique com o mundo externo no caso, configuração do perfil de
uma sala e leitura de um código de barras.
Timer: Utilizado também para fazer uma comunicação serial, porém
aqui ela é utilizada quando um código de barras é enviado para o
computador para fazer a pesquisa.
Engenharia de Software: Foi aqui adicionado a engenharia de software
para se ter um modelo, uma base de como desenvolver o software
utilizado no projeto, a fim de facilitar o entendimento e a programação
com seus diagramas, lista de eventos.
Um fator interessante que foi até colocado em prática durante o
desenvolvimento do projeto, foi o uso de um kit 8051 que possui duas funções, uma
utilizada para configurar a sala e outra para o computador central. Embora o que
mude entre elas seja apenas o firmware, o hardware é o mesmo.
Alguns problemas foram encontrados para se buscar os componentes que
melhor se adaptavam ao projeto tendo em vista o custo x benefício que estes
poderiam trazer.
82
Outros também foram encontrados na hora da implementação prática, pois o
software em assembly teve de ser compilado várias vezes para que a função
pretendida fosse realizada.
Na parte de hardware algumas dificuldades encontradas estavam na hora de
fazer a leitura do código de barras, pois alguns problemas relacionados à pinagem
do leitor foi preciso ser estudada. Outras estavam na hora de fazer a intercalação do
transmissor com o receptor, pois como estava trabalhando com interrupções, um
cuidado especial teve de ser tomado para que quando um bit fosse setado para 1 ou
0, este processo não interferisse na interrupção programada.
Assim sendo, com todo o conhecimento adquirido durante o desenvolvimento
deste, este trabalho pode ser melhorado de forma a:
Possibilitar a consulta de vários usuários dentro de uma sala sem que
haja interferência entre uma comunicação e outra.
Garantir com que um usuário receba as informações que ele solicitou
na busca pela descrição de um objeto.
Garantir que não haja interferência dos módulos da sala entre si
quando estes estão localizados em salas diferentes.
Com isso, podemos garantir a satisfação dos usuários e tornar este, um novo
produto de mercado com aplicações em todos os ramos.
83
REFERÊNCIAS BIBLIOGRÁFICAS
TEMES, LLOYD. Princípios de Telecomunicações. São Paulo, McGraw-Hill, 1990.
NETO, VICENTE S.; PETRUCCI, LUCILO A.; TEIXEIRA, PAULO SÉRGIO, A.
Telecomunicações - Sistemas de Propagação e Rádio Enlace. São Paulo, Eica,
1999.
REZENDE, DENIS ALCIDES. Engenharia de Software e Sistemas de Informação.
Rio de Janeiro, Brasport, 1999.
FURLAN, JOSÉ DAVI. Modelagem de Objetos através da UML. Makron Books,
1998.
ERCEGOVAC, MILOS, LANG TOMÁS, MORENO, H. JAIME. Introdução aos
Sistemas Digitais. Porto Alegre, Bookman, 2000.
Moreira, Adriano. Técnicas de Modulação.
URL:
http://piano.dsi.uminho.pt/netshare/adriano/Teaching/Comum/TecModul.html
Redação Terra. Como funcionam os leitores de código de barras?
URL: http://noticias.terra.com.br/ciencia/interna/0,,OI157168-EI1426,00.html
UFRGS. Transmissão de Dados Sem Fio.
URL: http://penta.ufrgs.br/redes.94-2/lisianeh/wireless.html
84
Souza, Lima Alessandro. Rosa, Santos Vagner. Micro Curso
MICROCONTROLADOR 8051.
URL: http://www.dmat.furg.br/~vagner/8051emu/apostila/
Apostila de LCD
URL: http://www.ime.eb.br/~pinho/micro/apostila/lcdport.pdf
O Avanço Tecnológico.
URL: http://www.ucb.br/cecb/site8a/AvancoTecnologico
Grêmio de Radioamadores. O Rádio.
URL: http://planeta.terra.com.br/educacao/Caoquira/gremio/radiohi.htm
Luciano M. Almeida. Multiplexação e Modulação Óptica.
URL: http://www.lucalm.hpg.ig.com.br/modulacao.htm
Dicionário de Informática,
URL: http://www.mednet.com.br/users/mateuspa/dicio_f.htm
85
ANEXOS
This document was created with Win2PDF available at http://www.daneprairie.com.The unregistered version of Win2PDF is for evaluation or non-commercial use only.