IT 개발/Sensor

Ubuntu 에서 Velodyne VLP-16 데이터 Visualize 하기

KimDol2 2023. 6. 2. 19:37

 

 

벨로다인 라이다 VLP-16을 가지고 SLAM을 돌려보려고 하니 대부분 Ubuntu 환경에서 동작하는 코드이다. 그래서 우선 Ubuntu 에서 VLP-16 데이터를 Visualize 해보려고 한다. 구글에서 Ubuntu vlp-16으로 검색해 보면 우분투 환경에서 VLP-16을 셋팅하는 방법이 자세히 나와 있다. 

 

먼저 참고로 한 블로그 링크는 

http://daddynkidsmakers.blogspot.com/2019/06/odroid-veloview-ros.html 인데 

 

우분투 기반 벨로다인 라이다와 ROS 설치, 연결 및 설정

벨로다인, 라이다, ros, LiDAR, 연결, rviz, VLP16, VLP, 우분투, 오드로이드, 건설, BIM, 강태욱, 엔비디아, TK2

daddynkidsmakers.blogspot.com

 

중간 순서에 ifconfig 로 ip 주소를 바꾸는 부분이 있는데 이상하게 ip셋팅을 변경하면 라이다 센서와 연결이 안되는 상태가 되고 만다. 원인은 모르겠고 몇 번의 삽질 끝에 과감하게 ip 주소를 변경하는 부분은 제외하고 순서대로 진행했더니 정상적으로 데이터가 들어온다. -_-??

 

우선 개발 환경은 Ubuntu 18.04.6 LTS 이고  ROS melodic 이며, 아래는 내가 셋팅한 순서대로 정리하였다.

 

1. IP  셋팅

VLP-16과 Ubuntu 장비와 LAN 을 연결하고 VLP-16 의 전원을 켜고 Network 셋팅 화면으로 들어가 연결되어 있는 Ethernet의 IP 주소를 셋팅한다.  아래 그림과 같이 연결된 Ethernet (여기서는 enp10s0) 의 IP 설정 버튼을 (톱니바퀴) 클릭하여 IP 셋팅 창을 연다.

 

 

IP 셋팅 창의 IPv4 탭을 누르고 아래와 같이 IPv4 Method 를 Manual 로 선택하고 

Address 는 아래와 같이 

IP : 192.168.1.70

Netmask : 255.255.255.0

Gateway : 0.0.0.0

 

Routes 는

Automatic을 OFF 로 하고 Use this connection only for resources on its network 을 체크한다.

 

 

2. VLP-16 과 연결 확인

VLP-16 의 전원을 켜고 브라우저에서 192.168.1.201 (Factory set IP Address) 을 입력하여 연결을 확인한다. 웹 화면의 Configuration 탭에서 Host 와 Network 의 IP 가 맞는지 확인하고 Diagnostics 탭에서 센서 데이터가 잘 들어오는지 확인한다.  

 

 

3. VLP ROS 패키지를 설치

터미널에서 아래와 같이 명령행을 차례대로 입력하여 VLP ROS 패키지를 설치를 설치한다. 이때 ROS 버전에 따라 

sudo apt-get install ros-VERSION-velodyne (melodic, kinetic 등) ROS 의 버전 명을 써준다. 

 

$ sudo apt-get install ros-melodic-velodyne
$ cd catkin_ws/src
$ git clone https://github.com/ros-drivers/velodyne
$ cd ..
$ catkin_make
$ cd src 
$ roslaunch velodyne_pointcloud VLP16_points.launch
$ rosrun rviz rviz -f velodyne

위와 같이 VLP ROS 패키지를 설치하고, roslaunch 명령어를 실행하여 VLP-16으로 부터 포인트 클라우드 데이터를 전송받고, rosrun 명령어를 실행하여 rviz 프로그램을 실행한다.

 

4. rviz 프로그램 셋팅

아래와 같이 rviz 프로그램에서 하단의 Add 버튼을 클릭해서 PointCloud2 를 추가한다.

 

추가된 PointCloud2 에 Topic 을 /velodyne_points 로 선택하면 rviz 에서 VLP-16 데이터를 확인 할 수 있다.

 

 

Ubuntu 에서 VLP-16 데이터를 문제 없이 읽었으니 이제 라이다 기반 SLAM 알고리즘을 돌려봐야겠다. :-)

 

 

반응형