Upload
marco-antonio-maciel
View
9.900
Download
0
Embed Size (px)
DESCRIPTION
Palestra do FISL 12 e no TDC 2011. Mais informações em: http://www.mmaciel.com.br/2011/07/02/robotica-e-computacao-nas-nuven/ A proposta é demonstrar o uso do Google App Engine como plataforma de integração com soluções de eletrônica e automação criadas com o Arduino. As duas plataformas são open-source (software e hardware), e podem ser utilizadas por qualquer desenvolvedor para criar protótipos ou até mesmo desenvolver soluções de baixo custo inicial que podem ser facilmente mantidas e escaladas. Apresentarei brevemente o potencial das duas plataformas e logo após demonstrarei uma solução de automação controlada pela internet que as utiliza de forma integrada. Imagine: programação, eletrônica, internet e robótica. Juntos! Para finalizar demonstrarei como dar os primeiros passos no estudo e desenvolvimento dessas tecnologias, e falar das comunidades e das oportunidades de um mercado que pode ser explorado por um profissional com esse conhecimento, como programação, automação, domótica, ensino, etc..
Citation preview
Robótica e Computação nas Nuvens: Unindo os dois mundos
Quem sou eu?
Marco Antonio Maciel
Quem sou eu?
Marco Antonio Maciel
Quem sou eu?
Marco Antonio Maciel
Quem sou eu?
Marco Antonio Maciel
Quem sou eu?
• Sou profissional de TI há 15 anos.• Trabalhei com com Clipper, VB, Delphi, ASP, Java.• Bancos de dados (SQL-Server, PostgreSQL, Oracle,
SyBase). • E alguns bandos de dados (dBase, Paradox, Access)
rsrsrs • Sou membro do grupo @ArduInRio. • Não sou especialista, sou mais um generalista• Pai de duas filhas lindas, e casado.• Cinema, caminhada e moto :(
Quem sou eu?
@marcomaciel
http://mmaciel.com.brhttp://mmaciel.com.br/sobre
http://ArduInRio.cc
Agenda
• Computação Física / Arduino• Computação na Nuvens• Integrando os mundos• Cases• Oportunidades• Como começar• DEMO
Computação Física
• Interface entre mundo real e o mundo digital.• Constroi soluções digitais de computação que
interagem com a realidade física.– Luminosidade;– Umidade;– Presença;– Temperatura– etc..
Arduino
• Criado pelo Massimo Banzi.• Plataforma open source
(hardware e software).
Projeto simples, popular e acessível com eletrônica e programação embarcada de alto nível.
Arduino
• Microcontrolador com sistema embarcado;• IDE e bibliotecas de alto nível;• Comunidade grande e atuante;• Multiplataforma (Linux, Mac e Windows);• Linguagem é essencialmente C/C++ (Wiring);• Transferência via USB;• Comunicação serial.
Arduino Code
Arduino Code
Arduino Code
Arduino
Shields
http://shieldlist.org
“Falando” com Arduino
• Comunicação Serial.
# Java# Ruby# Python# .NET# C/C++
# VB# Delphi# Objective-C# ProcessingEtc. etc. etc..
Que tal integrar com a Internet?
Todo
mun
do e
stá
cone
ctad
o!
Computação na Nuvem
Computação na Nuvem
• Software as a Service (SaaS)– Google– Salesforce.com– MS Office Live– Lotus Live
Computação na Nuvem
• Software as a Service (SaaS)– Google– Salesforce.com– MS Office Live– Lotus Live
• Infrastructure as a Service (IaaS)– Amazon (S3)– Google– IBM (Blue Cloud)
Computação na Nuvem
• Software as a Service (SaaS)– Google– Salesforce.com– MS Office Live– Lotus Live
• Infrastructure as a Service (IaaS)– Amazon (S3)– Google– IBM (Blue Cloud)
• Platform as a Service (PaaS)
Plataform as a Service
• Ambiente completo:– Desenvolvimento,– Teste,– Deploy,– Integração com o time de desenvolvimento.
• Facilidade de deploy;• Baixo custo;• Recursos prontos (BD, segurança, integração)• Escalável;• Versionamento de aplicações;
Plataform as a Service
Beanstalck
Plataform as a Service
Beanstalck
Google App Engine
Easy to build, manage e scale.
Google App Engine (GAE)
• Permite que você rode suas web apps na infraestrutura do Google;
• Java, Python, Go*, Ruby, Scala...
Por que GAE?
• Grande variedade de APIs;• SDK Completo para desenvolvimento local;• Fácil de fazer cloud deploy;• Escalabilidade;• Ferramenta de administração e diagnóstico;• Grátis*
Por que GAE?
• Fazer tudo é caro;• Manter tudo é caro;• Pronto para crescer;
Misturando tudo
Some <Code/>
JSP/HTML
GravaDadosContext
JSP/HTML
GravaDadosContext
ExibeDadosJson
{ "dados": {
"tomada": 0, "cafe": 1
}}
ObtemJSON
EnviaMensagemParaArduino
LeSerialAcionaComando
FuncoesLigaEDesliga
Já está rolando por aí!
> http://api.thingspeak.com/channels/(channel_id)/feed/last.json
> {"created_at":"","entry_id":(entry_id)"field1":"”,"field2":"”,"field3":"" }
<iframe width="450" height="250" style="border: 1px solid #cccccc;" src="https://api.thingspeak.com/channels/3/charts/1?round=2&average=60"></iframe>
> =ImportData("http://app.nimbits.com/service/currentvalue? point=TempF&format=double&[email protected]")
Aplicações
• Automação residencial;• Robótica;• Saúde e medicina;• Educação;• Trabalhos artísticos;• Agronegócio;• Móveis interativos;• Entretenimento;• ...
Automação Residencial
Arte
Mobilia
Games
Android@Home
Por onde começar?
• Site Oficial– http://code.google.com/appengine/
• Comunidade– http://www.sp-gtug.org/
• Livro– www.rominirani.com/gaej-experiments-ebook/
Por onde começar?
• Comunidades– ArduInRio (http://ArduInRio.cc)– www.labdegaragem.com
• Sites– blog.eletronlivre.com.br– www.lusorobotica.com– www.arduino.cc
• Forum– Arduino Oficial (www.arduino.cc/forum/)
Por onde começar?
• Cursos– www.cursodearduino.com.br– www.globalcode.com.br
Compras Internacionais
Compras Nacionais
Compras
Rua República do Líbano - Rio de Janeiro
Rua Santa Efigênia - São Paulo
DEMO
OBRIGADO
@marcomaciel
http://mmaciel.com.brhttp://mmaciel.com.br/sobre
http://ArduInRio.cc