Innholdsfortegnelse:
- Trinn 1: Det du trenger
- Trinn 4: Sett opp Raspberry Pi kameramodul (valgfritt)
- Trinn 5: Konfigurer lokal PC
- Trinn 6: Konfigurer Raspberry Pi
- Trinn 7: Tele-drift
- Trinn 8: Start kartleggingsprogramvaren
- Trinn 9: Start den autonome navigasjonen
Video: Roomblock: en plattform for læring av ROS -navigasjon med Roomba, Raspberry Pi og RPLIDAR: 9 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:24
Hva er dette?
"Roomblock" er en robotplattform som består av en Roomba, en Raspberry Pi 2, en lasersensor (RPLIDAR) og et mobilbatteri. Monteringsrammen kan lages av 3D -skrivere. ROS navigasjonssystem gjør det mulig å lage et kart over rom og bruke det til å nå målet autonomt.
Hvem trenger dette?
Alle som ønsker å lære den banebrytende teknologien innen robotnavigasjon, kartlegging og autonom kjøring. Denne roboten kan enkelt bygges og lavere kostnader enn andre kommersielle plattformer. ROS er nå de facto standard programvaresystem for robotforskningsfelt. Denne filmen viser hva som er mulig med ROS -navigasjonssystem.
Trinn 1: Det du trenger
USB-seriell kabel
Hvis du ikke har en USB-seriell kabel for Roomba, kan du enkelt bygge den med dette produktet.
- FTDI: TTL-232R-5V
- Akiduki Denshi: TTL-232R-5V
Legg merke til at Roombas inerface er TTL (5V).
Kontakt
Du trenger en mini-DIN 8-pinners kontakt for Roombas serielle grensesnitt. Egentlig er Roombas kontakt mini-DIN 7-pinners, men det er mye lettere å kjøpe en 8-pinners enn 7-pinners kontakt.
- Digikey: mini-DIN 8-pinners kontakt
- Kyoritsu: mini-DIN 8-pinners kontakt
Lodding
Lodd seriekabelen til 8 -pinners kontakten. Kontroller tilkoblingen med det vedlagte bildet og dokumentet med Roomba -spesifikasjonen for åpent grensesnitt.
Roomba Open Interface Specification
Vær oppmerksom på at det er trygt å koble til Vcc (rød) og RTS (grønn) for å unngå problemer med maskinvarestrømmen.
Trinn 4: Sett opp Raspberry Pi kameramodul (valgfritt)
Hvis du har Raspberry Pi kameramodul, kan du koble den til Raspberry Pi. Dette er valgfritt for å lære navigasjon, men det er morsomt å få utsikt fra roboten.
Kamerafeste -delen er også inkludert i rammedata på Thingiverse. Kameramodulen kan festes med fire M2 -skruer.
Trinn 5: Konfigurer lokal PC
Installer Ubuntu
Installer Ubuntu 16.04 -skrivebordet etter den offisielle siden
Ubuntu offisielle side
Installer ROS
Rådfør deg med ROS offisielle side. Installer Kinetic desktop -pakker.
ROS Kinetic installasjonsinstruksjoner
Installer Roomblock ROS -pakken
Pakken for romblokk er allerede utgitt i Kinetic. Du kan installere dem med apt command.
$ sudo apt installer ros-kinetic-roomblock
Det er det.
Hvis du vil endre og bygge pakken fra kildekoden, kan du få dem fra GitHub.
GitHub - romblokk
Følg instruksjonene i README.md.
Hvis du har et problem eller spørsmål angående programvaren, kan du lage et problem med GitHub -problemer, slik at vi kan spore problemene effektivt. Unngå å legge dem ut på Instructables.
Trinn 6: Konfigurer Raspberry Pi
Installer Ubuntu
Installer Ubuntu 16.04 til Raspberry Pi ved å følge installasjonsveiledningen:
Ubuntu Wiki: RaspberryPi
Installer ROS
Installer ROS Kinetic ved å følge installasjonsveiledningen:
Ubuntu installasjon av ROS Kinetic
Installer Roomblock ROS -pakken
Du må installere roomblock -pakken fra kildekoden. Kildekoden til pakken er på GitHub.
GitHub - romblokk
Følg instruksjonene i README.md.
Hvis du har et problem eller spørsmål angående programvaren, vennligst lag et problem om GitHub -problemer, slik at vi kan spore problemene effektivt. Unngå å legge dem ut på Instructables.
Raspberry Pi kameramodul (valgfritt)
Hvis du har en Rasberry Pi kameramodul, må du installere libraspberrypi-dev. Vennligst se README.md i Github.
Trinn 7: Tele-drift
Få opp basissystemet på Raspberry Pi
Først av alt må du ta opp systemet. På Raspberry Pi -terminalen starter du det grunnleggende systemet som:
$ eksport ROS_IP = IP_ADDRESS_OF_RASPBERRY_PI
$ roslaunch roomblock_bringup roomblock.lunch
RPLIDAR begynner å snurre, og nå kan du koble til roboten ROS master fra din lokale PC.
Tele-drift fra lokal PC
Du kan bruke en gledepute til å betjene roboten. Hvis du har en gladepute med XBox, kan du bruke denne lanseringsfilen. Ellers må du kanskje endre lanseringsfilen for å passe til gledeputen din. Plase se ROS wiki -sidene for detaljer.
ROS wiki - teleop_twist_joy
$ export ROS_MASTER_URI = https:// IP_ADDRESS_OF_RASPBERRY_PI: 11311 $ roslaunch roomblock_bringup teleop.launch
Nå kan du styre Roomba med joystick.
I stedet kan du bruke et tastatur.
$ export ROS_MASTER_URI = https:// IP_ADDRESS_OF_RASPBERRY_PI: 11311 $ rosrun teleop_twist_keyboard teleop_twist_keyboard.py
Vennligst se ROS wikisider for detaljer.
ROS wiki - teleop_twist_keyboard
Trinn 8: Start kartleggingsprogramvaren
Få frem kartleggingsprogramvaren på lokal PC
Ta opp kartleggingsprogramvaren for å lage kartet rundt roboten.
$ export ROS_MASTER_URI = https:// IP_ADDRESS_OF_RASPBERRY_PI: 11311 $ export ROS_IP = IP_ADDRESS_OF_LOCAL_PC $ roslaunch roomblock_mapping gmapping.launch
Nå kan du se Rviz (visualiseringsprogramvare). Kjør roboten rundt i rommet for å lage et kart over rommet.
Du kan konsultere ROS wiki -siden for kartleggingssystem.
- ROS wiki - gmapping
- ROS wiki - map_server
Trinn 9: Start den autonome navigasjonen
Få frem autonom navigasjonsprogramvare
Nå kan du starte det autonome navigasjonssystemet på den lokale PC -en som:
$ export ROS_MASTER_URI = https:// IP_ADDRESS_OF_RASPBERRY_PI: 11311 $ export ROS_IP = IP_ADDRESS_OF_LOCAL_PC $ roslaunch rolomblock_navigation amcl.launch
Du kan bruke Rviz til å spesifisere målet. Roboten bør gå til målet autonomt.
Vennligst se ROS wiki -siden for det autonome systemet.
- ROS wiki - navigasjon
- ROS wiki - amcl
Ha det gøy
Hvis du har generelle spørsmål eller problemer om ROS, vennligst se ROS wiki. Vi kan ikke svare på generelle spørsmål om ROS.
ROS wiki - Støtte
Hvis du har et problem eller spørsmål angående Roomblock -programvaren, vennligst lag et problem om GitHub -problemer, slik at vi kan spore problemene effektivt. Unngå å legge dem ut på Instructables.
Anbefalt:
Telepresence Robot: Grunnleggende plattform (del 1): 23 trinn (med bilder)
Telepresence Robot: Basic Platform (Part 1): En telepresence robot er en type robot som kan fjernstyres over internett og fungere som en surrogat for noen andre steder. For eksempel, hvis du er i New York, men vil fysisk samhandle med et team av mennesker i Californien
ROS Melodic på Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: 6 trinn
ROS Melodic på Raspberry Pi 4 [Debian Buster] + RPLIDAR A1M8: Denne artikkelen vil dekke prosessen med å installere ROS Melodic Morenia på Raspberry Pi 4 som kjører den siste Debian Buster og hvordan du bruker RPLIDAR A1M8 med vår installasjon. Siden Debian Buster ble offisielt utgitt for bare noen få uker siden (for øyeblikket
Objektorientert programmering: Lage objekter Læring/undervisningsmetode/teknikk ved hjelp av Shape Puncher: 5 trinn
Objektorientert programmering: Lage objekter Lærings-/undervisningsmetode/teknikk ved hjelp av Shape Puncher: Lærings-/undervisningsmetode for studenter som er ny i objektorientert programmering. Dette er en måte å la dem visualisere og se prosessen med å lage objekter fra klasser. Deler: 1. EkTools 2-tommers stor slag; solide former er best.2. Papir eller c
HeadBot-en selvbalanserende robot for STEM-læring og oppsøkende: 7 trinn (med bilder)
HeadBot-en selvbalanserende robot for STEM-læring og oppsøkende: Headbot-en to fot høy, selvbalanserende robot-er hjernebarnet til South Eugene Robotics Team (SERT, FRC 2521), et konkurransedyktig high school robotics team i FIRST Robotics Competition, fra Eugene, Oregon. Denne populære oppsøkende roboten gjør re
Objektorientert programmering: Lage objekter Læring/undervisningsmetode/teknikk ved hjelp av saks: 5 trinn
Objektorientert programmering: Lage objekter Lærings-/undervisningsmetode/teknikk ved hjelp av saks: Lærings-/undervisningsmetode for studenter som er nye i objektorientert programmering. Dette er en måte å la dem visualisere og se prosessen med å lage objekter fra klasser. Deler: 1. Saks (alle slags vil gjøre). 2. Papir eller kartong. 3. Markør