Co to jest kotka?
To narzędzie zostało opracowane dla ROS, systemu operacyjnego robotyki, przez zespół tworzący narzędzia ROS. Posiada wiele narzędzi do budowania projektu robotyki. Korzystanie z niego będzie konieczne, jeśli opracujesz roboty z wykorzystaniem ROS. Należy mieć świadomość, że w ciągu ostatnich kilku lat pojawiło się kilka generacji tych narzędzi. Oznacza to, że musisz wybrać najnowszą! Catkin jest instalowany z pełną dystrybucją noetic ROS; wszystko, o co musisz zadbać, to konfiguracja. Musisz ustawić odpowiednie środowisko do uruchomienia Catkin.
Konfigurowanie katalogu/środowiska
Utwórz katalog z podkatalogiem src/ w nim. MójRob/src. Przykłady pochodzą z samouczka dla początkujących.
catkin_make tworzy CMakelist.txt w katalogu src. Wskazują one na inne pliki, które składają się na projekt.
Następnie chcesz stworzyć swoje pakiety.
Przejdź do katalogu src
catkin_createpkg$ catkin_createpkg beginner_tutorials std_msgs ropy roscpp
Zwróć uwagę na błąd w poleceniu. To tworzy wszystko tak, jakbyś się nie mylił. Możesz znaleźć wynik w plikach za pomocą grep.
$ grep -r lepkiubuntu@noetic:/home/ubuntu/catkin_ws/src/beginner_tutorials
$ grep -r lepki. ./Listy CMake.txt: ropy
./Listy CMake.txt:# CATKIN_DEPENDS roscpp std_msgs
./pakiet.xml: gruba
./pakiet.xml: gruba
./pakiet.xml: gruba
Następna kompilacja nie powiedzie się. Masz teraz dwie możliwości, edytuj pliki lub usuń cały katalog. Skrypt jest zwykle szybki, więc najłatwiej jest usunąć i ponownie uruchomić polecenie tworzenia. Po usunięciu tych błędów kontynuuj budowanie pakietu. Tak czy inaczej, po naprawieniu przejdź do katalogu głównego obszaru roboczego i uruchom ponownie catkin_make. Gdy przejdziesz do dowolnego projektu, zawsze będziesz wracał do katalogu głównego obszaru roboczego, aby stworzyć cały projekt. To tylko upewnia się, że wszystko istnieje poprawnie, jest kilka sprytnych sztuczek, dzięki czemu nie musisz za każdym razem ponownie kompilować całego projektu.
$ cd ~catkin_ws/ $ catkin_makeJeśli tym razem się uda, właśnie stworzyłeś swój pierwszy pakiet. Pamiętaj, aby naprawić swój pakiet.plik xml. Prawdopodobnie powinieneś poprawnie ustawić swoje imię i nazwisko oraz 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 praktyki, wybierz projekt z GitHub, zobacz, dokąd idzie, a następnie zacznij go zmieniać według własnych upodobań. Aby to zrobić, możesz stworzyć przestrzeń roboczą dla catkin z katalogiem src. W katalogu źródłowym kopiujesz w katalogach kodu źródłowego. Z powyższego przykładu potrzebujesz dwóch kroków, sklonuj katalog i uruchom catkin_make.
$ cd /src$ klon git https://github.com/crkaushik93/Go-Chase-It-RSEND-Project-2.git
$ cd…
$ catkin_make
Aby utworzyć mniej głębokie drzewo, możesz przenieść każdy podkatalog o jeden stopień wyżej, ale jest to opcjonalne. Ostatnie polecenie przeszuka katalog src/ i znajdzie cały kod.
Instalowanie
Zazwyczaj nie instalujesz pakietów tylko w systemie deweloperskim. Jednak uruchamiasz install, aby utworzyć środowisko instalacyjne i środowisko programistyczne. Komenda catkin_make tworzy je za Ciebie. Idąc dalej, powinieneś zaopatrzyć się w jeden do programowania, a drugi do testowania. Bezpośrednia instalacja utworzy twoje katalogi, w tym skrypty do inicjalizacji środowisk.
$ catkin_make zainstaluj
Nie będziesz mieć zainstalowanych plików w swoim systemie, tylko w katalogu projektu. To jest świetne, ponieważ wszystko, co musisz zrobić, to uruchomić konfigurację i rozpocząć testowanie.
Lub…
$ source install/setup_bashPierwszym z nich jest przeprowadzenie testów i sprawdzenie, jakie błędy zostały osadzone w swoim kodzie.
Tylko ROS?
Czy to dotyczy tylko ROS1?? Tak, kotka jest skierowana tylko do bibliotek ROS1. Należy jednak zauważyć, że większość pracy to cmake. Wiele praktyk będziesz mógł przełożyć na inne projekty wykorzystujące 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 dopracowane i mają więcej funkcji kontrolujących ilość kompilacji za każdym razem. Możesz również programować na obu poziomach ROS, między nimi jest most!
Wniosek
Catkin to bardzo silny i wszechstronny zestaw narzędzi, który znacznie ułatwia pracę i pozwala przejść przez grind opracowywania kodu robotyki. Praktyki są jednak doskonałym sposobem, aby 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 masz prawo do przechwałek, możesz skorzystać z wiedzy do innych projektów.