Índice:
- Etapa 1: Conexão de peças eletrônicas
- Etapa 2: usando o aplicativo de controle Android
- Etapa 3: interface aberta do Roomba em exemplos
- Etapa 4: RPi Remote Webcam
- Etapa 5: Planos para Desenvolvimento Futuro
- Etapa 6: Conexão de peças eletrônicas - versão 2 com invólucro
Vídeo: Inspetor Roomba: 6 etapas (com fotos)
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:39
A maioria de nós usa robôs iRobot Roomba apenas para aspirar, mas poucos sabem que é uma ótima base para novos projetos de robótica. Todos os fabricantes devem experimentar o Roomba Open Interface (OI) para descobrir como é fácil controlar este robô. Nesta instrução, você aprenderá como adicionar alguns recursos úteis ao seu Roomba. No início, descreverei como controlar remotamente o Roomba via bluetooth e aplicativo Android. Posteriormente, mostrarei como rodar streaming de vídeo com base no RPi e, finalmente, delinearei o plano para o desenvolvimento deste projeto.
Peças necessárias neste projeto:
- Módulo bluetooth BTM-222 ou outro funcionando a 115200 baud rate x1
- Regulador de tensão abaixador de 5V D24V6F5 x1
- mini breadboard x1
- Alguns fios
versão com invólucro:
- Conector mini DIN de 8 pinos x1
- interruptor de energia x1
- led 3 mm x1
- resistor 10k x1
- pequeno invólucro 50x40x20 mm x1
versão extendida:
- Raspberry Pi 3 x1
- RPi dissipador de calor de cobre x1
- Adaptador WiFi USB x1
- cartão micro SD de 8 GB ou superior x1
- Câmera RPi - Lente Fisheye x1
- Estojo para RPi x1
- Bateria de alta capacidade 5V (pelo menos 10 Ah) x1
- Um pedaço de suporte de plástico x1
- Porcas e parafusos M2 x4
Etapa 1: Conexão de peças eletrônicas
Desta vez, esta etapa é muito simples, pois só precisamos conectar dois módulos para poder controlar nosso Roomba. O primeiro é um módulo Bluetooth que pode operar a 115200 bps. O segundo é o regulador de tensão redutor de 5 V D24V6F5. A bateria carregada do Roomba tem uma tensão de cerca de 14,4 V e nosso módulo bluetooth precisa de 5 V, portanto, precisamos reduzir a tensão da bateria para o nível de 5 V usando o regulador de tensão. O regulador D24V6F5 tem eficiência entre 80 e 90%, um valor muito bom em comparação com os reguladores lineares clássicos que normalmente têm uma eficiência abaixo de 40%. A maneira mais fácil de conectar esses dois módulos é colocá-los em uma mini placa de ensaio e fazer a fiação de acordo com o diagrama de fiação acima. Além disso, todas as conexões são mostradas em fotos numeradas. Tenha cuidado ao conectar aos terminais da bateria. Curto-circuito acidental pode danificar a bateria!
Etapa 2: usando o aplicativo de controle Android
Desenvolvi um aplicativo Android que permite controlar o vácuo robótico da série Roomba 500 via bluetooth. Você pode baixar meu aplicativo gratuitamente no Google Play - Roomb Control. Funciona com smartphones e tablets.
Como usar o aplicativo Roomb Control:
- toque no canto superior direito da tela (3 pontos verticais)
- selecione a guia "Conectar"
- toque na guia "BTM222" e depois de um tempo você deverá ver a mensagem "Conectado ao BTM222"
- depois de conectar, você pode controlar seu Roomba
- Se você não vir seu dispositivo bluetooth, toque no botão "Procurar dispositivos"
- no primeiro uso do seu módulo bluetooth, lembre-se de emparelhá-lo com o seu smartphone inserindo o código padrão fornecido na especificação do módulo bluetooth
Etapa 3: interface aberta do Roomba em exemplos
Nesta etapa, você encontrará exemplos de comandos comuns usados para controlar o Roomba série 500. Você pode encontrar mais informações sobre a interface aberta do Roomba neste documento.
O Roomba 500+ pode operar em um dos quatro modos:
- O modo completo oferece controle total sobre o Roomba (sem restrição de segurança, pois é para o modo seguro e passivo)
-
O modo de segurança apresenta algumas exceções relacionadas à segurança quando você não pode controlar todos os atuadores:
- detecção de queda de roda
- detecção de um penhasco enquanto se move para frente ou para trás
- carregador conectado e ligado
- O modo passivo permite que você solicite e receba dados do sensor, mas, neste modo, você não pode controlar os atuadores Roomba (motores, luzes, alto-falante)
- Modo desligado quando a energia é ligada pela primeira vez ou após uma troca de bateria (aguardando o comando Iniciar)
Um modo de operação seguro e totalmente funcional é o modo de segurança, que é o modo preferido para controle remoto. Para executar o modo de segurança, primeiro precisamos enviar o comando 128 que inicia a interface aberta e, em seguida, o comando 130 (ou 131) para colocar o Roomba no modo de segurança. Se quisermos executar um dos modos de limpeza embutidos (clean, spot, dock, etc.), devemos enviar o terceiro comando com o código apropriado (Clean-135, Spot-134, Dock-143). A sequência serial completa para esses modos é a seguinte:
- Definir modo de segurança - (128, 130)
- Spot - (128, 130, 134)
- Limpo - (128, 130, 135)
- Dock - (128, 130, 143)
Se o Roomba estiver no modo de segurança, podemos controlar as rodas motrizes do Roomba usando o comando 137. A seqüência serial de 5 bytes completa é a seguinte: (137, Velocity high byte, Velocity low byte, Radius high byte, Radius low byte). Exemplos de sequências seriais para controle de movimento do Roomba:
- Vá em frente - (137, 100, 0, 128, 0)
- Voltar - (137, 254, 12, 128, 0)
- Vire à direita - (137, 100, 0, 255, 255)
- Vire à esquerda - (137, 100, 0, 0, 1)
Alternativamente, para controlar o movimento do robô, podemos usar o comando 146. Este comando permite controlar o PWM (Modulação por largura de pulso) para a roda direita e esquerda: (146, PWM direito byte alto, PWM direito byte baixo, PWM esquerdo byte alto, PWM esquerdo byte baixo). Exemplo de controle PWM:
- Mover para cima à direita - (146, 0, 130, 0, 255)
- Mover superior esquerdo - (146, 0, 255, 0, 130)
O comando 139 controla as cores dos LEDs. Podemos alterar a cor do LED de limpeza / alimentação definindo o valor do byte de cor na seqüência serial: (139, bits de LED, cor, intensidade). Se o byte de cor for definido como 0, obteremos a cor verde. Ao aumentar este valor obtemos cores intermediárias (laranja, amarelo, etc) e cor vermelha para o valor máximo 255. Exemplos de controle de LEDs:
- verde - (139, 0, 0, 128)
- laranja - (139, 0, 128, 128)
- vermelho - (139, 0, 255, 128)
O último comando que gostaria de mencionar é o comando 140, que permite tocar músicas simples. Exemplos de sequências em série para reproduzir músicas:
- música 1 - (140, 0, 5, 72, 32, 74, 32, 76, 32, 77, 32, 79, 32, 141, 0)
- canção 2 - (140, 1, 5, 69, 16, 71, 16, 72, 16, 74, 16, 76, 16, 141, 1)
Etapa 4: RPi Remote Webcam
Para poder visualizar o streaming de vídeo da câmera em qualquer dispositivo conectado à minha rede local (PC, smartphone, tablet, etc), instalei o servidor de webcam Motion. Você pode encontrar detalhes sobre como fazer isso neste Instructable. As principais etapas são as seguintes:
- Editar: sudo nano / etc / modules - adicione no final do arquivo: bcm2835-v4l2
- Instalar Motion: sudo apt-get install motion
- Abra o arquivo motion.conf digitando: sudo nano /etc/motion/motion.conf e defina os parâmetros de vídeo (por exemplo: daemon ativado, largura 640, altura 480, taxa de quadros 30, webcam_localhost desativado)
- Habilite o Daemon (serviço): sudo nano / etc / default / motion e encontre e altere start_motion_daemon = yes.
- Iniciar serviço: sudo service motion start ou sudo motion -n -c /etc/motion/motion.conf
- Agora abra o navegador da web em seu computador ou smartphone e digite: RPi IP: 8081 (onde "RPi IP" é o IP do seu Raspberry Pi e 8081 é a porta padrão). Exemplo: 192.168.1.14:8081. Se tudo funcionar bem depois de um tempo, você deverá ver a visualização da câmera no navegador da web.
Etapa 5: Planos para Desenvolvimento Futuro
Atualmente, meu Roomba está equipado com um pequeno braço robótico descrito nesta instrução. Este braço robótico pode ser controlado remotamente via bluetooth a partir do aplicativo Android. Na próxima etapa, usarei a visualização da câmera para agarrar e mover objetos remotamente para o espaço marcado (operação no modo semiautônomo).
Se você gostaria de ver meus outros projetos relacionados à robótica, visite:
- meu site: www.mobilerobots.pl
- facebook: robôs móveis
Etapa 6: Conexão de peças eletrônicas - versão 2 com invólucro
Se você gostaria de construir seu próprio receptor removível para controlar o Roomba, esta etapa extra é para você. Nós adicionamos mais alguns elementos e os fecharemos em um invólucro fino. O principal componente de que precisaremos nesta etapa é um conector mini DIN de 8 pinos. Além disso, precisaremos da chave liga / desliga e do indicador com base no LED e no resistor de 10k.
Agora você não precisa se preocupar em esticar os fios. O receptor bluetooth é fechado em uma pequena caixa com dimensões de 50x40x20 mm. Quando não quiser mais usá-lo, você pode removê-lo facilmente do Roomba puxando o plugue mini DIN.
Recomendado:
Tire ótimas fotos com um iPhone: 9 etapas (com fotos)
Tire ótimas fotos com um IPhone: a maioria de nós carrega um smartphone conosco para todos os lugares atualmente, por isso é importante saber como usar a câmera do smartphone para tirar ótimas fotos! Só tenho um smartphone há alguns anos e adoro ter uma câmera decente para documentar coisas que eu
Cabine de fotos de casamento Arduino - peças impressas em 3D, automatizadas e de baixo orçamento: 22 etapas (com fotos)
Arduino Wedding Photo Booth - peças impressas em 3D, automatizadas e de baixo orçamento: Recentemente fui convidado para o casamento do irmão do meu parceiro e eles perguntaram se poderíamos construir uma cabine fotográfica para eles, pois seu aluguel é muito caro. Isso é o que nós pensamos e depois de vários elogios, decidi transformá-lo em um instrutivo
ROOMBA conduzido por ARDUINO YUN Via Wifi App de STEFANO DALL'OLIO: 4 etapas (com fotos)
ROOMBA conduzido por ARDUINO YUN via Wifi App por STEFANO DALL'OLIO: Com este guia, compartilho o código para conectar ARDUINO YUN ao Roomba para conduzir o Roomba via Wifi. O código e o aplicativo foram totalmente criados e desenvolvidos por mim Stefano Dall ' Olio.My Roomba é Roomba 620, mas você pode usar o mesmo código para outro Roomb
Projeto Roomba: 5 etapas (com fotos)
Projeto Roomba: este instrutível foi criado em cumprimento ao requisito do projeto do Makecourse na University of South Florida (www.makecourse.com). Este instrutível cobrirá todas as etapas e componentes necessários para montar meu projeto Roomba
Roomba com MATLAB: 4 etapas (com fotos)
Roomba com MATLAB: Este projeto faz uso do MATLAB e de um robô programável iRobot Create2. Ao colocar nosso conhecimento do MATLAB à prova, somos capazes de programar o Create2 para interpretar imagens e detectar sinais. A funcionalidade do robô depende principalmente d