Роботика

Catkin ROS

Catkin ROS
Когато използвате операционната система Robotics, в даден момент ще искате да разработите своя софтуер. За версията ROS1, която се поддържа до 2025 г., ще използвате Catkin, за да компилирате вашите проекти. Ако не планирате да програмирате себе си, имайте предвид, че може да се наложи да компилирате софтуер на други хора, така че изучаването на основите е полезно във всеки случай. За случая, в който вече сте преминали към ROS2, ще използвате colcon, за да направите същото.

Какво е 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 ropy
ubuntu @ 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 devel / setup_bash

Или…

$ source install / setup_bash

Първият е да изпълните тестване и да разберете какви грешки сте вградили в кода си.

Само ROS?

И така, това важи ли само за ROS1? Да, catkin е насочен само към библиотеките ROS1. Едно нещо, което трябва да се отбележи е, че по-голямата част от работата е cmake. Ще можете да преведете много от практиките в други проекти, които използват CMake. Трябва само да свършите повече работа, тъй като Catkin е опростил много задачи за вас. За ROS2 много неща са подобни, но решенията са по-усъвършенствани и имат повече функции, за да контролират колко компилирате всеки път. Можете да програмирате и в двете нива на ROS, между двете има мост!

Заключение

Catkin е много силен и универсален набор от инструменти, който улеснява работата ви много лесно и ви позволява да преминете през разработката на вашия код за роботика. Практиките обаче са отличен начин да научите повече за програмирането. Така че дори ако вашият проект за робот е само за най-близкия ви кръг и права за хвалене, можете да се възползвате от знания за други проекти.

Vulkan за потребители на Linux
С всяко ново поколение графични карти виждаме, че разработчиците на игри преместват границите на графичната вярност и се приближават една крачка до фо...
OpenTTD срещу Simutrans
Създаването на собствена транспортна симулация може да бъде забавно, релаксиращо и изключително примамливо. Ето защо трябва да сте сигурни, че изпробв...
Урок за OpenTTD
OpenTTD е една от най-популярните бизнес симулационни игри там. В тази игра трябва да създадете прекрасен транспортен бизнес. Въпреки това, ще започне...