Taula de continguts:

Roomblock: una plataforma per aprendre la navegació ROS amb Roomba, Raspberry Pi i RPLIDAR: 9 passos (amb imatges)
Roomblock: una plataforma per aprendre la navegació ROS amb Roomba, Raspberry Pi i RPLIDAR: 9 passos (amb imatges)

Vídeo: Roomblock: una plataforma per aprendre la navegació ROS amb Roomba, Raspberry Pi i RPLIDAR: 9 passos (amb imatges)

Vídeo: Roomblock: una plataforma per aprendre la navegació ROS amb Roomba, Raspberry Pi i RPLIDAR: 9 passos (amb imatges)
Vídeo: 10 лучших продуктов, которые вы никогда не должны есть снова! 2024, Desembre
Anonim
Image
Image
Què necessites
Què necessites

Què és això?

"Roomblock" és una plataforma robot composta per un Roomba, un Raspberry Pi 2, un sensor làser (RPLIDAR) i una bateria mòbil. El marc de muntatge el poden fer impressores 3D. El sistema de navegació ROS permet fer un mapa d’habitacions i utilitzar-lo per arribar a la meta de forma autònoma.

Qui ho necessita?

Tothom que vulgui aprendre les tecnologies més avançades de navegació robòtica, cartografia i conducció autònoma. Aquest robot es pot construir fàcilment i amb un cost més baix que altres plataformes comercials. ROS és ara un sistema de programari estàndard de facto per al camp de la investigació robòtica. Aquesta pel·lícula mostra el que és possible amb el sistema de navegació ROS.

Pas 1: el que necessiteu

Què necessites
Què necessites
Què necessites
Què necessites
Construir un cable de sèrie USB (opcional)
Construir un cable de sèrie USB (opcional)
Construir un cable de sèrie USB (opcional)
Construir un cable de sèrie USB (opcional)

Cable de sèrie USB

Si no teniu un cable sèrie USB per Roomba, podeu construir-lo fàcilment amb aquest producte.

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

Fixeu-vos que la superfície de la Roomba és TTL (5V).

Connector

Necessiteu un connector mini-DIN de 8 pins per a la interfície sèrie del Roomba. En realitat, el connector de Roomba és mini-DIN de 7 pins, però és molt més fàcil comprar un connector de 8 pins que de 7 pins.

  • Digikey: mini connector DIN de 8 pins
  • Kyoritsu: mini connector DIN de 8 pins

Soldadura

Soldeu el cable sèrie al connector de 8 pins. Comproveu la connexió mitjançant la imatge adjunta i el document de l'especificació de la interfície oberta de Roomba.

Especificació de la interfície oberta de Roomba

Tingueu en compte que és segur connectar Vcc (vermell) i RTS (verd) per evitar problemes de flux de maquinari.

Pas 4: configureu el mòdul de la càmera Raspberry Pi (opcional)

Configuració del mòdul de càmera Raspberry Pi (opcional)
Configuració del mòdul de càmera Raspberry Pi (opcional)
Configuració del mòdul de càmera Raspberry Pi (opcional)
Configuració del mòdul de càmera Raspberry Pi (opcional)

Si teniu el mòdul de càmera Raspberry Pi, podeu connectar-lo a Raspberry Pi. Això és opcional per aprendre la navegació, però és divertit obtenir una visió des de la vista del robot.

La part de muntatge de la càmera també s'inclou a les dades del marc de Thingiverse. El mòdul de càmera es pot fixar amb quatre cargols M2.

Pas 5: configureu l'ordinador local

Configura l'ordinador local
Configura l'ordinador local

Instal·leu Ubuntu

Instal·leu l’escriptori Ubuntu 16.04 seguint la pàgina oficial

Pàgina oficial d'Ubuntu

Instal·leu ROS

Consulteu la pàgina oficial de ROS. Instal·leu els paquets complets de l'escriptori Kinetic.

ROS Instruccions d'instal·lació cinètica

Instal·leu el paquet Roomblock ROS

El paquet per al bloqueig d'habitacions ja s'ha alliberat a Kinetic. Podeu instal·lar-les mitjançant l'ordre apt.

$ sudo apt install ros-kinetic-roomblock

Això és.

