Cuprins:

Roomblock: o platformă pentru învățarea navigării ROS cu Roomba, Raspberry Pi și RPLIDAR: 9 pași (cu imagini)
Roomblock: o platformă pentru învățarea navigării ROS cu Roomba, Raspberry Pi și RPLIDAR: 9 pași (cu imagini)

Video: Roomblock: o platformă pentru învățarea navigării ROS cu Roomba, Raspberry Pi și RPLIDAR: 9 pași (cu imagini)

Video: Roomblock: o platformă pentru învățarea navigării ROS cu Roomba, Raspberry Pi și RPLIDAR: 9 pași (cu imagini)
Video: Roomblock: a Platform for Learning ROS Navigation with Roomba, Raspberry Pi and RPLIDAR 2024, Noiembrie
Anonim
Image
Image
De ce ai nevoie
De ce ai nevoie

Ce este asta?

„Roomblock” este o platformă robotică formată dintr-un Roomba, un Raspberry Pi 2, un senzor laser (RPLIDAR) și o baterie mobilă. Cadrul de montare poate fi realizat de imprimante 3D. Sistemul de navigare ROS permite realizarea unei hărți a camerelor și utilizarea acesteia pentru a atinge obiectivul în mod autonom.

Cine are nevoie de asta?

Oricine dorește să învețe tehnologiile de vârf ale navigației robotizate, cartografierii și conducerii autonome. Acest robot poate fi construit cu ușurință și cu costuri mai mici decât alte platforme comerciale. ROS este acum un sistem software de facto standard pentru domeniul cercetării robotizate. Acest film arată ce este posibil cu sistemul de navigare ROS.

Pasul 1: De ce aveți nevoie

De ce ai nevoie
De ce ai nevoie
De ce ai nevoie
De ce ai nevoie
Construiți un cablu serial USB (opțional)
Construiți un cablu serial USB (opțional)
Construiți un cablu serial USB (opțional)
Construiți un cablu serial USB (opțional)

Cablu serial USB

Dacă nu aveți cablu serial USB pentru Roomba, îl puteți construi cu ușurință cu acest produs.

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

Observați că interfața Roomba este TTL (5V).

Conector

Aveți nevoie de un conector mini-DIN cu 8 pini pentru interfața serială a Roomba. De fapt, conectorul Roomba este mini-DIN 7 pini, cu toate acestea, este mult mai ușor să cumpărați un conector 8 pini decât 7 pini.

  • Digikey: conector mini-DIN cu 8 pini
  • Kyoritsu: conector mini-DIN cu 8 pini

Lipire

Lipiți cablul serial pe conectorul cu 8 pini. Verificați conexiunea după imaginea atașată și documentul din specificația interfeței deschise Roomba.

Specificația interfeței deschise Roomba

Vă rugăm să rețineți, este sigur să conectați Vcc (roșu) și RTS (verde) pentru a evita problema fluxului hardware.

Pasul 4: Configurați modulul de cameră Raspberry Pi (opțional)

Configurați modulul de cameră Raspberry Pi (opțional)
Configurați modulul de cameră Raspberry Pi (opțional)
Configurați modulul de cameră Raspberry Pi (opțional)
Configurați modulul de cameră Raspberry Pi (opțional)

Dacă aveți modulul de cameră Raspberry Pi, îl puteți atașa la Raspberry Pi. Acest lucru este opțional pentru învățarea navigării, cu toate acestea, este distractiv să obțineți o vedere din vederea robotului.

Partea de montare a camerei este, de asemenea, inclusă în datele cadrelor de pe Thingiverse. Modulul camerei poate fi fixat cu patru șuruburi M2.

Pasul 5: Configurați computerul local

Configurați computerul local
Configurați computerul local

Instalați Ubuntu

Instalați desktopul Ubuntu 16.04 urmând pagina oficială

Pagina oficială Ubuntu

Instalați ROS

Consultați pagina oficială ROS. Instalați pachetele complete Kinetic desktop.

Instrucțiuni de instalare ROS Kinetic

Instalați pachetul Roomblock ROS

Pachetul pentru roomblock este deja lansat în Kinetic. Le puteți instala prin comanda apt.

$ sudo apt install ros-kinetic-roomblock

Asta e.

Dacă doriți să modificați și să construiți pachetul din codul sursă, le puteți obține de la GitHub.

