Какво е Catkin?
Този инструмент е разработен за ROS, операционната система за роботика, от екипа, изграждащ ROS инструментите. Той разполага с множество инструменти за изграждане на вашия проект по роботика. Използването му ще е необходимо, ако разработвате роботи, използващи ROS. Трябва да знаете, че през последните няколко години има няколко поколения от тези инструменти. Това означава, че трябва да изберете най-новото! Catkin е инсталиран с пълното ROS ноетично разпределение; всичко, за което трябва да се погрижите, е конфигурацията. Трябва да зададете правилната среда за стартиране на Catkin.
Настройване на директория / среда
Създайте директория с поддиректория src / вътре в нея. MyRob / src. Примерите са от начинаещия урок.
catkin_make създава CMakelists.txt в директорията src. Те сочат към другите файлове, които съставляват проект.
След това искате да създадете своите пакети.
Отидете в директорията src
catkin_createpkg$ catkin_createpkg beginner_tutorials std_msgs ropy roscpp
Обърнете внимание на грешката в командата. Това създава всичко, сякаш не сте се объркали. Можете да намерите резултата във файловете с 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
./пакет.xml: ropy
./пакет.xml: ropy
./пакет.xml: ropy
Следващата компилация ще се провали. Сега имате два варианта, да редактирате файловете или да премахнете цялата директория. Скриптът обикновено е бърз, така че най-лесно е да премахнете и да стартирате отново командата create. След като изчистите тези грешки, продължавате с изграждането на пакета. Така или иначе, когато сте го коригирали, отидете в корена на работното пространство и стартирайте catkin_make отново. Докато продължавате с всеки проект, винаги ще се връщате към корена на работното пространство, за да направите целия проект. Това само гарантира, че всичко съществува правилно, има някои хитри трикове, така че не е нужно да прекомпилирате целия проект всеки път.
$ cd ~ catkin_ws / $ catkin_makeАко успее този път, току-що сте създали първия си пакет. Не забравяйте да поправите пакета си.xml файл. Вероятно трябва да зададете правилно името си и лиценза. Има повече настройки, всички те са лесни за разбиране.
Малък проект
Сега го направете отново в нова директория и създайте своя проект. Или още по-добре: за практика вземете проект от GitHub, вижте къде отива и след това започнете да го променяте по ваш вкус. За да направите това, можете да създадете работно пространство за catkin с директория src. В директорията на източника копирате в директориите с изходен код. От примера по-горе имате нужда от две стъпки, клонирайте директорията и стартирайте catkin_make.
$ cd / src$ git clone https: // github.com / crkaushik93 / Go-Chase-It-RSEND-Project-2.git
$ cd ..
$ catkin_make
За да направите по-малко дълбоко дърво, можете да преместите всяка поддиректория нагоре с една стъпка, но това не е задължително. Последната команда ще търси в директорията src / и ще намери целия код.
Инсталиране
Обикновено не инсталирате пакети само в системата за разработка. Въпреки това стартирате инсталация, за да създадете среда за инсталиране и среда за разработка. Командата catkin_make ги създава за вас. Докато продължавате, трябва да набавите единия за разработка, а другия за тестване. Директната инсталация ще създаде вашите директории, включително скриптовете за инициализиране на средите.
$ catkin_make инсталиране
Няма да имате инсталирани файлове на вашата система, а само в директорията на проекта. Това е чудесно, защото всичко, което трябва да направите, е да стартирате настройката и да започнете да тествате.
Или…
$ source install / setup_bashПървият е да изпълните тестване и да разберете какви грешки сте вградили в кода си.
Само ROS?
И така, това важи ли само за ROS1? Да, catkin е насочен само към библиотеките ROS1. Едно нещо, което трябва да се отбележи е, че по-голямата част от работата е cmake. Ще можете да преведете много от практиките в други проекти, които използват CMake. Трябва само да свършите повече работа, тъй като Catkin е опростил много задачи за вас. За ROS2 много неща са подобни, но решенията са по-усъвършенствани и имат повече функции, за да контролират колко компилирате всеки път. Можете да програмирате и в двете нива на ROS, между двете има мост!
Заключение
Catkin е много силен и универсален набор от инструменти, който улеснява работата ви много лесно и ви позволява да преминете през разработката на вашия код за роботика. Практиките обаче са отличен начин да научите повече за програмирането. Така че дори ако вашият проект за робот е само за най-близкия ви кръг и права за хвалене, можете да се възползвате от знания за други проекти.