Você está na página 1de 52

Uma API para desenvolvimento de

rotinas de comunicao atravs de


modems GSM/GPRS utilizando
microcontroladores PIC

Trabalho de Concluso de Curso

Engenharia da Computao

Giovane Boaviagem Ribeiro


Orientador: Prof. Srgio Campello Oliveira

GIOVANE BOAVIAGEM RIBEIRO

UMA API PARA DESENVOLVIMENTO


DE ROTINAS DE COMUNICAO
ATRAVS DE MODEMS GSM/GPRS
UTILIZANDO MICROCONTROLADORES
PIC

Monografia apresentada como requisito parcial


para obteno do diploma de Bacharel em
Engenharia
da
Computao
pela
Escola
Politcnica de Pernambuco Universidade de
Pernambuco.

Recife, Junho de 2010

A minha famlia, sempre.

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

microcontroladores PIC, reduzindo as chances de erros na comunicao do mdulo


com a central, alm de reduzir o tempo de desenvolvimento do software embarcado.

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

Captulo 2 Transmisso de dados por redes celulares


2.1.Introduo transmisso de dados por redes celulares...........................................15
2.2.Evoluo dos padres de transmisso por redes celulares......................................18
2.2.1.Primeira gerao de padres (1G)............................................................18
2.2.2.Segunda gerao de padres (2G)...........................................................19
2.2.3.Transio da segunda para a terceira gerao de padres (2,5G)...........20
2.2.4.Terceira gerao de padres (3G)............................................................21
2.3.Sistema Global de Comunicao Mvel (GSM)........................................................24
2.4.Servio Geral de Rdio por Pacote (GPRS)..............................................................26

Captulo 3 API de comunicao entre micro-controladores atravs de modems GSM/GPRS


3.1.Tecnologias envolvidas.............................................................................................31
3.1.1.Comandos AT............................................................................................31
3.1.2.O modem SIM-340DZ................................................................................32
3.2.O arquivo gprs.h........................................................................................................36
3.2.1.Funes de inicializao............................................................................39
3.2.2.Funes de verificao..............................................................................39

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

Captulo 4 Concluso e Trabalhos Futuros


4.1.Trabalhos futuros.......................................................................................................49

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

Tabela de Smbolos e Siglas


API Application Programming Interface
CDMA Code Division Multiple Access
EDGE Enhanced Data Rates for Global Evolution
FDM Frequency Division Multiplex
GPRS General Package Radio System
GSM Group Special Mobile
PIC Peripherals Integrated Controller
SIM Subscriber Identity Module
SMS Short Message System
TDM Time Division Multiplex

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

diretamente a interface do PIC com o modem GSM/GPRS. Desse modo, o


desenvolvedor ter mais condies de aperfeioar e implementar as funcionalidades
especficas do mdulo a ser desenvolvido, ganhando produtividade e desempenho.
A API ser desenvolvida na linguagem C, compilado pela ferramenta PCW (CCS), e
o microcontrolador utilizado no prottipo ser um PIC modelo 16F4550.

1.1.

Estrutura do documento
Este documento se divide em 4 captulos, incluindo este. O captulo 2 tratar

das tecnologias envolvidas na aplicao do projeto. Ele contm todo o


embasamento terico do projeto. O captulo 3 mostrar em detalhes a API
desenvolvida, descrevendo os mdulos que a compem, bem como o detalhamento
do prottipo de testes, e os resultados de experimentos obtidos com a aplicao da
API neste prottipo de testes. O captulo 4 Mostrar as concluses obtidas no
desenvolvimento deste projeto, bem como os trabalhos futuros a serem
desenvolvidos para melhorar o projeto proposto.

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.

Introduo transmisso de dados por

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

hexgono o polgono regular com maior nmero de lados que se encaixam


perfeitamente uns com os outros. Com isso, aproxima-se bastante do modelo de
transmisso real, que circular ou esfrico, para antenas ominidirecionais.

Figura 1. Componentes de uma rede celular.


Em uma clula, podem ocorrer diversas chamadas simultneas, obtidas
compartilhando uma poro do espectro de rdio destinada a cada provedora de
servio celular. Atualmente, os sistemas celulares utilizam as seguintes abordagens
para prover este compartilhamento de espectro:
Combinao de multiplexao por diviso de frequncia (FDM) e
multiplexao por diviso de tempo (TDM);
Acesso mltiplo por diviso de cdigo (CDMA).
A transmisso de dados atravs de redes celulares uma alternativa
interessante e vivel de comunicao, devido principalmente a sua praticidade de
utilizao, uma vez que grande parte da populao utiliza este tipo de comunicao.
Porm, existem algumas limitaes neste tipo de transmisso de dados. Uma delas

16

o aumento do fenmeno conhecido como handoff ou handover, que ocorre quando


uma estao mvel troca de uma clula para outra (Kurose, pg 431). Deste modo,
a rede precisa realizar um novo roteamento, o que provoca uma queda no
desempenho (Brand, pg 24). O aumento de handoffs causado pela quantidade de
ERBs que precisam ser adicionadas a uma determinada regio, devido ao aumento
da demanda gerada pelos usurios. Estas ERBs so compostas por antenas de
menor potncia, o que aumenta a quantidade de clulas, e consequentemente, o de
handoffs.
Apesar de ser possvel uma rede com clulas fixas, ou seja, no hierrquicas,
no enfrentaramos de modo eficiente os handoffs, pois uma reduo ou aumento
das clulas no evita a mudana de estaes entre clulas. Para minimizar a queda
de desempenho criada pelos constantes handoffs, foi necessria a criao de uma
topologia de rede, onde clulas diferentes so implantadas hierarquicamente, de
forma a atender a demanda de handoffs com perdas mnimas, e ainda prover uma
cobertura universal de transmisso de dados.
Como podemos ver na tabela 1, cada tipo de clula atende a uma rea
especfica e prpria para sua capacidade de atuao, fazendo com que a rede
possua perdas mnimas.
Tabela 1. Comparao dos diferentes tipos de clulas.
rea de atuao

Dimetro aproximado

Picoclula

Ambientes fechados

Dezenas de metros

Microclula

Centros urbanos, estradas

Um quilmetro

Macrocula

Grandes reas, sejam urbanas, ou no

Dezenas de quilmetros

17

2.2.

Evoluo dos padres de transmisso por

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.

Primeira gerao de padres (1G)


Esta gerao de padres, proposta e utilizada entre os anos 70 e 80, se

caracterizou por fornecer transmisso de voz, apenas, com flexibilidade limitada. O


primeiro padro da 1G, foi o Sistema de Telefonia Mvel Avanado (AMPS, do
ingls Advanced Mobile Phone System), de origem americana. Depois, vieram o
NMT (Nordic Mobile Telephone System) e o TACS (Total Access Communication
System), ambos desenvolvidos na Sucia. Em geral, boa parte dos padres de

18

comunicao mvel da primeira gerao tiveram sua origem na Europa e eram


derivados principalmente de tecnologias FDMA.
A qualidade da voz que se ouvia dos dispositivos mveis que utilizavam estes
padres era no mximo razovel, devido a qualidade da transmisso afetada pelas
transmisses de controle que utilizavam o mesmo canal de transmisso da voz.
Apesar disso, os padres foram bem aceitos pela populao, que passou a utilizar
este servio de transmisso intensamente.

2.2.2.

Segunda gerao de padres (2G)


A

segunda

gerao

de

padres

de

comunicao

mvel

buscou,

principalmente, uma variedade maior de servios a serem utilizados pelos usurios.


Para isso, foi adotada uma transmisso digital de dados, em substituio a
transmisso analgica da gerao anterior. Em comparao aos padres 1G, o 2G
trouxe as seguintes vantagens:
Aumento da segurana, com a utilizao de encriptao e autenticao
de usurios para prever acesso no autorizado ao sistema, garantindo
assim a privacidade.
Integrao de voz e dados, com canais dedicados para a troca de
informaes de controle da rede entre os terminais mveis e fixos, a fim
de superar as limitaes dos padres 1G.
Existiram outros padres 2G que tambm ganharam espao no mercado,
como o TDMA Interim Standard 136 (TDMA IS-136), que foi um sistema evoludo do
FDMA 1G e esteve amplamente difundido na Amrica do Norte, e o CDMA Interim
Standard 95 (CDMA IS-95), que utilizava acesso mltiplo por diviso de cdigo para
transmitir os dados. Foi utilizado na Amrica do Norte e Coria. Tambm merece
destaque o Celular Pessoal Digital (PDC, do ingls Personnal Digital Cellular), o

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.

Transio da segunda para a terceira gerao de

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

Sendo assim, foram desenvolvidos vrios servios e padres que buscassem


