- 개발 환경 : Raspberry Pi 4B (Ubuntu 18.04 / ROS melodic)
- 준비물 : ydlidar X4
- 참조 : https://github.com/YDLIDAR/ydlidar_ros
https://github.com/EAIBOT/ydlidar/blob/master/launch/lidar.launch
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=rmlee&logNo=221475076977
* ydlidar X4 Spec
- Sampling frequency (Hz) : 5000
- Range frequency (Hz) : 6 - 12
- Range Radius (m) : 0.12 - 10
- Baud rate : 128000
- Size : 47.5x60x95
Step1. Raspberry Pi 4B에 Ubuntu 18.04 설치하기
Step2. Ubuntu 18.04에 ROS melodic 설치하기
Step3. ydlidar
- 참고 메뉴얼 :
- Raspberry Pi 4B에 ydlidar-X4 연결
- lidar package 설치 및 컴파일
$ cd ~/catkin_ws/src
$ git clone https://github.com/EAIBOT/ydlidar.git
$ cd ..
$ catkin_make
$ cd ~/catkin_ws/src/ydlidar/startup
$ sudo chmod +x initenv.sh
$ sudo sh initenv.sh
$ cd
$ ls /dev/ttyUSB*
lidar의 USB 연결 정보 확인 후
catkin_ws/src/ydlidar/launch에서 lidar.launch에서
/dev/ttyUSB*수정
- 라이다 rivz 실행 및 frame_ID 확인하기
$ cd ~/catkin_ws
$ source ./devel/setup.bash
$ roslaunch ydlidar lidar_view.launch
$ rostopic list
$ rostopic echo /scan
- lidar.launch 파일 수정
$ cd ~/catkin_ws/src/ydlidar/launch
// lidar.launch 파일 수정
<launch>
<node name="ydlidar_node" pkg="ydlidar" type="ydlidar_node" output="screen" respawn="false" >
<param name="port" type="string" value="/dev/ydlidar"/>
<param name="baudrate" type="int" value="128000"/>
<param name="frame_id" type="string" value="laser"/>
<param name="resolution_fixed" type="bool" value="true"/>
<param name="auto_reconnect" type="bool" value="true"/>
<param name="reversion" type="bool" value="false"/>
<param name="angle_min" type="double" value="-180" />
<param name="angle_max" type="double" value="180" />
<param name="range_min" type="double" value="0.1" />
<param name="range_max" type="double" value="12.0" />
<param name="ignore_array" type="string" value="" />
<param name="frequency" type="double" value="8"/>
<param name="samp_rate" type="int" value="5"/>
</node>
</launch>
- ydlidar_node.cpp 파일 수정
https://github.com/EAIBOT/ydlidar/pull/19/files
*변경 전
scan_msg.scan_time = scan.config.scan_time;
scan_msg.time_increment = scan.config.time_increment;
*변경 후
scan_msg.scan_time = 1/_frequency;
scan_msg.time_increment = 1/((float)samp_rate*1000);
- 라이다 실행
$ roslaunch ydlidar lidar.launch
- Rviz
$ roslaunch ydlidar lidar_view.launch
'작업 일기' 카테고리의 다른 글
Arduino와 ROS로 Flexible LED 구동하기 (0) | 2021.10.28 |
---|---|
Arduino와 ROS로 IMU 센서 (MPU 9250 ) 사용하기 (0) | 2021.10.27 |
Ubuntu 18.04에 ROS melodic 설치하기 (0) | 2021.10.21 |
가상 머신 Vmware에 Ubuntu 18.04 설치하기 (0) | 2021.10.21 |
Raspberry Pi 4B에 Ubuntu 18.04 설치하기 (0) | 2021.10.20 |