Cuprins:
- Pasul 1: De ce aveți nevoie
- Pasul 4: Configurați modulul de cameră Raspberry Pi (opțional)
- Pasul 5: Configurați computerul local
- Pasul 6: Configurați Raspberry Pi
- Pasul 7: Teleoperare
- Pasul 8: Lansați software-ul de cartografiere
- Pasul 9: Lansați navigarea autonomă
Video: Roomblock: o platformă pentru învățarea navigării ROS cu Roomba, Raspberry Pi și RPLIDAR: 9 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:45
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
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)
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
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
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
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
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ă
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:
Rpibot - Despre învățarea roboticii: 9 pași
Rpibot - Despre învățarea roboticii: Sunt inginer software încorporat într-o companie germană de automobile. Am început acest proiect ca o platformă de învățare pentru sistemele încorporate. Proiectul a fost anulat devreme, dar mi-a plăcut atât de mult încât am continuat în timpul liber. Acesta este rezultatul … eu
Transferați învățarea cu NVIDIA JetBot - Distracție cu conuri de trafic: 6 pași
Transferați învățarea cu NVIDIA JetBot - Distracție cu conuri de trafic: învățați robotul să găsească o cale într-un labirint de conuri de trafic folosind camera și modelul de învățare profundă de ultimă generație
ROS Melodic pe Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 pași
ROS Melodic pe Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: Acest articol va acoperi procesul de instalare a ROS Melodic Morenia pe Raspberry Pi 4 care rulează cel mai recent Debian Buster și cum să utilizați RPLIDAR A1M8 cu instalarea noastră. De când Debian Buster a fost lansat oficial acum doar câteva săptămâni (din moment
Platforma de bază IoT cu RaspberryPi, WIZ850io: Driver de dispozitiv platformă: 5 pași (cu imagini)
Platforma de bază IoT cu RaspberryPi, WIZ850io: Platform Device Driver: Cunosc platforma RaspberryPi pentru IoT. Recent WIZ850io este anunțat de WIZnet. Așa că am implementat o aplicație RaspberryPi prin modificarea Ethernet SW, deoarece pot gestiona cu ușurință un cod sursă. Puteți testa Driverul dispozitivului platformei prin RaspberryPi
HeadBot - un robot de auto-echilibrare pentru învățarea și extinderea STEM: 7 pași (cu imagini)
HeadBot - un robot de auto-echilibrare pentru învățarea și extinderea STEM: Headbot - un robot de două picioare înălțime, auto-echilibrat - este ideea echipei South Eugene Robotics (SERT, FRC 2521), o echipă competitivă de robotică de liceu din FIRST Concurs de robotică, din Eugene, Oregon. Acest popular robot de divulgare face ca