Innehållsförteckning:

Roomblock: en plattform för inlärning av ROS -navigering med Roomba, Raspberry Pi och RPLIDAR: 9 steg (med bilder)
Roomblock: en plattform för inlärning av ROS -navigering med Roomba, Raspberry Pi och RPLIDAR: 9 steg (med bilder)

Video: Roomblock: en plattform för inlärning av ROS -navigering med Roomba, Raspberry Pi och RPLIDAR: 9 steg (med bilder)

Video: Roomblock: en plattform för inlärning av ROS -navigering med Roomba, Raspberry Pi och RPLIDAR: 9 steg (med bilder)
Video: it's not my problem dude💀 #shorts #funny #lol #haha #roblox #noob #guest #fyp 2024, November
Anonim
Image
Image
Vad du behöver
Vad du behöver

Vad är detta?

"Roomblock" är en robotplattform som består av en Roomba, en Raspberry Pi 2, en lasersensor (RPLIDAR) och ett mobilbatteri. Monteringsramen kan tillverkas av 3D -skrivare. ROS -navigationssystem gör det möjligt att göra en karta över rum och använda den för att nå målet självständigt.

Vem behöver detta?

Alla som vill lära sig den senaste tekniken inom robotnavigering, kartläggning och autonom körning. Denna robot kan byggas enkelt och till lägre kostnad än andra kommersiella plattformar. ROS är nu de facto standard mjukvarusystem för robotforskningsfält. Denna film visar vad som är möjligt med ROS -navigationssystem.

Steg 1: Vad du behöver

Vad du behöver
Vad du behöver
Vad du behöver
Vad du behöver
Bygg en USB-seriell kabel (tillval)
Bygg en USB-seriell kabel (tillval)
Bygg en USB-seriell kabel (tillval)
Bygg en USB-seriell kabel (tillval)

USB-seriell kabel

Om du inte har en USB-seriell kabel för Roomba kan du enkelt bygga den med den här produkten.

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

Lägg märke till att Roombas inre gränssnitt är TTL (5V).

Anslutning

Du behöver en mini-DIN 8-polig kontakt för Roombas seriella gränssnitt. Egentligen är Roombas kontakt mini-DIN 7-stift, men det är mycket lättare att köpa en 8-stifts än 7-stifts kontakt.

  • Digikey: mini-DIN 8pin kontakt
  • Kyoritsu: mini-DIN 8pin kontakt

Lödning

Löd seriekabeln till den 8 -poliga kontakten. Kontrollera anslutningen med den bifogade bilden och dokumentet med Roomba -specifikationen för öppet gränssnitt.

Roomba Open Interface Specification

Observera att det är säkert att ansluta Vcc (röd) och RTS (grön) för att undvika problem med maskinvaruflödet.

Steg 4: Installera Raspberry Pi kameramodul (tillval)

Installera Raspberry Pi -kameramodul (tillval)
Installera Raspberry Pi -kameramodul (tillval)
Installera Raspberry Pi -kameramodul (tillval)
Installera Raspberry Pi -kameramodul (tillval)

Om du har en Raspberry Pi -kameramodul kan du ansluta den till Raspberry Pi. Detta är valfritt för att lära sig navigering, men det är roligt att få en vy från robotens syn.

Kamerafästdelen ingår också i bilddata på Thingiverse. Kameramodulen kan fixeras med fyra M2 -skruvar.

Steg 5: Konfigurera lokal dator

Konfigurera lokal dator
Konfigurera lokal dator

Installera Ubuntu

Installera Ubuntu 16.04 -skrivbordet efter den officiella sidan

Ubuntu officiella sida

Installera ROS

Konsultera ROS officiella sida. Installera Kinetic desktop -paket.

ROS Kinetic installationsanvisningar

Installera Roomblock ROS -paket

Paketet för roomblock har redan släppts till Kinetic. Du kan installera dem med apt command.

$ sudo apt installera ros-kinetic-roomblock

Det är allt.

Om du vill ändra och bygga paketet från källkoden kan du få dem från GitHub.

GitHub - rumsblock

Följ instruktionerna i README.md.

Om du har några problem eller frågor angående programvaran, gör ett problem med GitHub -frågor så att vi kan spåra problemen effektivt. Undvik att lägga upp dem på Instructables.

Steg 6: Konfigurera Raspberry Pi

Installera Raspberry Pi
Installera Raspberry Pi

Installera Ubuntu

Installera Ubuntu 16.04 till Raspberry Pi enligt installationsguiden:

Ubuntu Wiki: RaspberryPi

Installera ROS

Installera ROS Kinetic enligt installationsguiden:

Ubuntu -installation av ROS Kinetic

Installera Roomblock ROS -paket

Du måste installera roomblock -paketet från källkoden. Paketets källkod finns på GitHub.

GitHub - rumsblock

Följ instruktionerna i README.md.

Om du har några problem eller frågor angående programvaran, gör ett problem om GitHub -frågor så att vi kan spåra problemen effektivt. Undvik att lägga upp dem på Instructables.

Raspberry Pi kameramodul (tillval)

Om du har en Rasberry Pi-kameramodul måste du installera libraspberrypi-dev. Vänligen konsultera README.md i Github.

Steg 7: Tele-drift

Tele-drift
Tele-drift
Tele-drift
Tele-drift

Ta fram bassystemet på Raspberry Pi

Först och främst måste du ta upp systemet. Starta grundsystemet på Raspberry Pi -terminalen som:

$ export ROS_IP = IP_ADDRESS_OF_RASPBERRY_PI

$ roslaunch roomblock_bringup roomblock.launch

RPLIDAR börjar snurra, och nu kan du ansluta till robotens ROS -master från din lokala dator.

Tele-drift från lokal dator

Du kan använda en glädjeplatta för att styra roboten. Om du har en glädjeplatta med XBox kan du använda den här startfilen. Annars kan du behöva ändra startfilen för att passa din glädjeplatta. Plase se ROS wikisidor för detaljer.

ROS wiki - teleop_twist_joy

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

Nu kan du styra Roomba med joystick.

Istället kan du använda ett tangentbord.

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

Se ROS wikisidor för detaljer.

ROS wiki - teleop_twist_keyboard

Steg 8: Starta kartläggningsprogrammet

Starta mappningsprogrammet
Starta mappningsprogrammet
Starta mappningsprogrammet
Starta mappningsprogrammet

Ta fram mappningsprogrammet på lokal dator

Ta fram kartläggningsprogrammet för att skapa kartan runt 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

Nu kan du se Rviz (visualiseringsprogram). Använd roboten runt i rummet för att skapa en karta över rummet.

Du kan konsultera ROS -wikisidan för mappningssystem.

  • ROS wiki - gmapping
  • ROS wiki - map_server

Steg 9: Starta den autonoma navigeringen

Starta den autonoma navigeringen
Starta den autonoma navigeringen
Starta den autonoma navigeringen
Starta den autonoma navigeringen

Ta fram autonom navigationsprogramvara

Nu kan du starta autonomt navigationssystem på den lokala datorn 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 använda Rviz för att ange målet. Roboten bör gå till målet självständigt.

Se ROS -wikisidan för det autonoma systemet.

  • ROS wiki - navigation
  • ROS wiki - amcl

Ha så kul

Om du har allmänna frågor eller problem om ROS, vänligen se ROS wiki. Vi kan inte svara på allmänna frågor om ROS.

ROS wiki - Support

Om du har några problem eller frågor angående Roomblock -programvaran, gör ett problem med GitHub -frågor så att vi kan spåra problemen effektivt. Undvik att lägga upp dem på Instructables.

Rekommenderad: