名称 MIRS2302 技術調査報告書(RPLiDAR)
番号 MIRS2302-REPT-0002

版数 最終更新日 作成 承認 改訂記事
A1 2023.10.27 眞邉 開 初版

1.はじめに

本ドキュメントはRPLiDARについての調査を行った結果である。


2.RPLiDARの仕様・比較

以下にRPLiDARの仕様を示す。

table1. RPLiDARシリーズの比較
A1M8 S2L S2M1 S2E S1
スキャン周波数 10 [Hz] 10 [Hz] 10 [Hz] 10 [Hz] 8-15 [Hz]
サンプリング周波数 8000 [Hz] 32000 [Hz] 32000 [Hz] 32000 [Hz] 92000 [Hz]
距離範囲 0.15–12 [m] 0.05-18 [m] 0.05-30 [m] 0.05-30 [m] ?-40 [m]
測距分解能 <0.5 [mm] 13 [mm] 13 [mm] 13 [mm] 10 [mm]
角度分解能 <1 [deg] 0.12 [deg] 0.12 [deg] 0.12 [deg] 0.39 [deg]
電源電圧 5V 5V 5V 12V 5V
通信 3.3V URAT 3.3V URAT 3.3V URAT UDP 3.3V URAT
価格 17,732 70,587 94,193 110,715 102,848


3.結論



4.制御方法

本システムにおいてRPLiDARを制御するための方法について、 ROSを用いた場合とROSを用いない場合の2つを調査した。

4-1.ROSによる方法

公開されているRPLiDAR用ROSパッケージ を使用することで、ROSを介したデータ処理をすることができる。

マッピングを行っている例を以下に示す。

RPLidar A1 M8で部屋の地図を作成しよう!
RPLiDAR入門[3]〜点群の取得と可視化〜

マッピングデータを用いてSLAMを行っている例を以下に示す。

RaspberryPi3とZumoとROSで半永久自走式充放電ロボを作成したい
ROSを使った自動航行ロボットをつくるまでの道のり

上記のように、ROSパッケージを用いることでマッピングおよび自己位置推定を行うことができる。

しかし、実際にROSを使用するためには、ArduinoおよびPythonとROSの連携をする必要がある。

パッケージによっては要求スペックが不足することや、プログラムの難易度が高すぎることが懸念される。



4-2.ROSによらない方法

前述の通り、ROSパッケージを用いることでマッピング等の機能が利用できるが、 知識不足やスペック不足による問題が懸念される。

そこで、ROSを利用しないで測距データを取得するリカバリー案として、 オープンソースのRPLiDAR用パブリックSDKを使用する方法がある。

また、SDK用のデモコードとして、UltraSimple が用意されている。 このコードは、LiDARから受信した値を直接コンソールに出力(278行)するものである。

このコードを、データをpythonに出力するよう改良することで、壁に対する自機の角度を測定することができる。

これにより、超音波センサよりも高速かつ精度よく自機の角度を測定できることが期待できる。

さらに、全方位に対する測距をリアルタイムに行うことができるため、進行方向によらず安定した直進を実現できる。




MIRS2302ドキュメント管理台帳へ