앞서 catkin_ws를 만들어두었다. 이제 작업할 공간을 패키지화해보자. 앞으로 우리는 catkin 인프라를 따라서 ROS를 사용할 예정이다.

CATKIN_INFRASTRUCTURE


패키지로 만들어버린다.

cd ~/catkin_ws/src 
catkin_create_pkg spot_micro std_msgs rospy roscpp
cd ..
catkin_make
sb # 이제 . ~/catkin_ws/devel/setup.bash 가 생겨서 소스가 될거다

일단 패키지 config부터 내꺼로 바꿔준다

cw
cd src/spot_micro 
# 이 안에 있는 package.xml 파일을 열어서 maintainer tag와 liscence tag를 수정해주었다

모든 내용을 다 만들 수는 없으므로 열심히 서칭하여 누군가가 만들어둔 ROS package 샘플을 가져왔다.

(source : https://github.com/Road-Balance/SpotMicroJetson)

일단 무지성으로 /Common, /Kinematics, /urdf와 CMakeLists.txt, gen_urdf.sh, package.xml를 복사하여 spot_micro 폴더를 비우고 붙여넣는다.

이후 다시 package.xml에서 수정할 내용 수정해주고

cw
catkin_make

를 실행하여 패키지로 빌드해준다.

신기하게도 melodic으로 배포된 패키지인데 하나 뒤에 나온 noetic이 설치된 우분투 20.04 환경에서도 빌드가 된다. 신기하다.