fornecer uma base para a implementao do 3G. Dois dos principais servios esto
descritos a seguir:
Servio Geral de Rdio por Pacote (GPRS, do ingles General Packet
Radio Service): uma evoluo do GSM que aloca uma faixa de
tempo entre transmisses de voz, para transmisso de dados.
fornecido por uma rede GSM;
Melhores Taxas de Dados para Evoluo Global (EDGE, do ingls
Enhanced Data Rates for Global Evolution): O principal objetivo do
EDGE aumentar as capacidades e confiabilidades da transmisso de
dados. uma evoluo do GPRS, e por isso, no h um consenso
sobre em qual gerao ele se encontra. Beddel (Beddel) considera
uma tecnologia de terceira gerao, enquanto Kurose (Kurose),
considera um padro de gerao 2,5.
O maior destaque dos sistemas 2,5G o GSM. A sigla ficou inicialmente
como Group Spcial Mobile. Mais tarde, ela foi mudada para Global Systems Mobile
Communications. Este padro surgiu como uma evoluo ao CDMA simples. A
seo 2.3 descrever o padro GSM com mais detalhes.

2.2.4.

Terceira gerao de padres (3G)


A terceira gerao de padres de sistemas celulares deve prover

comunicao de voz e de dados segundo as seguintes taxas:


144kbps em velocidades de trnsito;
384kbps para uso em ambiente externo, ou velocidades de quem anda
a p;

21

2Mbps para uso interno.


O

desenvolvimento

de

melhorias

nos

padres

3G

atualmente

responsabilidade do Projeto de Parcerias da Terceira Gerao (3GPP, do ingls


Third Generation Partnership Project), porm, antes da 3GPP estar consolidada, a
ETSI (Instituto de Padres de Telecomunicaes Europias, traduo de Europpean
Telecommunications Standards Institute) foi a pioneira na padronizao dos
sistemas 3G. Esta primeira padronizao foi chamada de Servio Universal de
Telecomunicao Mvel (UTMS, do ingls Universal Telecommunications Mobile
Service) e estabeleceu uma srie de requisitos que seriam necessrios para que um
sistema 3G fosse implementado. Para o escopo deste trabalho, s sero descritas
duas das quatro categorias de requisitos UTRA (UTMS Terrestrial Radio Access,
Acesso UTMS por rdio terrestre). So elas: Requisitos operacionais, e
complexidade e custo (Brand). As outras categorias de requisitos, so capacidades
de barreira, quando o sinal consegue ser flexvel ao utilizar equipamentos de outras
operadoras, e eficincia na utilizao do espectro de frequncia.
Requisitos Operacionais

Compatibilidade com servios que as redes oferecem (servios de


suporte a redes ATM, servios GSM, servios ISDN, etc);

Planejamento automtico de recursos de rdio, caso tal planejamento


seja necessrio.

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

Sistemas 2,5G tero dificuldades para cumprir as exigncias 3G por


possurem uma infra-estrutura inadequada. O mximo que eles conseguiro
fornecer um apoio eficiente para servios multimdia com taxa de bits varivel.
O padro 3G de maior destaque hoje o UTMS, que uma evoluo do
GSM. Parte do seu sucesso devido a reutilizao da rede GSM existente,
reduzindo custos de tempo e implementao. Porm, para cumprir os requisitos 3G
necessrios, o UTMS utiliza uma tcnica de acesso diferente do GSM. Enquanto
este utiliza uma combinao de FDMA e TDMA, o UTMS utiliza uma tcnica CDMA
chamada CDMA de Banda Larga de Seqncia Direta, onde o sinal de informao
multiplicado por um sinal codificador pseudo-randmico. Essa tcnica possibilita
uma maior capacidade de transmisso, porm, fornece maiores dificuldades para
resolver problemas de interferncia, alm de elevar os custos dos equipamentos
(TELECO) (Brand).

Figura 2. Exemplo de codificao de sinal utilizando sequncia direta


(TELECO).

23

2.3.

Sistema Global de Comunicao Mvel

(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:

Servios de comutao de circuitos

24

Recursos avanados de chamada (teleconferncia, por exemplo)

Introduo ao servio de comutao de pacotes.

Este padro de telefonia baseado em acesso mltiplo por diviso de


tempo, com multi-portadora, e diviso de freqncia (MC/TDMA/FDD). Ou seja, a
transmisso GSM se d em vrias faixas de freqncia (ver tabela 2), com cada
faixa sendo dividida em frames TDMA, que por sua vez so divididos em oito slots,
denominados bursts. Onde cada burst carrega alguma informao. O formato e o
tipo de informao que cada burst carrega depende do tipo de canal (fsico ou
lgico) ao qual ele pertence.
Tabela 2.

Faixas de frequncia disponveis para o GSM (Brand).

Frequncia de banda do GSM Frequncias disponveis Onde est disponvel


400MHz

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

Europa, sia Oriental,

estendida do GSM)

