Что такое Сэткин?
Этот инструмент разработан для ROS, операционной системы робототехники, командой, создающей инструменты ROS. В нем есть множество инструментов для создания вашего проекта робототехники. Использование будет необходимо, если вы разрабатываете роботов с использованием ROS. Вы должны знать, что за последние несколько лет появилось несколько поколений этих инструментов. Это означает, что вам нужно выбрать самую новую! Catkin устанавливается с полным дистрибутивом ROS noetic; все, о чем вам нужно позаботиться, это конфигурация. Вам необходимо установить правильную среду для запуска 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: / главная / 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.мерзавец
$ cd…
$ catkin_make
Чтобы сделать менее глубокое дерево, вы можете переместить каждый подкаталог на один шаг вверх, но это необязательно. Последняя команда выполнит поиск в каталоге src / и найдет весь код.
Установка
Обычно вы не устанавливаете пакеты только в систему разработки. Однако вы запускаете установку, чтобы создать среду установки и среду разработки. Команда catkin_make создает их за вас. По мере продвижения вы должны использовать один для разработки, а другой - для тестирования. Прямая установка создаст ваши каталоги, включая сценарии для инициализации сред.
$ catkin_make install
У вас не будет файлов, установленных в вашей системе, только в каталоге проекта. Это здорово, потому что все, что вам нужно сделать, это запустить настройку и начать тестирование.
Или же…
$ source install / setup_bashПервый - запустить тестирование и выяснить, какие ошибки вы встроили в свой код.
Только ROS?
Итак, это действительно только для ROS1? Да, catkin предназначен только для библиотек ROS1. Следует отметить, что большая часть работы - это cmake. Вы сможете перенести многие практики в другие проекты, использующие CMake. Вам нужно только сделать больше, так как Catkin упростил для вас многие задачи. Для ROS2 многое схоже, но решения более усовершенствованы и имеют больше функций, позволяющих контролировать объем компиляции каждый раз. Вы также можете программировать на обоих уровнях ROS, между ними существует мост!
Заключение
Catkin - это очень мощный и универсальный набор инструментов, который значительно упрощает вашу работу и позволяет вам справиться с рутинной разработкой кода робототехники. Однако практики - отличный способ узнать больше о программировании. Таким образом, даже если ваш проект робота предназначен только для вашего ближайшего окружения и имеет право хвастаться, вы можете извлечь пользу из знаний для других проектов.