Čo je to Catkin?
Tento nástroj vyvinul pre robotický operačný systém ROS tím zostavujúci nástroje ROS. Má množstvo nástrojov na zostavenie vášho robotického projektu. Jeho použitie bude nevyhnutné, ak vyvíjate robotov pomocou ROS. Mali by ste vedieť, že za posledných pár rokov existovalo niekoľko generácií týchto nástrojov. To znamená, že si musíte zvoliť to najnovšie! Catkin je nainštalovaný s úplnou noetickou distribúciou ROS; všetko, o čo sa musíte starať, je konfigurácia. Musíte nastaviť správne prostredie pre spustenie Catkin.
Nastavenie adresára / prostredia
Vytvorte adresár s podadresárom src / v ňom. MyRob / src. Príklady sú z tutoriálu pre začiatočníkov.
catkin_make vytvára CMakelisty.txt v adresári src. Tieto ukazujú na ďalšie súbory, ktoré tvoria projekt.
Ďalej chcete vytvoriť svoje balíčky.
Prejdite do adresára src
catkin_createpkg$ catkin_createpkg beginner_tutorials std_msgs ropy roscpp
Všimnite si chybu v príkaze. Takto vznikne všetko, akoby ste sa nemýlili. Výsledok nájdete v súboroch s grep.
$ grep -r ropyubuntu @ noetic: / home / ubuntu / catkin_ws / src / beginner_tutorials
$ grep -r ropy. ./ CMakeLists.txt: ropy
./ CMakeLists.txt: # CATKIN_DEPENDS ropy roscpp std_msgs
./ balíček.xml: ropy
./ balíček.xml: ropy
./ balíček.xml: ropy
Ďalšia kompilácia zlyhá. Teraz máte dve možnosti: upraviť súbory alebo odstrániť celý adresár. Skript je zvyčajne rýchly, takže najjednoduchšie je odstrániť a znova spustiť príkaz create. Keď tieto chyby odstránite, pokračujete v zostavovaní balíka. Či tak alebo onak, keď ste to opravili, choďte do koreňa pracovného priestoru a znovu spustite catkin_make. Pri prechode na akýkoľvek projekt sa vždy vrátite späť do koreňa pracovného priestoru, aby ste vytvorili celý projekt. Týmto sa iba zabezpečí, že všetko existuje správne. Existujú šikovné triky, takže nemusíte zakaždým prekompilovať celý projekt.
$ cd ~ catkin_ws / $ catkin_makeAk to tentoraz uspeje, práve ste vytvorili svoj prvý balíček. Nezabudnite opraviť svoj balík.xml súbor. Pravdepodobne by ste mali správne nastaviť svoje meno a licenciu. Existuje viac nastavení, všetky sú ľahko pochopiteľné.
Malý projekt
Teraz to urobte znova v novom adresári a vytvorte si projekt. Alebo ešte lepšie: v praxi si vyberte projekt z GitHubu, uvidíte, kam smeruje, a potom ho začnite meniť podľa svojich predstáv. Ak to chcete urobiť, môžete vytvoriť pracovný priestor pre catkin s adresárom src. V zdrojovom adresári skopírujete adresáre zdrojového kódu. Z vyššie uvedeného príkladu potrebujete dva kroky, klonujte adresár a spustite catkin_make.
$ cd / src$ git klon https: // github.com / crkaushik93 / Go-Chase-It-RSEND-Project-2.git
$ cd…
$ catkin_make
Ak chcete vytvoriť menej hlboký strom, môžete presunúť každý podadresár o jeden krok vyššie, ale je to voliteľné. Posledný príkaz prehľadá adresár src / a nájde všetok kód.
Inštaluje sa
Zvyčajne neinštalujete balíčky iba na vývojový systém. Spustením inštalácie však vytvoríte inštalačné prostredie a vývojové prostredie. Príkaz catkin_make ich vytvorí za vás. Ako budete postupovať, mali by ste zdroj získať pre vývoj a druhý pre testovanie. Priama inštalácia vytvorí vaše adresáre vrátane skriptov na inicializáciu prostredí.
$ catkin_make nainštalovať
Súbory nebudete mať nainštalované vo svojom systéme, iba v adresári projektu. Je to skvelé, pretože stačí spustiť nastavenie a začať testovať.
Alebo…
$ source install / setup_bashPrvým z nich je spustenie testovania a zistenie, aké chyby ste vložili do svojho kódu.
Iba ROS?
Platí to teda iba pre ROS1? Áno, catkin je zameraný iba na knižnice ROS1. Je potrebné si uvedomiť, že väčšina práce je cmake. Mnohé z týchto postupov budete môcť preložiť do iných projektov, ktoré používajú CMake. Musíte už len urobiť viac práce, pretože Catkin pre vás zjednodušil mnoho úloh. V prípade systému ROS2 je veľa vecí podobných, ale riešenia sú prepracovanejšie a majú viac funkcií na kontrolu toho, koľko kompilujete zakaždým. Môžete tiež programovať v oboch úrovniach systému ROS, medzi nimi je most!
Záver
Catkin je veľmi silná a všestranná sada nástrojov, ktorá vám uľahčí prácu a umožní vám prejsť vývojom vášho robotického kódu. Tieto postupy sú vynikajúcim spôsobom, ako sa dozvedieť viac o programovaní. Takže aj keď je váš robotický projekt len pre váš najbližší okruh a vychvaľovacie práva, môžete mať prospech z poznatkov pre ďalšie projekty.