Índice:

Roomblock: uma plataforma para aprender navegação ROS com Roomba, Raspberry Pi e RPLIDAR: 9 etapas (com imagens)
Roomblock: uma plataforma para aprender navegação ROS com Roomba, Raspberry Pi e RPLIDAR: 9 etapas (com imagens)

Vídeo: Roomblock: uma plataforma para aprender navegação ROS com Roomba, Raspberry Pi e RPLIDAR: 9 etapas (com imagens)

Vídeo: Roomblock: uma plataforma para aprender navegação ROS com Roomba, Raspberry Pi e RPLIDAR: 9 etapas (com imagens)
Vídeo: OPERA PMS TRAINING -08: Group Blocks | Oracle Hospitality elearning Software video (Subtitled) 2024, Julho
Anonim
Image
Image
O que você precisa
O que você precisa

O que é isso?

"Roomblock" é uma plataforma de robô composta por um Roomba, um Raspberry Pi 2, um sensor a laser (RPLIDAR) e uma bateria móvel. O quadro de montagem pode ser feito por impressoras 3D. O sistema de navegação ROS permite fazer um mapa dos quartos e utilizá-lo para chegar ao destino de forma autónoma.

Quem precisa disso?

Qualquer pessoa que queira aprender as tecnologias de ponta de navegação robótica, mapeamento e direção autônoma. Este robô pode ser construído facilmente e com custo menor do que outras plataformas comerciais. ROS é agora um sistema de software padrão de fato para o campo de pesquisa robótica. Este filme mostra o que é possível com o sistema de navegação ROS.

Etapa 1: O que você precisa

O que você precisa
O que você precisa
O que você precisa
O que você precisa
Construir um cabo USB serial (opcional)
Construir um cabo USB serial (opcional)
Construir um cabo USB serial (opcional)
Construir um cabo USB serial (opcional)

Cabo USB serial

Se você não tiver um cabo serial USB para Roomba, poderá montá-lo facilmente com este produto.

  • FTDI: TTL-232R-5V
  • Akiduki Denshi: TTL-232R-5V

Observe que a inerface do Roomba é TTL (5V).

Conector

Você precisa de um conector mini-DIN de 8 pinos para a interface serial do Roomba. Na verdade, o conector do Roomba é mini-DIN de 7 pinos, no entanto, é muito mais fácil comprar um conector de 8 pinos do que de 7 pinos.

  • Digikey: conector mini-DIN de 8 pinos
  • Kyoritsu: conector mini-DIN de 8 pinos

De solda

Solde o cabo serial no conector de 8 pinos. Verifique a conexão pela imagem em anexo e o documento de especificação da interface aberta do Roomba.

Especificação de interface aberta do Roomba

Observe que é seguro conectar Vcc (vermelho) e RTS (verde) para evitar o problema de fluxo de hardware.

Etapa 4: configurar o módulo da câmera Raspberry Pi (opcional)

Configurar módulo de câmera Raspberry Pi (opcional)
Configurar módulo de câmera Raspberry Pi (opcional)
Configurar Módulo de Câmera Raspberry Pi (Opcional)
Configurar Módulo de Câmera Raspberry Pi (Opcional)

Se você tiver um módulo de câmera Raspberry Pi, poderá conectá-lo ao Raspberry Pi. Isso é opcional para aprender a navegar, no entanto, é divertido obter uma visão do robô.

A peça de montagem da câmera também está incluída nos dados do quadro no Thingiverse. O módulo da câmera pode ser fixado com quatro parafusos M2.

Etapa 5: configurar o PC local

Configurar PC local
Configurar PC local

Instale o Ubuntu

Instale Ubuntu 16.04 desktop seguindo a página oficial

Página oficial do Ubuntu

Instale ROS

Por favor, consulte a página oficial da ROS. Instale pacotes completos de desktop Kinetic.

Instruções de instalação ROS Kinetic

Instale o pacote Roomblock ROS

O pacote para roomblock já está lançado no Kinetic. Você pode instalá-los pelo comando apt.

$ sudo apt install ros-kinetic-roomblock

É isso.

Se você deseja modificar e construir o pacote do código-fonte, você pode obtê-los no GitHub.

GitHub - bloco de quarto

Siga as instruções em README.md.

Se você tiver qualquer problema ou dúvida em relação ao software, faça um problema no GitHub Issues para que possamos rastrear os problemas de forma eficiente. Por favor, evite publicá-los no Instructables.

