Enquanto alguns de nós usam nossos telefones para se comunicar ou jogar jogos incríveis, existem aqueles que levam a ciência e o tempo livre para o próximo nível. Mike Partain é uma dessas pessoas. Usando um kit de robótica Lego NXT pronto para uso, um Motorola Droid e um monte de engenhosidade e inteligência, Mike adicionou sensores que o kit de robótica estava faltando - câmera, GPS e bússola. Dê um tempo para ler sobre isso nas próprias palavras de Mike, um link para o código-fonte (agradecimentos especiais, Mike!), E alguns vídeos com visões diferentes dos olhos piscantes do Droid.
Entramos em contato com Mike para obter uma explicação sobre esse projeto, porque, francamente, precisávamos de coisas reduzidas a um nível que pudéssemos entender um pouco melhor. Ele foi útil o suficiente para nos dar o resumo, que está aqui na íntegra.
Um dos meus desejos de todos os tempos era ter meu próprio robô. E agora, a Lego tornou prático brincar com robôs com os kits Lego NXT Robot. Esses kits seguem o espírito da Legos, pois são fáceis, baratos e divertidos de montar em várias variedades de robôs de rodas e de passeio. Os kits incluem um cérebro que controla três motores e até 4 sensores. Mas o que faltava era uma câmera remota, uma bússola e um GPS. Digite o Motorola Droid, ou quase qualquer dispositivo Android para esse assunto. Como o telefone Android contém esses sensores avançados e é baseado em Java e código aberto, imaginei que seria uma simples questão de "conectar" o Droid ao meu computador e monitorar seus sensores lado a lado com o meu software Lego Robots. Eu não estava muito longe. Eu lutei alguns dias trabalhando no código necessário para decodificar a imagem de visualização da câmera, mas tudo correu bem. No final, eu tinha um enorme sorriso no rosto quando meu robô Lego se aventurou pelo vasto tapete da sala, comigo controlando-o remotamente apenas da imagem que eu podia ver na tela do computador. Não é o robô perdido no espaço, mas, no entanto, ele pode abrir muitas mentes jovens para a aparência de seu futuro.
Devo observar que o software não está com a qualidade "finalizada". É uma prova de conceito e funciona. Posso ou não aperfeiçoá-lo ou concluí-lo, por isso estou disponibilizando-o como está sem licença ou restrições (ou promessas).
Existem 3 partes de software;
O código Java do Android (droidSense). Esse código é um servidor TCP simples que fornece dados de imagem não codificados não processados (da visualização da câmera, dos dados do sensor e do GPS a qualquer cliente.
O programa.Net independente (AssClient) que se comunica com o servidor Java Droid, decodifica os dados brutos da imagem e exibe a imagem, além do sensor bruto e dados GPS.
Um serviço de estúdio da Microsoft Robotics (AndroidCameraService) que fornece uma imagem genérica da WebCam para uso por um programa MRDS visual ou padrão.
A peça Java é executada no Droid (não há interface do usuário, ela apenas exibe a superfície de visualização durante a execução, use 'force stop' para matá-la) e você executa a peça no PC (não tentei executá-las ao mesmo tempo, mas acho que pode funcionar).
Molho incrível à direita. Aqui estão os vídeos que Mike incluiu:
Link do YouTube para StandAlone.wmv
Link do YouTube para AndroidCameraService.wmv
E, finalmente, se você tiver o conhecimento e o tempo, aqui está um link para o código-fonte que Mike teve a gentileza de fornecer. Mais uma vez obrigado Mike, esta é uma das coisas mais legais de todos os tempos!