En utvikler har publisert en samling på 42 ferdige simuleringsverdener for Gazebo Harmonic, spesialtilpasset navigasjon, utforskning og SLAM-prosjekter. Prosjektet er åpen kildekode under Apache 2.0-lisens, og bruker en smart Python- og Blender-basert arbeidsflyt for å generere verdener av høy kvalitet.
For alle som jobber med autonom navigasjon, utforskningsalgoritmer eller SLAM-utvikling i ROS 2, er gode testmiljøer helt avgjørende. Nå har en utvikler delt et omfattende bibliotek med 42 ferdige simuleringsverdener for Gazebo Harmonic – fritt tilgjengelig for alle som bygger robotikkprosjekter. La oss se hva dette kan gjøre for prosjektet ditt.
Fra labyrinter til forlatte lager
Samlingen dekker et bredt spekter av miljøtyper, alle basert på 2D-plantegninger med enkle objekter. Blant verdenene finner man:
- Labyrinter for grunnleggende navigasjonstesting
- Kontorlandskap og lagerbygninger for realistiske indoor-scenarier
- Skogsmiljøer for utendørs navigasjon
- Gjenskapte virkelige steder
- Verdener med bevegelige hindringer for dynamisk testing
- Utfordringsorienterte baner for benchmarking
Denne variasjonen gjør samlingen nyttig uansett om man utvikler eksplorasjonsalgoritmer, tester LiDAR-oppsett eller validerer robotmodeller under ulike forhold.
Python og Blender løser Gazebos svakheter
En av de mest interessante sidene ved prosjektet er selve arbeidsflyten bak verdenene. Gazebo i seg selv har ifølge utvikleren en lite brukervennlig prosess for å lage og redigere verdener fra bunnen av. Løsningen har derfor vært å bygge en pipeline der verdener først konstrueres og modelleres i Blender via Python-skript, før de konverteres til .sdf-filer som Gazebo kan lese direkte.
Denne metoden gir flere praktiske fordeler:
Bedre kompatibilitet med andre simuleringsrammeverk, enklere matematiske beregninger under generering, og langt enklere tilpasning av eksisterende verdener.
Det betyr at man relativt enkelt kan justere geometri, skalere miljøer eller tilpasse layout til egne behov, uten å måtte redigere SDF-filer manuelt for hånd.
Praktisk bruk og kompatibilitet
Verdenene er bygget for Gazebo Harmonic, som er den nyeste LTS-versjonen av Gazebo-simulatoren, og fungerer godt sammen med standard ROS 2-verktøy for navigasjon (som Nav2) og SLAM-pakker. Siden filene leveres i standard .sdf-format, kan de også brukes i andre simuleringsmiljøer som støtter samme filformat, noe som gjør samlingen fleksibel for ulike robotikkstacker.
Prosjektet er publisert med Apache 2.0-lisens, som betyr at verdenene kan brukes fritt – både i akademiske prosjekter, hobbyprosjekter og kommersiell utvikling – uten restriktive vilkår. Utvikleren har selv brukt verdenene til å teste et eget utforskningsprosjekt, men poengterer at samlingen er relevant for mange ulike bruksområder innen robotikk og autonomi.
Et interessant poeng fremover er at utvikleren planlegger å utvide repositoriet med 3D-teksturerte verdener, noe som vil øke realismen ytterligere for visuell navigasjon og sensorsimulering. For nå gir de 42 2D-baserte verdenene et solid utgangspunkt for å teste og benchmarke navigasjons- og SLAM-algoritmer uten å måtte bygge testmiljøer fra scratch.
Kildekoden er tilgjengelig på GitHub under navnet mertgulerx/world-collection, og prosjektet tar gjerne imot bidrag og tilbakemeldinger fra community.
Kilde: ROS Discourse