低価格 Lidar RPLIDAR A2 を使ってみる

 自律移動する車(ロボット)が未知の環境を認識するには、移動して得た情報をもとに地図を作成するとともに、自身の位置も知る必要があります。
そのために地図と自己位置推定を同時に行うSLAMの技術が必要となります。

 

SLAMはLidarなどのセンサーから取得した情報から、自己位置推定と地図作成を同時に行うものです。 
車の上に搭載されているものは高額なので一般ピープルが気軽に買えるものではないです....
 
もう少し安いものでも50万ぐらいはするのでこれまた一般ピープルのお財布では購入するのが難しく、研究、教育機関でしか扱えなかったんじゃないかと思います。
私も大学時代に2次元のLidarを知りました。
 
一般人でも購入できるようなLidarはないか探してみたところ、RPLIDARといものの存在を知ったので購入してどんなものか動かしてみました。

f:id:panapp-paripari:20180420130523p:plain

 
SLAMはLidarなどのセンサーから取得した情報から、自己位置推定と地図作成を同時に行うものです。
自律移動する車(ロボット)が未知の環境を認識するには、移動して得た情報をもとに地図を作成するとともに、自身の位置も知る必要があります。
そのために地図と自己位置推定を同時に行うSLAMの技術が必要となります。
 
車の上に搭載されているものは高額なので一般ピープルが気軽に買えるものではないです....
 
もう少し安いものでも50万ぐらいはするのでこれまた一般ピープルのお財布では購入するのが難しく、研究、教育機関でしか扱えなかったんじゃないかと思います。
私も大学時代に2次元のLidarを知りました。
 
一般人でも購入できるようなLidarはないか探してみたところ、RPLIDARといものの存在を知ったので購入してどんなものか動かしてみました。
 
RPLIDAR A2 spec
-測定範囲 0.15 - 18m
-測定角度 0 - 360degree
-距離分解能 0.5未満(1.5m未満の場合) - 距離の1%未満(オールレンジ)
-サンプリング時間 0.25ms
-スキャンレート 5 - 15Hz (Typical value is 10 based on 400samples per round)
-高さ、41mm, 幅 76mm, 重さ190g
 
 
 
PRRIDAR A2の外観とサイズと付属品

f:id:panapp-paripari:20180420130617j:plain

f:id:panapp-paripari:20180420130555j:plain

f:id:panapp-paripari:20180420130608j:plain

f:id:panapp-paripari:20180420130459j:plain

f:id:panapp-paripari:20180420130608j:plain


環境
-ThinkPad X1 Carbon Gen5
-Windows 10 / Ubuntu 16.04.3
-RPLIDAR SDK version 1.6.0
 
 
LPRIDAR A2は360°の距離情報を10Hz 400点0.9°間隔で4000ポイントサンプリングすることができます。
 
準備 on Windows 
1.windows 搭載PCの準備
2.USB AdapterのInstall DriverのDownload リンク
3.RPLIDAR SDKのdownload リンク
 
USB Adaptorのinstall 
1.上記Install リンクから私はWindows10を使っているのでWindows UniversalをDownload
2.ダウンロードしたファイルの中にある、"CP210xVCPInstaller_x64.exe"を実行して完了
 
デモアプリケーションの実行
1.PCとPRLIDAR A2を接続する
2.RPLIDAR SDKの中に、"Frame-grabber.exe"というデモアプリケーションがあるので実行する。
3.Select Serial PortというのがでるのでデバイスマネージャからUSBのシリアルポート番号を確認してokを押す

f:id:panapp-paripari:20180420130533p:plain

ポート番号はデバイスマネージャのポートから見つけられます。

f:id:panapp-paripari:20180420131040p:plain


 
4.UIが表示されたあと、実行ボタンを押せばPRLIDARが動き始めてマッピングを開始します。
水色の点群が物体までの距離と角度を示しています。円になっている縦軸が距離、円が角度を示しています。
ざっくり見たところ10mぐらいまでは確認できました。スペックは18mまでと書いてあります。
このUIからモータの回転速度変更することができますが、maxまでするとRPLIDARが震え始めるのでデフォルトのままでいいでしょう。
 

f:id:panapp-paripari:20180420130516p:plain

準備 on Ubuntu 
1.ubuntuをインストールしたPCを用意する(x1 carbon gen5のインストール方法はこちら
2.ROSのインストール (X1 carbon gen5にROSをインストールする方法はこちら)
3.package のダウンロード
4.設定
5.実行
 
ROSでRPLIDAR
1.git cloneでRPLIDAR ROS パッケージをダウンロード
2.packageをbuildする
3.作成したワークスペースをインストール環境にOverlay
catkin_make
source devel/setup.bash
 
ROS RPLIDARサンプルパッケージの実行
1.シリアルポートの権限を確認、
ls -l /dev |grep ttyUSB
crw-rw ---- 1 root dialout 188, 0 x月 xx xx:xx ttyUSB0と表示されます。
 
2.書き込み権限の追加
sudo chmod 666 /dev/ttyUSB0
 
 
3.rplidarノードを起動し、rvizでスキャン結果を表示します。
roslaunch rplidar_ros view_rplidar.launch
4.実行結果
 かっこいい

f:id:panapp-paripari:20180420130547p:plain

まとめ
RPLIDAR A2を購入したので、Windows 環境とUbuntu(ROS)環境で動作を確認しました。
安価なLidarですが、屋内であれば障害物回避(Obstacle Avoidance), 自動マッピング(Autonomous Mapping),自動ルート作成(Route Planning), ナビゲーション(Navigation)につかえるのではないでしょうか。