Upload
vanthuy
View
212
Download
0
Embed Size (px)
Citation preview
UNIVERSIDADE POSITIVO
NÚCLEO DE CIÊNCIAS EXATAS E TECNOLÓGICAS
CURSO DE ENGENHARIA DA COMPUTAÇÃO
IRINEU KOPIETZ
Automação de Vendas no Varejo:
Comparando RFID x Decodificação de Imagens
Curitiba
2011
UNIVERSIDADE POSITIVO
NÚCLEO DE CIÊNCIAS EXATAS E TECNOLÓGICAS
CURSO DE ENGENHARIA DA COMPUTAÇÃO
IRINEU KOPIETZ
Automação de Vendas no Varejo:
Comparando RFID x Decodificação de Imagens
Trabalho de Conclusão de Curso
Prof. Alessandro Brawerman
Orientador
Curitiba, dezembro de 2011.
UNIVERSIDADE POSITIVO
Reitor: Prof. José Pio Martins
Vice-Reitor e Pró-Reitor de Administração: Prof. Arno Antônio Gnoatto
Pró-Reitor de Graduação: Prof. Renato Casagrande
Diretor do Núcleo de Ciências Exatas e Tecnológicas: Prof. Marcos José Tozzi
Coordenador do Curso de Engenharia da Computação: Prof. Leandro Henrique de
Souza
TERMO DE APROVAÇÃO
Irineu Kopietz
Automação de Vendas no Varejo:
Comparando RFID X Decodificação de Imagens
Monografia aprovada como requisito parcial à conclusão do curso de Engenharia da
Computação da Universidade Positivo, pela seguinte banca examinadora:
Prof. Alessandro Brawerman (Orientador)
Prof. Amarildo Geraldo Reichel (Membro)
Prof. Valfredo Pilla Jr. (Membro)
Curitiba, 05 de dezembro de 2011.
vi
Sumário
Lista de Abreviações e Siglas ......................................................................................viii
Lista de Figuras............................................................................................................ ix
Resumo ......................................................................................................................... x
Abstract ....................................................................................................................... xi
1. Introdução ............................................................................................................... 12
2. Fundamentação Teórica .......................................................................................... 13
2.1. Código de Barras .............................................................................................. 13
2.2. RFID ................................................................................................................ 14
2.3. Android ............................................................................................................ 14
2.4. Web Service ..................................................................................................... 16
2.5. ZXing ............................................................................................................... 18
2.6. Tecnologia de comunicação .............................................................................. 18
2.6.1. Wi-Fi ......................................................................................................... 18
2.6.2. Cliente-servidor .......................................................................................... 20
2.7. Smartphone ...................................................................................................... 20
3. Trabalhos relacionados ............................................................................................ 22
3.1. Future Store ...................................................................................................... 22
3.2. Billabong Store Shopping Iguatemi Alphaville ................................................. 23
3.3. Aplicativo BuscaPé para Android ..................................................................... 24
4. Especificação Técnica ............................................................................................. 26
4.1. Visão Geral do Projeto ...................................................................................... 26
4.2. Hardware .......................................................................................................... 28
4.2.1. Diagrama de blocos .................................................................................... 28
4.2.2. Projeto de hardware .................................................................................... 29
4.3. Software ........................................................................................................... 33
4.3.1. Análise do sistema...................................................................................... 34
4.3.2. Diagrama de casos de uso ........................................................................... 34
vii
4.3.3. Diagrama de classes ................................................................................... 35
4.3.4. Diagrama de sequência ............................................................................... 36
4.4. Protocolo de comunicação ................................................................................ 36
4.5. Modelo Entidade Relacional – MER ................................................................. 37
5. Testes e validações .................................................................................................. 38
5.1. Leitura do código de barras utilizando a câmera fotográfica do celular .............. 38
5.2. Leitura do código de barras utilizando leitor de etiquetas RFID ........................ 39
5.3. Teste de desempenho e escalabilidade – aplicativo Android .............................. 40
5.4. Teste de gasto de tempo total para realizar uma compra .................................... 41
6. Comparação metodológica ...................................................................................... 43
7. Conclusão ............................................................................................................... 44
8. Referências Bibliográficas....................................................................................... 45
viii
Lista de Abreviações e Siglas
Hz
MHz
KHz
A
mA
V
h
cm
mm
GPS
Hertz
Mega Hertz
quilo Hertz
Ampère
Mili ampère
Volts
Hora
Centímetro
milímetro
Global Position System
ix
Lista de Figuras
Figura 1: Código de barras EAN-13. ........................................................................... 14
Figura 2: Produto da loja Billabong com etiqueta RFID .............................................. 24
Figura 3: Ponto de consulta de produtos no interior da loja. ......................................... 24
Figura 4: Representação gráfica do funcionamento do sistema de compras utilizando a
leitura de códigos de barras por leitor de RFID. ........................................................... 27
Figura 5: Representação gráfica do funcionamento do sistema de compras utilizando
leitura de código de barras através de fotografia. ......................................................... 28
Figura 6: Diagrama de blocos simplificado do sistema ................................................ 29
Figura 7: Smartphone Samsung Galaxy 5. ................................................................... 30
Figura 8: Aplicativo Connectfy, usado para transformar um computador num hotspot. 31
Figura 9: Leitor RFID StrongLink SL102.................................................................... 32
Figura 10: Etiqueta RFID StrongLink SLK01. ............................................................ 33
Figura 11: Diagrama de casos de uso........................................................................... 35
Figura 12: Diagrama de classes básico. ....................................................................... 35
Figura 13: Diagrama de sequência representando a interação entre o cliente e a loja.... 36
Figura 14: Diagrama entidade relacional do projeto. .................................................... 37
Figura 15: Imagem de um código de barras EAN-8 tirada com uma câmera fotográfica
com resolução de 2 megapixels. .................................................................................. 38
Figura 16: Fotografia de um código de barras EAN-13 com tamanho de 5,5cm de altura
por 9,5cm de largura tirada com a mesma câmera fotográfica com resolução de 2
megapixels. ................................................................................................................. 39
Figura 17 Leitor RFID 3M 9900. ................................................................................ 40
Figura 18: Gráfico representando o número de clientes conectados versus tempo de
resposta. ...................................................................................................................... 41
Figura 19: Gráfico representando o tempo total, em segundos, para realizar uma
compra, utilizando RFID e a decodificação de imagens ............................................... 41
x
Resumo
O objetivo deste projeto foi fazer a comparação destes dois métodos para a
compra/venda de produtos numa rede de varejo. Para tanto é utilizada a leitura do
código de barras presente em quase todos os produtos industrializados atualmente. Essa
leitura é realizada utilizando a decodificação de uma imagem contendo a ilustração do
código de barras, a qual é feita usando a biblioteca ZXing.
Também pode ser feita a decodificação do código de barras utilizando um leitor
de etiquetas RFID; assim temos duas maneiras diferentes para realizar o mesmo
processo.
No primeiro método, o aplicativo desenvolvido para smartphone com sistema
operacional Android, conecta-se a um Web Service para realizar o procedimento de
compra/venda de um produto qualquer.
No segundo método a compra/venda é realizada diretamente no servidor da loja,
utilizando-se a leitura de etiquetas RFID, correspondentes aos códigos de barras dos
produtos.
Palavras-chave: Android, RFID, EAN-13, código de barras, automação via celular.
xi
Retail Sales Automation: Comparing RFID x Decoding Images
Abstract
The objective of this project was to make the comparison of two methods for the
purchase /sale of products in a retail chain. For that is used to read the barcode is present
in almost all industrial products today. This reading is performed using the decoding
of an illustration of the image containing the barcode, which is done using the
library ZXing.
It can also be made to decode the barcode using a RFID tag reader, so we
have two different ways to accomplish the same process.
In the first method, the application developed for Android smartphone operating
system, connects to a Web Service to perform the procedure for purchase/sale of any
product.
In the second method the purchase/sale is made directly to the store server,
using the reading of RFID tags, barcodes corresponding to the products.
Keywords: Android, RFID, EAN-13, barcodes, automation via cell phone.
12
1. Introdução
No sistema de varejo atual, quando a compra de alguns produtos é realizada
numa loja, são escolhidos os itens, colocados numa cesta ou carrinho, e encaminha-se
até um caixa para registrar a compra e efetuar o pagamento. Nos grandes centros
urbanos, os caixas destas lojas formam filas enormes de clientes à espera da sua vez
para concretizar sua compra. Imagine não precisar mais esperar 10 ou 15 minutos para
ser atendido pelo caixa da sua loja preferida; fazer suas compras sem o uso de carrinhos
ou cestas e, além disso, pagar utilizando débito em conta corrente.
Pensando nisso, foi desenvolvido um novo estilo para fazer compras nas redes
de varejo. Utilizando apenas um aplicativo no celular o cliente poderá realizar suas
compras apenas fotografando os códigos de barras dos produtos desejados e colocando-
os num carrinho virtual. Após a confirmação da compra, no mesmo aplicativo será
realizado o pagamento. Finalizado o pagamento, o cliente dirige-se até o caixa e retira
os itens anteriormente adquiridos. Tudo isso simples, rápido e sem precisar empurrar
um carrinho ou segurar uma cesta e enfrentar filas enormes. Caso queira, poderá receber
suas compras em domicílio num horário pré-estabelecido, aumentando ainda mais a sua
comodidade.
É esperado que este novo estilo de fazer compras conquiste aqueles que se
interessam por maneiras diferentes de realizar as tarefas do dia-a-dia, e também aos
lojistas que poderão inovar ao adotarem essa maneira diferente de oferecer a venda de
produtos no varejo.
Paralelamente, foi projetada outra maneira para se realizar a compra de produtos
utilizando a leitura do código de barras, sendo esta através da leitura de etiquetas de
RFID; proporcionando certa comparação entre os dois métodos para a realização de
compras no varejo.
13
2. Fundamentação Teórica
O projeto utiliza em sua concepção a fotografia de códigos de barras presentes
em todo e qualquer produto posto à venda nas redes de varejo, assim como também a
leitura dos mesmos códigos de barras através de leitores RFID. Para que o primeiro
método aconteça, tem-se a necessidade do uso de um smartphone com sistema
operacional Android e com a disponibilidade de uma câmera fotográfica integrada para
que tais fotografias possam ser feitas. Já para o segundo método é necessário o uso de
etiquetas de RFID e um leitor de RFID.
O principal foco do projeto é a comparação entre a decodificação de códigos de
barras através da decodificação de imagens contendo tais códigos, e da leitura de
etiquetas de RFID, que também podem contê-los, para a realização de compras nas
redes de varejo. Porém, o projeto proposto ainda prevê o uso de um sistema de controle
de estoque, como também de um sistema de pagamentos.
2.1. Código de Barras
Código de barras é uma representação gráfica de dados numéricos ou
alfanuméricos. A decodificação dos dados é comumente feita utilizando um tipo de
scanner, o leitor de código de barras, que emite um feixe de luz vermelha que percorre
todas as barras. Onde a barra for escura, a luz é absorvida; onde a barra for clara, a luz é
refletida para o leitor. Os dados capturados através desta leitura são decodificados na
forma de letras, números ou letras e números legíveis ao ser humano (GS1 Brasil,
2011).
O formato mais utilizado em nível global, EAN-13, é composto pela combinação
de 13 dígitos divididos em quatro partes. Os 3 primeiros dígitos representam o prefixo
da organização responsável por controlar e licenciar a numeração no país (A); os
próximos dígitos, variando de 4 a 5, representam a identificação do fabricante ou
empresa proprietária da marca do produto (B); a terceira parte contendo 4 dígitos
identifica o produto produzido pela empresa (C); e por último um dígito verificador (D)
(CSB, 2011), conforme mostra a Figura 1.
14
Figura 1: Código de barras EAN-13
FONTE: CSB, 2011.
2.2. RFID
RFID é uma sigla de "Radio-Frequency IDentification" originária da língua
inglesa que em português significa Identificação por Rádio Frequência. Consiste num
método de identificação automática através de sinais de rádio, recuperando e
armazenando dados remotamente através de dispositivos denominados etiquetas RFID
(AIM, 2011).
A tecnologia RFID foi criada durante a Segunda Guerra Mundial na Inglaterra
com o objetivo de identificar as aeronaves das forças aliadas e distingui-las das
aeronaves inimigas (GTA, 2011).
Uma etiqueta ou tag RFID é um transponder, um pequeno objeto que pode ser
colocado em uma pessoa, animal, equipamento, embalagem ou produto, entre outros.
Contém chips de silício e antenas que lhe permite responder aos sinais de rádio
enviados por uma base transmissora (AIM, 2011).
Além das etiquetas passivas, que respondem ao sinal enviado pela base
transmissora, existem ainda as etiquetas semi-passivas e as ativas, dotadas de bateria,
que lhes permite enviar o próprio sinal. São bem mais caras que do que as etiquetas
passivas e podem ser regraváveis (AIM, 2011).
2.3. Android
Android é um sistema operacional para dispositivos móveis que roda sobre o
núcleo Linux. Inicialmente desenvolvido pela Google e posteriormente pela Open
15
Handset Alliance, atualmente tem a Google como responsável pela gerência do produto
e engenharia de processos. O Android permite aos desenvolvedores escreverem
software na linguagem de programação Java controlando o dispositivo via bibliotecas
desenvolvidas pela Google (LECHETA, 2010).
A seguir são apresentadas algumas características estruturais do Android (Android,
2011).
Handset layouts - a plataforma é adaptada tanto para dispositivos VGA maiores,
gráficos 2D, bibliotecas gráficas 3D baseadas em OpenGL ES especificação 2.0
e os layouts mais tradicionais de smartphones.
Armazenamento - é utilizado SQLite para armazenamento de dados internos.
Conectividade - o Android suporta uma grande variedade de tecnologias de
conectividade incluindo GSM1/EDGE
2, IDEN
3, CDMA
4, EV-DO
5, UMTS
6,
LTE7, Bluetooth
8, 3G
9, Wi-Fi e WiMAX
10.
1 Global System for Mobile Communications, ou Sistema Global para Comunicações Móveis (GSM:
originalmente, Groupe Special Mobile) é uma tecnologia móvel e o padrão mais popular para telefones
celulares do mundo.
2 Enhanced Data rates for GSM Evolution (EDGE), ou Enhanced GPRS (EGPRS), é uma tecnologia
digital para telefonia celular que permite melhorar a transmissão de dados e aumentar a confiabilidade da
transmissão de dados.
3 Integrated Digital Enhanced Network (iDEN) é uma tecnologia de comunicação móvel, desenvolvida pela Motorola, que fornece aos usuários de celular serviços de rádio (Push-to-talk) e celulares.
4 CDMA (Code Division Multiple Access, ou Acesso Múltiplo por Divisão de Código) é um método de
acesso a canais em sistemas de comunicação. É utilizado tanto para a telefonia celular quanto para o
rastreamento via satélite (GPS) e usa os prefixos tecnológicos como o IS-95 da 1.ª geração -1G- e o tão
popular IS-2000 da 3.ª geração -3G.
5 Evolution-Data Optimized, abreviado como EV-DO, 1xEV-DO ou EVDO é uma tecnologia de terceira
geração (3G) do CDMA, desenvolvida pela empresa Qualcomm, e que é a evolução das tecnologias
CDMA de segunda geração (2G) - CDMAone - e de "segunda geração e meia" (2,5G) -CDMA1xRTT -, e
que possibilita a transmissão de dados a até 2,4Mbps.
6 UMTS (Universal Mobile Telecommunication System) é uma das tecnologias de terceira geração (3G)
dos celulares.
7 O LTE (Long Term Evolution) é um padrão de redes de comunicação móveis que se encontra em fase de
adaptação por parte dos operadores que utilizam tecnologias GSM como 3G/W-CDMA e HSPA e
também pelos operadores de CDMA. Esta nova tecnologia de rádio permite velocidades de 100Mb/s de
downlink e 50Mb/s de uplink (taxas máximas).
8 Bluetooth é uma especificação industrial para áreas de redes pessoais sem fio (Wireless personal area
networks – PANs).
9 O padrão 3G é a terceira geração de padrões e tecnologias de telefonia móvel, substituindo o 2G. É
baseado na família de normas da União Internacional de Telecomunicações (UIT), no âmbito do
Programa Internacional de Telecomunicações Móveis (IMT-2000).
16
Mensagens - tanto SMS como MMS são formas disponíveis de envio de
mensagens.
Navegador - o navegador disponível no sistema é baseado no framework de
Código aberto conhecido como WebKit.
Máquina virtual Dalvik - aplicações escritas em Java são compiladas em
bytecodes Dalvik e executadas usando a Máquina virtual Dalvik, que é uma
máquina virtual especializada desenvolvida para uso em dispositivos móveis, o
que permite que programas sejam distribuídos em formato binário (bytecode) e
possam ser executados em qualquer dispositivo Android, independentemente do
processador utilizado. Apesar das aplicações Android serem escritas na
linguagem Java, ela não é uma máquina virtual Java, já que não executa
bytecode JVM.
Multimídia - o sistema suporta formatos de áudio e vídeo como: MPEG-411
,
H.26412
, MP313
, e AAC14
.
Suporte adicional de hardware - o Android é totalmente capaz de fazer uso de
câmeras de vídeo, tela sensível ao toque, GPS, acelerômetros e aceleração de
gráficos 3D.
Ambiente de desenvolvimento (SDK) - inclui um emulador, ferramentas para
debugging, memória e análise de performance. A IDE Eclipse é utilizada em
conjunto com o plug-in Android Develpment Tools (ADT). Também é possível
utilizar a IDE Netbeans.
2.4. Web Service
Web Service é uma solução utilizada na integração de sistemas e na
comunicação entre diferentes aplicações. Com esta tecnologia é possível que novas
10 O padrão IEEE 802.16, publicado em 8 de abril de 2002, especifica uma interface sem fio para redes metropolitanas (WMAN). Foi atribuído a este padrão, o nome WiMAX (Worldwide Interoperability for
Microwave Access/Interoperabilidade Mundial para Acesso de Micro-ondas).
11 MPEG-4 é um padrão utilizado primeiramente para compressão de dados digitais de áudio e vídeo. 12 H.264 é um padrão para compressão de vídeo, baseado no MPEG-4 Part 10 ou AVC (Advanced Video
Coding). 13 MP3 é um padrão para compressão de áudio. 14 Advanced Audio Coding (AAC) é um esquema de codificação para compressão com perda de dados de
som digital. Projetado para ser o sucessor do formato MP3, o AAC geralmente consegue melhor
qualidade de som do que o MP3 em bit rates similares.
17
aplicações possam interagir com aquelas que já existem e que sistemas desenvolvidos
em plataformas diferentes sejam compatíveis. Os Web Services são componentes que
permitem às aplicações enviar e receber dados em formato XML. Cada aplicação pode
ter a sua própria "linguagem"; Java, C ou C++; que é traduzida para uma linguagem
universal, o formato XML (iWeb, 2003).
As bases para a construção de um web service são os padrões XML e SOAP. O
transporte dos dados é realizado normalmente via protocolo HTTP ou HTTPS para
conexões seguras (o padrão não determina o protocolo de transporte) e os dados são
transferidos no formato XML, encapsulados pelo protocolo SOAP (w3shools, 2011).
Web Services têm dois tipos de usos:
Reutilizar aplicação de componentes, quando uma aplicação precisa de
informações muito freqüente como conversão de moedas, previsão do
tempo, etc.
Conectar-se com um software já existente; ajuda a resolver o problema
de interoperabilidade, dando a diferentes aplicações uma maneira de ligar
os seus dados. Através deles você pode trocar dados entre diferentes
aplicações e plataformas diferentes.
A XML é a escolha natural para o modo de representação dos dados. Muitas
especificações utilizam XML para representação dos dados, assim como os XML
Schemas para descrever os tipos dos dados (iWeb, 2003).
O SOAP (Simple Object Access Protocol) é um protocolo leve para troca de
informações. Parte da sua especificação é composta por um conjunto de regras de como
utilizar a XML para representar os dados. Outra parte define o formato de mensagens,
convenções para representar as chamadas de procedimento remoto (RPCs) utilizando o
SOAP, e associações ao protocolo HTTP (w3shools, 2011).
A WSDL (Web Services Description Language) é uma linguagem baseada em XML,
com a finalidade de documentar as mensagens que o Web Service aceita e gera. Esse
mecanismo padrão facilita a interpretação dos contratos pelos desenvolvedores e
ferramentas de desenvolvimento (w3shools, 2011).
18
2.5. ZXing
ZXing, pronuncia-se “Zebra Crossing”, é uma biblioteca open-source
implementada em Java que decodifica imagens de código de barras 1D ou 2D usando a
câmera fotográfica de aparelhos celulares. Sua principal vantagem é não necessitar da
conexão com um servidor para obter esses códigos decodificados. Atualmente suporta
os seguintes tipos de códigos de barras: UPC-A e UPC-E, EAN-8 e EAN-13, Code 39,
Code 93, Code 128, QR Code, ITF, Codabar, RSS-14 (todas as variantes), Data Matrix,
PDF 417 (qualidade 'alpha') e Aztec (qualidade 'alpha') (ZXing, 2011).
Esta biblioteca é usada no projeto para realizar a decodificação dos códigos de
barras dos produtos.
2.6. Tecnologia de comunicação
Em projetos que envolvem hardware e software torna-se necessário o uso de
alguma tecnologia de comunicação para que o hardware em conjunto com o software
funcione adequadamente e forneça os resultados desejados.
As tecnologias de comunicação utilizadas no projeto são Wi-Fi e o modelo
cliente-servidor, detalhados a seguir.
2.6.1. Wi-Fi
Na comunicação entre o aplicativo do smartphone e a rede interna da loja é
utilizada a tecnologia de comunicação Wi-Fi, por ser bastante difundida nos
dispositivos móveis.
Wi-Fi é uma marca registrada da Wi-Fi Alliance, que é utilizada por produtos
certificados que pertencem à classe de dispositivos de rede local sem fios (WLAN)
baseados no padrão IEEE 802.11. Pelo relacionamento íntimo com seu padrão de
mesmo nome, o termo Wi-Fi é usado frequêntemente como sinônimo para a tecnologia
IEEE 802.11 (Peterson, 2004). O nome, para muitos, sugere a derivação de uma
abreviação de Wireless Fidelity, ou fidelidade sem fio, mas não passa de uma
19
brincadeira com o termo Hi-Fi, designado para qualificar aparelhos de som com áudio
mais confiável, sendo usado desde a década de 1950 (Wi-Fi Alliance, 2011).
O padrão Wi-Fi opera em faixas de frequências que não necessitam de licença
para instalação e/ou operação, sendo atrativa devido a este fato. No entanto, para uso
comercial no Brasil é necessária licença da Agência Nacional de Telecomunicações
(Anatel).
A norma IEEE 802.11 (ISO/IEC 8802-11), um padrão internacional que
descreve as características de uma rede local sem fios (WLAN), estabelece as camadas
baixas do modelo OSI para uma ligação sem fios que utiliza ondas eletromagnéticas, ou
seja, a camada física (notada às vezes camada PHY), propondo três tipos de
codificações da informação e, a camada ligação de dados, constituída por duas sub-
camadas: o controle da ligação lógica (Logical Link Control, ou LLC) e o controle de
acesso ao apoio (Media Access Control, ou MAC) (Peterson, 2004).
A norma IEEE 802.11 é na realidade a norma inicial que oferece velocidade de 1
ou 2 Mbps. Foram feitas revisões à norma original a fim de otimizar a velocidade (é o
caso das normas 802.11a, 802.11b e 802.11g, chamadas normas 802.11 físicas) ou
precisar elementos a fim de assegurar uma melhor segurança ou uma melhor
interoperabilidade. A seguir são apresentadas as diferentes revisões da norma 802.11 e
os seus significados:
802.11a - batizada WiFi 5, permite obter velocidade na casa de 54 Mbps
teórico porém, 30 Mbps real. Especifica 8 canais rádios na banda de
frequência de 5 GHz (Peterson, 2004).
802.11b - atualmente a norma mais utilizada, propõe velocidade de
transmissão teórica de 11 Mbps (6 Mbps real) com um alcance que pode
chegar a 300 metros em espaço aberto. O intervalo de frequência
utilizado é a banda de 2.4 GHz, com 3 canais de rádios disponíveis
(Peterson, 2004).
802.11g – oferece elevada taxa de transmissão (54 Mbps teórico, 30
Mbps real) na banda de frequência dos 2.4 GHz. A norma 802.11g tem
uma compatibilidade ascendente com a norma 802.11b, o que significa
que materiais conformes à norma 802.11g podem funcionar em 802.11b
(Peterson, 2004).
20
802.11n – oferece taxas de transferências de 65 Mbps a 300 Mbps,
método de transmissão MIMO-OFDM e opera na faixa de frequência de
2,4 GHz e/ou 5 GHz (Wi-Fi Alliance, 2011).
2.6.2. Cliente-servidor
Cliente-servidor é um modelo computacional que separa a camada de aplicação
entre clientes e servidores, sendo interligados entre si geralmente utilizando-se uma rede
de computadores. Cada instância de um cliente pode enviar requisições de dados para
algum dos servidores conectados e esperar por uma resposta. Por sua vez, algum dos
servidores disponíveis poderá aceitar tais requisições, processá-las e retornar o resultado
para o cliente. Apesar do conceito ser aplicado em diversos usos e aplicações, a
arquitetura é praticamente a mesma (Peterson, 2004).
Muitas vezes os clientes e os servidores se comunicam através de uma rede de
computador com hardwares separados, mas o cliente e o servidor podem residir no
mesmo sistema. A máquina na qual está o servidor é um host que está executando um
ou mais programas de servidor que partilham os seus recursos com os clientes.
Um cliente não compartilha seus recursos, mas solicita conteúdos ou serviços a
um servidor. Os clientes, portanto, iniciam sessões de comunicação com os servidores,
que esperam as solicitações de entrada.
2.7. Smartphone
Smartphone é um telefone celular com funcionalidades avançadas que podem
ser estendidas por meio de programas executados no seu sistema operacional. Numa
tradução livre, do inglês "smartphone" significa "telefone inteligente". Usualmente um
smartphone possui características mínimas de hardware e software, sendo as principais:
capacidade de conexão com redes de dados para acesso à Internet, capacidade de
sincronização dos dados do organizador com um computador pessoal e agenda de
contatos que utiliza toda a memória disponível no celular (não é limitada a um número
21
fixo de contatos). Também pode ser considerado como a soma das funcionalidades de
um PDA com as de um telefone celular (HowStuffWorks, 2011).
22
3. Trabalhos relacionados
Este capítulo apresenta alguns trabalhos que de certa maneira utilizam as
tecnologias e/ou conceitos presentes neste projeto.
3.1. Future Store
Na cidade de Rheinberg, no noroeste da Alemanha, foi aberta em 2003 a Future Store
Extra, uma loja conceito que faz uso de etiquetas de RFID e Personals Digital
Assistents (PDAs) integrados às mercadorias, carrinhos de compras, gôndolas, estoques
e fornecedores (Future Store, 2011).
Na loja, o cliente dispõe de um carrinho com um display comandado por um
Personal Shopping Assistant (PSA), que além de escanear as etiquetas dos produtos
também é capaz de fazer a leitura das informações do cartão pessoal do consumidor
para creditar pontos de fidelidade e identificar os produtos que são adquiridos com
frequência. O PSA do carrinho auxilia também no subtotal das compras, agilizando
bastante o checkout.
Ao longo da loja existem terminais informativos de mercadorias, que trazem
detalhes da fabricação, modos de preparo e até receitas. Através do PSA também é
possível realizar o pagamento dos itens através do cartão de crédito ou débito.
Para tornar possível o projeto, foram integradas soluções tecnológicas de
empresas como IBM, Intel, SAP, Cisco, Microsoft, Oracle, Philips, Siemens, Fujitsu,
etc, junto aos fornecedores Johnson & Johnson, Coca Cola, DHL, Procter & Gamble,
entre outros (Future Store, 2011).
O projeto desenvolvido apresenta diversas semelhanças com esta soluça o aqui
apresentada, haja visto que ela tem o mesmo propósito e as mesmas funcionalidades,
embora implementadas de maneira distinta deste projeto.
23
3.2. Billabong Store Shopping Iguatemi Alphaville
A rede de lojas Billabong inaugurou recentemente em na cidade de São Paulo a
“primeira loja inteligente” da América Latina. Segundo a loja, o objetivo é obter
diferenciação no mercado com a utilização de uma tecnologia que permitisse
interatividade com o cliente, melhorasse a gestão, otimizasse os processos, reduzisse
perdas e proporcionasse uma experiência de compra diferenciada, tudo integrado em um
único ambiente (RR Etiquetas, 2011).
Uma das principais vantagens é a gestão de inventários, pois com as etiquetas
RFID quando as mercadorias chegam na loja não é necessário retirar todas as peças da
caixa para realizar a leitura do código de barras de cada produto individualmente, o que
reflete na facilidade para se fazer a contagem de inventários.
O sistema conta também com o expositor inteligente, que permite identificar as
características de um determinado produto e sugerir produtos relacionados: quando o
cliente retira um produto, o leitor faz a leitura da etiqueta e exibe as informações deste
produto num Tablet (iPad ou similar), incluindo cores e tamanhos disponíveis. Caso o
cliente queira, poderá ser utilizado para a pré-venda.
Para estimular a interatividade com os clientes e a venda cruzada de produtos,
foi desenvolvido um provador inteligente. Quando o cliente entra no provador, as peças
que se encontram com ele são identificadas automaticamente e exibidas num monitor
touchscreen. O sistema sugere produtos relacionados, permite a consulta de cores,
tamanhos, detalhes do produto, consulta aos estoques e preços. Se o cliente precisar da
presença de um vendedor, com um simples toque na tela é disparado uma mensagem
SMS para o celular de um dos vendedores, que poderá também receber informações
sobre a solicitação de novas peças com cores e tamanhos diferenciados (RR Etiquetas,
2011).
O desenvolvimento do projeto ficou a cargo da Vip-System Informática &
Consultoria e as etiquetas RFID foram produzidas pela RR Etiquetas. A Figura 2 ilustra
as etiquetas RFID usadas para identificar os produtos expostos à venda.
24
Figura 2: Produto da loja Billabong com etiqueta RFID
Fonte: RR Etiquetas, 2011.
A Figura 3 mostra um ponto de consulta de produtos, no qual o cliente verifica o preço
do produto, tamanho, cores, entre outros.
Figura 3: Ponto de consulta de produtos no interior da loja
Fonte: RR etiquetas, 2011.
Esta solução da Billabong engloba todos os princípios abordados pelo projeto
desenvolvido com relação à parte de RFID, aparentando ser mais sofisticado que este,
pois trata-se de um produto comercial e não de um protótipo acadêmico, como é o caso
deste projeto.
3.3. Aplicativo BuscaPé para Android
O aplicativo do BuscaPé para Android segue a mesma linha do projeto
desenvolvido, ou seja, fornece a possibilidade de busca de produtos em sua base de
dados através da leitura e decodificação de códigos de barras usando a biblioteca ZXing
(Android Market, 2011). Por enquanto o aplicativo suporta apenas a decodificação de
25
códigos ISBN (International Standard Book Number), um sistema que identifica
numericamente os livros segundo o título, o autor, o país e a editora, individualizando-
os inclusive por edição (ISBN 2011).
Nesse serviço o usuário pode pesquisar produtos também por nome. Após a
busca ele é direcionado à loja, que dispõe do produto pesquisado para que seja feita a
compra. Existem diversos outros aplicativos com a mesma funcionalidade.
Comparando com o projeto desenvolvido, este aplicativo faz a decodificação de
código de barras ISBN, código este utilizado para identificar livros. Assim sendo ele
aplica o mesmo princípio do projeto, porém para uma categoria específica de produto.
26
4. Especificação Técnica
O projeto desenvolvido tem como objetivo fornecer maneiras alternativas e
interessantes para a realização de compras no varejo. A forma tradicional mantém-se
habitual, porém o público jovem sente falta de maneiras diferentes e rápidas para
realizar compras. Com o advento das lojas virtuais muito mais pessoas passaram a
utilizar computadores e a Internet para realizar compras simples no dia-a-dia, mas ainda
é comum a necessidade de ter contato com o produto a ser adquirido. Devido a isso foi
desenvolvido este projeto.
Espera-se que o consumidor absorva a ideia e aprove os benefícios advindos
dela, afinal todo tipo de automação tem certo grau de interesse e melhora a
produtividade das pessoas e empresas.
4.1. Visão Geral do Projeto
Nos dias atuais a tecnologia nos auxilia muito em nosso dia-a-dia, porém muitas
destas tecnologias ainda não trabalham de forma conjunta para oferecer comodidades
concretas. Pensando nisso foi desenvolvido um estilo diferente de compras no varejo.
Esse novo estilo andará lado a lado com a forma tradicional de compras.
Os aparelhos de telefonia celular móvel existem há pelo menos três décadas, e
somente nos últimos cinco anos eles têm sido agraciados com sistemas computacionais
que antes somente eram possíveis a grandes computadores. Com o advento dos
smartphones, os aplicativos para aparelhos celulares tornaram-se cada vez mais
sofisticados e fornecendo serviços antes impossíveis pela falta de tecnologia disponível.
Hoje, num celular é possível ler seus e-mails, editar textos, visualizar apresentações e
vídeos, acessar sua conta corrente entre outros (HowStuffWorks, 2011).
No entanto pode-se observar que várias destas aplicações rodam separadamente.
Não seria ótimo conseguir unir as funcionalidades de dois ou três aplicativos destes para
fornecer um serviço único? Certamente sim, pois isso traria maior facilidade. Assim
sendo, ao unir um aplicativo de compras ao sistema de pagamento on-line de um banco
traria um novo conceito de compras de produtos e serviços.
27
O objetivo deste projeto foi implantar um novo estilo de vida, onde as pessoas
possam realizar suas compras de forma rápida e com qualidade. Quando ela for à loja e
não mais precisar empurrar um carrinho ou segurar uma cesta, terá maior disposição
para procurar outros produtos que talvez ainda não conheça; ou talvez fique menos
estressada ao realizar suas compras. Os idosos geralmente não dispõem de toda a
sagacidade de um jovem para empurrar um carrinho. Também podem sair mais felizes
da loja após não ficarem terríveis 15 minutos esperando a concretização da sua compra
ouvindo outro cliente reclamar da vida junto a você na mesma fila do caixa.
Neste projeto são apresentadas duas maneiras de realizar vendas automatizadas
no varejo: a primeira conta com um aplicativo desktop que realiza as vendas através da
leitura de códigos de barras usando etiquetas RFID; e a segunda conta outro aplicativo
para a plataforma Android que decodifica a imagem de um código de barras fotografado
e se conecta à rede interna da loja utilizando um access point através da tecnologia Wi-
Fi. Ambos verificam a disponibilidade do produto junto ao estoque e confirmam a
venda.
No primeiro método, representado pela Figura 4, o código de barras de um
produto é lido através de um leitor de RFID, no caso o leitor StrongLink SL102 (Figura
9), após feita a leitura busca informações referentes a disponibilidade do produto, preço,
entre outros; no banco de dados da loja. Existindo a disponibilidade do produto é
realizada a venda.
Figura 4: Representação gráfica do funcionamento do sistema de compras utilizando a leitura de códigos de barras por leitor de RFID
28
No segundo método, representado pela Figura 5, o código de barras do produto é
lido através da decodificação da imagem capturada deste código de barras e, através da
rede local sem fio da loja, verifica-se a disponibilidade do produto, assim como seu
preço e outos atributos, para logo após concretizar a venda.
Figura 5: Representação gráfica do funcionamento do sistema de compras utilizando leitura de código de barras através de fotografia
4.2. Hardware
É a parte física do projeto, ou seja, é o conjunto de componentes eletrônicos,
circuitos integrados e placas, que se comunicam através de barramentos (Etec Diadema,
2011). O termo hardware não se refere apenas aos computadores pessoais, mas também
aos equipamentos embarcados em produtos que necessitam de processamento
computacional, como dispositivos encontrados em equipamentos hospitalares,
automóveis, aparelhos celulares, entre outros.
4.2.1. Diagrama de blocos
Diagrama de bloco é a representação gráfica de um processo ou modelo de um
sistema complexo. Através de figuras geométricas e ligações, descreve-se as relações
entre cada subsistema e o fluxo de informação. É a representação gráfica da solução de
um problema (UFSM, 2011). Os símbolos devem ser dispostos em ordem lógica e com
sintaxe correta para atingir o objetivo de resolver o problema. Os diagramas diferem os
fluxogramas por representarem pequenas partes de um grande sistema com foco no
processo lógico.
29
Na Figura 6 é mostrado o diagrama de blocos do projeto, o qual mostra a
arquitetura básica do sistema desenvolvido. Observa-se que o diagrama de blocos do
projeto é único, embora haja dois modos iniciais distintos para iniciar uma compra no
sistema, o primeiro através da leitura de etiquetas de RFID e o segundo através da
decodificação da imagem do código de barras através de um smartphone com um
aplicativo de compras.
Figura 6: Diagrama de blocos simplificado do sistema
4.2.2. Projeto de hardware
Nesse projeto fica evidente a necessidade da utilização de alguns hardwares para
o correto funcionamento do mesmo. Para tanto são apresentados a seguir os hardwares
utilizados na confecção do referido projeto.
4.2.2.1. Smartphone com sistema operacional Android
Para este propósito foi utilizado um smartphone Samsung Galaxy 5 GT-I5500B
(Samsung, 2011), com câmera com resolução de 2 megapixels, sistema operacional
Android 2.2, display 2,8” QVGA e Wi-Fi, como mostra a Figura 7.
30
Figura 7: Smartphone Samsung Galaxy 5
Fonte: Samsung, 2011
4.2.2.2. Access Point
Access Point, que em português significa ponto de acesso, é um dispositivo em
uma rede sem fio que realiza a interconexão entre todos os dispositivos móveis
presentes num determinado local. Em geral se conecta a uma rede cabeada servindo de
ponto de acesso para outra rede, como por exemplo, a Internet (IO Tecnologia, 2011).
Vários pontos de acesso podem trabalhar em conjunto para prover um acesso em
uma área maior. Esta área é subdividida em áreas menores, sendo cada uma delas
coberta por um ponto de acesso, provendo acesso sem interrupções ao se movimentar
entre as áreas, através de roaming. Também pode ser formada uma rede ad hoc, ou
ponto-a-ponto, onde os dispositivos móveis passam a agir intermediando o acesso dos
dispositivos mais distantes ao ponto de acesso caso ele não possa alcançá-lo
diretamente.
Estes pontos de acesso precisam implementar a segurança da comunicação entre
eles e os dispositivos móveis que estão em contato. No caso do Wi-Fi, isso foi
inicialmente tentado com o WEP que atualmente é comprometido facilmente. Surgiram
então o WPA e o WPA2, este último considerado seguro caso seja utilizada uma senha
(Wi-Fi Alliance, 2011).
31
Como access point foi utilizado o recurso de hotspot do sistema operacional
Windows 7 em parceria com o aplicativo Connectify, um software que transforma um
computador que possua placa de rede wireless em um servidor hotspot (Connectify,
2011). A Figura 8 a seguir mostra o aplicativo Connectfy, utilizado como hotspot no
projeto.
Figura 8: Aplicativo Connectfy, usado para transformar um computador num hotspot.
4.2.2.3. Leitor RFID
O leitor é o componente de comunicação entre o sistema RFID e os sistemas
externos de processamento de informações. A complexidade dos leitores depende do
tipo de etiqueta e das funções a serem aplicadas. Os mais sofisticados apresentam
funções de verificação de paridade de erro e correção de dados. Uma vez que os sinais
do receptor sejam corretamente recebidos e descodificados, são usados algoritmos para
decidir se o sinal é uma repetição de transmissão de uma etiqueta (Saber Eletrônica,
2008).
32
Neste projeto foi utilizado o leitor de RFID StrongLink SL102 que apresenta as
seguintes características:
Suporta etiquetas EM4100 ou compatíveis;
Frequência de operação de 125 kHz;
Antena integrada, LED de operação e sinal sonoro;
Emula um teclado USB plug and play;
Trabalha com corrente de 45mA e tensão de 5V;
Temperatura de operação de -10 graus Celsius até 75 graus Celsius;
Distância de leitura de 10 cm;
Lê etiquetas com id de 12 bytes, sendo 10 bytes para 10 dígitos e 2 bytes para
dígitos de verificação de integridade.
O leitor RFID utilizado é mostrado na Figura 9.
Figura 9: Leitor RFID StrongLink SL102.
Fonte: StrongLink, 2011
4.2.2.4. Etiquetas RFID
As etiquetas RFID usadas no projeto são StrongLink SLK01, conforme a Figura
10 mostrada a seguir.
33
Figura 10: Etiqueta RFID StrongLink SLK01.
Fonte: StrongLink, 2011
Tais etiquetas possuem as seguintes características: frequência de operação de
125 kHz e chipset TK4100.
4.3. Software
Software ou suporte lógico é uma sequência de instruções a serem seguidas e/ou
executadas, na manipulação, redirecionamento ou modificação de um dado/informação
ou acontecimento (Fernandes, 2002).
Entre os recursos de softwares utilizados, a linguagem de programação Java foi
indispensável pelo fato de ser a linguagem nativa para desenvolver qualquer aplicativo
na plataforma Android. Java também foi utilizada para o desenvolvimento do Web
Service responsável por comunicar-se com o aplicativo presente no smartphone. A
linguagem de marcação XML foi utilizada na troca de dados entre o aplicativo e o
servidor da loja através do Web Service.
Para a decodificação do código de barras, utilizou-se a biblioteca ZXing citada
anteriormente, desenvolvida em Java e disponível para a plataforma Android, além de
outras. Já o banco de dados escolhido, MySQL, por tratar-se de uma aplicação
relativamente barata e bastante difundida.
Por outro lado, o cliente que utilizou a leitura de códigos de barras via etiqueta
de RFID foi implementado utilizando a linguagem de programação C#, pois mostrou-se
mais prática que Java na programação da interface visual.
34
As IDEs utilizadas foram Eclipse (Eclipse, 2011) para a linguagem Java e Visual
Studio 2010 (Visual Studio, 2011) para a linguagem C#.
4.3.1. Análise do sistema
Neste projeto, a parte de software é a responsável pelo gerenciamento de vendas
como também do estoque da loja, tendo então, uma gama de aplicativos interagindo
entre si. Dentre estes aplicativos tem-se um servidor, responsável por realizar as tarefas
operacionais de venda de produtos aos clientes, cadastro de clientes, verificação de
pagamentos, entre outros; um aplicativo de controle de estoque, o qual trabalha em
conjunto com o servidor no controle da quantidade de produtos disponíveis a venda; e
um aplicativo de controle de pacotes, responsável por gerenciar os pacotes com os
produtos vendidos aos clientes verificando se o pacote contém ou não os itens vendidos
a um determinado cliente. Também foi utilizado um aplicativo de venda para
smartphone e outro para desktop.
4.3.2. Diagrama de casos de uso
O Diagrama de Caso de Uso descreve a funcionalidade proposta para um novo
sistema, que será projetado. Segundo Ivar Jacobson, pode-se dizer que um caso de uso é
um "documento narrativo que descreve a sequência de eventos de um ator que usa um
sistema para completar um processo". Um caso de uso representa uma unidade discreta
da interação entre um usuário (humano ou máquina) e o sistema.
Casos de uso são tipicamente relacionados a "atores". Um ator é um humano ou
entidade máquina que interage com o sistema para executar um significante trabalho.
A Figura 11 apresenta o diagrama de casos de uso do cliente perante o sistema
de vendas da loja, no qual o cliente poderá exercer as seguintes atividades: cadastrar-se
para utilizar o serviço, efetuar login no serviço, comprar um produto e pagar pelo
produto.
35
Figura 11: Diagrama de casos de uso.
Neste diagrama são identificadas as ações possíveis ao usuário do sistema: cadastrar-se
junto ao sistema, efetuar login para poder utilizar as funções do sistema, comprar um produto e
pagar pelo mesmo.
4.3.3. Diagrama de classes
Em programação, um diagrama de classes é uma representação da estrutura e
relações das classes que servem de modelo para objetos a serem definidos (Jacobson,
2004). É uma modelagem muito útil para o sistema, pois define todas as classes que o
sistema necessita possuir e é a base para a construção dos diagramas de comunicação e
estados. A Figura 12 apresenta o diagrama de classes básico para o projeto.
Figura 12: Diagrama de classes básico.
Neste protótipo a classe cliente relaciona-se com a classe produto quando um cliente
invoca a compra de um produto, que por sua vez relaciona-se com a classe loja quando é
realizada uma venda de um produto.
36
4.3.4. Diagrama de sequência
Diagrama de sequência ou diagrama de sequência de mensagens, é um diagrama
usado em UML (Unified Modeling Language) para representar a sequência de
processos, mais especificamente de mensagens passadas entre objetos num programa de
computador. Como um projeto pode ter uma grande quantidade de métodos em classes
diferentes, pode ser difícil determinar a sequência global do comportamento. O
diagrama de sequência representa essa informação de uma forma simples e lógica
(Jacobson, 2004).
A Figura 13 a seguir, apresenta o diagrama de sequência do sistema, no qual
logo após a conexão do cliente com a loja, este é autenticado e poderá requisitar
informações sobre determinado produto que poderá estar disponível ou não para venda.
Figura 13: Diagrama de sequência representando a interação entre o cliente e a loja.
4.4. Protocolo de comunicação
Neste projeto, foi necessária a utilização de um protocolo de comunicação, devido à
execução da tarefas estar sendo feita de maneira dispersa onde diversos aplicativos
estarão trabalhando de forma integrada, porém em ambientes distintos.
37
Portanto, para a comunicação entre esses aplicativos foi utilizado o modelo
cliente/servidor por se mostrar mais adequado para esse tipo projeto.
4.5. Modelo Entidade Relacional – MER
O modelo de entidades e relacionamentos é um modelo abstrato cuja finalidade é
descrever, de maneira conceitual, os dados a serem utilizados em um sistema de
informações ou que pertencem a um domínio (Date, 1991). A principal ferramenta do
modelo é sua representação gráfica, o diagrama entidade relacionamento. Normalmente
o modelo e o diagrama são conhecidos por suas siglas: MER (modelo de entidades e
relacionamentos) e DER (diagrama entidade relacionamento).
A Figura 14 apresenta o diagrama entidade relacional inicial para o sistema.
Figura 14: Diagrama entidade relacional do projeto.
O MER apresentado mostra as relações existentes entre as tabelas existentes no
banco de dados do projeto, composto pelas tabelas responsáveis por armazenar os dados
dos clientes cadastrados, dos produto cadastrados e das vendas registradas. Também há
a opção de cadastrar lojas, quando for o caso de haver filiais.
38
5. Testes e validações
Esse capítulo apresenta os principais testes e validações necessários ao
funcionamento adequado à solução proposta pelo referido projeto. Começamos pelo
teste de resolução da câmera fotográfica, o qual estabelece o tipo de resolução mínima
necessária para um bom desempenho do projeto.
5.1. Leitura do código de barras utilizando a câmera fotográfica do celular
A leitura de código de barras através da câmera fotográfica consiste no
processamento de uma imagem contendo um código de barras de um determinado
produto.
Conforme observado, as imagens que contêm tais códigos de barras devem
possuir boa qualidade, entenda-se por isso uma imagem sem distorções, falhas, e bom
contraste, ao contrário da imagem mostrada na Figura 15 a seguir.
Figura 15: Imagem de um código de barras EAN-8 tirada com uma câmera fotográfica com resolução de 2 megapixels.
Pode-se observar na imagem anterior que o fato do código de barras impresso na
embalagem de um determinado produto ter tamanho muito pequeno, cerca de 1,5cm de
altura por 3,0cm de largura, quando fotografado acaba ficando desfocado, apresentando
características de borrões como pode ser observado.
39
Frente a tal peculiaridade, foram definidas diretrizes de tamanho mínimo para o
tamanho das imagens dos códigos de barras a serem analisados – 5,5cm de altura por
9,5cm de largura. Definido este tamanho mínimo, pode-se observar que a qualidade da
imagem, em relação ao foco, melhorou significativamente, como mostra a Figura 16.
Figura 16: Fotografia de um código de barras EAN-13 com tamanho de 5,5cm de altura por 9,5cm de largura tirada com a mesma câmera fotográfica com resolução de 2 megapixels.
Portanto, levando em consideração o requisito observado anteriormente, é
possível afirmar que para as atuais embalagens presentes no mercado a resolução de 2
megapixels utilizada neste projeto é inviável, sendo necessário avaliar as mesmas
embalagens com câmeras de maior resolução presentes no mercado, como as de 5
megapixels que, segundo o censo comum produz resultados mais significativos.
5.2. Leitura do código de barras utilizando leitor de etiquetas RFID
O leitor RFID utilizado, StrongLink SL102 mostrado na Figura 9, trata-se de um
leitor RFID de proximidade, que suporta etiquetas do tipo EM4100 ou de classes
compatíveis, trabalha com frequência de 125kHz, possui antena integrada, trabalha com
corrente de 45mA e tensão de 5V. A distância de operação é de no máximo 10 cm e
40
captura o ID de etiqueta RFID contendo 12 bytes no formato ASCII, sendo os dez
primeiros bytes os dígitos e os dois restantes para verificação de integridade.
Conforme informações fornecidas pelo fabricante e posteriormente comprovadas
por testes, o leitor utilizado captura a informação de uma única etiqueta RFID por vez,
dando prioridade à etiqueta que estiver mais próxima do leitor. Desta forma, não é
possível ler determinada quantidade de etiquetas RFID de maneira simultânea. Para que
isso seja possível seria necessário o uso de leitores RFID mais elaborados, que possuam
distância de operação mais ampla, como é o caso do leitor 3M 9900, mostrado na Figura
16, muito comumente utilizado em bibliotecas e lojas de departamentos – mas não com
o mesmo propósito, ainda.
Figura 17 Leitor RFID 3M 9900.
Fonte: 3M, 2011
5.3. Teste de desempenho e escalabilidade – aplicativo Android
Para verificar a velocidade de resposta do Web Service foram realizados testes
nos quais determinado número de clientes acessavam o servidor da loja ao mesmo
tempo para requisitarem compras de produtos, conforme mostra a Figura 17 a seguir.
Na realização destes testes foram utilizadas threads que simulavam o número de clientes
conectados simultaneamente ao servidor da loja.
41
Figura 18: Gráfico representando o número de clientes conectados versus tempo de resposta.
O mostrado anteriormente traz as informações referentes ao tempo de espera
para atender um cliente quando diversos clientes estão usando o serviço, e tem como
finalidade observar a capacidade de atendimento do serviço.
5.4. Teste de gasto de tempo total para realizar uma compra
A Figura 19, mostrada a seguir, apresenta os resultados de tempo total gasto para
a realização de uma compra junto ao sistema. São comparados os tempos gastos pelos
dois métodos aplicados.
Figura 19: Gráfico representando o tempo total, em segundos, para realizar uma compra, utilizando RFID e a decodificação de imagens
0
0,5
1
1,5
2
2,5
3
0 20 40 60 80 100 120
Tem
po
(s)
Número de Threads
Escalabilidade
tempo(s)
0
1
2
3
4
5
6
7
8
9
Captura da informação
Consulta ao banco de dados
Informação na tela
tem
po
(s)
Comparação entre os processos (tempo total de uma compra)
RFID
Zxing
42
Pode-se observar que o método RFID é mais rápido, pois é relativamente mais
simples, pois consiste na leitura de uma informação armazenada numa memória ROM.
Já o método utilizando a decodificação de imagens é mais lento, pois utiliza
processamento de imagem e ainda invoca um Web Service remoto, o que contribui com
o aumento do gasto de tempo em realizar tal operação de venda.
43
6. Comparação metodológica
Neste projeto, como afirmado anteriormente, foram utilizados dois métodos para
a leitura dos códigos de barras na realização de vendas no varejo, sendo o primeiro a
venda através da fotografia dos códigos de barras utilizando a câmera fotográfica do
aparelho telefone celular com sistema operacional Android; e o segundo utilizando a
leitura do código de barras através do uso de leitores de etiquetas RFID.
Conforme observado, em ambos os métodos foram utilizados a leitura dos
códigos de barras dos produtos, porém de maneiras diferentes. No primeiro método foi
tirada uma fotografia do código de barras, que posteriormente foi decodificada através
do processamento digital de imagem utilizando a biblioteca ZXing retornando o código
numérico correspondente ao código de barras. Já no segundo método foi realizada a
leitura do código de barras através do leitor de RFID, o qual emite um determinado
sinal de rádio frequência e recebe e recebe outro sinal de rádio frequência contendo as
informações requisitadas.
Neste protótipo, as etiquetas de RFID são do tipo padronizadas, o código de
barras correspondente ao produto não corresponde ao código gravado na etiqueta, pois
elas já vêm de fábrica com um código qualquer já gravado. Então para viabilizar o
projeto foi feita a correspondência do código da etiqueta RFID com o código de barras
de um determinado produto, pois num cenário real seria o equivalente ao código de
barras deste produto presente na etiqueta RFID.
Observadas as diferenças no modo de leitura do código de barras, o processo a
partir desta etapa em diante são os mesmos para ambos os modos de realização de
venda; busca-se a disponibilidade do produto junto ao banco de dados, como também
suas informações, e efetiva-se a venda do produto atualizando em sequência o estoque.
Conforme observado nos testes, o método RFID é notadamente mais eficiente no
quesito tempo, pois é mais simples que o método de decodificação de imagem, e não faz
uso de Web Service. Assim caso haja uma procura por uma solução focada no mínimo
gasto de tempo o método RFID é recomendado.
44
7. Conclusão
Na realização deste projeto foi possível observar que as técnicas de automação
comercial estão bastante desenvolvidas e alguns métodos utilizados na realização deste
já estão sendo utilizados por diversas empresas no planeta. Alguns desses métodos eram
apenas conhecidos por alguns de nós como teorias, porém aprofundando as pesquisas
foi constatado que já estão sendo usados de forma massiva, embora com certo grau de
exclusividade.
Um fato importante é que os fornecedores dos produtos ainda resistem muito em
fornecer seus produtos com embalagens contendo etiquetas RFID. Segundo eles pelo
fato de tais etiquetas aumentarem o preço final de seus produtos. Foi observado que os
donos de lojas que optam por usar as etiquetas têm que fazer por conta própria, ou
formar parcerias com os fornecedores de maneira exclusiva, como acontece com o
Metro Group na Alemanha que firmou parcerias com os fornecedores.
Já a decodificação de código de barras com a biblioteca ZXing tem se
popularizado nos últimos tempos, pois os aplicativos para Android assim como os
aparelhos contendo tal sistema operacional também encontram certa disponibilidade e
aceitação do público em geral.
O projeto do ponto de vista de oferecer novas possibilidades de vendas no varejo
é sutil e elegante, pois faz uso de tecnologias já bastante difundidas e tem por finalidade
agir mais como um serviço que pode agregar valor a uma marca do que propriamente
um produto. Alguém poderia discordar sobre a difusão de tais tecnologias, porém
observa-se que o código de barras é amplamente utilizado desde a década de 1970, a
radio frequência tem mais de um século de existência, a telefonia celular mais de 30
assim como também a fotografia digital.
Para o futuro pode-se implementar um pequeno hardware junto ao carrinho de
compras (RFID), para que seja possível observar o valor e também outras características
do produto antes de chegar ao caixa para finalizar a compra.
45
8. Referências Bibliográficas
[LECHETA 2010] LECHETA, Ricardo R. – Google Android: aprenda criar
aplicações para dispositivos móveis com o Android SDK 2. ed. ver. e ampl. – São
Paulo, Novatec Editora, 2010
[Peterson 2004] Peterson, Larry L. Redes de computadores: uma abordagem de
sistemas / Larry L. Peterson e Bruce S. Davie; tradução de Daniel Vieira – Rio de
Janeiro – Elsevier, 2004
[Jacobson 2004] Jacobson, Ivar et all The Unified Modeling Language Reference
Manual (2nd Edition) - Addison-Wesley Professional, 2004
[Date 1991] DATE, C. J. Introdução a sistemas de bancos de dados. Rio de Janeiro:
Campus, 1991
[DSC 2007] Disponível em
<http://www.dsc.ufcg.edu.br/~sampaio/cursos/2007.1/Graduacao/SI-
II/Uml/diagramas/diagramas.htm> - acessado em abril de 2011.
[CSB 2011] Disponível em <http://www.csb.com.br/codigo_ean13.htm> - acessado em
julho de 2011
[StrongLink] Disponível em <http://www.stronglink.cn/> - acessado em abril de 2011
[Wi-Fi Alliance 2011] Disponível em <http://www.wi-fi.org/> - acessado em julho de
2011
[Future Store 2011] Disponível em <http://www.future-store.org/> - acessado em agosto
de 2011
[RR Etiquetas 2011] Disponível em <http://www.rretiquetas.com.br/noticias/a-primeira-
loja-inteligente-da-america-latina-tem-tecnologia-rfid-da-rr/> - acessado em setembro
de 2011
[3M 2011] Disponível em
<http://solutions.3m.com.br/wps/portal/3M/pt_BR/Bibliotecas/Home/Tecnologia/Identif
icacaiPorRadio/> - acessado em setembro de 2011
[AIM 2011] Disponível em
<http://www.aimglobal.org/technologies/rfid/what_is_rfid.asp> - acessado em abril de
2011
[GTA 2011] Disponível em
<http://www.gta.ufrj.br/grad/07_1/rfid/RFID_arquivos/breve historia.htm> – acessado
em abril de 2011
46
[HowStuffWorks 2011] Disponível em <http://informatica.hsw.uol.com.br/celular.htm>
- acessado em maio de 2011
[Samsung 2011] Disponível em <http://www.samsung.com/br/> - acessado em agosto
de 2011
[IO Tecnologia 2011] Disponível em <http://www.iotecnologia.com.br/access-point-ou-
roteador-wireless> - acessado em setembro de 2011
[Saber Eletrônica 2008] Disponível em
<http://www.sabereletronica.com.br/secoes/leitura/685> - acessado em setembro de
2011
[Eclipse 2011] Disponível em <http://www.eclipse.org/> - acessado em março de 2011
[Visual Studio 2011] Disponível em <http://www.microsoft.com/visualstudio/pt-br> -
acessado em outubro de 2011
[Android 2011] Disponível em <http://www.android.com/> - acessado em maio de 2011
[Android Market 2011] Disponível em <http://market.android.com/> - acessado em
outubro de 2011
[GS1 Brasil 2011] Disponível em <http://www.gs1br.org/> - acessado em junho de 2011
[iWeb 2003] Disponível em <http://www.iweb.com.br/iweb/pdfs/20031008-
webservices-01.pdf> - acessado em agosto de 2011
[ISBN 2011] Disponível em < http://www.isbn.bn.br/> - acessado em novembro de
2011
[Etec Diadema 2011] Disponível em
<http://www.etecdiadema.com/tecnico/conceitoshard.pdf> - acessado em agosto de
2011
[UFSM 2011] Disponível em
<http://www.ufsm.br/gepoc/renes/Templates/arquivos/elc418/elc418-cap3.pdf> -
acessado em outubro de 2011
[Connectify 2011] Disponível em <http://www.connectify.me/> - acessado em
novembro de 2011
[Fernandes 2002] Fernandes, Jorge O que é um Programa (Software)? – Disponível
em <http://www.cic.unb.br/~jhcf/MyBooks/iess/Software/oqueehsoftware.html> -
acessado em novembro de 2011