com 925-960MHz

frica

1800MHz

1710-1785Mhz pareados

Europa, sia Oriental,

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.

Servio Geral de Rdio por Pacote (GPRS)


Um dos grandes problemas envolvendo o GSM, que a rede no suporta

bem transmisses que envolvam grandes volumes de dados (uma conexo a

26

Internet, por exemplo). Uma das causas a lentido em se estabelecer o circuito


virtual na criao da conexo, e alm disso, como o dispositivo precisa ficar
conectado durante muito tempo, pois as taxas de transmisso so relativamente
baixas, o usurio paga mais pela conexo, pois passa mais tempo conectado do que
o necessrio.
O servio GPRS leva a comutao de pacotes para as redes GSM. Como
este servio prov um tempo muito curto de acesso real a rede, o usurio s ir
pagar pelo somatrio dos tempos reais de acesso, e no pelo tempo da conexo
total, como acontecia no cenrio GSM anterior. O GPRS pode utilizar at oito canais
de comunicao (dependendo do dispositivo), que so disponibilizados por demanda
de pacotes a serem recebidos ou enviados. Os pacotes ainda podem ser recebidos
em tempos ociosos de chamadas de voz, com canais separados para uplink e
downlink. A comunicao GPRS pode ser ponto-a-ponto, ou multiponto, com taxa
mxima terica de 160Kbps, utilizando os oito canais, e sem correo de erros.
GPRS proporciona uma grande quantidade de servios, oferecidos em
aplicaes mveis. No geral, os tipos de aplicaes mais comuns que utilizam
GPRS esto listados a seguir:
Comunicaes (E-mail, fax, SMS, acesso a internet);
Jogos;
E-commerce;
Location Based Applications (softwares de navegao, basicamente).
Um conceito importante neste universo o de terminal GPRS. Um terminal
qualquer equipamento (telefone celular, roteador) que est inserido em um ambiente
GPRS. Um terminal pode pertencer a trs classes distintas: A classe A engloba os
terminais que suportam GPRS e qualquer outro servio fornecido pelo GSM (SMS,
por exemplo) simultaneamente. Este suporte inclui simultneas ativaes,

27

monitoramentos e trfegos, podendo estes terminais receber e fazer chamadas de


forma simultnea. Os terminais pertencentes a classe B so capazes de monitorar
trfego GSM e GPRS, mas s podem utilizar um destes servios por vez. Ou seja,
terminais classe B podem suportar simultneas ativaes e monitoramentos, mas
no trfegos. Terminais classe C s oferecem suporte a ativaes no-simultneas.
O usurio dever escolher o servio do qual ele deseja se conectar. Com isso, um
terminal pertencente a esta classe s poder fazer ou receber chamadas do servio
selecionado (manualmente ou padro). O suporte SMS para terminais desta classe
opcional. O modem GSM/GPRS adquirido para a placa de circuito impresso
proposta para os testes da API pertence a classe A, pois ele capaz de suportar
GSM e GPRS ao mesmo tempo. A vantagem desta classe est justamente na
versatilidade de servios que podem ser utilizados. Deste modo, a API proposta
poder abranger uma quantidade maior de funcionalidades para atender os recursos
do modem utilizado.
A arquitetura do servio GPRS mostrada na Figura 3. No ncleo da rede se
encontram os Centros de Comutao de servios Mveis (MSC, do ingls Mobileservices Switching Centers), criados para gerenciar as comutaes de circuitos.
Para habilitar o GPRS em uma rede GSM, necessrio a adio de dois
equipamentos, os ns de suporte do GPRS, descritos a seguir.
N de suporte ao servidor GPRS (SGSN, do ingls Serving GPRS
Support Node): Essencialmente, um comutador de pacotes. Ele pode
detectar estaes novas, registrar esta nova estao e passar a
guardar seus registros. O SGSN se conecta com a estao-base
atravs de uma unidade de controle de pacotes (PCU, do ingls
Package Control Unit), responsvel pela interface da estao-base
com a rede, para transmisso de pacotes de dados.
N de suporte ao gateway GPRS (GGSN, do ingls Gateway GPRS
Support Node): usado como interface para redes externas, como por
exemplo a Internet, outros servios mveis, como outras redes GPRS.
28

Um nico GGSN pode conectar vrios SGSNs, armazenando


informaes de roteamento, mapeamento e endereamento dentro da
rede.
Alm da incluso destes dois equipamentos, ainda so necessrias outras
mudanas na rede GSM. A tabela 3 relaciona todas estas mudanas.

Figura 3. Arquitetura bsica de uma rede GSM com GPRS.

29

Tabela 3. Modificaes necessrias na rede GSM para suportar o GPRS.


Equipamento
Terminal do assinante (Subscriber Terminal)

Modificaes requeridas
Devero

ser

substitudos

por

terminais

compativeis com o GPRS


Software do Tranceptor base (BTS)

necessrio um upgrade de software para uma


verso preparada para o GPRS.

Controlador da estao base (BSC)

Tambm necessita de um upgrade de software,


alm da instalao de um PCU (Package
Controller Unit), para gerenciar o trfego de
dados na rede

Ncleo da rede

Devero ser instalados no ncleo da rede, os


ns SGSN e GGSN.

Bases de dados, como o Registro de localizaes Qualquer base de dados da rede GSM dever
de

visitantes

(VLR),

Localizaes Locais (HLR)

ou

Registro

de passar por upgrades para suportarem funes


GPRS

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.

3.1. Tecnologias envolvidas


Neste

tpico

sero

apresentadas

as

tecnologias

envolvidas

no

desenvolvimento da API proposta, tanto para a etapa de software, quanto para o


hardware projetado para os testes da API.

3.1.1.

Comandos AT
Comandos AT so instrues utilizadas para executar operaes diversas em

modems GSM/GPRS. Todos os dispositivos mveis que operam em redes GSM


utilizam estes comandos para efetuar suas operaes. Os comandos AT seguem o
padro requisio/resposta, onde a resposta composta por duas partes: A

31

resposta propriamente dita do comando e a confirmao de que a requisio chegou


ao destino em bom estado, ou no. Um comando AT formado por 3 componentes:
Prefixo: Indica para o modem qual o tipo de comando que ser
interpretado. No nosso caso, o prefixo sempre ser AT (ou at),
abreviatura de Attention. Existe um exceo: O prefixo A/, tambm
significa um comando AT para o modem. o comando para re-enviar o
ltimo comando AT digitado.
Corpo: Descreve a instruo que o modem executar. Uma descrio
dos comandos AT utilizados neste projeto pode ser conferido na seo
3.2.
Caractere final: Caractere que finaliza o modem. Por padro, o
caractere <CR> (retorno de carro, do ingls carriage return), cuja
codificao em hexadecimal 0x0d. Simboliza uma quebra de linha.

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

Dois canais de udio, incluindo duas entradas de microfones e duas


sadas para alto-falantes. Estes canais podem ser facilmente
configurados via comandos AT;
O modem prov ainda interface para antena de rdio frequncia e
comunicao serial, alm da integrao com protocolo TCP/IP, alm de outros
recursos, como interfaceamento com displays LCD e SIM Card. Um diagrama
funcional do modem pode ser visualizado na Figura 4.

Figura 4. Diagrama funcional do modem GSM/GPRS SIM-340DZ.


Para este projeto, no foram utilizadas as interfaces para displays LCD, audio
e pinagens de uso geral. A tabela 4 mostra os pinos do modem que foram utilizados
na elaborao do projeto.

33

Tabela 4.

Relao dos pinos que foram utilizados no projeto.

Numerao

Nome

Descrio

RXD

Recebe o dado vindo da porta serial

TXD

Transmite o dado pela porta serial

SIM_DATA

Sada de dados do SIM Card

SIM_CLK

Clock do SIM card

SIM_RST

Pino de reset do SIM card

SIM_VDD

Alimentao do SIM card

11

RI

Indicador de anel

12

PWRKEY

Pino que liga o modem (ON/OFF)

15

VRTC

Alimentao reserva do clock

17, 30, 31, 32, 34,

GND

Pino 0V (Terra)

22

AGND

Pino 0V do conversor A/D

28

VCHG

Responsvel por alimentar o circuito de carga

35, 36, 37

da bateria de on-ltio
33

ANTENNA

Entrada do sinal da antena de rdio-frequncia

38,39

VBAT