Etapa 6: configurar o Raspberry Pi

Configuração Raspberry Pi
Configuração Raspberry Pi

Instale o Ubuntu

Instale o Ubuntu 16.04 no Raspberry Pi seguindo o guia de instalação:

Ubuntu Wiki: RaspberryPi

Instale ROS

Instale o ROS Kinetic seguindo o guia de instalação:

Instalação do Ubuntu do ROS Kinetic

Instale o pacote Roomblock ROS

Você precisa instalar o pacote roomblock do código-fonte. O código-fonte do pacote está no GitHub.

GitHub - bloco de quarto

Siga as instruções em README.md.

Se você tiver qualquer problema ou dúvida em relação ao software, faça um problema no GitHub Issues, para que possamos rastrear os problemas de forma eficiente. Por favor, evite publicá-los no Instructables.

Módulo de câmera Raspberry Pi (opcional)

Se você tiver um módulo de câmera Rasberry Pi, precisará instalar libraspberrypi-dev. Consulte README.md no Github.

Etapa 7: Tele-operação

Teleoperação
Teleoperação
Teleoperação
Teleoperação

Abra o sistema básico no Raspberry Pi

Em primeiro lugar, você precisa abrir o sistema. No terminal Raspberry Pi, inicie o sistema básico como:

$ export ROS_IP = IP_ADDRESS_OF_RASPBERRY_PI

$ roslaunch roomblock_bringup roomblock.launch

O RPLIDAR começa a girar e agora você pode se conectar ao robô mestre ROS do seu PC local.

Teleoperação do PC local

Você pode usar um joypad para operar o robô. Se você tiver um joypad do XBox, poderá usar este arquivo de inicialização. Caso contrário, você pode precisar modificar o arquivo de inicialização para caber no seu joypad. Por favor, consulte as páginas wiki do ROS para detalhes.

Wiki ROS - teleop_twist_joy

$ export ROS_MASTER_URI = https:// IP_ADDRESS_OF_RASPBERRY_PI: 11311 $ roslaunch roomblock_bringup teleop.launch

Agora você pode controlar o Roomba com joystick.

Em vez disso, você pode usar um teclado.

$ export ROS_MASTER_URI = https:// IP_ADDRESS_OF_RASPBERRY_PI: 11311 $ rosrun teleop_twist_keyboard teleop_twist_keyboard.py

Consulte as páginas wiki do ROS para obter detalhes.

Wiki ROS - teleop_twist_keyboard

Etapa 8: iniciar o software de mapeamento

Inicie o software de mapeamento
Inicie o software de mapeamento
Inicie o software de mapeamento
Inicie o software de mapeamento

Abra o software de mapeamento no PC local

Abra o software de mapeamento para criar o mapa ao redor do robô.

$ export ROS_MASTER_URI = https:// IP_ADDRESS_OF_RASPBERRY_PI: 11311 $ export ROS_IP = IP_ADDRESS_OF_LOCAL_PC $ roslaunch roomblock_mapping gmapping.launch

Agora você pode ver o Rviz (software de visualização). Opere o robô ao redor da sala para criar um mapa da sala.

Você pode consultar a página wiki ROS para o sistema de mapeamento.

  • Wiki ROS - gmapping
  • Wiki ROS - map_server

Etapa 9: iniciar a navegação autônoma

Inicie a Navegação Autônoma
Inicie a Navegação Autônoma
Inicie a Navegação Autônoma
Inicie a Navegação Autônoma

Traga um software de navegação autônomo

Agora você pode iniciar o sistema de navegação autônomo no PC local como:

$ export ROS_MASTER_URI = https:// IP_ADDRESS_OF_RASPBERRY_PI: 11311 $ export ROS_IP = IP_ADDRESS_OF_LOCAL_PC $ roslaunch rolomblock_navigation amcl.launch

Você pode usar Rviz para especificar o objetivo. O robô deve ir para o gol de forma autônoma.

Consulte a página wiki ROS para o sistema autônomo.

  • Wiki ROS - navegação
  • Wiki ROS - amcl

Divirta-se

Se você tiver dúvidas gerais ou problemas sobre ROS, consulte o wiki do ROS. Não podemos responder a perguntas gerais sobre ROS.

Wiki ROS - Suporte

Se você tiver qualquer problema ou dúvida em relação ao software Roomblock, faça um problema no GitHub Issues para que possamos rastrear os problemas de forma eficiente. Por favor, evite publicá-los no Instructables.

Recomendado: