Catkin Ros

Catkin Ros
Korzystając z systemu operacyjnego Robotics, w pewnym momencie będziesz chciał opracować oprogramowanie. W wersji ROS1, która jest w utrzymaniu do 2025 roku, użyjesz Catkin do kompilacji swoich projektów. Jeśli nie planujesz się programować, pamiętaj, że być może będziesz musiał skompilować oprogramowanie innych ludzi, więc nauka podstaw jest w każdym przypadku przydatna. W przypadku, który już przeprowadziłeś się do ROS2, będziesz używać Colcon do zrobienia tego samego.

Co to jest Catkin?

To narzędzie zostało opracowane dla ROS, systemu operacyjnego Robotics, przez zespół budujący ROS Tools. Ma wiele narzędzi do budowy projektu robotyki. Korzystanie z niego będzie konieczne, jeśli opracujesz roboty za pomocą ROS. Powinieneś pamiętać, że w ciągu ostatnich kilku lat było kilka pokoleń tych narzędzi. Oznacza to, że musisz wybrać najnowszy! Catkin jest instalowany z pełnym rozkładem ROS Noetic; Wszystko, o co musisz się zająć, to konfiguracja. Musisz ustawić właściwe środowisko do prowadzenia Catkina.

Konfigurowanie katalogu/środowiska

Utwórz katalog z sub-direktorycznym SRC/ Wewnątrz. MyRob/Src. Przykłady pochodzą z tutorialu dla początkujących.

catkin_make tworzy cmakelists.TXT w katalogu SRC. Wskazują na inne pliki, które składają się na projekt.

Następnie chcesz utworzyć swoje pakiety.

Idź do katalogu SRC

catkin_createpkg
$ catkin_createpkg początkujący_tuorials std_msgs ropy roscpp

Zwróć uwagę na błąd w poleceniu. To tworzy wszystko, jakbyś się nie pomylił. Wynik znajdziesz w plikach z GREP.

$ grep -r ropy
Ubuntu@noetic:/home/ubuntu/catkin_ws/src/beginner_tuorials
$ grep -r ropy.
./Cmakelists.TXT: Ropy
./Cmakelists.txt:# catkin_depends ropy roscpp std_msgs
./pakiet.XML: Ropy
./pakiet.XML: Ropy
./pakiet.XML: Ropy

Następny kompilacja zawiedzie. Masz teraz dwie możliwości, edytuj pliki lub usuń cały katalog. Skrypt jest zwykle szybki, więc najłatwiejszym jest usunięcie i ponowne uruchomienie polecenia Utwórz. Po wyczyszczeniu tych błędów kontynuujesz budowanie paczki. Tak czy inaczej, kiedy go naprawiłeś, przejdź do korzenia obszaru roboczego i ponownie uruchom catkin_make. Idąc z dowolnym projektem, zawsze wrócisz do korzenia obszaru roboczego, aby cały projekt stworzył cały projekt. To tylko upewnia się, że wszystko istnieje poprawnie, istnieje kilka sprytnych sztuczek, więc nie musisz rekompilować całego projektu za każdym razem.

$ cd ~ catkin_ws/ $ catkin_make

Jeśli tym razem się powiedzie, właśnie stworzyłeś swój pierwszy pakiet. Pamiętaj, aby naprawić pakiet.plik XML. Prawdopodobnie powinieneś poprawnie ustawić swoje imię i licencję. Jest więcej ustawień, wszystkie są łatwe do zrozumienia.

Mały projekt

Teraz zrób to ponownie w nowym katalogu i utwórz swój projekt. Albo jeszcze lepiej: dla ćwiczeń wybierz projekt z GitHub, zobacz, dokąd zmierza, a następnie zacznij zmieniać go na swoje upodobanie. Aby to zrobić, możesz stworzyć obszar roboczy dla Catkin z katalogiem SRC. W katalogu źródłowym kopiujesz w katalogach kodu źródłowego. Z przykładu powyżej potrzebujesz dwóch kroków, klonuj katalog i uruchom catkin_make.

$ cd /src
$ git clone https: // github.com/crkaushik93/go-chase-it-rsend-prboct-2.git
$ CD…
$ catkin_make

Aby stworzyć mniej głębokie drzewo, możesz przesunąć każdy sub-drektory w górę o jeden krok, ale jest to opcjonalne. Ostatnie polecenie przeszukie katalog SRC/ i znajdzie cały kod.

Instalowanie

Zwykle nie instalujesz pakietów tylko w systemie programistycznym. Uruchamiasz jednak instalację, aby utworzyć środowisko instalacyjne i środowisko programistyczne. Polecenie Catkin_Make tworzy je dla Ciebie. Podczas ruszania powinieneś pozbyć się jednego do rozwoju, a drugi do testowania. Bezpośrednia instalacja utworzy Twoje katalogi, w tym skrypty do zainicjowania środowisk.

$ catkin_make instalacja


Nie będziesz mieć plików zainstalowanych w systemie, tylko w katalogu projektu. To świetnie, ponieważ wszystko, co musisz zrobić, to uruchomić konfigurację i rozpocząć testowanie.

$ Source Devel/Setup_bash

Lub…

$ Źródło Instal/setup_bash

Pierwszy jest przeprowadzenie testów i dowiedzieć się, jakie błędy osadziłeś w swoim kodzie.

Tylko Ros?

Czy to ważne tylko dla ROS1? Tak, Catkin jest skierowany tylko do bibliotek ROS1. Należy jednak zauważyć, że większość zadań to cmake. Będziesz w stanie przetłumaczyć wiele praktyk na inne projekty, które korzystają z CMake. Musisz tylko wykonać więcej pracy, ponieważ Catkin uprościł dla Ciebie wiele zadań. W przypadku ROS2 wiele rzeczy jest podobnych, ale rozwiązania są bardziej wyrafinowane i mają więcej funkcji do kontrolowania, ile kompilujesz za każdym razem. Możesz także zaprogramować na obu poziomach ROS, istnieje pomost między nimi!

Wniosek

Catkin to bardzo silny i wszechstronny zestaw narzędzi, który sprawia, że ​​Twoja praca jest znacznie prostsza i pozwala przejść przez szlifowanie opracowania kodu robotyki. Praktyki to jednak doskonały sposób na dowiedzieć się więcej o programowaniu. Więc nawet jeśli twój projekt robota jest przeznaczony tylko dla twojego najbliższego kręgu i chwalenia się, możesz skorzystać z wiedzy na temat innych projektów.