Alimentao do modem.

41

NETLIGHT

Pino que indica atividade na rede

42

DCD

Linha de controle do modem para a porta serial

43

DTR

Pino que indica que a porta serial est pronta


para o uso

44

RTS

Pino de requisio para o envio de dados pela

34

porta serial
45

CTS

Pino de requisio para a limpeza de dados


atravs da porta serial

O modem SIM-340DZ possui 6 modos de operao distintos, que so


alterados por meio de mudanas de nvel lgico em pinos especficos, como o
VCHG ou ainda o PWRKEY, em um perodo longo de tempo pr-determinado, ou
por comandos AT. Segue abaixo um resumo destes modos de operao. Para este
projeto, o modem s operar em dois modos, o modo normal e o modo de power
down.
Modo normal: Modo mais comum de operao e tambm o que possui
o maior nmero de funcionalidades. Atravs dele, o modem realiza
suas operaes de transmisso de dados atravs de GSM ou utilizando
o GPRS. O destaque aqui que ele possui um modo SLEEP, que
executada automaticamente quanto o modem sente que no h
atividade nas interfaces de udio ou interrupes, ou ainda, quando o
pino DTR est em nvel lgico alto.

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.

Modo de funcionalidades mnimas: Este modo ativado somente por


um comando AT especfico, o AT+CFUN. Neste modo o SIM card e a
antena de rdio-frequncia ficam desativados, ou no so acessveis. A
interface serial permanece ativa.

35

Modo GHOST: Modo exclusivo para recarga da bateria de on-ltio.


Este modo s poder estar ativo se o modo anterior do modem for o
modo normal, ou o modo de power down. Para o primeiro caso, cinco
volts devem passar pelo pino VCHG e o modem deve ser desligado
pelo comando AT AT+CPOWD. No segundo caso, cinco volts devem
passar pelo pelo pino VCHG, enquanto o modem desligado.
Modo alarme: Modo onde o modem ligado automaticamente em um
determinado tempo. Porm, com funcionalidades reduzidas, pois o
clock alimentado pela carga limitada do circuito que passa pelo pino
VRTC.
Modo de carga durante operaes normais: Neste modo, o modem
inicia a carga da bateria de on-ltio enquanto realiza as operaes
normais (envio de pacotes pela rede, por exemplo).

3.2.

O arquivo gprs.h
O arquivo gprs.h o arquivo que comporta as funes pertencentes a API.

escrito na linguagem C, com poucas diretivas de compilao, para poder ser


compatvel com a maioria dos compiladores existentes sem grandes alteraes no
arquivo. Para este projeto, o arquivo foi compilado utilizando o CCS, compilador
prprio para microcontroladores PIC (CCS). A deciso de implementar todas as
funes em um nico arquivo foi feita por questes de portabilidade da API, uma vez
que ainda so desconhecidas tcnicas para criar arquivos de bibliotecas para
microcontroladores, ou seja, arquivos equivalentes a Bibliotecas de Ligao
Dinmica (DLL, do ingls Dinamic Link Library). O arquivo inteiramente
documentado de acordo com o padro doxygen (Doxygen), que um padro
semelhante ao javadoc, podendo ser gerada a documentao atravs deste sistema.

36

Como o ambiente de testes no ficaria pronto em tempo hbil para o


desenvolvimento da API, foi necessrio utilizar o modem GSM/GPRS presente em
um telefone celular comum para testar os comandos AT necessrios para a
elaborao da biblioteca. Foi utilizado um telefone celular marca Nokia, modelo
7100, para os testes. Este celular foi conectado ao computador atravs de uma
conexo serial via bluetooth, j que o cabo USB do celular no estava disponvel no
momento dos testes. Os resultados foram satisfatrios, j que todos os comandos
enviados para o modem presente no telefone, foram executados com sucesso. Aps
esta fase de testes, foi feita uma migrao para o ambiente embarcado, com a
criao das funes que manipulam estes comandos. A tabela 5 mostra os
comandos que foram utilizados pelas funes presentes na API.

Tabela 5.

Lista de comandos AT utilizados no projeto.

Comando

Descrio

Resposta esperada

AT

Verifica se o modem est

OK

devidamente conectado
AT+CSQ

Verifica a qualidade do sinal de

+CSQ: X,Y, onde x a

transmisso

qualidade do sinal em uma


escala de 0 a 30, e y a faixa
de frequncia do sinal (Alguns
modens podem no ser
totalmente compatveis com
este comando, neste caso, y
exibir o valor 99. O valor x
exibido normalmente)

