Hvad er Catkin?
Dette værktøj er udviklet til ROS, robotikoperativsystemet, af teamet, der bygger ROS-værktøjerne. Det har en lang række værktøjer til at opbygge dit robotprojekt. Brug af det vil være nødvendigt, hvis du udvikler robotter, der bruger ROS. Du skal være opmærksom på, at der har været flere generationer af disse værktøjer i de sidste par år. Dette betyder, at du skal vælge det nyeste! Catkin er installeret med den fulde ROS noetic-distribution; alt hvad du behøver for at tage sig af er konfigurationen. Du skal indstille det korrekte miljø til at køre Catkin.
Opsætning af biblioteket / miljøet
Opret en mappe med underkatalog src / inde i den. MyRob / src. Eksemplerne er fra begyndervejledningen.
catkin_make opretter CMakelists.txt i src-biblioteket. Disse peger på de andre filer, der udgør et projekt.
Dernæst vil du oprette dine pakker.
Gå i src-biblioteket
catkin_createpkg$ catkin_createpkg beginner_tutorials std_msgs ropy roscpp
Bemærk fejlen i kommandoen. Dette skaber alt som om du ikke tog fejl. Du kan finde resultatet i filerne med grep.
$ grep -r kopiubuntu @ noetic: / home / ubuntu / catkin_ws / src / beginner_tutorials
$ grep -r kopi. ./ CMakeLists.txt: kopi
./ CMakeLists.txt: # CATKIN_DEPENDS ropy roscpp std_msgs
./pakke.xml: kopi
./pakke.xml: kopi
./pakke.xml: kopi
Den næste kompilering mislykkes. Du har nu to valg, rediger filerne eller fjern hele biblioteket. Scriptet er normalt hurtigt, så det nemmeste er at fjerne og genkøre kommandoen create. Når du har ryddet disse fejl, fortsætter du med at oprette pakken. Uanset hvad, når du har rettet det, skal du gå til arbejdsområdets rod og køre catkin_make igen. Når du går videre med ethvert projekt, går du altid tilbage til arbejdsområdets rod for at oprette hele projektet. Dette sørger kun for, at alt eksisterer korrekt, der er nogle smarte tricks, så du ikke behøver at kompilere hele projektet hver gang.
$ cd ~ catkin_ws / $ catkin_makeHvis det lykkes denne gang, har du lige oprettet din første pakke. Husk at ordne din pakke.xml-fil. Du skal sandsynligvis indstille dit navn korrekt og licensen. Der er flere indstillinger, de er alle nemme at forstå.
Et lille projekt
Gør det igen i en ny mappe, og opret dit projekt. Eller endnu bedre: til praksis skal du hente et projekt fra GitHub, se hvor det går, og derefter begynde at ændre det efter eget smag. For at gøre dette kan du oprette et arbejdsområde til catkin med et src-bibliotek. I kildekataloget kopieres du i kildekodebibliotekerne. Fra eksemplet ovenfor har du brug for to trin, klon biblioteket og kør catkin_make.
$ cd / src$ git klon https: // github.com / crkaushik93 / Go-Chase-It-RSEND-Project-2.git
$ cd ..
$ catkin_make
For at lave et mindre dybt træ kan du flytte hver underkatalog et trin op, men dette er valgfrit. Den sidste kommando søger i src / biblioteket og finder al kode.
Installation
Du installerer normalt ikke kun pakker på udviklingssystemet. Du kører dog installation for at oprette et installationsmiljø og et udviklingsmiljø. Kommandoen catkin_make opretter disse for dig. Når du går videre, skal du finde en til udvikling og den anden til test. En direkte installation opretter dine mapper, inklusive scripts til initialisering af miljøerne.
$ catkin_make installation
Du har ikke filerne installeret på dit system, kun i projektmappen. Dette er fantastisk, fordi alt hvad du skal gøre er at køre opsætningen og starte testningen.
Eller…
$ source installation / setup_bashDen første er, at du kører test og finder ud af, hvilke fejl du har indlejret i din kode.
Kun ROS?
Så er dette kun gyldigt for ROS1? Ja, catkin er kun rettet mod ROS1-bibliotekerne. En ting at bemærke er dog, at det meste af jobbet er cmake. Du vil være i stand til at oversætte mange af fremgangsmåderne til andre projekter, der bruger CMake. Du behøver kun at udføre mere arbejde, da Catkin har forenklet mange opgaver for dig. For ROS2 er mange ting ens, men løsningerne er mere raffinerede og har flere funktioner til at kontrollere, hvor meget du kompilerer hver gang. Du kan også programmere i begge niveauer af ROS, der er en bro mellem de to!
Konklusion
Catkin er et meget stærkt og alsidigt sæt værktøjer, der gør dit arbejde meget enklere og giver dig mulighed for at komme igennem grinden ved at udvikle din robotkode. Praksis er dog en glimrende måde at lære mere om programmering på. Så selvom dit robotprojekt kun er til din nærmeste cirkel og skryterettigheder, kan du drage fordel af viden til andre projekter.