IMUセンサーフュージョンによる高速トラッキング | Marvelmind
動画の概要と技術的詳細
Marvelmindの高速屋内測位システムは、超音波による測距とIMUセンサーフュージョンを組み合わせ、高速で動く用途にリアルタイムのトラッキングを提供します。この動画では、GPSが使えない屋内環境で、素早く動く物体の測位精度をシステムがどのように維持するかを紹介します。更新レートの最適化とRealtime Playerによって、スポーツのトラッキング、ドローンのナビゲーション、自律型の倉庫自動化といった要求の厳しい場面にどう対応するかをご覧ください。
文字起こし
Marvelmindの高速屋内測位システムは、超音波による測距とIMUセンサーフュージョンを組み合わせ、高速で動く用途にリアルタイムのトラッキングを提供します。この動画では、GPSが使えない屋内環境で、素早く動く物体の測位精度をシステムがどのように維持するかを紹介します。更新レートの最適化とRealtime Playerによって、スポーツのトラッキング、ドローンのナビゲーション、自律型の倉庫自動化といった要求の厳しい場面にどう対応するかをご覧ください。
0:00 皆さん、こんにちは。今日は、動きの速いスポーツや産業用途、機械、あるいは高速なドローン向けの、より高速な測位システムについてお話しします。もちろん高精度な屋内測位システムであることに変わりはありませんが、今回の焦点は、高速で動く物体と高い更新レート、そしてそれを実現する方法です。何が問題なのでしょうか。一般的な8 Hzの更新レートでは、非常に速く動く物体には単純に足りないことがあります。1回の動きあたりの位置点が少なすぎて、滑らかな軌跡ではなく、まばらな点しか得られないからです。ではどうするか。選択肢は2つです。動きを遅くするか(通常は無理です)、更新レートを上げるかです。更新レートを上げる通常の方法は、すでに当社のページで紹介しています。
1:00 ぜひご覧ください。基本的には、可能であればサブマップのサイズを小さくすることです。当社の標準的なデフォルトは30メートルだからです。5メートルしかなければ、更新レートを大幅に、およそ6倍に上げられます。また、無線プロファイルをより高速なものにすることです。場合によっては無線がボトルネックになるからです。さらに、各種の平均化や、レイテンシを増やす可能性のある追加アルゴリズムを減らすことです。これらは多かれ少なかれ、更新レートそのものを下げるわけではありません。しかし、こうした一般的な方法でもまだ足りない場合には、新しい方法が必要です。それがこちらです。これは一般的な8 Hzのサブマップでの軌跡で、ご覧のとおり非常に高精度です。
1:57 それでも、すべて±2 cmで申し分ありません。ただ今回は、点と点の間隔がカーブの大きさと同程度になりうることを示すために、意図的に非常に速く動かしました。楕円のような滑らかな軌跡であれば問題にはなりません。しかし急なカーブや急旋回があると、更新レートが足りないことがあり、解決するには測位システムの更新レートを上げるしかありません。何が問題なのでしょうか。超音波は伝わるのが遅いのです。それ自体は素晴らしいことで、当社のシステムの高い精度を支えています。音速はおよそ秒速340メートルで、光速はその100万
2:55 倍です。つまり、当社が測っているのも無線方式と同じ飛行時間ですが、超音波の飛行時間と無線の飛行時間を比べると、無線方式で同じ精度を実現するのは、実に100万倍難しいということです。もちろん、これは非常に大まかな単純化ですが、それでも超音波の飛行時間は、精度の面では大きな強みであると同時に、更新レートの面では大きな制約でもあります。なぜでしょうか。たとえば30メートルの大きなマップがあるとします。この距離を音が伝わる時間から考えると、秒速340メートルを30で割ることになり、他の損失をまったく考えない場合の理論上の最大更新レートは約11 Hzです。これが上限です。もちろん実際には、処理、フィルタリング、無線などによる損失がさらに加わります。そのため、30メートルでは実質的におおよそ5、6、7 Hz程度が見込まれます。設定や、どのアーキテクチャを使っているかによりますが、だいたいその程度です。つまり、50%、あるいは40%ほど失われることになります。
3:53 これは多くの産業用途では問題ありません。というのも、よくあるのは「リアルタイムがほしい」「どのくらいですか?」「1 Hz、まあ2 Hzくらい」というやり取りだからです。それなら十分です。当社では通常、屋内で10〜20メートル程度の一般的なサブマップで8 Hzとお伝えしています。しかし、たとえば30メートルのような大きなマップでは、理論上の上限が約11 Hz、実際には5、6、7 Hzになります。そして、カートが非常に速く動く場合、点はまばらになります。物体の動きが速すぎると、一部のデータ点がそのまま欠けてしまうこともあります。つまり、たとえばカーブがあっても、カーブとして得られるのではなく、ある位置と別の位置があるだけで、その間の位置は動きが速すぎて得られない、ということです。
4:50 マップが小さければ、超音波だけでも高い更新レートを実現できる場合があります。以前実験したところ、約40 Hzでした。これは最低限の、本当に最低限の値です。ここでお見せしているエアホッケーの例(そう、エアホッケーでした)では、サイズはわずか2〜3メートルなので、約40 Hzの更新レートが得られます。このような単純なケースには十分です。しかし、たとえばカートのような大きなケースでは足りません。なぜカートを例に挙げるかというと、非常に速い動きを高精度な軌跡で記録したいというお客様の事例がいくつかあるからです。目的は、選手やドライバーに正しい走り方を教えることです。当社のシステムは軌跡を高い精度で記録でき、さらに現在は100 Hzという非常に高い更新レートにも対応しているため、この用途に適しています。100 Hzあれば、非常に速く動く移動体にも十分です。
5:49 これを超音波だけで実現するのは、ほぼ不可能です。基本的な計算に戻ると、秒速340メートルを更新レート100 Hzで割ることになります。つまりマップのサイズは、理論上でもわずか3メートルで、非常に小さくなってしまいます。どうすればよいのでしょうか。解決策はセンサーフュージョンです。センサーフュージョンは、個人的に大好きなテーマです。非常に複雑ですが、両方の長所を活かせます。屋内測位システムの高い精度と、非常に高い更新レートを同時に実現できるのです。慣性計測装置(IMU)を使えば、100 Hzを超える更新レートも可能です。では、もう少し詳しくお話ししましょう。その前に、どのような選択肢があるのかを見ておきます。基本的には3つあります。1つ目は、すでにDashboardで利用できるReal-time Player。2つ目は、この動画とプレゼンテーションで取り上げているIMU + 超音波センサーフュージョンのポストプロセッシング。3つ目は、IMU + 超音波センサーフュージョンのリアルタイム処理で、これは特に複雑なテーマです。こちらは今後提供予定で、まだ製品としては提供していません。一方、1つ目のReal-time Playerと、IMU + 超音波センサーフュージョンのポストプロセッシングは、すぐにご利用いただけます。(更新:リアルタイムのIMU・超音波センサーフュージョンは現在利用可能です:IAでのIMUセンサーフュージョンと NIAおよびMF NIAでのIMUセンサーフュージョン.)
6:49 では、Real-time Playerとは何でしょうか。Real-time Playerは、基本的にはDashboardに内蔵された機能です。位置点を受け取り、アルゴリズムやフィルタリングなど、あらゆる手法を使って内部で比較的複雑な補間を行います。つまり、位置点を推定しようとします。繰り返しますが、これは補間、つまり推定であって、測定ではありません。結果はかなり良好で、比較的滑らかなカーブに適しています。急旋回がない場合や、すでに十分に高い更新レートがある場合には、Real-time Playerは非常に有効で、おすすめです。しかもすでに利用でき、現在は無料です。すぐに使い始められ、リアルタイムのデータにも、ログファイルなどにすでに記録したデータにも使えます。ぜひ試して、使ってみてください。とても便利です。
7:46 では、性能を確認していきましょう。これは典型的なカーブで、青い点が超音波による点です。これは意図的に、非常に速く動かしました。つまり、とても素早く動かしたのです。ご覧のとおり、目盛りの間隔は5センチメートルです。そして、点はわずかしかありません。ここは動きがすでに止まっていたので3つ、ここは1つ、ここも1つ。ここは2つでしょうか。よくわかりませんが、ここも2つです。そして、Real-time Playerの軌跡がこのピンクの線です。オレンジの線は、いわば先にお見せしてしまうことになりますが、IMUセンサーフュージョンの結果です。
8:44 リアルタイムのデータにも、ログファイルなどにすでに記録したデータにも使えます。ぜひ試して、使ってみてください。とても便利です。では、性能を確認していきましょう。これは典型的なカーブで、青い点が超音波による点です。これは意図的に、非常に速く動かしました。つまり、とても素早く動かしたのです。ご覧のとおり、目盛りの間隔は5センチメートルです。そして、点はわずかしかありません。ここは動きがすでに止まっていたので3つ、ここは1つ、ここも1つ。ここは2つでしょうか。よくわかりませんが、ここも2つです。そして、Real-time Playerの軌跡がこのピンクの線です。オレンジの線は、いわば先にお見せしてしまうことになりますが、IMUセンサーフュージョンの結果です。
9:43 フュージョンのほうが明らかにはるかに良い結果を示していますが、それにはまだ触れないでおきましょう。今のテーマは青とピンクです。ご覧のとおり、Real-time Playerは基本的に、いくつかの「未来」の位置点(この場合は0点)と、過去の5点を取り込みます。そして、これらの点を使って補間し、位置を配置しようとします。ご覧のとおり、できる限りのことはしていますが、完全ではありません。この場合は、オーバーシュートなどがないぶん少し良くなっています。しかし、これがReal-time Playerの最大の弱点です。この情報、つまり加速度の情報を持っていないのです。この点は、後でお話しするIMUとは異なります。そのため、基本的には角を削ってしまいます。つまり、この角を…
10:42 …滑らかにしてしまうのです。そして、それが誤差を生みます。それでも誤差はまだ大きくはありません。繰り返しますが、この目盛りが5センチメートルです。たとえば、この誤差は約5センチメートルです。しかし問題は、動きが事前にわからないため、どちらかに合わせて調整することができない点です。では、どのようなフィルタリングがよいのか。ある種の動きに適したものもあれば、別の動きでより良い結果を出すものもあります。しかし、考え方はとてもシンプルです。Real-time Playerは優れた機能で、滑らかな動きに適しています。100 Hzにしてくれるからです。実測の100 Hzではなく、補間による100 Hzですが。それでも実際には役に立ちます。100 Hzの更新レートで位置を出力するだけでなく、フィルタリングも行うからです。つまり、ときどき…
11:41 …飛びが発生しても、超音波の点が十分にあれば、あらゆる面で役に立ちます。1つは、更新レートが上がることです。2つ目は、ときどき起こる飛びや、超音波の欠落をフィルタリングすることです。たとえば位置が得られない場合でも、動作を続けます。だからこそ、この幅が重要なのです。幅を大きく取れば、超音波の位置更新で2点、3点の欠落があっても、かなりうまく推定できます。ただしその一方で、平滑化が強くなり、角がより削られ、誤差も大きくなります。ですから、ここは調整してバランスを取ることができます。基本的な平滑化と基本的な100 Hzのためには、Real-time Playerは強力なツールで、…
12:41 …とても役に立ちます。繰り返しますが、これはポストプロセッシングなので、当社の基準ではリアルタイムではありません。当社にとってのリアルタイムとは、基本的に10〜15ミリ秒だからです。とはいえリアルタイムで動作するので、ファイルを保存してから再生する必要はありません。リアルタイムで処理できますが、レイテンシが生じます。どれくらいのレイテンシか。これがそのレイテンシです。実質的には、この場合は位置更新7点分のレイテンシになります。8 Hzなら、レイテンシは約1秒、おおよそ1秒です。それでも重要なのは、今すぐ使えるということです。100 Hzが得られ、比較的滑らかなカーブでは非常にうまく機能します。しかもコストはかからず、現在は無料です。では、もう1つの急なカーブの例を見てみましょう。ご覧のとおり、さらに…
13:41 …滑らかなカーブになっています。ただし、角はさらに削られています。3点か4点を想定しているのに、その点がない、つまり得られていなかったからです。こちらは長方形の別の例です。ご覧のとおり、ここでは点が比較的多くあります。これが青い超音波の位置、これがグラウンドトゥルースです。こちらがIMUによる結果、そしてこちらがReal-time Playerです。多くのケースで十分な結果と言えるでしょう。
14:40 繰り返しますが、これは実際のデータで、すべて誤差2センチメートル以内です。ただ、角がやや滑らかになり、ここで誤差がたまっています。それでも、適切に使えば十分に使えます。なお、これは前方1点・後方5点で計算したものです。前方3点・後方5点にすると、ご覧のとおり平滑化が強くなりますが、誤差はすでに5センチメートルかそれ以上になります。カーブがそれほど急でなければ、むしろより実際に近い軌跡になり、良い結果です。しかし、角や方向が急に変わる場所では誤差が大きくなります。そして、Playerの次数を上げるほど、誤差は大きくなります。
15:40 こちらは拡大した図です。この目盛りはすでに1センチメートルです。Real-time Playerによる誤差は、およそ5センチメートルと計算できます。しかし、こうした領域では大いに役立ち、さらに滑らかにしてくれます。誤差もすでに小さくなっています。計算するのは非常に難しいのですが、超音波のジッターを抑える、あるいは分散させて、位置更新を100 Hzにしていることがわかります。同時に、この点のばらつきは2センチメートル未満で、元の超音波よりも良くなっています。申し上げたとおり、滑らかなカーブであれば理想に近い結果です。ご覧のとおり、Real-time PlayerとIMUセンサーフュージョンのどちらが良いのか、見分けがつかないほどです。ですから、カーブが滑らかで、ポストプロセッシングで問題ない場合は、Real-time Playerを使ってください。
16:39 ただし、これはすべてポストプロセッシングであることを忘れないでください。約1秒の遅延、つまりレイテンシが生じます。こちらも同じですが、よりゆっくり動かした三角形です。これでもう十分な結果です。あちらでは点がわずかしかありませんでした。1辺あたり1、2、3点ほどでしょうか。こちらでは10点ほどあります。これで十分に良い結果になっています。繰り返しますが、この目盛りが5センチメートルです。つまり、グラウンドトゥルースとの差は±1センチメートルで、申し分ありません。結論は同じです。カーブが滑らかであるか、超音波による位置更新が十分に多ければ、Real-time Playerを使ってさらに良い結果を得られます。だからこそ、たとえば…
17:37 …当社のロボットや、ゆっくり動く様子の動画の多くでは、Real-time Playerをデフォルトで有効にしています。軌跡がずっと見やすく、より信頼性が高く、滑らかになるからです。しかし、それでも足りない場合、つまり本当に速く動く対象で、Real-time Playerでは十分でない場合には、センサーフュージョンが必要になります。センサーフュージョンは非常に強力で、Real-time Playerより優れているのは間違いありません。なぜでしょうか。まず、物理的な制約についてお話しします。超音波の物理的な制約については、すでに触れました。音速はこのシステムの大きな強みで、屋内測位システムの非常に高い精度を可能にしています。しかし同時に、更新レートが比較的低いことと、更新レートをそれ以上上げにくいことの主な原因でもあります。これが物理的な…
18:35 …制約です。センサーフュージョンの種類については、すでにお話ししました。リアルタイム処理は今後提供予定で、もう1つがIMUセンサーフュージョンのポストプロセッシングです。今日は、すでに製品として提供しているポストプロセッシングについてのみお話しします。この動画はまさにそのためのもので、既存および今後のすべてのお客様に、この機能が利用できることをお知らせするものです。ぜひ使い始めてください。そして最後に、特に重要な点は、当社のシステムではセンサーフュージョンをIMUで行っているということです。センサーフュージョンは、さまざまなものを組み合わせて行えるからです。たとえば当社のロボットでは、オドメトリ、超音波、IMUのセンサーフュージョンを行っています。当社のBoxie ロボットには、たとえば…
19:35 Intel RealSense(視覚測位システム)も搭載されていて、これもセンサーフュージョンに組み込めます。私がこのテーマを気に入っているのはそのためです。こうしたデータを技術的にも商業的にも賢く組み合わせることで、それぞれの長所を最大限に引き出せるからです。どれも完全ではありません。どの測位システムにも何らかの制約があります。たとえば光学式なら、暗すぎる、明るすぎる、遮るものがあるといった問題。オドメトリなら、スリップして、実際には動いていないのに動いていると計算してしまうことがあります。超音波なら、超音波ノイズでシステムが完全に止まってしまうことがあります。いずれの場合も、無線が使えなければデータを受け取れず、更新もできません。しかし、こうしたデータを賢く組み合わせ、自己チェックの仕組みを整えれば、つまり:
20:34 センサーフュージョンによって、2つのシステム、あるいはそれ以上のシステムの長所を活かすことができます。今回お話ししているのは、IMU + 超音波のセンサーフュージョンです。IMUとは何でしょうか。IMUはInertial Measurement Unit(慣性計測装置)の略です。当社の場合、3D加速度センサーと3Dジャイロスコープを内蔵しています。当社の各ビーコンには、すでにIMUが搭載されています。ご存じなかったなら、もちろんぜひ活用してください。ここで強調しておきたいのは、IMUと位置の話をするとき、何が複雑なのかということです。生の角度データを得たり、加速度を測ったりするだけなら、難しいことは何もありません。すぐに得られます。ごく基本的な機能です。
21:31 しかし、IMUを使って位置を測定するのは、非常に複雑な課題です。絶対的な角度を測るのも複雑な課題ですが、それよりはずっと簡単です。ただし、そのためには基本的に、2つのビーコンをロボットに取り付ける必要があります。そうすれば、1台のビーコンともう1台のビーコンの位置がわかり、ロボットがどちらを向いているかがわかります。それも、ロボット1台・ビーコン1つだけでも得られる「方向の変化」ではなく、静的な方向です。これはペアードビーコンと呼ばれ、当社ではすでに提供しています。ただし、今回のテーマではありません。誤解のないようにはっきりさせておくと、この動画で取り上げるのはただ1つのテーマ、つまりIMUと超音波のセンサーフュージョンによる、更新レート100 Hzでの高速な位置測定です。では、何が難しいのでしょうか。難しいのは:
22:31 加速度の2回積分にあります。加速度センサーのデータは、たとえば無重力状態であれば非常に簡単です。基本的には積分すればよいだけだからです。スマートフォンや当社のビーコンに使われているような一般的なMEMS(微小電気機械システム)でも、ドリフトが小さいので、この用途には十分です。無重力ならドリフトが小さくて済みますが、重力がある場合、つまり当然ながら地球上では、地球による大きな加速度を、動きによる加速度から差し引くのが非常に難しくなります。たとえば、このように動かすだけでも:
23:28 自分の動きによる加速度はほぼゼロですが、同時に地球による1 Gの加速度があります。そして位置、いや、位置ではなくビーコンの姿勢、つまり加速度センサーの向きが正確にわからないと、向きのずれや地球による加速度の把握の不正確さによって生じる加速度と、ビーコン自体の加速度を区別するのは非常に難しくなります。これは非常に難しく、誤差も大きくなります。結果はとても単純で、ドリフトはわずか1秒足らずで±2 cmの範囲を超えてしまいます。十分にキャリブレーションしても、約1.5秒、場合によっては1秒です。つまり:
24:25 キャリブレーションしても、1秒でドリフトしてしまうのです。そのため、センサーフュージョンもドリフトの打ち消しもなしに、慣性計測装置だけに頼るシステム、つまり純粋なIMUベースのシステムで、実際に機能するものを私は知りません。どのシステムも何らかのキャリブレーション、いや、キャリブレーションではなく、加速度センサーのドリフトを打ち消す何らかの仕組みを使っています。2回積分では、明らかに誤差が非常に速く増えるからです。1秒で2センチメートルの誤差があれば、2秒ではその倍、さらにその倍、そのまた倍になります。つまり誤差は非常に速く増え、1分後には、ビーコンは静止しているのに、数メートル、さらには数百メートルも離れていくことになります。
25:22 これが数学です。だからこそドリフトが大きな問題であり、打ち消す必要があります。もちろん、当社の超音波を使って打ち消します。超音波は絶対位置を提供するからです。そして賢く組み合わせる、つまりセンサーフュージョンを行うことで、それが可能になります。その結果得られるセンサーフュージョン後のデータは、非常に高精度です。IMUには飛びがなく、IMUによって100 Hzという非常に速い更新レートが得られ、しかも超音波システムによってドリフトが打ち消されているからです。もちろんジャイロもドリフトしますが、ジャイロはそれほど大きな問題ではありません。地球による加速度を自分の加速度から差し引くには、角度を非常に正確に知る必要があります。それでもジャイロスコープのドリフトがそれほど問題にならないのは、単に、次のものと比べてドリフトが小さいからです:
26:22 加速度センサーの向きが正確にわからないことによるドリフトや、私たちが「加速度センサーの各軸への重力の漏れ込み」と呼んでいるものによるドリフトです。もう一度強調しますが、IMUセンサーフュージョンは複雑な機能です。本当に複雑な機能です。そのため時間はかかりますが、両方の長所を本当に活かせるので、得られる成果は大きいのです。もう一度強調しますと、IMUの優れた点は、超音波のような飛びがないことです。見通し(超音波が直接届く経路)がなくても、しばらくの間は問題ありません。つまり、たとえば何かが超音波を遮っても、IMUは
27:21 気にしません。その間も位置を出力し続けます。そして、1秒足らず、あるいは1秒後に見通し(超音波が直接届く経路)が戻れば、超音波が再び補正します。IMUは加速度センサーもジャイロスコープも常にドリフトしているので、超音波がそのドリフトを1秒間に数回補正します。そして位置データは、加速度センサーのデータを2回積分して求め、それを超音波のデータで常に補正していきます。要するに、非常に強力で、100 Hz、ロバスト性の向上、精度の向上と、基本的に必要なものがすべて手に入ります。というのも、超音波はもちろん飛ぶことがあるからです:
28:18 ±2 cmの範囲で。しかしIMUは飛びません。ノイズは1ミリメートル未満です。そのため、精度を重視すれば、実質的に1ミリメートル未満の精度も実現できる可能性があります。それは将来の話かもしれませんし、今回のテーマではありません。いずれにせよ、両方の長所を活かすことは可能で、難点は複雑さですが、それは当社が解決しました。では、もう一度この軌跡を見てみましょう。位置更新は非常に少ないのですが、この機能を使ってIMUセンサーフュージョンのポストプロセッシングを適用すると、このようになります。ご覧ください。素晴らしい結果です。止まっていく様子がわかります。慣性があるので点が多く集まり、そこから再び加速しています。おわかりでしょうか。
29:17 加速して、また急に止まる。素晴らしい結果です。こちらに超音波のノイズが見えます。この目盛りが5センチメートルなので、およそ±1.5センチメートル、ときには±2センチメートルでしょう。一方、得られた結果の誤差はそれよりもさらに小さくなっています。つまり、ここでも両方の長所が得られます。高い更新レート、遮蔽に対するより高いロバスト性、そしてさらに高い精度です。IMUセンサーフュージョンは非常に優れています。もう一度、角を見てください。機能を手に入れたら、後でご自身で試してみてください。この機能は皆さんの手の中にあります。では見てみましょう。これはそうした例の1つです。ご覧のとおり、非常に速い動きです。基本的に、こんなふうにとても速く動かしました。そして
30:17 更新レートは約8 Hzでした。つまり、1、2、3と点があって、おそらく4分の1秒か3分の1秒ほどで動かしたので、非常に速い動きです。確かに三角形だとはわかりますが、ごく大まかな三角形です。IMUセンサーフュージョンを使うと、Real-time Playerとは違って、かなりきちんとした軌跡が得られます。グラウンドトゥルースどおりの形が示され、Real-time Playerのような制約がありません。だからこそ、要求が非常に厳しく、動きが非常に速い場合には、IMUセンサーフュージョンが解決策になります。繰り返しになりますが、すでにお話ししたとおり、滑らかな動きであればReal-time Playerでも十分です。ですから、非常に滑らかな動きであれば、お望みならReal-time Playerを手軽に使えます。もし位置更新に滑らかさを
31:16 求めるだけならそれで構いませんが、たとえば遮蔽に対するロバスト性をさらに高めたい場合は、やはりIMUセンサーフュージョンを選んでください。では次に、ポストプロセッシングにかかる時間についてお話しします。冒頭で申し上げたとおり、現在提供しているセンサーフュージョンはポストプロセッシングです。位置データは2つの経路でコンピュータにストリーミングされます。1つは通常の経路で、モバイルビーコンが計算するか、モデムが計算します。いずれにしても、これは超音波による位置で、この部分はこれまでと変わりません。しかし同時に、モバイルビーコンのIMUからは、100 Hzという非常に速いレートで大量のデータが来ます。これを通常の無線チャンネルで送ることはできません。帯域幅が足りないからです。
32:15 特に、移動体が多い場合、たとえばコース上を多数の車が走っている場合はなおさらです。そこで、各モバイルビーコンに対して、モデムともう1台のモデムが用意されます。これは特別なモデムです。ハードウェアとしては通常と同じモデムですが、ソフトウェアは特別なもので、目的はただ1つです。非常に高速なデータ、つまりIMUデータを受け取り、相手側のモデムに送信することです。そして、そのデータがコンピュータに収集されます。こうして2つのデータストリームが得られ、もちろんどちらにもタイムスタンプが付いています。そのため、センサーフュージョンのアルゴリズムは、超音波データとIMUデータを正しいタイミングで組み合わせることができます。そしてセンサーフュージョン処理の後には、
33:13 高精度な位置を100 Hzの更新レートで返すことができます。ただし、ポストプロセッシングなので時間がかかります。どのくらいかかるのか。いくつか例を挙げます。繰り返しますが、現時点ではまだ最適化していません。今後、ソフトウェアだけで最適化する予定で、ハードウェアを変更する必要は一切ありません。ただし現時点では、ごく一般的なノートパソコン(デスクトップでも特別なマシンでもなく、クラウドでもありません)で、計算時間は次の式で求められます:10秒 + 走行時間T × 0.12。つまり、記録されたログの秒数に0.12を掛けたものです。たとえば、ハーフパイプのジャンプやBMXのジャンプで、全体で5秒かかるとします。すると処理時間は、10秒 + 5秒 × 0.12で、10.6
34:13 秒になります。つまり、ジャンプしてから10.6秒後には、高精度な3D軌跡が得られます。15分間の車の走行なら、10秒 + 15分 × 0.12で、およそ2分になります。つまり、15分間走行してから2分後には、精度2センチメートル未満、更新レート100 Hzの軌跡が得られ、再生してカーブなどを細かく確認できます。しかも、先ほど申し上げたとおり、ごく一般的なノートパソコンでの話です。デスクトップなら当然もっと速くなります。将来的には、ポストプロセッシングの速度を数倍に高められると考えています。ただし、これは現時点での話です。期待値を正しく持っていただくために、どのセンサーフュージョンの話をしているのかを、もう一度強調しておきます。というのも、当社には現在、何種類かの
35:12 センサーフュージョンがあり、今後さらに増える予定だからです。方向のためのセンサーフュージョンと、位置のためのセンサーフュージョンがあります。方向のためのセンサーフュージョンは、ペアードビーコン構成の一部で、少なくとも2年ほど前から提供しています。これは複雑な課題ですが、それほど複雑ではありません。なぜでしょうか。基本的には位置を使い、内部のIMU、つまりジャイロスコープを使うからです。加速度センサーは使わないので、加速度センサーによるドリフトは関係ありません。そしてジャイロスコープのドリフトはごくわずかです。それでも、他のセンサーフュージョンと同様に、両方の長所を活かしています。まず、方向のためのセンサーフュージョンは、現在でもすでに100 Hzを返します。つまり、すでにお持ちなのです。ご存じなかったとしても、すでに手元にあります。たとえば位置のためのセンサーフュージョンがなくても、すでに使えていたわけです。つまり、これまでも
36:10 位置更新は8 Hzでも、方向については100 Hzが得られていたわけです。これはどこから来ているのでしょうか。方向取得のためのセンサーフュージョンによるものです。改めて説明すると、2台のビーコンがあり、2本の線で接続されていて、データがストリーミングされます。2台のうち1台がマスターです。マスターは角度位置を計算します。マスターは自分の位置を把握しており、超音波に基づいて計算した方向、つまり各点の位置から求めた方向と、IMU(この場合はジャイロスコープ)のデータとをセンサーフュージョンで組み合わせ、方向を高精度に求めることができます。その結果、内部で非常に信頼性の高い方向が得られます。基本的にはジャイロスコープから得られる値なので、飛びません。同時に、ドリフトもしません。
37:08 ドリフトは超音波に基づいて常に除去されているからです。つまり、ここでも両方の長所を兼ね備えています。ドリフトがなく、100 Hzで、精度が非常に高く、分解能も極めて高い、つまり1度未満です。しかし今日お話ししてきたのは、位置取得のためのセンサーフュージョンです。これは新しい機能で、はるかに複雑ですが、非常に強力です。先ほど述べたとおり、良いところを引き出せるからです。100 Hzが得られ、ロバスト性が高まり、同時に精度も向上します。超音波による位置測定のジッターを低減するからです。では、今後はどうなるのでしょうか。目指すのは「聖杯」、つまりリアルタイムのセンサーフュージョンです。リアルタイムとなると、課題はさらに複雑になります。ご覧いただいたとおり、現時点ではポストプロセッシングに数秒かかります。これを何とか凝縮して、リアルタイムで動くようにする必要があります。これは
38:06 不可能な課題ではありませんが、まだ実現には至っていません。実現したときの大きなメリットは、低レイテンシです。現在は100 Hz、非常に高い精度、ロバスト性を提供できていますが、レイテンシは数秒です。ですから、たとえばロボットを制御する必要がある場合、つまり急停止が必要な場合には、まだ対応できていません。それには非常に低いレイテンシが必要です。レイテンシは特に難しい課題ですが、解決は可能で、センサーフュージョンを使って解決していく予定です。今後の課題であり、まだ実現していません。私たちがどこへ向かっているのか、将来どのようなことが期待できるのかを知っておいていただくためにお話ししました。まとめです。改めて整理しておきます。現在はいくつかの選択肢があります。まず、現在無料で使えるReal-time Playerです。次に、IMUに基づくセンサーフュージョン、つまりIMUセンサーフュージョンです。
39:04 これは現在すでに利用でき、100 Hzが得られます。補間であるReal-time Playerとは異なり、この新しい100 Hzでは、ロバスト性と精度も同時に向上します。用途は、たとえば高速な機械、動きの速いスポーツ、非常に高速なドローンなどです。私たちが把握していない用途も、ほかにたくさんあるはずです。ちなみに、このプロジェクトは主に先進的なお客様の事例をきっかけに進めてきました。この動画は、すでにウェブページで公開している記事に関連しています。ぜひご覧ください。基本的に同じ内容を文章で紹介しています。ご質問があれば、遠慮なくお問い合わせください。喜んでお答えします。info@marvelmind.comまでメールをお送りください。ありがとうございました。
動画の内容
要点
- IMUセンサーフュージョンが超音波測位の更新の合間を埋め、屋内で高速に動く物体のリアルタイムトラッキングを可能にします
- 超音波の伝搬遅延は根本的な制約ですが、設定の最適化とRealtime Playerで効果的に対処できます
- ソフトウェアの調整で更新レートを上げると、自律型ドローン、ロボット、倉庫設備の測位の応答性が直接向上します
- 設定パラメーター(0f5bと1f5bの違いなど)は、高速用途でのシステム性能に大きく影響します
- このハイブリッドな手法により、GPSが使えないスポーツ用途、自律システム、倉庫自動化で、実用的な屋内測位が可能になります
対象:エンジニア・システム設計者
屋内ドローン、自律型ロボット、倉庫設備など、高速で動く用途に自律システムを導入するエンジニアや施設管理者に向けた内容です。標準的な超音波システムでは更新レートやレイテンシの面で難しくなりがちな高速移動時に、正確な屋内測位とトラッキングを維持するという課題を取り上げます。
FAQ
技術的背景とシステムの詳細
高速で動く自律システムには、精度と応答性を両立させる専用の屋内測位ソリューションが必要です。この技術デモでは、超音波による屋内測位と慣性計測装置(IMU)のセンサーフュージョンを組み合わせるMarvelmindの手法を紹介します。これにより、屋内で急加速する物体を正確に追跡できます。動画ではまず、超音波の伝搬遅延とそれが測位のレイテンシに与える影響といった根本的な課題を説明し、次にソフトウェアの最適化によって更新レートを上げる実用的な解決策を紹介します。Realtime Playerでは、異なる設定でのシステム性能を示し、調整したパラメーターが三角形を描く素早い動きや複雑な動きにどう対応するかを確認できます。このハイブリッドな測位手法は、自律型屋内ロボット、倉庫用ドローン、スポーツ用途など、GPSなしでリアルタイムの位置追跡が必要なあらゆる場面で特に役立ちます。こうした技術的な基礎を理解しておくと、エンジニアは高速な自律用途や倉庫自動化プロジェクトに適した屋内測位システムを選びやすくなります。
📍 プロジェクトに高精度な屋内測位が必要ですか?