AT+CMGF

Altera o formato da mensagem

OK

SMS. H duas opes


possveis: 0, que representa o
modo PDU (padro do modem),

37

e 1, que representa o modo


texto (utilizado no projeto)
AT+CMGS

Envia um SMS. O parmetro

OK

deste comando o nmero do


SIM Card de destino da
mensagem. Aps isso, ativado
um prompt, onde a mensagem
digitada. Para completar o
envio, o usurio dever digitar a
combinao de teclas ctrl+z

As funes esto divididas em 4 grupos, divididos pela funcionalidade:


Funes de inicializao, funes de verificao, funes de envio/recebimento e
funes auxiliares. O detalhamento destes grupos de funes mostrado nas subsees seguintes. Com exceo das funes auxiliares e das funes de
inicializao, todos os outros grupos de funes utilizam comandos AT para realizar
a comunicao do microcontrolador com o modem GSM/GPRS. As funes que
utilizam estes comandos os enviam atravs da porta serial, e armazenam as
respostas geradas por estes comandos em um buffer, onde sero analisadas.
Apesar do xito na utilizao destes comandos em um ambiente de testes
alternativo (utilizando computador e um telefone celular ligados atravs de
comunicao serial), ainda no foi possvel testar o arquivo gprs.h em um ambiente
microcontrolado porque o ambiente de testes (a placa de circuito impresso contendo
o modem GSM/GPRS) no ficou pronto at a data final de entrega desta
monografia, apesar de seu projeto esquemtico e desenho das trilhas impressas
estar concludo.

38

3.2.1.

Funes de inicializao
So funes que inicializam todos os elementos da API (buffers, ndices e o

telefone de destino). Este bloco composto de apenas uma funo, a


gprsInit(char *numDest), onde numDest a string que representa o nmero
do SIM Card de destino das mensagem enviadas pelo modem. Ela no retorna
nenhum valor.

3.2.2.

Funes de verificao
So funes que realizam operaes de monitoramento das atividades do

modem. As funes de verificao implementadas, so:


short existeModem(void): Verifica se o modem est conectado
ao microcontrolador. Respostas possveis: 0, se no existir algum
modem conectado ao microcontrolador, ou 1, em caso contrrio.
int

existeSinal(void):

Verifica a qualidade do sinal de

transmisso do modem. Existem aqui quatro respostas possveis:


-1: No h conexo com o modem (comportamento anlogo a
funo anterior)
0: Nenhum sinal
1: Sinal fraco
2: Sinal regular
3: Sinal bom

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),

inteiros, e de ponto flutuante. As funes esto descritas a

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):

Responsvel por receber um

conjunto de caracteres pela rede. A funo retorna a string que foi


recebida pelo modem.
short enviaInt(int x): Responsvel por enviar um nmero
inteiro pela rede. x representa o nmero a ser enviado. A funo
retorna 0, se a operao for mal sucedida, ou 1, em caso contrrio.
int

recebeInt(void):

Responsvel por receber um nmero

inteiro pela rede.


short enviaFloat(float f): Responsvel por enviar um nmero
de ponto flutuante pela rede. f representa o nmero a ser enviado. A
funo retorna 0, se a operao for mal sucedida, ou 1, em caso
contrrio.
float recebeFloat(void): Responsvel por receber um nmero
de ponto flutuante pela rede.

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

elementos do buffer serial iguais ao caractere '0'.


void carregarBuffer(): Responsvel por armazenar no buffer o
valor presente na porta serial.
int indexOf(char *string, char c): Retorna o ndice da
primeira ocorrncia do caractere c, na string string
char

*substring(char

*str,

int

limiteInicial,

int

limiteFinal): Retorna uma parte da string original str, cujos


limites so definidos por limiteInicial e limiteFinal.

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)

Onde R1 corresponde ao resistor que conecta os pinos OUT e ADJ. No


caso, o resistor de 100K ohms. R2 corresponde ao resistor que conecta o pino
ADJ ao terra. No caso, o resistor de 43K ohms.
O modem quando est em operao, pode solicitar alta potncia, gerando
picos de corrente de at dois ampres. Neste caso, o circuito de alimentao deve
estar apto a trabalhar com estes valores de corrente. Isso obtido com os
capacitores de 100 micro e 100 nF, colocados em paralelo. A bateria de on-ltio
conectada diretamente no fio que leva ao pino VBAT. A tenso que deve passar por
esta conexo deve ser ajustada com cuidado para que no danifique a bateria,
podendo at causar a exploso desta.

42

Figura 5. Circuito de alimentao da placa de testes.

3.3.2.

Circuito para o pino VCHG


O pino VCHG responsvel pela recarga da bateria. Obrigatoriamente, este

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

Figura 6. Circuito de alimentao do pino VCHG

3.3.3.

Circuito para o pino VRTC


O pino VRTC responsvel pela alimentao de emergncia do clock do

modem. O datasheet do SIM-340DZ sugere trs alternativas de circuitos para o pino


VRTC. A primeira, a utilizao de uma bateria no recarregvel aterrada, ligada
em srie a um diodo. A segunda a utilizao de uma bateria recarregvel aterrada
ligada diretamente ao pino VRTC. A terceira alternativa mostrada na Figura 7. Um
capacitor eletroltico de alta capacitncia aterrado ligado diretamente ao pino. Esta
alternativa foi escolhida pelo baixo custo e facilidade de manuteno, em caso de
falha.

Figura 7. Circuito de alimentao do pino VRTC.

44

3.3.4.

Circuito para o SIM Card


A Figura 8 mostra o circuito de alimentao do SIM Card. O modem aceita os

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.

Circuito de alimentao do SIM card.

Outros circuitos
Ainda existem outros dois circuitos que merecem destaque na placa de testes

desenvolvida. Um deles o circuito que alimenta o pino PWRKEY, mostrado na


Figura 9. O PWRKEY funciona como uma chave liga/desliga do modem e ativado
em nvel lgico baixo. Quando o boto for ativado, far com que o transistor gere um
pulso em nvel lgico baixo. Porm, esse pulso dever durar mais do que dois
segundos, para que o PWRKEY possa efetuar a ativao do modem.

45

Figura 9. Circuito de alimentao do pino PWRKEY.


O segundo circuito mostrado na figura 10. Trata-se do circuito que controla
o LED indicador de atividade na rede, acionado pelo pino NETLIGHT. Este pino
opera em nvel lgico baixo, de modo que o LED acender quando houver um
pulldown neste pino. O LED ir operar sobre quatro estados distintos, a saber:
LED apagado: O modem no est realizando nenhuma atividade de
transmisso de dados via rede;
LED operando em um ciclo de 64 ms aceso e 800 ms apagado: O
modem no est encontrando a rede GSM;
LED operando em um ciclo de 64 ms aceso e 3000 ms apagado: O
modem encontrou a rede GSM;
LED operando em um ciclo de 64 ms aceso e 300 ms apagado: O
modem est realizando uma transmisso GPRS.

46

Figura 10.

3.3.6.

Circuito de sada do pino NETLIGHT.

Placa de circuito impresso obtida


Com a definio do circuito esquemtico do ambiente de testes, foi feito o

desenho da placa de circuito impresso (PCI) que comportar o ambiente de testes.


O software EAGLE permite a exportao dos componentes do desenho esquemtico
para o desenho da PCI, mas o roteamento ideal das trilhas, a espessura das trilhas
e das ilhas deve ser feito manualmente para que a placa possua uma melhor
qualidade. Para este projeto, a espessura das trilhas foi de 0.5 mm com ilhas de
dimenso 1,5 mm x 2,5 mm, para ilhas longas, e de 2,5mm x 2,5 mm, para ilhas do
tipo circular, octogonal e quadrada. Um detalhe interessante para a placa a
distncia entre o modem GSM/GPRS e o conector da antena, que deve ser a menor
possvel. Isso ocorre porque a antena gera uma impedncia alta (50 ohms) e a trilha
da placa no est preparada para suportar esta impedncia por muito tempo. Por
isso o tamanho da trilha deve ser o menor possvel. A Figura 11 mostra o desenho
da PCI do ambiente de testes.

47

Figura 11.

Desenho da placa de circuito impresso.

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:

<http://www.techouserio.com.br/scripts/tudosobre.asp?id=7> ltimo acesso: 6


de junho de 2010.

51

TELECO Inteligncia em telecomunicaes. Estatsticas de Celulares no


Brasil. 2010. Disponvel em: <http://www.teleco.com.br/ncel.asp>
Kurose, James F; Ross, Keith W. Redes de computadores e a Internet: Uma
abordagem top-down. 3.ed. Pearson Addison Wesley, 2007. 625p.

52