Si voleu modificar i construir el paquet a partir del codi font, podeu obtenir-los des de GitHub.

GitHub: bloqueig d'habitacions

Seguiu les instruccions de README.md.

Si teniu algun problema o pregunta relacionada amb el programari, feu un problema sobre els problemes de GitHub perquè puguem fer un seguiment eficient dels problemes. Eviteu publicar-los a Instructables.

Pas 6: configureu Raspberry Pi

Configuració de Raspberry Pi
Configuració de Raspberry Pi

Instal·leu Ubuntu

Instal·leu Ubuntu 16.04 al Raspberry Pi seguint la guia d’instal·lació:

Wiki d'Ubuntu: RaspberryPi

Instal·leu ROS

Instal·leu ROS Kinetic seguint la guia d'instal·lació:

Instal·lació d'Ubuntu de ROS Kinetic

Instal·leu el paquet ROS de Roomblock

Cal instal·lar el paquet roomblock des del codi font. El codi font del paquet es troba a GitHub.

GitHub: bloqueig d'habitacions

Seguiu les instruccions de README.md.

Si teniu algun problema o pregunta sobre el programari, feu un problema sobre els problemes de GitHub, de manera que puguem fer un seguiment eficient dels problemes. Eviteu publicar-los a Instructables.

Mòdul de càmera Raspberry Pi (opcional)

Si teniu un mòdul de càmera Rasberry Pi, heu d’instal·lar libraspberrypi-dev. Consulteu README.md a Github.

Pas 7: Teleoperació

Teleoperació
Teleoperació
Teleoperació
Teleoperació

Obriu el sistema base a Raspberry Pi

Primer de tot, heu de presentar el sysem. Al terminal Raspberry Pi, inicieu el sistema bàsic com:

$ export ROS_IP = IP_ADDRESS_OF_RASPBERRY_PI

$ roslaunch roomblock_bringup roomblock.launch

RPLIDAR comença a girar i ara podeu connectar-vos al robot ROS master des del vostre PC local.

Teleoperació des de PC local

Podeu utilitzar un joy pad per accionar el robot. Si teniu un joy pad de XBox, podeu utilitzar aquest fitxer de llançament. En cas contrari, és possible que hàgiu de modificar el fitxer d’inici perquè s’adapti al vostre joy pad. Si us plau, consulteu les pàgines del wiki ROS per obtenir més informació.

Wiki ROS - teleop_twist_joy

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

Ara podeu controlar el Roomba amb el joystick.

En el seu lloc, podeu utilitzar un teclat.

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

Consulteu les pàgines del wiki ROS per obtenir més informació.

Wiki ROS - teleop_twist_keyboard

Pas 8: Inicieu el programari de mapatge

Inicieu el programari de mapatge
Inicieu el programari de mapatge
Inicieu el programari de mapatge
Inicieu el programari de mapatge

Obriu el programari de mapatge a l'ordinador local

Obriu el programari de mapatge per crear el mapa al voltant del robot.

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

Ara podeu veure Rviz (programari de visualització). Feu funcionar el robot per la sala per crear un mapa de la sala.

Podeu consultar la pàgina wiki de ROS per obtenir un sistema de mapatge.

  • Wiki ROS - gmapping
  • Wiki ROS - servidor_mapa

Pas 9: inicieu la navegació autònoma

Inicieu la navegació autònoma
Inicieu la navegació autònoma
Inicieu la navegació autònoma
Inicieu la navegació autònoma

Obteniu programari de navegació autònom

Ara podeu iniciar el sistema de navegació autònom al PC local com:

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

Podeu utilitzar Rviz per especificar l'objectiu. El robot hauria d’anar a la meta de forma autònoma.

Consulteu la pàgina wiki ROS per al sistema autònom.

  • Wiki ROS - navegació
  • Wiki ROS - amcl

Diverteix-te

Si teniu preguntes o problemes generals sobre ROS, consulteu la wiki de ROS. No podem respondre a preguntes generals sobre ROS.

Wiki ROS - Suport

Si teniu algun problema o pregunta relacionada amb el programari Roomblock, feu un problema sobre els problemes de GitHub perquè puguem fer un seguiment eficient dels problemes. Eviteu publicar-los a Instructables.

Recomanat: