Professional Documents
Culture Documents
Raspberry Pi
Raspberry Pi aplicado a
TUTORIAL
O
engenheiro britnico Eben Quase um ano depois de surgir o Os dois ltimos exemplos mostram o
Upton e uma equipe de Raspberry Pi, apropriado olharmos Raspberry Pi como um sistema em-
hackers de hardware come- para trs e analisarmos o que aconte- barcado e que exigiro um pouco de
aram o projeto Raspberry Pi como ceu entre a primeira srie de cerca conhecimento de programao, mas,
um meio de fornecer tecnologia de de 10 mil peas e a situao atual tambm, ressaltam a versatilidade deste
computador acessvel para jovens de aproximadamente 1 milho de poderoso minicomputador. Talvez todos
interessados no assunto [1]. O obje- unidades entregues: qual teria sido os trs exemplos ajudam a mentalizar
tivo era desenvolver e comercializar a razo de sucesso do projeto? Quais outros projetos faa voc mesmo (de
um computador de placa nica, do capacidades o hardware oferece? O do it yourself ou DIY) que podemos
tamanho aproximado de um carto de que possvel e o que no (ainda) criar com um Raspberry Pi prprio.
crdito e compatvel com o oramento possvel fazer com o sistema? Este
apertado do pblico alvo (quadro 1). artigo explora o Raspberry Pi atravs Lista de compras
Se o usurio estiver lembrado dos de trs projetos do mundo real: Originalmente, os designers haviam
primeiros computadores domsti- Um multimidia, de sistema de previsto um modelo A e B, que dife-
cos, no se sentir completamen- reproduo de vdeo, rem principalmente no nmero de
te por fora do assunto: a inteno Um ponto de acesso sem fio, e portas USB (uma ou duas), na dispo-
fundamental dos criadores era re- Uma unidade embarcada de nibilidade de uma porta Ethernet, e,
ocupar pores, garagens e salas de controle de temperatura. evidentemente, no preo (de 25 a 35
aula com o esprito de uma gerao O primeiro projeto um exemplo dlares, nos Estados Unidos). A esta
que cresceu com o Atari 400/800, do sistema Raspberry Pi servindo como altura, apenas o modelo B est dispo-
ZX80/81 ou VC20/C64. um substituto para um desktop padro. nvel. Veja a tabela 1 para um resumo
Quadro 1: Histria
Em 2006, Eben Upton e sua equipe desenvolveram os primeiros conceitos para o Raspberry Pi, baseados no Atmel
ATmega. A ideia de atrair jovens interessados no minicomputador j fazia parte do programa. Em 2009, os membros
oficialmente estabeleceram a Raspberry Pi Foundation. Em agosto de 2011, a srie alpha de aproximadamente 50
placas deixou a produo. Elas serviram principalmente como uma plataforma para desenvolvedores, para depurao
e para fins de demonstrao. Em dezembro de 2011, foi a vez da srie de 25 placas beta, j baseada no layout de pro-
duo. Os desenvolvedores eliminaram as ltimas falhas. Em um leilo online em janeiro de 2012, 10 placas desta srie
beta foram vendidas por um total de 16.336 libras no Reino Unido. Em 29 de fevereiro de 2012, s 7 horas (horrio da
Europa Central), os servidores web da fundao e duas distribuidoras foram sobrecarregadas em poucos minutos pela
tempestade de pedidos. Muitos clientes esperaram durante horas para submeter uma pr-encomenda.
60 www.linuxmagazine.com.br
Raspberry Pi | TUTORIAL
dos componentes do Raspberry Pi. suportado e escolha um design sistema consistindo de uma partio
Para obter o Raspberry Pi (ou RasPi, enxuto (slim) que no bloqueie de boot de 60MB e um sistema de
abreviadamente) instalado e funcio- a segunda porta USB. arquivos root em torno de 2GB. Des-
nando, precisamos fazer uma lista Tendo em vista o baixo nmero compacte o arquivo e mova-o para um
dos componentes bsicos. A Internet de portas USB, investir em um tecla- carto SD com o seguinte comando:
possui ainda mais dicas sobre opera- do e em um mouse sem fio valeria a
$ sudo dd bs=1M
es avanadas [2] [3]. Atualmente, pena tambm para poupar a carga if=2012-08-16-wheezy-raspbian.img
apenas dois distribuidores globais tm desnecessria sobre os recursos limi- of=SD_card_device_filename
a placa em catlogo [4] [5]. Embora tados do adaptador de energia USB.
a entrega de alguns meses no fosse Alm destes itens, o usurio tam- Agora, conecte o carto SD, tecla-
incomum no primeiro trimestre de bm precisar de cabos diversos, tais do, mouse e monitor para o sistema
2012, agora o usurio geralmente s como HDMI ou Ethernet, depen- Raspberry Pi e inicialize, ligando a
precisa aguardar algumas semanas. dendo do uso planejado para o dis- fonte de alimentao USB. O menu
Alm da placa, o usurio precisar positivo. No que se refere ao cabo de configurao aparece, e se o u-
dos seguintes componentes: HDMI, quanto menor, melhor. O surio no estiver usando um tecla-
Uma fonte de alimentao USB usurio tem a opo de aumentar do padro em ingls, seria melhor
com nada menos do que 700mA. Se a sada do driver, mas isso tambm primeiro alterar as configuraes nos
desejar um hardware com fonte adi- aumenta o consumo de energia. Se itens do menu configure-keyboard e
cional atravs de USB, deve planejar estiver pensando em ouvir msica ou change_locale para o teclado e idio-
pelo menos 1 amp. assistir a vdeos, tambm ir precisar ma preferidos; caso contrrio, ir
Um carto SD (HC) com pelo de fones de ouvido ou alto-falantes. encontrar problemas assim que for
menos 2GB de capacidade; no en- O terceiro projeto (um controlador solicitado o login. O nome de usu-
tanto, 4GB seria melhor. Dependen- de temperatura embarcado) usa uma rio padro pi; a senha raspberry.
do do que o usurio pretende fazer, placa de expanso que requer um Outros itens de menu teis in-
ainda assim pode no ser suficiente. hardware adicional [6]. cluem change_timezone, para definir o
Como o sistema est tambm alo- fuso horrio correto; ssh para permitir
jada no carto SD, aconselhvel Primeiros passos o acesso seguro ao terminal via rede;
escolher um carto com boa leitura Uma distribuio Linux baseada em e expand_rootfs, para alterar o tama-
e velocidade de escrita. Debian conhecida como Raspbian nho do sistema de arquivos root de
Para acesso sem fio, um adap- adaptada para o servio como um sistema 2GB para o tamanho real do carto
tador WLAN na forma de um pen- operacional on-board para Raspberry Pi. SD. Finalmente, devemos atualizar
drive (stick USB) seria prtico. Mas, A Raspberry Pi Foundation recomen- o sistema no modo Debian tpico:
na prtica, um adaptador WLAN da o Raspbian Wheezy [7], ltima
$ sudo apt-get update
USB muitas vezes um fator sig- verso lanada, utilizada neste artigo. $ sudo apt-get upgrade
nificativo no consumo de energia. Comece fazendo o download do
Se estiver pensando em usar um arquivo de imagem Raspbian Whee- Podemos iniciar a ferramenta de
adaptador USB, verifique se o driver zy, que uma imagem completa do configurao a qualquer momento
Componente: Tipo:
usando sudo raspi-config.
SoC
CPU
Broadcom BCM2835 (system on chip)
ARM1176JZF-S, 700 MHz
Projeto 1: reproduo
GPU
Broadcom VideoCore IV (OpenGL ES 2.0, OpenVG, de vdeo
1080p30, H.264 alto nvel de codificao/decodificao) Entrar com startx levar para o desktop
RAM 512MB of RAM grfico LXDE, o que otimizado para
Ports sistemas enxutos. Reproduzir um v-
USB 2 x USB 2.0 deo em HD certamente o ltimo
Ethernet 1 x 10/100 Mbps teste para o hardware. Os players de
vdeo comuns, no entanto, so de
SD/MMC 1 x slot
nenhuma ajuda porque a GPU da
Audio 1 x stereo analog out
placa otimizada para decodificao
Video 1 x composite out, 1 x HDMI out de udio e dados de vdeo. Assim, pre-
Tabela 1 Dados tcnicos do Raspberry Pi. cisaremos de um player que utiliza
62 www.linuxmagazine.com.br
Raspberry Pi | TUTORIAL
64 www.linuxmagazine.com.br
Raspberry Pi | TUTORIAL
Concluso
O Raspberry Pi no , obviamente,
um sistema desktop. Se utilizar o
terminal parecer algo muito estra-
nho e enigmtico para o usurio,
comece no desktop e trabalhe o
caminho para a linha de comando
de forma gradual. Desde o princ-
pio, o RasPi foi concebido como
Figura 3 O Raspberry Pi com uma placa de expanso como um monitor um PC com eficincia energtica
de temperatura. A luz verde na placa de expanso confirma que a
para aplicativos multimdia, e cla-
temperatura est abaixo de 22 graus Celsius.
ramente destinado para uso como
i2cdetect -y 0
sas. Os LEDs vermelho e verde so um sistema embarcado. n
Dependendo de como foram ca- GPIO23/GPIO24, de acordo com o
beados os trs pinos do LM75, a sada cabealho, mas tambm esto conec- Gostou do artigo?
ir conter exatamente um valor na tados ao P1-16/P1-18. A primeira deno- Queremos ouvir sua opinio.
faixa hexadecimal de 0x48 a 0x4F. minao corresponde documentao Fale conosco em
cartas@linuxmagazine.com.br
O usurio, ento, ir ler a palavra de BCM2835 e aos valores do kernel. No
Este artigo no nosso site:
temperatura de 2 bytes do LM75 no entanto, as bibliotecas Python seguem http://lnm.com.br/article/8388
registro de endereo 0 com o comando: a segunda nomenclatura.
$ i2cget -y 0 I2C bus_address
register_address w Mais informaes
[1] Raspberry Pi: http://www.raspberrypi.org/
A ficha de dados do mdulo ser
uma ajuda para a converso do valor [2] Guia de compra de hardware: http://elinux.org/RPi_
crptico retornado (exemplo: 0x8015) Hardware_Basic_Setup_#Typical_Hardware_You_Will_Need
para a temperatura correspondente. [3] Mais ajuda ao escolher hardware: http://
Python um ambiente de software elinux.org/RPi_VerifiedPeripherals
adequado para o controlador, desde
que as bibliotecas de classe j existam [4] Farnell element14 (Europa) / Newark element14 (Amrica do
para o Raspberry Pi para acessar o bar- Norte): http://uk.farnell.com http://www.newark.com
ramento I2C e os pinos GPIO. Este [5] RS Components (Inglaterra) / Allied Electronics (Amrica do
exemplo usou duas bibliotecas [10] Norte): http://uk.rs-online.com http://www.alliedelec.com
[11]. A listagem 7 mostra a instalao
dos pacotes e bibliotecas. O programa [6] Para respostas a questes: http://elinux.org/RaspberryPiBoard
em si muito simples (listagem 8): [7] Raspbian Wheezy: http://www.raspbian.org/
ele l o valor do sensor (linha 15) em
um ciclo de cinco segundos e con- [8] Reprodutor de udio/vdeo Omxplayer: https://
github.com/huceke/omxplayer/
verte a leitura do sensor para o valor
da temperatura (linha 16). O progra- [9] Hostapd: http://hostap.epitest.fi/hostapd/
ma ento aciona os dois LEDs para
ligado ou desligado, de acordo com [10] API Quick2Wire Python: https://github.com/
quick2wire/quick2wire-python-api
a inteno do usurio.
As diferentes designaes para os [11] GPIO Admin: https://github.com/quick2wire/quick2wire-gpio-admin
pinos GPIO so um pouco confu-