###### tags: `raspberrypi` `ROS` `Lidar`
# Raspberry Pi 4 (Ubuntu 20.04) で YDLidar X2 を動かす (点群情報取得)
## Raspberry Pi 4 スペック
| 項目 | 仕様 |
| -------- | -------- |
| メモリ | 8 GB |
| OS | Ubuntu 20.04 |
## YDLidar について
> 公式サイト
> https://www.ydlidar.com/index.html
> サポートページ
> https://www.ydlidar.com/service_support.html
今回は、YDLidar X2 を使用します。
## ROS 環境構築
(省略)
ROS のディストリビューションは noetic を使っています。
## YDLidar を Raspberry Pi 4 上の ROS を使って動作させる
YDLidar X2 を Raspberry Pi 4 の Ubuntu20.04 上の ROS を使って動作させるためには、以下の作業が必要です。
- YDLidar-SDK のビルド・インストール
- ydlidar_ros_driver 環境構築
### YDLidar-SDK のビルド・インストール
ydlidar_ros_driver のインストール前に、YDLidar-SDK をインストールする必要があります。
> ドキュメント
> https://github.com/YDLIDAR/YDLidar-SDK
> インストール方法ドキュメント
> https://github.com/YDLIDAR/YDLidar-SDK/blob/master/doc/howto/how_to_build_and_install.md
#### 必要パッケージのインストール
```
sudo apt install cmake pkg-config
```
#### YDLidar-SDK のビルド・インストール
任意のフォルダにインストールします。
```
git clone https://github.com/YDLIDAR/YDLidar-SDK.git
mkdir -p YDLidar-SDK/build
cd YDLidar-SDK/build
cmake ..
make
sudo make install
```
### ydlidar_ros_driver 環境構築
> ドキュメント
> https://github.com/YDLIDAR/ydlidar_ros_driver
#### ydlidar_ros_driver のインストール
```
cd catkin_ws/src
git clone https://github.com/YDLIDAR/ydlidar_ros_driver.git
cd ydlidar_ws
catkin_make
```
#### 環境設定
- `setup.sh` を実行します。
```
source ./devel/setup.sh
```
`~/.bashrc` に書いておくとよいです。
###### ~.bashrc
```
source ~/ydlidar_ws/devel/setup.bash
```
- `$ROS_PACKAGE_PATH` の値を確認します。
```
echo $ROS_PACKAGE_PATH
```
- シリアルポートのエイリアス設定を実行します。
```
chmod 777 src/ydlidar_ros_driver/startup/*
sudo sh src/ydlidar_ros_driver/initenv.sh
```
#### ydlidar_ros_driver の実行
- Raspberry pi 4 に YDLidar X2 を接続します。
- `roslaounch` コマンドを実行します。
```
roslaunch ydlidar_ros_driver X2.launch
```
- 別のターミナルを開いて、`rostopic` コマンドで YDLidar の動作を確認します。
```
rostopic echo /scan
```
#### Rviz での可視化
- launch 設定ファイルは、`src/ydlidar_ros_driver/launch` ディレクトリにあります。
- `lidar_view.launch` をコピーし `lidar_view_X2.launch` を作成し、YDLidar X2 向けに変更します。
```
cp ~/catkin_ws/src/ydlidar_ros_driver/launch/lidar_view.launch ~/catkin_ws/src/ydlidar_ros_driver/launch/lidar_view_X2.launch
```
- `lidar_view_X2.launch` の `lidar.launch` を `X2.launch` に変更します。
##### lidar_view_X2.launch
```
<launch>
<include file="$(find ydlidar_ros_driver)/launch/X2.launch" />
<node name="rviz" pkg="rviz" type="rviz" args="-d $(find ydlidar_ros_driver)/launch/lidar.rviz" />
</launch>
```
- `roslaunch` コマンドを実行します。
```
roslaunch ydlidar_ros_driver lidar_view_X2.launch
```
- YDLidar が高速回転し、Rviz に点群データが表示されることを確認します。
