Robotikk

Catkin ROS

Catkin ROS
Når du bruker Robotics operativsystem, vil du på et tidspunkt ønske å utvikle programvaren din. For ROS1-versjonen som er i vedlikehold til 2025, vil du bruke Catkin til å kompilere prosjektene dine. Hvis du ikke planlegger å programmere deg selv, må du merke deg at du kanskje må kompilere andres programvare, så det å lære det grunnleggende er uansett nyttig. I tilfelle du allerede har flyttet til ROS2, vil du bruke colcon til å gjøre det samme.

Hva er Catkin?

Dette verktøyet er utviklet for ROS, robotikkoperativsystemet, av teamet som bygger ROS-verktøyene. Den har en rekke verktøy for å bygge robotprosjektet ditt. Bruk av det vil være nødvendig hvis du utvikler roboter ved hjelp av ROS. Du bør være klar over at det har vært flere generasjoner av disse verktøyene de siste årene. Dette betyr at du må velge det nyeste! Catkin er installert med full ROS noetic-distribusjon; alt du trenger å ta vare på er konfigurasjonen. Du må angi riktig miljø for å kjøre Catkin.

Sette opp katalogen / miljøet

Opprett en katalog med underkatalog src / inne i den. MyRob / src. Eksemplene er fra begynnerveiledningen.

catkin_make oppretter CMakelists.txt i src-katalogen. Disse peker på de andre filene som utgjør et prosjekt.

Deretter vil du lage pakkene dine.

Gå i src-katalogen

catkin_createpkg
$ catkin_createpkg beginner_tutorials std_msgs ropy roscpp

Legg merke til feilen i kommandoen. Dette skaper alt som om du ikke tok feil. Du kan finne resultatet i filene med grep.

$ grep -r kopi
ubuntu @ noetic: / home / ubuntu / catkin_ws / src / beginner_tutorials
$ grep -r kopi. ./ CMakeLists.txt: ropy
./ CMakeLists.txt: # CATKIN_DEPENDS ropy roscpp std_msgs
./pakke.xml: ropy
./pakke.xml: ropy
./pakke.xml: ropy

Neste kompilering mislykkes. Du har nå to valg, redigere filene eller fjerne hele katalogen. Skriptet er vanligvis raskt, så det enkleste er å fjerne og kjøre Create-kommandoen på nytt. Når du har fjernet disse feilene, fortsetter du med å bygge pakken. Uansett når du har løst det, går du til arbeidsområdet rot og kjører catkin_make igjen. Når du går videre med et hvilket som helst prosjekt, vil du alltid gå tilbake til arbeidsområdets rot for å lage hele prosjektet. Dette sørger bare for at alt eksisterer riktig, det er noen smarte triks, slik at du ikke trenger å kompilere hele prosjektet hver gang.

$ cd ~ catkin_ws / $ catkin_make

Hvis det lykkes denne gangen, har du nettopp opprettet din første pakke. Husk å ordne opp pakken.xml-fil. Du bør sannsynligvis angi navnet ditt riktig og lisensen. Det er flere innstillinger, de er alle enkle å forstå.

Et lite prosjekt

Gjør det igjen i en ny katalog og opprett prosjektet. Eller enda bedre: for å øve, ta et prosjekt fra GitHub, se hvor det går, og begynn å endre det etter eget ønske. For å gjøre dette kan du opprette et arbeidsområde for catkin med en src-katalog. I kildekatalogen kopierer du i kildekodekatalogene. Fra eksemplet ovenfor trenger du to trinn, klone katalogen og kjør catkin_make.

$ cd / src
$ git klon https: // github.com / crkaushik93 / Go-Chase-It-RSEND-Project-2.git
$ cd ..
$ catkin_make

For å lage et mindre dypt tre kan du flytte hver underkatalog opp ett trinn, men dette er valgfritt. Den siste kommandoen vil søke i src / katalog og finne all kode.

Installasjon

Du installerer vanligvis ikke bare pakker på utviklingssystemet. Imidlertid kjører du install for å opprette et installasjonsmiljø og et utviklingsmiljø. Kommandoen catkin_make lager disse for deg. Når du går videre, bør du skaffe en for utvikling og den andre for testing. En direkte installasjon vil opprette katalogene dine, inkludert skriptene for å initialisere miljøene.

$ catkin_make install


Du vil ikke ha filene installert på systemet ditt, bare i prosjektkatalogen. Dette er flott fordi alt du trenger å gjøre er å kjøre oppsettet og begynne å teste.

$ kildeutvikling / setup_bash

Eller…

$ source install / setup_bash

Den første er at du skal kjøre testing og finne ut hvilke feil du har innebygd i koden din.

Bare ROS?

Så er dette bare gyldig for ROS1? Ja, catkin er bare rettet mot ROS1-bibliotekene. En ting å merke seg er at det meste av jobben er cmake. Du vil være i stand til å oversette mange av praksisene til andre prosjekter som bruker CMake. Du trenger bare å gjøre mer arbeid siden Catkin har forenklet mange oppgaver for deg. For ROS2 er mange ting like, men løsningene er mer raffinerte og har flere funksjoner for å kontrollere hvor mye du kompilerer hver gang. Du kan også programmere i begge nivåer av ROS, det er en bro mellom de to!

Konklusjon

Catkin er et veldig sterkt og allsidig sett med verktøy som gjør arbeidet ditt mye enklere og lar deg komme deg gjennom å utvikle robotikkoden din. Praksisene er imidlertid en utmerket måte å lære mer om programmering. Så selv om robotprosjektet ditt kun er for din nærmeste krets og skryterett, kan du dra nytte av kunnskap for andre prosjekter.

Mus Etterlig museklikk ved å sveve med Clickless Mouse i Windows 10
Etterlig museklikk ved å sveve med Clickless Mouse i Windows 10
Bruk av mus eller tastatur i feil stilling for overdreven bruk kan føre til mange helseproblemer, inkludert belastning, karpaltunnelsyndrom og mer. I ...
Mus Legg til musebevegelser i Windows 10 ved hjelp av disse gratisverktøyene
Legg til musebevegelser i Windows 10 ved hjelp av disse gratisverktøyene
De siste årene har datamaskiner og operativsystemer utviklet seg sterkt. Det var en tid da brukere måtte bruke kommandoer for å navigere gjennom filad...
Mus Kontroller og administrer musebevegelser mellom flere skjermer i Windows 10
Kontroller og administrer musebevegelser mellom flere skjermer i Windows 10
Dual Display Mouse Manager lar deg kontrollere og konfigurere musebevegelse mellom flere skjermer, ved å bremse bevegelsene nær grensen. Windows 10/8,...