본문 바로가기
Robotics 🤖/Ubee

Ouster LiDAR OS1 32채널 ROS 셋업하기 (rviz)

by 우직한 사람 2023. 12. 21.
반응형

올해 초에 교수님이  이런 고가 센서도 다뤄보라고 좋은 기회를 주셨는데 바빠서 아무도 사용하지 못하다가 종강 하자마자 꺼내서 한번 사용해보려고 한다.

 

사용 보드 : Jetson Xavier AGX

Ubuntu Version : 20.04 (ROS noetic)

라이다 정보 : Ouster LiDAR OS1 32CH

 

전에 VLP-16을 다뤘었는데 이번에는 퍽보다 채널 수가 2배라 기대된다

 

구성품

- LiDAR 본체

- SMPS (전원 케이블)

- 인터페이스 박스

 

주의 사항

라이다 배터리 공급은 22-26VDC 사이 정격 출력은 1.5A이다

SMPS가 없으신 분은 참고하세요!

 

git clone

workspace에 들어가서 아래 명령어로 git clone 해준다

//git clone
git clone --recurse-submodules https://github.com/ouster-lidar/ouster-ros.git

//move ws
cd /<workspace>

//rospack update
source devel/setup.bash

//build
catkin_make or catkin build

 

케이블 연결

아래와 같이 인터페이스 박스에 전원 케이블과 랜선을 연결한다.

 

네트워크 설정

ifconfig 명령어를 입력하여 현재 PC에 연결되어 있는 IP를 확인해보자

가장 마지막에 나오는 정보가 현재 PC 연결되어 있는 IP 정보다

필자의 경우 192.168.1.53 이다.

 

네트워크 설정 창에서 IPv4 탭 -> Address와 Netmask를 입력하고 Apply 버튼을 눌러준다

Address에 192.168.1로 시작하는 임의의 IP주소를 설정해준다.

필자는 192.168.1.10으로 세팅했음 Netmask는 255.255.255.0이다.

 

ifconfig 확인

ifconifg눌러서 확인해보자 왼쪽의 네트워크 디바이스 이름을 보면 eth0이라고 표시되어 있다.

IP도 잘 설정 되어있음 IP 값이 다르다면 reboot 하여 확인해보자

 

그래도 안된다면 명령어를 이용하여 ip를 설정할 수 있다.

 

sudo ip add flush eth0
ip addr show dev eth0

 

sudo ip link set eth0 up
sudo ip addr add 192.168.1.10/24 dev eth0

 

 

 

DHCP 센서 IP 할당

아래 명령어를 이용하여 192.168.1.0과 192.168.1.100사이에 있는 임의의 IP를 센서 IP로 동적할당할 수 있다.

sudo dnsmasq -C /dev/null -kd -F 192.168.1.0,192.168.1.100 -i enp46s0 --bind-dynamic

192.168.1.84가 DHCP에서 할당받은 센서 IP이다

 

그다음 위에서 clone했던 소스코드 중 launch 디렉터리의 sensor.launch를 수정해줘야 한다.

 

이렇게 첫 부분에 파라미터들을 수정해줘야 하는데

  <arg name="sensor_hostname" default = "192.168.1.84" doc="hostname or IP in dotted decimal form of the sensor"/>
  <arg name="udp_dest" default="192.168.1.10" doc="hostname or IP where the sensor will send data packets"/>

다음과 같이 sensor_hostname에 센서 ip를, udp_dest에 처음에 설정해줬던 네트워크 ip로 설정해주면된다.

 

실행

roslaunch ouster_ros sensor.launch

 

결과

정상적으로 point cloud가 생성되는 것을 확인할 수 있다.

 

https://youtu.be/mdWkgVH_ICU?si=hGL96fBs7Ofsg6d9

 

반응형