Robótica e Computação nas Nuvens

Aí estão os arquivos da palestra que eu fiz no FISL 12 e no TDC 2011 sobre Arduino, Robótica e Computação nas Nuvens.

Update: também apresentei no CEFET Summer of Code em 29/07 😉

Abaixo da apresentação estão os fontes dos projetos que eu criei para demonstrar o uso do Google App Engine e o Arduino.

Vídeo do braço robô em ação

http://www.youtube.com/watch?v=3xjVs3T-rpk

Projeto web

Criado com criado com Google App Engine
Projeto Eclipse: Clouduino.zip
Usa o plugin do Google App Engine para eclipse.

Programa local

Programa que roda localmente e lê as informações da aplicação web..
Projeto Netbeans: ClouduinoLocal.zip
Usa a lib Jettison 1.2 para ajudar no parse do JSON.

Programa Arduino

Lê a porta serial e executa o comando enviado.

#include

Servo myservo1;
Servo myservo2;
Servo myservo3;

int pinServo1 = 10;
int pinServo2 = 11;
int pinServo3 = 9;
int velocidade = 5;
int pos;
int entrada;

void setup()
{
  myservo1.attach(pinServo1);
  myservo2.attach(pinServo2);
  myservo3.attach(pinServo3);

  myservo1.write(180);
  myservo2.write(0);
  myservo3.write(90);

  Serial.begin(9600);
}

void loop()
{
  if (Serial.available() > 0) {
    while (Serial.available()>0) {
      entrada = Serial.read();
      Serial.print(entrada);
      delay(1);
    }
      if (entrada == '1'){
  	sobe();
      } else if (entrada == '2'){
  	desce();
      } else if (entrada == '3'){
  	esquerda();
      } else if (entrada == '4'){
  	direita();
      } else if (entrada == '5'){
  	abre();
      } else if (entrada == '6'){
          fecha();
      } else {

      }
  }
}
void desce(){
   for(pos = 0; pos < 180; pos += velocidade) {                                          	       myservo1.write(pos);         	       delay(10);                                }    }    void sobe(){          for(pos = 180; pos>=1; pos-= velocidade) {
     myservo1.write(pos);
     delay(10);
  }
}
void esquerda(){
  for(pos = 0; pos < 180; pos += velocidade) {                                          	     myservo2.write(pos);         	     delay(10);                               }    }    void direita(){       for(pos = 180; pos>=1; pos-= velocidade) {
    myservo2.write(pos);
    delay(10);
  }
}
void abre(){
  for(pos = 0; pos < 90; pos += velocidade) {                                          	      myservo3.write(pos);         	      delay(10);                               }    }    void fecha(){           for(pos = 90; pos>=1; pos-= velocidade) {
       myservo3.write(pos);
       delay(10);
  }
}


Tags: , , , , , , , , , , , , , , , , , ,

18 comments

  1. Opa Marco, blz?

    Assisti sua palestra no FISL12, muito boa por sinal! Me interessei bastante pelo assunto e fiquei com vontade de brincar tbm ehehehe
    Queria saber se você indica alguma plaquinha do arduino pra iniciar a brincadeira… de preferência uma que conecte-se as nuvens!

    Vlww, parabéns pela palestra!

  2. Oi, Marcos ( quase xará 😉 ).

    Obrigado pelo comentário. Procurei dar a máximo de informações relevantes no pouco tempo que tive.
    Aconselho você comprar o modelo de Arduino Uno (atual) ou Arduino Duemilanove (anterior). Os dois serão perfeitos para iniciar o anterior está até mais um pouco barato.
    Se você não estiver com pressa compre em bons vendedores no eBay.com. Demora pra chegar, mas são mais baratas que aqui no Brasil. Aproveite o dolar desvalorizado. Se tiver pressa ou não se sentir confortável com compras internacionais, pode comprar aqui no brasil mesmo (webtronico, mercadolivre, etc..).
    Existem alguns kits arduinos com vários componentes para quem quer iniciar uma brincadeira 😉
    Se precisar de alguma ajuda pra colocar seu arduino conectado nas nuvens é só pedir.
    Abs.

  3. Atualizei o post e inseri um vídeo com o braço robô funcionando. 😉

  4. […] viaRobótica e Computação nas Nuvens | mmaciel. Esta entrada foi publicada em arduino, java. Adicione o link permanenteaos seus favoritos. ← QUANTUM GIS […]

  5. Muito bom o braço robô. Marcos comprei um Arduino Uno e um Arduino Ethernet Shield Com Conector Para Sd Card gostaria se fosse possível você me da uma ajudinha, pois não sei nada quanto os códigos para o Ethernet Shield.
    Desde já Agradecido.

  6. Que legal, Leo.
    Pela descrição da sua placa ela deve ser a recomendada pelo próprio site do Arduino, vendida na Sparkfun.
    Essa aqui: http://arduino.cc/en/Guide/ArduinoEthernetShield

    Se for esse o caso, todos os códigos dos tutoriais do site para uso dela funcionam perfeitamente.
    Dá uma olhada aqui. Tem muitos exemplos de códigos e projetos:

    http://arduino.cc/en/Tutorial/WebServer
    http://arduino.cc/en/Tutorial/WebClient
    http://arduino.cc/en/Tutorial/HomePage (na parte Ethernet Library)

    Dá uma olhada lá. Se precisar de alguma ajuda é só chamar 😉

    Abs.

  7. Marco Antonio Maciel, muito bom seu material.
    Gostaria de fazer um projeto simples.
    Um arduino recebendo a temperatura do ambiente de uma sala de aula, a cada 1 min.
    Então armazenar a informação da hora e da temperatura coletada no Google App Engine.
    Depois criar uma página no próprio GAE, para criação de um gráfico.
    É possível ? Para conseguir fazer isso preciso estudar quais materiais?
    Parabéns pelo site.

  8. Sim, Fabiano. É possível.
    Para começar vc pode começar só com o arduino e o sensor de temperatura. Aí vc pode deixar o arduino ligado na serial do computador e usá-lo para enviar os dados capturados para a internet. Depois vc pode até usar um shield ethernet para não precisar de um micro ligado o tempo todo, mas isso pode ser a versão 2.0. 😉
    Para armazenar os dados no GAE é bem simples. Nesse link (http://code.google.com/intl/pt-BR/appengine/docs/java/datastore/) vc vai encontrar como trabalhar com o banco de dados do GAE usando Java. Espero ter ajudado.
    Abs, Marco.

  9. […] quem gostou do meu post sobre Robótica e Computação nas Nuvens, no qual eu disponibilizo os slides que eu usei em algumas apresentações e os fontes do projeto, […]

  10. Boa tarde!

    Seria possível você disponibilizar os slides e o vídeo da TVSL, de sua palestra sobre Automação Residencial de Baixo Custo, no FISL 12?? Tentei acompanhar mas não cheguei a tempo neste dia, bah eu estava louco pra assistir!! Agradeço!!

    Abraço Forte.

  11. Até gostaria, mas não fui eu que apresentou essa palestra. rsrsrs
    Tenta no site oficial do FISL. Eles tinham liberado um link para os vídeos (http://tv.softwarelivre.org/). 😉

    Abs.

  12. Bah que gafe!! Peço imensas desculpas!! Mas aproveitando o gancho, o parabenizo por compartilhar seu conhecimento e seu trabalho! Venho garimpando seus posts e eles tem me ajudado bastante. Obrigado, e mais uma vez desculpe-me pela falta de atenção!

  13. Que nada. Fique tranquilo.
    E obrigado pelas palavras de incentivo.
    Abs.

  14. Fala rapaz. Muito interessante este assunto, utilização disso para domótica (como dito acima) provavelmente fica muito eficiente né?! Vou começar a estudar esse lance aí.. gostei bastante, nem sabia da existência de uma interface que facilita o processo (o Arduino e Shield). Pensei certa vez em fazer pós em engenharia biomédica, hehehe. Um abração

  15. […] hospedado no meu querido Google App Engine (mais detalhes do GAE com Arduino aqui e aqui). Esse site é que é o responsável por enviar o tweet por […]

  16. Eduardo Raymond Beniste

    Prezado amigo Marco Marciael,, eu me chamo Eduardo Raymond Beniste sou formado pela universidade Estácio de sá
    como analista de sistema em 2011. Estou fazendo a minha pós-graduação em desenvolvimento java. Também pela Estáci0.

    Numa aula de aplicativos móveis oo meu professor e orientador falou há respeito sobre robótica e arduíno. E a minha monografia fala arespeito do java na computação em nuvem com emfase para biblioteca virtual. E eu estava colhendo dados sobre o java e a nuvem eu me deparei com o seu projeto. Robótica e computação em nuvem, será que eu poderia falar a respeito de seu como exemplo. eu queria ser seu amigo para nós trocarmoms idéia arespeito de novas tecnologias e internet.
    o meu email e: hi_tech66@yahoo.com.br

    Espero o seu retorno atenciosamente . Valeu meu amigo Marcos
    Marciel

  17. Oi, Eduardo.
    Desculpe a demora. Seu comentário ficou perdido e só agora consegui recuperar.
    Se precisar de alguma ajuda (se ainda der rsrs) estou à disposição.
    Abs.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *