Académique Documents
Professionnel Documents
Culture Documents
Engenharia da Computao
Agradecimentos
Agradeo a Deus, por tudo o que fui, sou e serei algum dia.
Agradeo a minha famlia, pelo apoio incondicional.
Agradeo ao meu orientador, prof Srgio Campello, pelas dicas, conselhos e
auxlios, sempre necessrios.
Agradeo a Diego Liberalquino, David Edson, Leandro Honorato e a todos
que contriburam direta ou indiretamente com este projeto.
Muito Obrigado.
Resumo
Sistemas embarcados frequentemente precisam enviar dados diversos para
estaes centrais para as devidas anlises e processamentos por parte dos
usurios. O grande problema est justamente na comunicao entre o mdulo
embarcado e a central de processamento, pois dependendo das localizaes destes
elementos, a comunicao por meios tradicionais, como fibras pticas por exemplo,
pode ser invivel devido a condies do terreno e custos elevados. Sendo assim,
uma comunicao por meio da rede celular, uma alternativa vivel, pois eliminaria
os problemas relacionados ao terreno e reduziria custos de instalao da rede. Este
projeto apresenta uma API que abstrai do programador rotinas de envio e
recebimento
de
dados
atravs
de
modems
GSM/GPRS
conectados
Abstract
Embedded systems often need to send data to various central stations for the
necessary analysis and processing by users. The big problem is just communication
between the module and the embedded central processing, because depending on
the locations of these items, disclosure by traditional means such as optical fibers for
example, may be infeasible due to ground conditions and high costs. Thus,
communication through the cellular network is a viable alternative, because it would
eliminate the problems related to land and reduce costs for network installation. This
project provides an API that abstracts the programmer routines for sending and
receiving data via modems GSM/GPRS connected to PIC microcontrollers, reducing
the chances of errors in communication with the central module, and reduce the
development time of embedded software.
Sumrio
Captulo 1 Introduo
1.1.Estrutura do documento...............................................................................................14
3.2.3.Funes de envio/recebimento..................................................................40
3.2.4.Funes auxiliares.....................................................................................41
3.3.O ambiente de testes.................................................................................................41
3.3.1.Circuito de alimentao..............................................................................42
3.3.2.Circuito para o pino VCHG.........................................................................43
3.3.3.Circuito para o pino VRTC..........................................................................44
3.3.4.Circuito para o SIM Card ...........................................................................45
3.3.5.Outros circuitos...........................................................................................45
3.3.6.Placa de circuito impresso obtida...............................................................47
ndice de Figuras
Figura 1.Componentes de uma rede celular....................................................................................16
Figura 2. Exemplo de codificao de sinal utilizando sequncia direta (TELECO).........................23
Figura 3. Arquitetura bsica de uma rede GSM com GPRS............................................................29
Figura 4. Diagrama funcional do modem GSM/GPRS SIM-340DZ.................................................33
Figura 5. Circuito de alimentao da placa de testes......................................................................43
Figura 6. Circuito de alimentao do pino VCHG................................................................................44
Figura 7. Circuito de alimentao do pino VRTC................................................................................44
Figura 8. Circuito de alimentao do SIM card................................................................................45
Figura 9. Circuito de alimentao do pino PWRKEY...........................................................................46
Figura 10. Circuito de sada do pino NETLIGHT...............................................................................47
Figura 11. Desenho da placa de circuito impresso............................................................................48
ndice de Tabelas
Tabela 1. Comparao dos diferentes tipos de clulas......................................................................17
Tabela 2. Faixas de frequncia disponveis para o GSM (Brand).......................................................25
Tabela 3. Modificaes necessrias na rede GSM para suportar o GPRS........................................30
Tabela 4. Relao dos pinos que foram utilizados no projeto............................................................34
Tabela 5. Lista de comandos AT utilizados no projeto.......................................................................37
12
Captulo 1
Introduo
Sistemas embarcados em microcontroladores frequentemente precisam
enviar dados diversos para centrais de processamento, para que o usurio possa
monitorar e avaliar do desempenho o sistema remotamente. A grande questo
que, para sistemas que operam em reas remotas, a comunicao entre a central de
processamento e o mdulo embarcado pode ser custosa ou ainda ser invivel por
meio terrestre, devido a dificuldades como composio do terreno, obstculos
naturais, intervenes de animais, sem falar dos custos financeiros dos
equipamentos, instalao, etc. Uma alternativa a este cenrio seria utilizar a
comunicao via rdio, uma vez que os custos financeiros e de instalao so
menores, as intervenes naturais ao equipamento so bastante reduzidas, alm da
segurana na transmisso da informao, etc.
Neste contexto, a utilizao da rede de telefonia celular, atravs do Servio de
Rdio de Pacote Geral (GPRS, do ingls General Packet Radio Service), uma
alternativa interessante dada a grande abrangncia dessa rede no territrio nacional,
alm de outras vantagens, como velocidade, disponibilidade, acesso rpido a
servios, etc. Para a realizao dessa comunicao, necessrio o uso de
comandos especficos do modem a ser trabalhado, alm da interface entre o
microcontrolador e o modem. As rotinas de configurao e o aprendizado no uso
desses comandos podem tornar o desenvolvimento do mdulo embarcado mais
demorado, alm de tornar a sua elaborao mais suscetvel a erros por parte do
desenvolvedor.
Neste projeto foi iniciado o desenvolvimento de uma Interface de
Programao Aplicada (API, do ingls Application Programming Interface) que
possibilite a abstrao, por parte do programador, de rotinas que envolvam
13
1.1.
Estrutura do documento
Este documento se divide em 4 captulos, incluindo este. O captulo 2 tratar
14
Captulo 2
Transmisso de dados por redes
celulares
Este captulo descrever toda a fundamentao terica utilizada no
embasamento do projeto. Na seo 2.1, ser descrita uma pequena introduo a
transmisso de dados pela rede celular. Na seo 2.2, ser descrita uma evoluo
dos padres de transmisso celular. Na seo 2.3 ser abordado o padro GSM, e
por fim, na seo 2.4, ser abordado o servio GPRS.
2.1.
redes celulares
Uma transmisso de dados do tipo celular quando a informao trafega por
uma rede onde a rea geogrfica, na qual ela se insere, est dividida em sub-reas
denominadas clulas. Cada clula possui uma Estao Rdio Base (ERB) que se
interconecta fisicamente com as outras estaes, formando a rede. Cada ERB
capaz de enviar e receber dados, via ondas de rdio, de estaes mveis (aparelhos
celulares, por exemplo) dentro de sua clula. A rea de cobertura de uma estaobase depende de vrios fatores, incluindo potncia de transmisso da estao-base,
potncia de transmisso da estao mvel, obstculos, como edifcios, na clula, e
altura das antenas da estao-base (Kurose, pg 473). Alm dos fatores citados
anteriormente, as condies naturais do terreno onde a ERB ser instalada tambm
um fator que determinar a rea de cobertura da estao. A Figura 1 mostra os
principais componentes de uma rede celular. A rea de cobertura de cada ERB
(clula) representada por um hexgono (na maioria dos casos), porque um
15
16
Dimetro aproximado
Picoclula
Ambientes fechados
Dezenas de metros
Microclula
Um quilmetro
Macrocula
Dezenas de quilmetros
17
2.2.
redes celulares
Segundo Brand (Brand), um bom padro de transmisso de dados via redes
mveis precisa atender aos seguintes critrios:
Utilizar os recursos disponveis de forma eficiente, a fim de poupar a infraestrutura de possveis desgastes e elevar os custos de manuteno da
rede;
Os procedimentos de handoff devem ser feitos de forma rpida e requerer
o mnimo de sinal, para que a rede no seja comprometida com uma
carga muito alta destes procedimentos;
O padro deve suportar diversas camadas de rede para poder dar suporte
a hierarquia de clulas.
Nos sub-tpicos seguintes, veremos como os padres de comunicao
evoluram at chegar aos dias de hoje. Todos eles tentaram atender aos critrios
citados acima. E de certa forma, conseguiram, mas no de forma to satisfatria,
devido principalmente aos custos elevados de desenvolvimento.
2.2.1.
18
2.2.2.
segunda
gerao
de
padres
de
comunicao
mvel
buscou,
19
primeiro padro digital popular do Japo. Ele foi mais tarde complementado pelo
Sistema pessoal de telefonia porttil (PHS, do ingls Personal Handyphone System),
e se tornou um padro hbrido entre mvel e sem-fio, que era atendido somente com
baixa mobilidade. Ambos os padres so baseados em TDMA. O que causou seu
sucesso foi primeiramente suas taxas de transmisso (32 kbps, passando mais tarde
para 64 kbps), e o servio i-mode, que permitia uma conexo Internet (Brand).
2.2.3.
padres (2,5G)
Esta fase de padres foi uma transio entre a segunda e terceira geraes
de padres. Apesar dos avanos obtidos com o uso de tecnologias digitais nos
padres 2G, estes ainda enfrentavam problemas com relao a comunicao de
dados (Brand). Porm, antes mesmo do lanamento do 2G, a comunidade cientfica
j procurava meios de contornar esses problemas e criar os ambientes necessrios
para uma terceira gerao de sistemas mveis.
O problema que com a consolidao do 2G no mercado, os investidores
no se interessavam muito em abandonar esse padro, j que para a
implementao do 3G, seria necessria a substituio de toda a infra-estrutura do
2G. Por isso, para continuar o desenvolvimento do 3G (levando em considerao
que existia uma demanda crescente por melhorias nos padres existentes,
principalmente no que dizia respeito a transmisso de dados), os desenvolvedores
encontraram dois caminhos a serem seguidos. Um deles seria a construo do 3G
de tal forma que houvesse um reuso da infra-estrutura 2G existente. No caso do
padro UTMS, mostrado mais adiante, isto ocorreu, pois ele utiliza a estrutura da
rede GSM existente. O outro caminho seria desenvolver o 2G de modo a atender os
pr-requisitos da rede 3G. Estes requisitos sero abordados no prximo tpico.
20
2.2.4.
21
desenvolvimento
de
melhorias
nos
padres
3G
atualmente
Complexidade e custo
O desenvolvimento e custo dos equipamentos devem ser mantidos a
nveis razoveis, levando em considerao o custo das clulas, as
conexes de rede associadas a cada clula, e a carga de trfego
suportada por esta rede.
22
23
2.3.
(GSM)
O Sistema Global de Comunicao Mvel (do ingls Global System for Mobile
Communications), atualmente o padro de telefonia mvel mais utilizado e
difundido em todo o mundo. No Brasil, so mais de 158 milhes de aparelhos
utilizando esta tecnologia (TELECO).
A necessidade de se desenvolver um padro de telefonia mvel para a
Europa era incontestvel e urgente, pois existiam seis padres diferentes, onde no
havia uma compatibilidade de aparelhos com todos os padres. Tudo isso levou a
um esforo para se desenvolver o GSM, que foi iniciado na Comfrence Europenne
des Administrations des Postes et des Tlcommunications (CEPT), em 1982, com a
formao do Groupe Spcial Mobile. Este grupo ficaria responsvel por desenvolver
um padro digital de transmisso de dados via rdio para a Europa, a uma taxa de
900MHz. Em 1988, o European Telecommunications Standards Institute (ETSI) foi
criado com a tarefa de cuidar da evoluo do GSM. O ETSI formalmente
responsvel por esta evoluo, porm o trabalho tcnico atualmente feito pelo
Third Generation Partnership Project (3GPP), no qual o ETSI faz parte.
O GSM foi desenvolvido em duas fases. A primeira fase foi completada em
1989 e os primeiros sistemas entraram em operao em 1991. O sucesso foi tanto,
que em 1996 j existiam trinta e cinco milhes de usurios do novo sistema
(Beddel). A segunda fase foi lanada em 1994. Estas duas fases proveram suporte
para tranmisso de voz e servios complementares, utilizando comutao de
circuitos em 9.6Mbps e o sistema de envio de mensagens (Send Message System,
SMS). Nos upgrades seguintes de desenvolvimento, os chamados releases, foram
adicionados mais servios ao GSM, como:
24
450.4-457.6MHz pareados
Europa
com 460.4-467.6MHz ou
478.8-486MHz pareados
com 488.8-496MHz
800MHz
824-849MHz pareados
Amrica
com 869-894MHz
900MHz (incluindo a banda
880-915MHz pareados
estendida do GSM)
com 925-960MHz
frica
1800MHz
1710-1785Mhz pareados
com 1805-1880MHz
frica
1850-1910MHz pareados
America
1900MHz
com 1930-1990MHz
De acordo com padro, a rede GSM est arquitetada sobre subsistemas
bem definidos. Segue abaixo uma pequena descrio destes subsistemas.
25
Subsistema da estao-base
o sistema de acesso a rede GSM. composto por uma estao rdiobase (ERB), responsvel por enviar e receber os dados vindo do ar, de delimitar a
rea da clula, e controlar os protocolos de transmisso; e um controlador, que
possui a tarefa de gerenciar as ERBs, alm de gerenciar tambm o mecanismo de
handoff.
Subsistema da rede
Responsvel por interconectar os subsistemas de estao-base com a rede
principal. composta principalmente de switches.
Subsistema de operaes e suporte
Responsvel por monitorar e controlar a rede GSM. Este sistema pode
detectar falhas em estaes-base e apresentar os equipamentos que sero
necessrios para reparar a falha.
Subsistema da estao mvel
o telefone (ou estao mvel) em si. O destaque aqui o Mdulo
Identificador do Assinante (SIM, do ingls Subscriber Identity Module), sistema que
possui as funes de armazenamento, gerenciamento e decodificao dos dados
presentes na estao mvel. Geralmente esses dados so guardados em
dispositivos denominados SIM Cards (os famosos chips dos aparelhos celulares,
disponibilizados pelas operadoras).
2.4.
26
27
29
Modificaes requeridas
Devero
ser
substitudos
por
terminais
Ncleo da rede
Bases de dados, como o Registro de localizaes Qualquer base de dados da rede GSM dever
de
visitantes
(VLR),
ou
Registro
30
Captulo 3
API de comunicao entre microcontroladores atravs de modems
GSM/GPRS
Este captulo descrever a API que foi desenvolvida para abstrao das
rotinas de comunicao entre microcontroladores utilizando modems GSM/GPRS. A
seo 3.1 descrever as tecnologias envolvidas no desenvolvimento do projeto. A
seo 3.2 mostrar a API desenvolvida: Um arquivo de biblioteca C para
microcontroladores. Por ltimo, ser descrito na seo 3.3 o ambiente de testes
proposto para os testes envolvendo a API desenvolvida.
tpico
sero
apresentadas
as
tecnologias
envolvidas
no
3.1.1.
Comandos AT
Comandos AT so instrues utilizadas para executar operaes diversas em
31
3.1.2.
O modem SIM-340DZ
O modem utilizado para os testes da API foi um modem GSM/GPRS SIM-
340DZ, fabricado pela SIM Com (SIM Com). O aparelho consegue operar em quatro
bandas GSM (900/1800MHz e 850/1900MHz), e suporta quatro codificaes GPRS
(CS-1, CS-2, CS-3 e CS-4). O hardware utiliza um encapsulamento SMD de 48
pinos, sendo:
Nove pinos de aterramento (GND);
Dois pinos de alimentao (VBAT);
1 pino de Entrada/Sada de propsito geral, para ser utilizado de forma
livre pelo desenvolvedor;
32
33
Tabela 4.
Numerao
Nome
Descrio
RXD
TXD
SIM_DATA
SIM_CLK
SIM_RST
SIM_VDD
11
RI
Indicador de anel
12
PWRKEY
15
VRTC
GND
Pino 0V (Terra)
22
AGND
28
VCHG
35, 36, 37
da bateria de on-ltio
33
ANTENNA
38,39
VBAT
Alimentao do modem.
41
NETLIGHT
42
DCD
43
DTR
44
RTS
34
porta serial
45
CTS
Modo Power Down: Modo onde o modem desligado. Isto pode ser
feito atravs de uma mudana no pino PWRKEY para nvel lgico baixo
por um tempo maior do que dois segundos, ou ainda por comandos AT.
Neste modo, todas as operaes do modem so destivadas, exceto o
carregamento do circuito de alimentao reserva do clock.
35
3.2.
O arquivo gprs.h
O arquivo gprs.h o arquivo que comporta as funes pertencentes a API.
36
Tabela 5.
Comando
Descrio
Resposta esperada
AT
OK
devidamente conectado
AT+CSQ
transmisso
AT+CMGF
OK
37
OK
38
3.2.1.
Funes de inicializao
So funes que inicializam todos os elementos da API (buffers, ndices e o
3.2.2.
Funes de verificao
So funes que realizam operaes de monitoramento das atividades do
existeSinal(void):
39
3.2.3.
Funes de envio/recebimento
So as funes responsveis pelo envio e recebimento de dados atravs do
modem. A API s envia e recebe trs tipos de dados pela rede: conjuntos de
caracteres(strings),
seguir.
short enviaString(char *str): Responsvel por enviar um
conjunto de caracteres pela rede. *str representa a string a ser
enviada. A funo retorna 0, se a operao for mal sucedida, ou 1, em
caso contrrio.
char
*recebeString(void):
recebeInt(void):
40
3.2.4.
Funes auxiliares
Como o nome diz, so funes que auxiliam as outras funes em suas
atividades. O uso destas funes torna a API mais limpa e clara, facilitando seu
entendimento. As funes so:
void
limparBuffer():
Responsvel
por
tornar
todos
os
*substring(char
*str,
int
limiteInicial,
int
3.3.
O ambiente de testes
O ambiente de testes consiste em uma placa de circuito impresso contendo o
modem SIM-340DZ, alm dos circuitos necessrios para alimentao, porta serial,
etc. O desenho esquemtico da placa, assim como o desenho das trilhas foi feito
utilizando a ferramenta EAGLE (CadSoft), por possuir recursos que permitem ao
usurio criar seu prprios componentes, caso tal componente no exista no banco
de componentes do software. As sub-sees seguintes detalham os circuitos que
compem a placa.
41
3.3.1.
Circuito de alimentao
O circuito de alimentao da placa est descrito na Figura 5. O modem
GSM/GPRS utilizado no projeto possui uma tenso de entrada entre 3,4 e 4,5 volts.
Por isso, existe a necessidade de um componente que faa com que a tenso inicial
do circuito (que est em 12 volts) caia at o valor aceito pelo modem. Esse
componente o regulador de tenso ajustvel MIC29302WT. Os resistores de 100 e
43K ohms garantem uma tenso de sada de aproximadamente 4,12 volts, que est
dentro da margem aceita pelo modem. A relao entre os resistores e a tenso de
sada obtida atravs da frmula:
R1=R 2
V out
1
1.240
(1)
42
3.3.2.
pino dever ser alimentado com uma tenso de cinco volts. Por isso, a necessidade
de um regulador de tenso para a tenso de entrada, que de 12 volts. Para este
projeto, foi utilizado o regulador 7805, como est mostrado na Figura 6. O conector
da alimentao externa, que um do tipo P4, no o mesmo da alimentao do
modem. Isto foi feito com a inteno de separar os dois circuitos e para facilitar o
roteamento das trilhas da placa.
43
3.3.3.
44
3.3.4.
dois tipos de voltagens de SIM Card disponveis: 1,8 e trs volts. Para proteger o
circuito de correntes altas, diodos zener so colocados em cada linha do circuito,
alm dos resistores de 22 ohms. Para a linha que leva ao pino SIM_VDD, que a
alimentao eltrica do SIM Card, ainda necessrio um capacitor de 220 nF
aterrado para garantir a proteo. Para a linha SIM_DATA, onde sero trafegadas as
informaes oriundas do chip, adicionado um resistor de pull-up de 10K ohms.
Para fixar o SIM card na placa, ser utilizado um soquete modelo SCW-2523XD-06.
Figura 8.
3.3.5.
Outros circuitos
Ainda existem outros dois circuitos que merecem destaque na placa de testes
45
46
Figura 10.
3.3.6.
47
Figura 11.
48
Captulo 4
Concluso e Trabalhos Futuros
Sistemas embarcados frequentemente precisam enviar dados para centrais
de processamento e/ou monitoramento. Neste contexto, a transmisso destes dados
utilizando a rede de telefonia celular torna-se uma alternativa vivel devido ao baixo
custo de implementao e a possibilidade de utilizar a rede j existente em uma
localidade. Porm o desenvolvimento de rotinas que utilizam o modem pode ser
demorado para o desenvolvedor.
Neste trabalho foi proposta uma API, utilizando a linguagem C para
microcontroladores PIC, que possibilita ao desenvolvedor a abstrao de rotinas de
comunicao destes dispositivos com modems GSM/GPRS. Para permitir esta
abstrao, foram criadas funes de envio e recebimento de tipos primitivos de
dados (inteiros, caracteres, ponto-flutuante), alm de algumas funes de
gerenciamento, como o monitoramento do sinal recebido pela antena conectada ao
modem. Tambm foi desenvolvido um ambiente de testes para a API, composto de
uma placa de circuito impresso contendo o modem GSM/GPRS SIM-340DZ, alm
de todos os circuitos necessrios para o seu funcionamento pleno (porta serial,
alimentao, etc). O trabalho de uma maneira geral foi vlido, uma vez que foi
provado que possvel desenvolver rotinas de comunicao para modems
GSM/GPRS de forma robusta e em um tempo hbil.
4.1.
Trabalhos futuros
Como aprimoramento da API, poderia-se extender o envio e recebimento de
dados pra uma estrutura especfica onde estariam todos os tipos de dados
desejados. Deste modo, as funes de envio e recebimento seriam de apenas um
49
tipo, reduzindo o tamanho do arquivo gprs.h. Uma outra melhoria que poderia ser
feita a incluso de rotinas especficas de transmisso GPRS, j que para o envio
de tipos primitivos de dados, no foi necessrio utilizar este servio. Utilizando
GPRS, juntamente com a estrutura nica citada acima, a API estaria apta para
enviar qualquer tipo de informao pela rede.
Tambm seria interessante como melhoria a insero de mais rotinas de
monitoramento, como por exemplo a rotina de obteno da quantidade de crditos
disponveis no SIM card, ou ainda uma rotina que avalia o nvel da bateria que
alimenta o modem. Alm, destas sugestes, a confeco da placa de circuito
impresso proposta, e os testes da API em um ambiente microcontrolado seriam
opes interessantes de trabalhos futuros.
50
Bibliografia
Bedell, Paul. Wireless Crash Course. 2. ed. McGraw-Hill/Osbourne, 2005. 533p.
Brand, Alex; Aghvami, Hamid. Multiple Access Protocols for Mobile
Communications: GPRS, UPRS and Beyond. Wiley, 2002. 427p.
CCS. CCS, Inc Home. Disponvel em: <http://www.ccsinfo.com/> ltimo
acesso: 22 de fevereiro de 2010.
Doxygen. Doxygen. Disponvel em: <http://www.doxygen.org> ltimo acesso: 18
de maio de 2010.
CadSoft. CadSoft Onkine: Home of the EAGLE Layout Editor. Disponvel em:
<http://www.cadsoftusa.com> ltimo acesso:
Halonen, Timo; Romero, Javier; Melero, Juan. GSM, GPRS and EDGE
Performance. 2. ed. Wiley, 2002. 648p.
Jos de Souza, David. Desbravando o PIC. 12.ed rica, 2009. 267p.
Michochip Inc. PIC18F4550. Disponvel em: <http://www.microchip.com/www/
products/Devices.aspx?dDocName=en010300> ltimo acesso: 26 de abril de
2010.
SIM Com Wireless Solutions Co. Wireless Communications Module.
Disponvel em: <http://wm.sim.com/Sim/FrontShow_en/wireless/detail.aspx?
cid=6&nid=5> ltimo acesso: 18 de maio de 2010.
Techouse
Informtica.
[telefonia
celular].
Disponvel
em:
51
52