이번에 졸업작품에서 cyglidar_d1 이라는 라이다센서를 사서 그 라이다 센서를 ROS 에 올리고 python3 로 코드를 정리하는 과정을 정리해 보았다.
device : jetson nano 4gb
os : ubuntu 18.04
ros : melodic
ROS melodic 설치 방법은 아래 링크를 참고하라
https://jeahun10717.tistory.com/68
CygLiDAR ROS 설치는 아래 링크를 참고하면 된다.
https://github.com/CygLiDAR-ROS/cyglidar_d1
하지만 위의 링크에서 생략되거나 설명을 안해주는 부분이 좀 있어서 내가 다시 정리한다.
1. Preparation
mkdir -p ~/cyglidar_ws/src/
cd ~/cyglidar_ws/src/
git clone https://github.com/CygLiDAR-ROS/cyglidar_d1.git
cd ..
catkin_make -DPYTHON_EXECUTABLE=/usr/bin/python3
위의 명령어 차례대로 치면 된다.
* 여기서 주의해야할 점이 원래 공식사이트에서는 catkin_make 를 치는데 이렇게 되면 python 2.x 버전을 사용하게 된다.
필자의 경우 numpy 와 추후에 사용할 tensorflow 때문에 python3.x 버전을 사용해야 해서 catkin_make -DPYTHON_EXECUTABLE=/usr/bin/python3 명령어를 사용하였다.
* 그리고 위의 catkin_make -DPYTHON_EXECUTABLE=/usr/bin/python3 명령어를 치더라도 아래 오류가 뜰 수 있다.
이는 cmake 과정에서 import 할 패키지가 없을 경우에 발생한다.
따라서 아래 명령어를 치면 해결된다.
# pip3 가 안깔려 있을 때 아래 명령어로 pip3 실행
$ sudo apt install python3-pip
# rosdep 관련 패키지들 설치
$ pip3 install -U rosdep rosinstall_generator wstool rosinstall six vcstools
위 명령어 치고 다시 catkin_make -DPYTHON_EXECUTABLE=/usr/bin/python3 치면 정상적으로 동작한다.
sudo apt install ros-noetic-pcl-conversions
sudo apt install ros-noetic-pcl-ros
---or---
# 필자는 ros-melodic 을 설치하여서 아래 2개의 명령어만 쳤다.
sudo apt install ros-melodic-pcl-conversions
sudo apt install ros-melodic-pcl-ros
2. Installation Udev
roscd cyglidar_d1
cd scripts
chmod +x create_udev_rules.sh
./create_udev_rules.sh
위의 명령어중 roscd 를 했을 때 아래 오류가 뜰 수 있다.
roscd: No such package/stack 'cyglidar_d1'
이는 ros 패키지에 cyglidar_d1 을 등록하지 않아서 생기는 문제이다. 등록은 아래 명령어를 치면 된다.
# 1회성으로 해당 터미널에서만 적용하고 싶을 때
$ source ~/cyglidar_ws/devel/setup.bash
# 새로운 터미널이 열릴 때마다 디폴트로 실행하고 싶을 때
$ echo "source ~/cyglidar_ws/devel/setup.bash" >> ~/.bashrc
3. Run CygLiDAR
roslaunch cyglidar_d1 cyglidar.launch
roslaunch cyglidar_d1 view_cyglidar.launch
위의 명령어를 치면 아래 결과가 나온다.
# 활성화 되어 있는 rostopic 을 보여준다
$ rostopic list
[결과화면]
# [토픽이름]으로 전송되어지고 있는 자료를 터미널에서 볼 수 있게 해 준다.
$ rostopic echo [topic_name]
# ex)
$ rostopic echo scan_3D
[결과화면]
'프로그램 설치 및 환경설정 > IOT' 카테고리의 다른 글
[IOT/DL] Jetson Nano 에 YoLO, opencv with cuda 설치 (0) | 2023.10.14 |
---|---|
[ROS] CygLiDAR_D1 초기설정, 구동 전체 정리(졸업작품) (0) | 2023.09.14 |
[IOT] JetsonNano, RaspberryPi GPIO pin mapping (0) | 2023.05.30 |
[ROS / Jetson Nano] Jetson Nano ROS 설치 (0) | 2023.05.06 |
[IOT / Jetson Nano] jetson 나노 초기화 밑 ubuntu 설치 (0) | 2023.04.07 |