【自律型ロボット製作記】#6 経路設定アプリの開発と今後の課題
どうもこんにちは!InomaCreateです。
久しぶりに開発中の自律型ロボットのことについて書きたいと思います。
前回までで、中間経路さえ設定できれば、ロボットが目的地までは自律的に移動できるようになりました。
開発ゴールを考え直す
ただし、前回までで実現できたのは、中間経路や最終地点はあくまで固定位置で、事前に決められた場所にしか走行できない仕様でした。
また、このシステムを実際に社会に導入することを考えると、ROSの起動だったり、設定だったり、とにかく動かすためのハードルが色々高いのは課題と思っていました。
※あと、そろそろこのロボットの開発ゴールを明確に決めないとずるずる時間だけが過ぎていくので焦りも出てきました。。
ということで、色々考えた結果、
ことをゴールに設定し、開発を再開していこうと決めました。
どんな場所でも簡単に自律走行できる走行システムができれば、それをベースとして、例えば、監視ロボットや、配達ロボット等、様々な用途に応用できると考えたからです。
とりあえず、自律システムをまずは完成させるべく進めていこうと思います。
経路設定アプリの開発
さて、まずは、経路設定アプリの改善から入ることにしました。
現在作成したアプリでは、固定で目的地を設定しているだけなので、まずは、自由に経路を設定できるように改善します。
また、前回までは、Androidスマホをベースに作っていたのですが、今回はMAPを表示させつつ、目的地や経路を自由に設定できるようにしたかったので、Androidタブレットベースでアプリを作ることにしました。
アプリの仕様
目的地経路設定までの仕様は、以下のようにしました。まずは、ラジコンモードで移動させながら、マップを作り、経路ポイントを設定していきます。
経路ポイントを設定したら、スタート位置まで戻し、目的地へ自律走行する流れです。
1.手動モード(ラジコン)でロボットを動かしながら、経路ポイントを設定していく
2.スタート地点へ戻す
3.ボタントリガーで設定した経路ポイントを通って、目的地へ自律移動
現状の開発状況
現状、タブレット画面上にマップ表示、ロボットの位置、姿勢の表示し、ラジコンモードで経路設定が可能です。また、保存した経路でスタート位置から最終ゴールまで自律走行させることができます。(ただし目的地保存は1つのみ)
これからブラッシュアップして、不具合など対応していく予定です。
デモ動画
今後の課題
次に取り組む課題としては、システム構成を見直そうと思っています。
現状のシステム構成は、ロボット(ラズパイ搭載)とナビゲーションを動かすためのUbuntuPC、経路設定アプリのタブレットの3つが必要で、システムを動かすための準備にかなり手間がかかってしまっています。
とにかく、簡単に実行できるシステムがゴールですので、せめて、ロボット+経路設定アプリのタブレット2つにしたいと思います。
そのためには、現状UbuntuPCで動作させているRos関連のナビゲーションをすべて、ロボット内に1本化しないといけません。一度、ラズパイ内にナビゲーションスレッドを全部入れてみて動作させたのですが、やはりラズパイではスペック不足でSLAMが安定して動作しませんでした。
ロボット内に組み込む、UbuntuPCの代わりになるデバイスの候補としては、intelのNUC、JetsonNanoあたりを候補にしています。JetsonNanoは、軽量でラズパイをサブデバイスにできるようなので、敷居は低そうです。値段もリーズナブルなのでまずは、JetsonNanoを搭載してみようかと思います。
他にも、SLAM自体の精度を上げるには?障害物を回避するには?などありますが、
まずは、システムとしては一通り動作するものを完成させたいと思います。
今後もロボット製作の状況については、こんな感じでブログにアップしていこうと思います。
それでは、また次の記事で!
スポンサーリンク