GitHub - roomblock

Vă rugăm să urmați instrucțiunile din README.md.

Dacă aveți vreo problemă sau întrebare legată de software, vă rugăm să faceți o problemă cu problemele GitHub, astfel încât să putem urmări în mod eficient problemele. Vă rugăm să evitați să le postați pe Instructables.

Pasul 6: Configurați Raspberry Pi

Configurați Raspberry Pi
Configurați Raspberry Pi

Instalați Ubuntu

Instalați Ubuntu 16.04 pe Raspberry Pi urmând ghidul de instalare:

Ubuntu Wiki: RaspberryPi

Instalați ROS

Instalați ROS Kinetic urmând ghidul de instalare:

Instalarea Ubuntu a ROS Kinetic

Instalați pachetul Roomblock ROS

Trebuie să instalați pachetul roomblock din codul sursă. Codul sursă al pachetului este pe GitHub.

GitHub - roomblock

Vă rugăm să urmați instrucțiunile din README.md.

Dacă aveți vreo problemă sau întrebare referitoare la software, vă rugăm să faceți o problemă cu problemele GitHub, astfel încât să putem urmări în mod eficient problemele. Vă rugăm să evitați să le postați pe Instructables.

Modul de cameră Raspberry Pi (opțional)

Dacă aveți un modul de cameră Rasberry Pi, trebuie să instalați libraspberrypi-dev. Vă rugăm să consultați README.md în Github.

Pasul 7: Teleoperare

Teleoperare
Teleoperare
Teleoperare
Teleoperare

Aduceți sistemul de bază pe Raspberry Pi

În primul rând, trebuie să aduceți sistemul. Pe terminalul Raspberry Pi, lansați sistemul de bază ca:

$ export ROS_IP = IP_ADDRESS_OF_RASPBERRY_PI

$ roslaunch roomblock_bringup roomblock.launch

RPLIDAR începe să se rotească, iar acum vă puteți conecta la robotul ROS master de pe computerul dvs. local.

Tele-operare de pe un computer local

Puteți folosi un joy pad pentru a acționa robotul. Dacă aveți un joy pad de XBox, puteți utiliza acest fișier de lansare. În caz contrar, poate fi necesar să modificați fișierul de lansare pentru a se potrivi cu pad-ul dvs. de bucurie. Vă rugăm să consultați paginile wiki ROS pentru detalii.

ROS wiki - teleop_twist_joy

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

Acum puteți controla Roomba cu joystick.

În schimb, puteți utiliza o tastatură.

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

Vă rugăm să consultați paginile wiki ROS pentru detalii.

ROS wiki - teleop_twist_keyboard

Pasul 8: Lansați software-ul de cartografiere

Lansați software-ul de cartografiere
Lansați software-ul de cartografiere
Lansați software-ul de cartografiere
Lansați software-ul de cartografiere

Aduceți software-ul de cartografiere pe computerul local

Aduceți software-ul de cartografiere pentru a crea harta în jurul robotului.

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

Acum puteți vedea Rviz (software de vizualizare). Acționați robotul în jurul camerei pentru a crea o hartă a camerei.

Puteți consulta pagina wiki ROS pentru sistemul de cartografiere.

  • ROS wiki - gmapping
  • ROS wiki - map_server

Pasul 9: Lansați navigarea autonomă

Lansați navigarea autonomă
Lansați navigarea autonomă
Lansați Navigarea autonomă
Lansați Navigarea autonomă

Aduceți software de navigație autonom

Acum puteți porni sistemul de navigație autonom pe computerul local ca:

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

Puteți utiliza Rviz pentru a specifica obiectivul. Robotul ar trebui să meargă la obiectiv în mod autonom.

Vă rugăm să consultați pagina wiki ROS pentru sistemul autonom.

  • ROS wiki - navigare
  • ROS wiki - amcl

A se distra

Dacă aveți întrebări generale sau probleme despre ROS, vă rugăm să consultați wiki ROS. Nu putem răspunde la întrebări generale despre ROS.

ROS wiki - Suport

Dacă aveți vreo problemă sau întrebare referitoare la software-ul Roomblock, vă rugăm să faceți o problemă cu problemele GitHub, astfel încât să putem urmări în mod eficient problemele. Vă rugăm să evitați să le postați pe Instructables.

Recomandat: