O documento discute o projeto Sun SPOT e suas aplicações. Apresenta a visão da Sun sobre a Internet das Coisas e descreve a tecnologia Sun SPOT, incluindo suas especificações, desenvolvimento, comunicação e potencial para escalabilidade. Também descreve a iniciativa Sun SPOT-PB e demonstrações realizadas.
1. 30/04/2009
Visão da Sun
• Sun SPOT
– Inspiring Java developers to create a whole new
breed of devices and technologies - and
accelerating the growth of the quot;Internet of Thingsquot;
O Projeto Sun SPOT e
• Novos dispositivos
suas aplicações
– Eletrodomésticos, automóveis, rodovias, máquinas,
pessoas…
Prof. DSc. Alisson Brito
• Tudo conectado!!
(http://alisson.brito.googlepages.com)
• Novas tecnologias
– Computação pervasiva, Web 3.0, IPv6, sistemas
embarcados, computação baseada na localização,
baseada no contexto…
Alisson Brito @ Semana da 1
Computação'2009 Alisson Brito @ Semana da Computação'2009 2
Sun SPOT: Small Programmable Object
Internet of Things
Technology
“No futuro, tudo de valor estará na rede, de uma “O projeto Sun SPOT explora tecnologias de
forma ou de outra.” transdutores sem fio que permitirão o
John Fowler, Software CTO da Sun surgimento da Internet of Things”
“Uma plataforma para inspirar a criação dos
dispositivos do futuro”
“Simplifica o desenvolvimento e a
experimentação com pequenos dispositivos
sem fio”
Sun SPOT World
Estamos prontos para tudo isso?
Alisson Brito @ Semana da Computação'2009 Alisson Brito @ Semana da Computação'2009
3 4
Tecnologia Sun SPOT Especificação
• Principais características: • Sensores • Interface
Portátil – 2.4 GHz IEEE 802.15.4
– Acelerômetro de 3
Java Micro Edition (Java ME) – Porta USB
eixos (X, Y e Z)
Tudo são objetos (sensores, LEDs, placas...) – 6 entradas analógicas
– Sensor de temperatura
Suporte a múltiplos Threads
– 5 pinos de E/S digital
– Sensor de
Orientação a eventos
– 2 botões
Micro-processador ARM luminosidade
– 8 LEDs em cores RGB
Comunicação via ZigBee ou USB • Processador
Baixo consumo de energia (entre 7 e 14 horas de
– ARM de 180MHz
autonomia)
– 512KB de RAM
Segurança (criptografia ECC)
Poderosa e leve, ideal para dispositivos móveis
– 4MB memória Flash
Hardware modular e Open Source
Alisson Brito @ Semana da Computação'2009 Alisson Brito @ Semana da Computação'2009
5 6
1
2. 30/04/2009
Portátil e Modular Máquina Virtual Java
• Organizado em • Os Sun SPOTs rodam a Squawk Virtual
camadas que podem Machine
ser separadas – Escrever uma JVM em Java (até onde for possível)
– Bateria • Compatível com CLDC 1.1
– Placa mãe (processador • O objetivo é rodar em pequenos dispositos
e ZigBee)
(Internet of Things)
– Placa de sensores
• O Sun SPOT é o primeiro dispositivo maduro
• Suporte a novas placas
que roda o Squawk
(open-source)
• Implementa Isolates (aplicações são objetos)
– Várias aplicações numa mesma JVM
Alisson Brito @ Semana da Computação'2009 Alisson Brito @ Semana da Computação'2009
7 8
Máquina Virtual Java Redes IEEE 802.15.4
• WPAN (Wireless Personal Area Network)
– Assim como o Bluetooth
• Mas,
– Menor alcance (~30 metros)
– Menor taxa de transmissão (~256Kbps)
– Menor consumo de energia (meses ou anos)
– Dispositivos menores
– Roteamento Mesh (adaptativo)
Alisson Brito @ Semana da Computação'2009 Alisson Brito @ Semana da Computação'2009
9 10
Funcionamento Escalabilidade
• SPOTs podem rodar como: • Um Sun SPOT possui poder computacional
muito limitado?
– Basestation
• Funciona conectado à um PC – E se tivermos muitos SPOTs?
• Aplicação roda no PC e não no SPOT
• Apenas seu rádio é utilizado
• Aplicações convencionais (JavaSE e JavaEE) podem se
comunicar com os SPOTs através da Basestation
– Stand-alone
• Funcionam em modo móvel
Internet
• Roda uma aplicação Java (Java Micro Edition)
• Vários dispositivos podem se conectar a uma mesma
base
As “nuvens” são o limite!
Alisson Brito @ Semana da Computação'2009 Alisson Brito @ Semana da Computação'2009
11 12
2
3. 30/04/2009
Desenvolvimento Hello World
public class SunSpotApplication extends MIDlet {
• Funcionalidades
protected void startApp() throws
– Todos comandos através MIDletStateChangeException {
de scripts Ant
System.out.println(quot;Hello, worldquot;);
• Deployment, execução,
ITriColorLED [] leds =
debug, atualização etc.
EDemoBoard.getInstance().getLEDs();
– Função Over-the-Air
leds[0].setRGB(100,0,0); // muda cor para vermelho
(OTA)
• Acesso total ao dispositivo while (true) {
via rádio leds[0].setOn(); // pisca LED 0
– Emulador Solarium Utils.sleep(250); // espera 1/4 de segundo
• Interação entre SPOTs reais leds[0].setOff();
e virtuais Utils.sleep(3000); // espera 3 segundos
}
}}
Alisson Brito @ Semana da Computação'2009 Alisson Brito @ Semana da Computação'2009
13 14
Acesso aos sensores Transmissão de dados
• Acelerômetro • Através de Datagramas
double accelX = – O programador monta seus quadros como preferir
EDemoBoard.getInstance().getAccelerometer().getAccelX();
• Broadcasting
• Temperatura
• Unicasting
double temp =
– Cada dispositivo possui um endereço IEEE MAC
EDemoBoard.getInstance().getADCTemperature().getCelsius();
único
• Luminosidade
– Aqui o roteamento Mesh pode ser utilizado, se
int lumi = EDemoBoard.getInstance().getLightSensor().getValue();
configurado nos dispositivos
• SPOT torna-se também roteador
• Nesse caso, o alcance é quase ilimitado (até 65536 nós)
• Comunicação entre pares através de portas
(Sockets)
Alisson Brito @ Semana da Computação'2009 Alisson Brito @ Semana da Computação'2009
15 16
Iniciativa Sun SPOT-PB
SPOT-
• Objetivo comum de investigar e difundir os
potenciais da tecnologia Sun SPOT
• Cada instituição participante possui um
representante e se organiza internamente
– Pesquisa, desenvolvimento e disseminação do
conhecimento
• Organização do evento “I Encontro do Sun
A iniciativa Sun SPOT-PB
SPOT-PB”
Sun SPOT na Paraíba
Alisson Brito @ Semana da 17
Computação'2009 Alisson Brito @ Semana da Computação'2009 18
3
4. 30/04/2009
Participantes UFPB – Campus IV - Projeto For-All
For-
• UFCG
• UFPB – Campus IV • “For-All – Computação para Todos, em Todos
– Tecnologias Asssistivas
– Projeto For-All os Lugares”
(principalmente apoio a
• Alisson Brito
– Democratizar o acesso à informação por todas as
deficientes visuais).
• UFPB – Campus I pessoas e a partir de todos os lugares.
• Joseana Fechine
– Eng. Biomédica
• Prover uma infra-estrutura de comunicação
• Unipe
• Antonio Carlos e Leonardo
– Robótica – Com For-All comunidades SPOTs podem ser
Vidal
formadas?
• Valéria Cavalcanti
• FIP (Patos)
• IESP/FATECPB – Comunidades podem se comunicar entre si
– Interface Homem-máquina
– Robótica (Lego – Formar um “Pool de Serviços”
– Ambientes inteligentes
MindStorm)
• Nigini Abílio
• Gustavo Wagner
• ASPER
– Jogos interativos
• Alisson Brito
Alisson Brito @ Semana da Computação'2009 Alisson Brito @ Semana da Computação'2009
19 20
Arquitetura For-All
For- Demonstração!!
• Computação
pervasiva
• Baseada no
Contexto
(Context-Aware)
• Orientada a
Serviços (SOA)
• Interligação dos
outros projeto do
Sun SPOT-PB
Alisson Brito @ Semana da Computação'2009 22
Alisson Brito @ Semana da Computação'2009 21
Obrigado!!!
Perguntas?
Maiores informações:
http://sites.google.com/site/spotpb
ou
alisson.brito@gmail.com
Alisson Brito @ Semana da Computação'2009 23
4