すごいけど残念なSlamtec Mapper M1M1(その1)
初めてレーザースキャナを使ったのはもうずいぶん前のことです。ヤフオクで北陽の測域センサURG-04LXを入手しました。当時10数万円もしていたのを9k円ほどで入手できたのですから、ずいぶんとラッキーでした。しかも新品同様のコンデションで。最近はメーカーも増え、10k円程度の製品も見かけるようになりました。
そういうメーカーの一社、Slamtecが昨年からちょっと変わり種のスキャナを販売しています。Mapper M1M1 kitというモデルです。おなじみseeedが販売元のようです。下のリンクで概要がわかります。
https://wiki.seeedstudio.com/jp/Slamtec-Mapper-M1M1-ToF-20M/
その名の通り、SLAMを搭載したボードとスキャナを組み合わせたマップ作成マシンで、この部品だけで、マップの作成、マップを利用した自己位置の推定を行うという、移動ロボットの主要機能が実現してしまいます。その上、オドメトリを与える必要なく、これを手に持ってあちこち歩き回るだけで地図ができるという寸法です。
また、ROSへの対応として、scan、map、odomのトピックを生成します。move_baseを使えば自律移動ロボットの基本部分を構築できるわけです。
これはテストしないといけないということで、2020年の秋頃、こんなロボットを作りました。
アマゾンでよく見かけるタンクシャーシに百均の木箱を乗せ、一番上にmapperを搭載。ROS(kinetic)を入れたラップトップからブルーツースでラジコン操縦できるよう構成してあります。mapperからの情報はwifi経由でラップトップに。move_baseを使った自律移動をさせてみました。
これがその様子です。猫柄のマットの上に、餌に見立てた乾電池(笑)があり、そこへ自律移動させてます。目的地の指定はおなじみのrviz。ポイントは途中でロボットを持ち上げて別の場所に移動させても、ちゃんとそこからパスを切り直してマットにゴールするところです。
これはmapperに搭載されたSLAMが、マップからの情報だけではなく、IMUからの情報(おそらく)を元に常に自己位置の推定を行っているからでしょう。以前遊んでいたroombaのように、駆動輪からのオドメトリの比重が高いモデルでは、このようにキッドナップすると自己位置を見失います。
このようにROSで使うには面白い部品なんですが、残念なところも。次回はそれについて書きます。