Поиск по сайту:

Большинство людей находят концепцию программирования очевидной, но само программирование невозможным. (Алан.Дж.Перлис)

Catkin ROS3 мин для чтения

FavoriteLoadingДобавить в избранное
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
16 декабря 2020
Catkin ROS
При использовании операционной системы Robotics в какой-то момент вы захотите разработать свое программное обеспечение. Для версии ROS1, которая находится на обслуживании до 2025 года, вы будете использовать Catkin для компиляции своих проектов. Если вы не планируете программировать самостоятельно, обратите внимание, что вам, возможно, придется компилировать программное обеспечение других людей, поэтому изучение основ будет полезно в любом случае. В случае, если вы уже перешли на ROS2, вы будете использовать colcon, чтобы сделать то же самое.

 

Что такое Catkin?

Этот инструмент разработан для 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 ropy
ubuntu@noetic:/home/ubuntu/catkin_ws/src/beginner_tutorials
$ grep -r ropy.
./CMakeLists.txt:  ropy
./CMakeLists.txt:#  CATKIN_DEPENDS ropy roscpp std_msgs
./package.xml:  ropy
./package.xml:  ropy
./package.xml:  ropy

 

Следующая компиляция завершится ошибкой. Теперь у вас есть два варианта: отредактировать файлы или удалить весь каталог. Сценарий обычно выполняется быстро, поэтому проще всего удалить и повторно запустить команду create. После устранения этих ошибок вы продолжаете сборку пакета. В любом случае, когда вы исправите это, перейдите в корень рабочей области и снова запустите catkin_make. При переходе к любому проекту вы всегда будете возвращаться в корень рабочей области, чтобы создать весь проект. Это только гарантирует, что все существует правильно, есть несколько хитрых уловок, чтобы вам не приходилось каждый раз перекомпилировать весь проект.

$ cd ~catkin_ws/ $ catkin_make

 

Читать  Как вырастить свою аудиторию с помощью Instagram в 2020 году. Часть 2

Если на этот раз это удастся, вы только что создали свой первый пакет. Не забудьте исправить файл package.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 install

 

У вас не будет файлов, установленных в вашей системе, только в каталоге проекта. Это здорово, потому что все, что вам нужно сделать, это запустить настройку и начать тестирование.

$ source devel/setup_bash

 

Или же…

$ source install/setup_bash

 

Первый – это запустить тестирование и выяснить, какие ошибки вы вложили в свой код.

 

Только ROS?

Итак, это действительно только для ROS1? Да, catkin предназначен только для библиотек ROS1. Следует отметить, что большая часть работы – это cmake. Вы сможете перенести многие практики в другие проекты, использующие CMake. Вам нужно только выполнить больше работы, поскольку Catkin упростил для вас многие задачи. Для ROS2 многое схоже, но решения более усовершенствованы и имеют больше функций, позволяющих контролировать объем компиляции каждый раз. Вы также можете программировать на обоих уровнях ROS, между ними существует мост!

Читать  Как добавить элементы в список в Python (добавить, расширить и вставить)

 

Заключение

Catkin – это очень мощный и универсальный набор инструментов, который значительно упрощает вашу работу и позволяет справиться с трудностями разработки кода робототехники. Однако практики – отличный способ узнать больше о программировании. Таким образом, даже если ваш проект робота предназначен только для вашего ближайшего окружения и имеет право хвастаться, вы можете извлечь пользу из знаний для других проектов.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Читайте также

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close