サブマップの構築と管理:この動画の内容
この詳しい解説動画では、Marvelmindの超音波屋内測位システムにおけるサブマップのアーキテクチャについて解説します。サブマップがなぜ不可欠なのかを示したうえで、ビーコンの配置戦略、サービスゾーンの定義、ハンドオーバーゾーン、そして3つのシステムアーキテクチャ(NIA:Non-Inverse Architecture、IA:Inverse Architecture、MF NIA:Multi-Frequency NIA)を詳しく紹介します。また、大規模倉庫でのカバレッジの課題、見通しを遮る障害物への対処、複雑な屋内環境で±2cmの精度を得るための適切なビーコンの配置についても取り上げます。
文字起こし
この詳しい解説動画では、Marvelmindの超音波屋内測位システムにおけるサブマップのアーキテクチャについて解説します。サブマップがなぜ不可欠なのかを示したうえで、ビーコンの配置戦略、サービスゾーンの定義、ハンドオーバーゾーン、そして3つのシステムアーキテクチャ(NIA:Non-Inverse Architecture、IA:Inverse Architecture、MF NIA:Multi-Frequency NIA)を詳しく紹介します。また、大規模倉庫でのカバレッジの課題、見通しを遮る障害物への対処、複雑な屋内環境で±2cmの精度を得るための適切なビーコン配置についても取り上げます。
0:01 こんにちは、皆さん。サブマップの構築方法についてお話しします。まずテーマについてですが、これはかなり奥が深く、範囲も広いものです。ご覧のとおり、項目がかなりたくさんあります。このテーマはすでに取り上げているので、まずは既存の資料から始めます。このプレゼンテーションと動画を深く見ていく前に、それらの資料を確認してください。そもそもなぜサブマップが必要なのか、用語にも触れておきます。NIAアーキテクチャ、サブマップ、サービスゾーンなど、新しい言葉がたくさんあるので、それらについて説明します。サブマップに進む前の基本的なヒントとして、ビーコンの配置方法、つまりビーコンを正しく配置する方法も紹介します。アーキテクチャは3つあります。NIAアーキテクチャ(Non-Inverse Architecture)、IAアーキテクチャ(Inverse Architecture)、そしてMulti-Frequency NIAです。それぞれの違いは何か、そしてなぜこのプレゼンテーションではIAアーキテクチャに焦点を当てるのか。基本的なNIAアーキテクチャのサブマップとマップ、そして冗長性についてもお話しします。
1:00 何のためでしょうか?IAアーキテクチャ(Inverse Architecture)です。IAアーキテクチャは最も複雑なテーマです。だからこそスライドが非常に多く、構築方法もさまざまで、間違えやすいポイントもたくさんあります。そのため、まずNIAアーキテクチャから始め、それを習得してからIAアーキテクチャに進むことをおすすめします。それから、もちろん特殊なケースもあります。これは、次回以降のプレゼンテーションでより深く取り上げるテーマです。そして最後にまとめです。なぜサブマップが必要なのでしょうか?理由はたくさんありますが、最も重要なのはおそらく次の3つです。例として、このような巨大な倉庫をカバーしたいとします。構築できるサブマップには大きさの上限があります(たとえば2Dの場合)。サブマップでは、モバイルビーコンから固定ビーコンまでの距離が30メートル以内でなければなりません。
1:59 では、倉庫がたとえば200 × 200メートルもある場合は、どうすればよいでしょうか?もちろんカバーできます。問題ありません。ただし、サブマップを構築する必要があります。たとえば隅に置いた2台のビーコンだけで構成される1つのサブマップで全体をカバーする、ということはできません。サブマップの最大サイズ、正確に言えば、サブマップの最大サイズではなく、そのサブマップを担当する固定ビーコンからモバイルビーコンまでの最大距離は、30メートルです。これが1つ目、到達距離です。次は、見通し(超音波が直接届く経路)がない状況です。たとえばこの倉庫にも棚があります。棚越しには明らかに見通しがないので、棚と棚の間をカバーする必要があります。棚がサブマップを分けるわけです。壁、部屋、フロアなど、静的な遮蔽物がある状況はたくさんあり、それが見通しのない状態を生みます。そして、見通しがないことこそが重要な要素です。
2:58 これがすべてを左右します。ビーコンをどこに置くか、固定ビーコンを何台にするか、です。さらに、モバイルビーコン側で見通しが失われることもあります。たとえば、障害物が動いたり、人が動いたりする場合です。たとえばロボットに載せたモバイルビーコンが、何かほかのものに遮られる可能性があります。それは問題ありません。解決策はいくつかあり、それについても説明します。改めて、主な理由は3つです。到達距離、静的な物体による遮蔽、そして動く物体による遮蔽です。サブマップの構築方法については、すでに動画などの資料がたくさんあります。ぜひ確認してください。この動画を一時停止して、より簡単な動画に移り、これから説明する内容をざっと見ておいてください。確認してほしいのは、やはり操作マニュアルです。より深く進む前に、操作マニュアルに目を通しておいてください。このプレゼンテーションの理解にも役立ちます。
3:57 次は用語です。これは一例として抜粋したものです。操作マニュアルではそれほど詳しく説明されていませんが、入門には役立ちます。また、配置マニュアルもとても良い資料です。サブマップ、ゾーン、さまざまなアーキテクチャなど、いくつかの重要なテーマを取り上げています。このプレゼンテーションではさらに深く説明しますが、まずはそちらを確認し、一歩ずつ進めてください。おさらい用の動画もあり、そこで言っていることはシンプルです。いきなり複雑なマップに飛びつかないこと。まずはより簡単なマップを構築してください。最も簡単なのは、固定ビーコン2台だけで構成する2DのNIAアーキテクチャです。それを構築してから、一歩ずつ、より複雑なマップやサブマップに進んでください。次に用語です。マップとは何でしょうか?マップとは…
4:55 …サブマップの集合です。マップが1つのサブマップだけで構成されることもあります。たとえば、当社のスターターセットを購入して手軽な2DのNIAアーキテクチャを導入する場合、固定ビーコンを2台設置します。マップは固定ビーコン2台、モバイルビーコン1台、そしてモデム1台だけで構成されます。つまり、1つのサブマップが同時に1つのマップでもあるわけです。それだけです。このように、マップはごくシンプルな場合もありますが、それは自明なケースで、ここまで詳しい動画は必要ありません。その場合は、当社の操作マニュアルで十分ですし、配置マニュアルでも十分です。この動画は、複数のサブマップや複雑なIAアーキテクチャのサブマップなどが必要になる、より複雑なエリアを対象としています。では、スーパーマップとは何でしょうか?スーパーマップは今後の機能で、まだ提供していません。しかし、すでに一部のお客様からは「ビーコンが250台以上必要だ。サブマップも250以上必要だ」という声をいただいています。はい、それは今後…
5:59 …スーパーマップで対応する予定ですが、まだ実現していません。では、サブマップとは何でしょうか?サブマップとは、2台以上の固定ビーコンの組み合わせです。これについては、後ほどもっと詳しく説明します。つまり、サブマップはビーコンの組み合わせであり、先ほど説明した大きなマップの一部となる小さなマップです。各サブマップには距離テーブルがあります。これについても別のスライドで説明します。距離テーブルはサブマップの一部で、サブマップ内の各ビーコン間の距離が記載されています。この距離は、ビーコン自身が測定したものか、ユーザーが手動で入力したものです。サービスゾーンもサブマップの要素の1つで、「このサブマップはこのエリアを担当する」と指定するものです。というのも、このサブマップのビーコンが担当しようとするエリアは必ずあるのですが…
6:57 …それを手動で定義するのです。複数のサブマップで構成される大きなマップを構築するときには、これが非常に役立ちます。マップあたりのサブマップが1つだけの場合は、推奨ではありますが必須ではありません。ハンドオーバーゾーンはとてもシンプルです。重なり合う2つのサブマップがあり、その重なった領域がハンドオーバーゾーンです。モバイルビーコンが一方のサブマップのサービスゾーンからもう一方へ移動するとき、その間は2つのサブマップが担当し、その後は2つ目のサブマップが担当します。携帯電話網と同じ、典型的なハンドオーバーです。次に、IAアーキテクチャ(Inverse Architecture)、NIAアーキテクチャ(Non-Inverse Architecture)、Multi-Frequency NIAの違いです。定義はいろいろ考えられますが、基本的な違いは、誰が超音波を発信するかです。
7:57 ここでは、ずっと超音波の話をしています。無線については、各デバイスは常に通信していますが、モバイルビーコンと固定ビーコンは無線で互いに直接通信するわけではないことを覚えておいてください。通信相手はモデム。モデムは、いわば中央のコントローラー、全員を制御するクモのような存在です。つまり、全員の通信相手はモデムです。それが何を意味するのか。繰り返しますが、サブマップの構築や複雑なマップの構築は、無線の問題ではありません。ほとんどの場合、無線は関係なく、主に超音波の周波数の問題です。ですから、私が「周波数」と言うときは、特に断りがない限り、無線周波数ではなく超音波の周波数のことです。IAアーキテクチャでは、固定ビーコンが超音波を発信します。NIAアーキテクチャでは、モバイルビーコンが超音波を発信し、固定ビーコンが受信します。そしてMulti-Frequency NIAでは、モバイルビーコンが超音波を発信しますが、同時に…
8:56 …異なる周波数で発信します。現在は8種類の周波数が利用でき、IAアーキテクチャでは最大8つの超音波周波数、Multi-Frequency NIAでも最大8つの超音波周波数を使えます。通常のNIAアーキテクチャでは、固定ビーコンは受信側なので、どの周波数でもかまいません。受信については周波数は関係ありません。Super-Beaconは、すべての周波数を同時に受信できますが、送信できるのは、そのビーコン本来の周波数の1つだけだからです。超音波の周波数については、すでに触れました。現在は8つの周波数があります。これは素晴らしいことです。わずか1〜2年前までは5つで、比較的小さなマップならそれで十分でしたが、大きなマップでは、周波数が多いほど自由度が高くなります。ですから、購入時に迷ったら、できるだけ多くの周波数をそろえてください。
9:55 そうすれば、マップの柔軟性が最も高くなるからです。では、より詳しい定義と説明に戻りましょう。マップとは何でしょうか?マップはサブマップの組み合わせです。たとえば、これは2つのサブマップ、つまりこちらのサブマップとあちらのサブマップで構成されたマップです。各サブマップは2台のビーコンで構成されています。1つ目のサブマップはビーコン10とビーコン11、2つ目のサブマップはビーコン11とビーコン12です。ビーコン11がサブマップ1とサブマップ2の両方に属していることに注目してください。現在は最大250のサブマップに対応しています。各サブマップは約1,000平方メートルまで可能なので、理論上は、非常に巨大な開けた格納庫であれば最大250,000平方メートルにもなります。とても広いですね。ただし実際には、制約となるのは通常、見通しの問題です。たとえば
10:54 壁や棚、その他のものです。ですから実際には、250のサブマップをもっとずっと狭いエリアで使うことになるでしょうし、ほかの制約が生じることもあります。現在、1つのマップでサポートしているビーコンは最大250台です。なぜでしょうか?それは、各マップを制御するのが1台のモデムだけだからです。覚えておいてください。1つのマップに1台のモデムです。そして、マップが完成したら、何も動かないように、マップを固定してください。マップの構築には通常かなりの時間がかかるからです。マップを固定すると、固定ビーコンに関しては何も変更されなくなります。サービスゾーンも、固定ビーコンの位置も、何も変わりません。そして、マップを固定して保存することができます。これは非常に役立ちます。なぜなら、
11:51 誤ってマップを失うのを防げるからです。マップの構築にはかなりの時間がかかりますから。今後の機能として、スーパーマップがあります。前にも触れたとおり、一部のお客様から「とても気に入っている。250台を超える、さらに広い範囲もカバーできないか」という声をいただいています。はい、できます。マップとスーパーマップの間に大きな違いはありません。マップがサブマップの組み合わせであるのと同じように、スーパーマップはマップの組み合わせです。各マップに250台のビーコンが含まれていても、それらのマップをスーパーマップにまとめることで、事実上無制限の空間をカバーできます。携帯電話網とまったく同じです。携帯電話網をご存じなら、サブマップをセル、マップをセルのクラスター、スーパーマップをそのセルのスーパークラスターと考えてください。この場合、それこそ世界中をカバーすることもできます。規模は関係ありません。
12:51 お話ししたとおり、スーパーマップは今後の機能です。必要になれば、すぐに対応できるようにしています。ただ、これまでのところ、すべてのお客様がビーコン150台、サブマップ250の範囲に収まっています。それでも十分に広いエリアだからです。スーパーマップについて付け加えると、スーパーマップを制御するのは Super-Beaconです。Super-Beacon は基本的に、各マップからデータを収集するソフトウェアです。各マップを制御するのは Super-Modemです。大規模なマップだからです。そして Super-Modem がスーパーマップにデータをストリーミングします。データの送り先は Super-Modem。また、Super-Modem が、エンドユーザーであるあなたに、スーパーマップ全体を調整済みの1つのマップとして表示します。ですから、それがほかのマップで構成されていることを知らなければ、おそらく気づきもしないでしょう。あなたには、何千台ものビーコンと何千ものサブマップからなる、ただの巨大なマップに見えるからです。
13:50 つまり、実質的には同じことです。では、サブマップです。サブマップとは何でしょうか?前述のとおり、サブマップは基本的なスターターセットのようにマップあたり1つの場合もあれば、マップあたり最大250になる場合もあります。これがサブマップです。覚えておいてください。サブマップはビーコンの組み合わせで、あるエリアを担当するために組み合わされたものです。どのエリアか?サービスゾーンのエリアです。この例のように、クリック、クリック、クリック、クリックと点を指定して「これらのビーコン、つまりこのサブマップがこのエリアを担当する」とサービスゾーンのエリアを明示的に定義しなくても、暗黙の距離制限があり、その値はデフォルトで30
14:49 メートルです。つまり、手動でさらに大きくしない限り、30メートルを超えるとビーコンは超音波の受信をやめます。ですから、30メートルより遠くにあるモバイルビーコンは、位置を求めることすらできません。たとえば50メートルに手動で設定することは可能です。もちろん推奨は30メートルまでですが、手動設定で50メートルにしてカバーすることもできますし、40メートルや60メートルといった非常に大きなサブマップを手動で構築することもできます。ええ、場合によってはそれも可能です。推奨はしませんが、ノイズが非常に少なく、19 kHzや25 kHzのような低い周波数の超音波を使う特殊なケースでは、垂直方向に、実際にも最大50メートルの距離をカバーできることがあります。
15:47 ただし、一般的には30メートルまでです。そのため、わかりやすく、各サブマップは最大1,000平方メートル、つまり33 × 33メートル程度だと説明しています。サブマップには1D、2D、3Dがあり、これは2D、つまりXYの例です。固定ビーコンが1台しかない場合は、1Dのサブマップを構築できます。これも可能です。たとえば廊下や通路の近くで、もう一方の座標を気にしない場合です。トンネルなども同じです。関心があるのはX位置、つまりX座標だけ。それで十分です。これは1Dサブマップを構築する方法として、よく推奨されるものです。2D構成が最も一般的です。通常は人員のトラッキングや
16:46 ロボットのトラッキング、フォークリフトなどなので、2Dになります。もちろん3Dもあります。3Dも2Dと本質的には変わりません。単に、2台ではなく4台のビーコンを使うだけです。冗長性については後でさらに説明しますが、4台を推奨します。3Dトラッキングには最低3台が必要ですが、そのうち1台は簡単に遮られてしまうからです。そのため、少なくともある程度の冗長性を持たせるために、当社のスターターセットは5台のビーコン、つまり固定ビーコン4台とモバイルビーコン1台で構成されています。固定ビーコンが4台あれば、3Dトラッキングに3+1の冗長性が得られます。これが、3D用に固定ビーコンを4台にしている理由です。3Dに関する推奨事項は先ほど触れたとおりです。2Dでは、たとえば完全に重なり合うサブマップを構築でき、これについてはもう少し詳しく説明します。3Dトラッキングの標準的な構成は、3+1の冗長性です。
17:44 システムは、4台のビーコンから3台を選ぶ組み合わせでできる4つの三角形のうち、どれを使うかを自動的に選びます。次は「線を越えない」というルールです。これは2Dでは非常に重要です。ご覧のとおり「ノーズ」があり、モバイルビーコンをこの線に近づけすぎると、システムはこちらのエリアとあちらのエリアを区別できなくなります。もう少し詳しく説明しますが、要点は、2Dでは2台の固定ビーコンを結ぶ線を越えないことです。3Dにはこのような制約はありません。しかし2Dでは、モバイルビーコンがこちらのエリアにあるのか、あちらのエリアにあるのかを、システムは幾何学的に区別できません。距離を測定しているので、どちらでも距離が同じになるからです。ですから、線を越えないでください。ほとんどの場合、
18:44 近づくことさえ避けてください。誤差が指数関数的に大きくなるからです。配置や計算には、常に何らかの誤差があります。ですから、この線に近づきすぎないこと、そして決して越えないことです。次にサービスゾーンです。これについてはもう少し詳しく説明しますが、サービスゾーンは常に設定することをおすすめします。1台または2台のビーコンで構成される基本的なサブマップしかない場合は、サービスゾーンは推奨ですが必須ではありません。しかし、この例のようにサブマップが複数ある場合は、サービスゾーンは事実上必須です。なぜでしょうか?このビーコンとこのビーコンの距離がわずか5メートルで、こちらのビーコン同士、失礼、このビーコンとこのビーコンの距離も5メートルだとします。しかし、それぞれのビーコンは
19:42 30メートル、あるいはそれ以上まで受信できることを思い出してください。たとえば、ここにモバイルビーコンがあるとします。ここではなく、このエリアです。このエリアは、間違いなくこちらのビーコンが担当したほうが良いのです。距離が近く、この方向に向けて調整されているなどの理由があるからです。ですから、こちらが担当するのが望ましいわけです。しかし、こちらのエリアからこちらのエリアまでは、そうですね、10メートルか15メートル程度かもしれません。そのため、こちらのビーコンも簡単に同じエリアを担当しようとします。実際には、この2台のビーコンがこのエリアを担当しようとするのです。これは良くありません。この位置について、こちらのサブマップとあちらのサブマップから、2つの位置の見解が出てくるからです。まず、見解が2つになります。次に、余分な負荷が生じます。見解が一致すれば良いのですが、実際には常に食い違います。
20:40 そして、システムはどちらかを選ばなければなりません。いまは2つのサブマップだけの話をしていますが、小さなサブマップがたくさんある場合を想像してください。距離が5メートル程度、つまりサブマップのサイズがわずか5メートルだと、5つ、10個といった異なるサブマップが重なり合うこともあります。そうなると完全に混乱し、システムはまったく機能しなくなります。ですから、私たちの推奨は非常に基本的なものです。サブマップが2つ以上になったら、サービスゾーンは事実上必須です。サブマップはビーコンの組み合わせであることに注意してください。一方、サービスゾーンは、そのサブマップが担当するゾーン、つまり責任範囲です。ここでサブマップと言っているのは、ビーコンのことです。ビーコンの台数に応じて、2台、3台、あるいは4台のビーコンです。それがサブマップです。つまり、サブマップとサービスゾーンは同じものではありません。おわかりいただけたでしょうか。次に、ビーコンの高さです。覚えておいてください。2Dの場合は、必ず
21:39 高さを設定しなければなりません。固定ビーコンとモバイルビーコンの両方の高さを入力する必要があります。サブマップでは、すべてのビーコンが床面からある高さに設置されているからです。床面はサブマップ内の一種の仮想的なものですが、実際には本物の床です。そして、ビーコンを床から3メートル、5メートル、あるいは10メートルといった高さに設置します。床が仮想的なものである場合もありますが、いずれにしても同じです。高さは手動で入力しなければなりません。システムは高さを計算できないからです。システムはビーコン間の距離を測定して距離テーブルを自動で作成できますが、高さはわかりません。床についての情報がないので、測る基準がないのです。ですから、ビーコン、つまり固定ビーコンの高さは手動で入力する必要があります。そして2Dでは、モバイルビーコンの高さも必要です。2Dなので、システムは高さを知っておく必要があるのです。
22:38 たとえば固定ビーコンが3メートル、フォークリフト上のモバイルビーコンが2.2メートルの高さにあるなら、モバイルビーコンの高さを入力しなければなりません。3Dではその必要はありません。3Dで必須なのは、固定ビーコンの高さだけです。3Dでは、モバイルビーコンの高さももちろん測定されます。そしてマップは自動で構築されます。これはSuper-Beaconの大きな利点です。建物でもエリアでも、物理的に設置するだけでよいのです。ビーコンを1台、もう1台と置けば、サブマップが構築されます。このマップが自動で構築されるのは、サブマップを固定するまでの間、システムがビーコン間の距離を測定し続けるからです。ビーコン1からビーコン2へ、この例ではビーコン10からビーコン11へ、そしてビーコン11からビーコン10へと測定します。そして、システムが距離テーブルを埋めていきます。
23:37 テーブルは「10から11」「11から10」で構成されます。たとえば距離が5メートル1センチと5メートル3センチなら、システムは「差はわずか2センチ。測定は正しく行われた」と判断し、距離テーブルを白で表示します。これで問題ありません。マップを固定できます。マップの準備完了です。正確にはサブマップの準備完了です。何のために?たとえばこちらのような、別のサブマップを構築するためです。改めて言うと、ビーコンの配置、距離テーブル、サービスゾーンのすべてに問題がなければ、サブマップを固定できます。失礼、サブマップを固定する、です。マップが1つのサブマップだけで構成されているなら、マップも固定できます。そうでなければ、次のサブマップ、さらに次のサブマップと構築していきます。すべてのサブマップを構築して固定したら、マップを固定できます。マップとは基本的に
24:36 サブマップの組み合わせだからです。これが距離テーブルです。Super-BeaconやIndustrial Super-Beaconなど、超音波を送受信できるSuper-Beacon系のモデルであれば、距離テーブルを自動で作成できます。ですから、ビーコンの位置を手動で入力する必要はありません。ビーコン間の距離を手動で測る必要もありません。それどころか、可能な限り、距離テーブルはシステムに自動で作成させることを強くおすすめします。なぜでしょうか?これは別のテーマで説明しましたが、実際のメートルと超音波で測ったメートルなどには違いがあり、キャリブレーション前は同じではないからです。ですから、固定するときには距離テーブルが白になっていることを確認してください。この例では白ではなく、緑になっています。
25:35 手動で入力したからです。通常の状態であれば白になります。たとえば、30メートル129ミリと30メートル120ミリのような場合です。この方向とこの方向で9ミリの差です。これなら問題なく、白で表示されます。距離テーブルに赤いセルがある場合、システムは「このビーコンからとこのビーコンへの距離が一致しない。何かがおかしい」とはっきり伝えています。何がおかしいのか?見通しがないのかもしれません。位置が最適でないのかもしれません。見通しはあっても、ビーコン同士が正しく向き合っていないのかもしれません。つまりシステムは、距離テーブルの準備ができていないと言っているのです。先に進まないでください。サブマップを固定しないでください。修正するまでは何もしないでください。繰り返しますが、すべてが止まってしまう可能性があります。これについては別の動画もあります。ですから…
26:33 …距離テーブルが完全に白になるまでは、先に進まないでください。トラッキングを試みないでください。トラッキングが不安定になり、位置が飛ぶなど、あらゆる問題が起きます。距離テーブルは白でなければなりません。そのうえで固定します。サービスゾーンについては、すでに説明しましたので、比較的手短に進めます。サブマップが1つだけでも、サービスゾーンを設定することをおすすめします。なぜでしょうか?サブマップが1つの場合にサービスゾーンを作らず、たとえばビーコンを互いに2メートル、あるいは2〜4メートル程度離して置いたとします。「マップが小さいから、更新レートは高くなるだろう」と考えるでしょう。しかし、そうはなりません。想定するサブマップのサイズである3 × 3メートルや5 × 5メートルといったサービスゾーンを定義しなければ、システムはそれを知らないからです。
27:31 その結果、システムは30メートルのサブマップを構築します。画面には表示されませんが、30メートルのサブマップになっています。マップが30メートルなら、超音波は次の位置更新の前に30メートル伝搬します。つまり、3〜4メートルのごく小さなサブマップのつもりが、30メートルのサブマップになってしまうのです。ですから、サブマップが1つでもサービスゾーンを定義してください。サブマップが複数、つまり2つ以上ある場合は、ほぼ必須です。これはすでに説明しました。定義しないと、隣接するサブマップからビーコンの位置について複数の見解が出て、混乱します。2つや3つなら動作します。動作するかもしれません。ただ、おすすめはしません。動作するかもしれませんが、異なる見解が出るなどの理由で、トラッキングはおそらく不安定になります。そして、たとえば比較的狭いエリアにサブマップがたくさんあると、完全に混乱します。ですから、サブマップが
28:30 2つ以上あるときは、必ずサービスゾーンを構築してください。サービスゾーンには、マップと同様に1D、2D、3Dがあります。1Dの場合は、基本的に距離制限です。距離制限は、ビーコンに「設定値より遠くは受信しない」と指示するものです。たとえば10メートルです。この場合、飛行時間で10メートルを超えた信号は、システムが単に受信しなくなります。モバイルビーコンが11メートルの位置まで移動するとしましょう。進んでいって、9メートル、まだトラッキングされます。9.5メートル、まだトラッキングされます。10メートル、まだトラッキングされます。10.5メートルでは?そこまでです。もう見えません。範囲外に出てしまったのです。見えなくなります。ですから注意してください。値を小さくしすぎると、モバイルビーコンが範囲外になり、トラッキングされません。そこに存在しないのと同じです。
29:28 そのため、私たちは常にこうおすすめしています。行き詰まったら、Defaultボタンを押し、マップを削除して、デフォルト設定でマップを一から構築し直してください。デフォルトは30メートルです。モバイルビーコンは、ほぼ確実にこの範囲内に入ります。もちろん、サブマップやサービスゾーンはできるだけ小さくするように努めてください。しかし、行き詰まったり、モバイルビーコンを見失ったりしたときは、マップを削除してください。将来のために先に保存しておき、そのうえで削除して、30メートルのサービスゾーンで一から構築し直してください。暗黙の距離制限、つまり暗黙のサービスゾーンです。3Dの場合、サブマップは層のようなものです。2Dのサブマップと、床からの上方向・下方向の高さを定義するので、層のようになります。形は2Dのサブマップで、そこに上方向と下方向の高さが加わるだけです。
30:27 これが3Dの場合です。さて、サービスゾーンと距離制限は非常によく似ています。サービスゾーンを定義しなければ、距離制限が適用されます。しかしサービスゾーンを定義すると、サービスゾーンが優先され、距離制限はもう適用されません。そうでない場合、たとえばこのビーコンが超音波を受信する距離制限はどうなるでしょうか?サブマップの最大サイズに、安全のための余裕を加えた値になります。すでに述べたとおり、サービスゾーンはさまざまな理由で重要です。まずはハンドオーバーゾーンです。いわば「マイノリティ・リポート」、つまり複数の見解が出るのを避けるためです。もう1つの要素は位置更新レートです。もちろん、通常は更新レートをできるだけ高くしたいはずですが、更新レートは超音波の飛行時間に左右されます。そして超音波の飛行時間は、この
31:26 マップのサイズによって決まります。更新レートは、無線プロファイルなどのほかのパラメーターにも左右されますが、最も大きく影響するのはサブマップのサイズです。ですから、サブマップが小さいほど、更新レートは高くなります。更新レートが重要な場合は、サービスゾーンを定義してサブマップのサイズを小さくするようにしてください。現在、サービスゾーンはクリックで指定できます。クリック、クリック、クリック、というように、最大8点まで指定できます。何らかの理由でそれ以上必要な場合はお知らせください。増やすかもしれません。ただ現時点では、サービスゾーンの点、つまり角は最大8つです。ハンドオーバーゾーンは非常にシンプルです。ハンドオーバーゾーンとは、2つのサブマップが重なり合う
32:24 ゾーンです。たとえば、このエリアでは1つ目のサブマップだけが担当しています。このエリアでは2つ目のサブマップが担当しています。しかし、このエリアでは隣接する2つのサブマップが担当しています。そのため、ソフトハンドオーバーとハードハンドオーバーがあります。もちろんソフトハンドオーバーのほうが優れています。このエリアでは両方が担当しているからです。そこに入るときのハンドオーバーには、いくつかの種類があります。タイプI、タイプII、タイプIIIです。モバイルビーコンがハンドオーバーゾーンに入ると、すでに元のサブマップと次のサブマップの両方でトラッキングできる状態になります。タイプIのハンドオーバーは、すぐに新しいサブマップに切り替わるものです。
33:24 タイプIIでは、そのまま進んでいきます。すでに両方のサブマップが担当していますが、元のサブマップ、つまり古いサブマップの位置を報告し続け、そのサービスゾーンの端に達するまでそれが続きます。そして、ここで2つ目のサブマップが報告する座標に一気に切り替わります。もちろん、ネットワーク全体の計画と配置は、こうした位置の飛びを避けるために行います。通常、この飛びは目に見えません。しかし、サブマップが完全に構築されていなかったり、ずれていたりすると、誤差の大きさに応じて、サービスゾーンやハンドオーバーゾーンに入るときと出るときに、小さな、あるいは小さくない飛びが生じます。ですから、状況次第です。そしてタイプIIIのハンドオーバーは
34:23 平均化です。こちらに近いときは主にこちらのサブマップに基づき、中間では50対50、端に来ると主にこちらのサブマップに基づきます。そしてゾーンを出れば、当然もう一方のサブマップに切り替わります。これにより、起こりうる位置の飛びを滑らかにできます。ただ、構築作業中は、この飛びがわかるほうが簡単で好都合な場合もあります。ハードハンドオーバーは、モバイルビーコンがサービスゾーンに入ったのに、何らかの理由で2つ目のサブマップに引き継がれず、システムがハードハンドオーバーの手順を開始しなければならない場合です。ハードハンドオーバーの手順とは、基本的にモバイルビーコンを一から探し直すことです。ソフトハンドオーバーでは遅延はなく、このようにそのまま進んで通過していきます。
35:22 このように進みます。これがソフトハンドオーバーです。ハードハンドオーバーでは、ここまで来たところで何らかの理由で見失われ、何回かの位置更新の間、つまり2回、3回、5回、場合によっては10回の位置更新の間、見失われたままになります。更新レートが毎秒8回なら、1〜2秒ほど見失われた後、こちらで再び見つかり、その後は通常のトラッキングと同じように順調に進みます。もちろん、ハードハンドオーバーは避けるべきです。しかし、完全に見失うよりはハードハンドオーバーのほうがましです。ハードハンドオーバーは機能の1つですが、ビーコンを見失ったときの、いわば最後の手段です。
36:21 ビーコンはどのように配置すればよいでしょうか?サブマップや複数のサブマップの構築方法に進む前に、ビーコンの配置方法に簡単に触れておきます。すべてを支配するルールはただ1つ、見通し、見通し、見通しです。ビーコンはどのように配置すべきか?モバイルビーコンから固定ビーコンへの見通しが失われる可能性が最も低くなるように配置しなければなりません。そのため、常にではありませんが、95パーセントのケースでは、固定ビーコンを天井や壁の高い位置に設置し、モバイルビーコンは車両、ロボット、ドローンの上部に取り付けます。センサーを上部に付けるのは、遮られる可能性が最も低くなるからです。もちろん、人が机やテーブルの下に隠れたり、たとえば
37:20 フォークリフトの陰に入ったりすることはあります。しかし、その可能性は、たとえばモバイルビーコンを胸元やポケットに入れた場合よりも小さくなります。胸元やポケットだと、ほぼ確実に、ほとんどの時間で見通しがなくなります。そのため、固定ビーコンは高い位置に、モバイルビーコンも上部に取り付けます。固定ビーコンは下向き、モバイルビーコンは上向きです。「向き」とはこういう意味です。操作マニュアルでも確認していただきたいのですが、各トランスデューサーは約90度のビームで超音波を発信します。そのため、4つのトランスデューサーで水平方向に360度のカバレッジが得られ、垂直方向には180度のカバレッジがあります。わずかにずれた位置にあるマイクは、自動的に水平方向に360度、垂直方向にほぼ180度
38:19 をカバーします。はっきりとは言いにくいのですが、水平面の方向でも聞き取ることはできるものの、信号は弱くなります。つまり、水平面付近では感度が下がります。だからこそ、固定ビーコンは通常、水平面から20〜30度以上高い位置に設置する必要があるとお話ししているのです。たとえばここのように固定ビーコンが非常に遠く、ほぼ水平面上にあると、感度が下がり、さまざまな厄介な問題が起こり始めることがあります。これはこのプレゼンテーションのテーマではありません。ただ、固定ビーコンを十分に高い位置にすれば、水平面付近になることはない、ということは覚えておいてください。一方、たとえばこのように、モバイルビーコンから見て水平面より下に固定ビーコンを置くと、マイクにはまったく聞こえません。下にあるので見えないからです。いわば影ができてしまいます。
39:18 影に入ってしまうのです。たとえば、これがこのマイクにとっての影です。ここは影ではありませんが、ここは影になります。おわかりでしょうか。基本は見通し(超音波が直接届く経路)、つまり見通しの範囲内に収めることです。そして、できるだけ少ない台数のビーコンで、遮蔽の可能性ができるだけ小さくなるように、同じエリアをカバーできる位置にビーコンを設置します。一般的には、遮蔽の可能性をできるだけ小さく、ビーコンの台数をできるだけ少なくするために、壁の高い位置に設置します。高すぎず低すぎず、モバイルビーコンから見て水平面より20度以上高くなるようにし、遮蔽の可能性をできるだけ小さくします。また、可能であれば、サブマップとサービスゾーンをできるだけ小さく構築できるようにビーコンを配置してください。そうすれば、更新レートを最も高くできます。すでに触れたほかのヒントもあります。忘れずに高さを
40:18 固定ビーコンに入力してください。これはよくある間違いです。マップを構築するときは、モバイルビーコンについても、2Dや1Dの場合も、こうした間違いを避けてください。また、高さの入力は必須です。入力しないと、位置が正しく測定されません。測定はされますが、ずれた位置になります。そんな誤差は不要ですよね。また、たとえばビーコンを角に設置する場合など、上向きに発信するセンサーが不要なことがあります。そもそも意味がありませんよね。上にはカバーすべきものが何もないのですから。ですから、そこで不要なら、上向きのトランスデューサーは無効にしてください。あるいは、隣の壁のほうを向いているトランスデューサーも不要です。通常は害にはなりませんが、余分な電力など、余計な負担になります。ただ、発信する以上、害になることもあります。特殊な定在
41:17 波などが発生する可能性があるからです。さらに、壁が近すぎるとパルスを乱すおそれがあります。超音波の出力について、たとえば長距離をカバーする場合を考えてみてください。通常は50パルスを有効にすることを推奨しています。50パルスとはどういう意味でしょうか。一般的な31 kHzの周波数の場合、1パルスはおよそ1センチメートルです。つまり、パルス全体の長さは50センチメートルになります。壁までの距離が10センチメートルほどで、その壁に向けて発信すると、パルスが進み始めたあと、当然ながら反射信号は遅れて戻ってきますが、反射信号の位相が180度ずれることがあります。つまり、反射信号が本来の波を打ち消そうとするわけです。もちろん、最初の部分はすでに遅れているので打ち消せません。信号はこちらへ進み、こちらへ戻ってきます。しかし、後半の部分は実質的に
42:15 打ち消されてしまうことがあります。その結果、50個の良好なパルスのうち良好なのは10〜15個だけになり、残りは近すぎる反射によって打ち消されてしまうおそれがあります。対策は簡単です。壁に近づけすぎないことです。近いとは、たとえば30センチメートル未満のことです。壁の近くに置かない、あるいは壁に向かって発信するトランスデューサーを有効にしないでください。意味がないどころか、役に立たず、むしろ害になることがあります。そしてもう1つ、ビーコンの向きを調整します。たとえば、壁への設置を推奨していますが、実際には壁にそのまま取り付けるのではなく、壁に取り付けたうえで少し中心のほうへ向けてください。そのほうが、できるだけ良いカバレッジが得られるからです。良いカバレッジとは、このような状態です。各トランスデューサーのカバー範囲はおよそ90度であることを覚えておいてください。そのため、このようにトランスデューサー1つだけで済むこともあります。もう1つ
43:14 例を挙げます。角があるとします。角は90度です。そこで、角のちょうど真ん中に設置し、ほかのトランスデューサーはすべて無効にして、中央のトランスデューサーである4番だけを有効にします。これはサービスゾーンの中心を向いています。この配置は理想的で、いくつもの点で優れています。まず、角に設置したので、先ほどの余計な打ち消しが起こりません。次に、当社のシステムは非常に高精度だということを思い出してください。そのため、ユーザーはさらに高い精度を求めるのが普通です。そして、最も高い精度が得られるのは、発信するトランスデューサーが5つではなく1つのときです。5つあればカバレッジを確保するのには非常に有効ですが、互いに1〜2センチメートルほどずれています。それが誤差の要因になります。説明は難しいのですが、もはや点ではなく、いわば太い点になり、ある程度の不確かさが生じます。
44:14 これも数学的に証明するのは難しいのですが、トランスデューサー、つまり発信器が1つだけなら、点がずっと小さくなるので確実に効果があります。その結果、精度が高くなります。これも効果の1つです。さらに電力の面でも効果があります。5つのトランスデューサーを駆動する代わりに1つだけを駆動すればよいので、消費電力を大幅に節約できます。場合によっては到達距離も伸びます。同じ電力を5つのトランスデューサーに分けるか、1つに集中させるかの違いだからです。トランスデューサーはいずれにしても出力が飽和しているので、通常はそれほど効果はありませんが、効果がある場合もあります。それから、モデムは、すべての固定ビーコンとモバイルビーコンに無線のカバレッジを提供できるなら、どこに置いてもかまいません。そのため、モデムについてはあまり取り上げません。これについては、無線に関する別の
45:12 プレゼンテーションがあります。ですから、周波数の話をするときも、ほかの何の話をするときも、モデムはどこにあってもかまいません。見通しがなくても問題ありません。ただし当然ながら、モバイルビーコンと固定ビーコンのそれぞれと無線で接続できなければなりません。特に難しいのはモバイルビーコンです。固定ビーコンについては、テストして確認できるので、ほぼ確実に接続を保証できます。一方、モバイルビーコンは移動します。アンテナの状態も、あらゆる条件も変わります。そのため、モバイルビーコンでも接続は可能ですが、より難しくなります。サブマップの機能が用意されているのは、こうした理由もあるからです。たとえば、複数のフロアがある高い建物では、1台のモデムで複数のフロアをカバーするのは非常に難しくなります。不可能ではありませんが、そのためには特殊なアンテナを用意する必要があります。無線信号は最大でも10 dBmと非常に弱いからです。
46:11 無線では、フロアを越えてカバレッジを確保するのは非常に難しいのです。ヒントその2:これについてはすでに専用の動画がありますので、そちらをご覧ください。ここでは詳しくは触れません。ただし場合によっては、これも詳しくは触れませんが、ビーコンの配置が広すぎる、あるいは狭すぎる特殊なケースがあります。たとえば、これがそうです。別のテーマですが、モバイルビーコンがビーコン同士を結ぶ線に近すぎるため、これは広すぎるマップになります。一方、狭すぎるのは、モバイルビーコンが遠すぎる場合です。たとえば、この2台でマップを構築し、モバイルビーコンがここにある場合です。広すぎる、狭すぎるというのは、比率がたとえば1対10になるような場合です。一般的な比率、推奨される比率は、1対1、1対1/3、1対3程度です。これなら
47:09 問題ありません。しかし、1対10や10対1では差が大きすぎます。そのほか、精度に関する特別な構成もあります。これも動画をご覧ください。ここでは触れません。ただし注意してほしいのは、床からコプターを離陸させる場合です。ビーコンを床に設置すると、離陸するまでの間に問題が起こります。この点は動画でより詳しく確認してください。そのため、たとえばドローンは建物の外へ飛び出さず、建物の中を飛ぶ必要があります。精度を確保する最も簡単な方法は、基本的に固定ビーコンを天井に設置し、天井より上には決して飛ばないことです。そうすれば、この点で問題が起きることは基本的にありません。
48:08 次に、2Dと「線を越えない」ことについてです。すでに触れましたが、改めて見てみましょう。線を越えないことがなぜ問題になるのか。これは典型的な2Dサブマップです。IAアーキテクチャ(Inverse Architecture)でもNIAアーキテクチャ(Non-Inverse Architecture)でも関係ありません。どちらでも同じです。これが実際の位置で、ご覧のとおり、この「ノーズ」はこのエリアをカバーしていることを示しています。しかし、どんどん近づいて、さらに線を越えてしまうと、システムは区別できなくなります。実際にはこちらにいても、システムはこちらにいると判断し続けます。たとえばこのように動くと、実際にはシステムは鏡像の位置を表示します。区別できないからです。このエリアの超音波は引き続き聞き取れますが、区別はできないのです。
49:05 こちらにいるのか、それともこちらにいるのかを。2台の固定ビーコンに基づく基本的な幾何学上、それは原理的に不可能だからです。ただし私たちの推奨は、そもそも線に近づきすぎないことです。なぜか。すでに述べたとおり、広すぎる・狭すぎるの問題です。近づきすぎると、システムの仕組み、つまり三辺測量、この場合は二辺測量ですが、距離を測定した結果、こちらのエリアからの距離とこちらのエリアからの距離がほぼ同じになります。そのため、システムが混乱し始めることがあります。そして、これを非常に正確に計算・測定していないと、たとえば2センチメートルの誤差があるだけで、線に近づきすぎたときに、すでに線上にいるように見えてしまいます。その結果、さまざまな厄介な問題が起こります。特に問題になるのは、高い位置にある場合です。たとえば、2台を設置したとします。このビーコンとこのビーコンがここと、あそこにあります。つまり、この2台の
50:05 ビーコンが、たとえば地面から3〜5メートルの高さに設置されています。この線に近づきすぎてトラッキングしようとすると、やはり先ほどの「広すぎる・狭すぎる」による誤差が生じます。実質的に、この線に非常に近い位置になるからです。相対的に見ると、長い距離を測定する必要があるのに線には非常に近いので、誤差が生じる可能性が高く、それが表に出てきます。順調に進んでいたのに、突然ジャンプするのです。たとえば、こちら側へ。システムがありえない判断をしてしまうからです。実際にはまだ線を越えていなくても、マージンや誤差のせいで、こちら側に位置付けてしまうことがあります。ルールはとても簡単です。2台のビーコンを結ぶ線に近づきすぎないこと。どのくらいか。明確な決まりはありません。マップをどれだけうまく構築したかによりますが、
51:04 全体としては、固定ビーコン間の距離の10分の1より近づかないようにしてください。繰り返しますが、これは厳密なルールではなく、あくまでヒントであり、アドバイスです。プレゼンテーションがさらに長くなりそうなので、第1部はここまでにしましょう。第2部、そしておそらく第3部もご覧ください。ありがとうございました。
動画の内容
要点
- 複数のサブマップを使う構成により、1つのサブマップの到達距離である30メートルを超えて、屋内測位のカバー範囲を広げられます
- 棚・壁・障害物による見通し外(超音波が直接届かない状態)が、サブマップの配置を決める主な要因です
- システムアーキテクチャは3種類:NIA(Non-Inverse Architecture、最もシンプル)、IA(Inverse Architecture、最も複雑)、MF NIA(Multi-Frequency NIA)。まずはNIAから学びましょう
- サービスゾーンとハンドオーバーゾーンは、重なり合うサブマップ間でのモバイルビーコンの移行を管理するための重要な概念です
- 各サブマップ内での適切なビーコン配置の手法と距離テーブルにより、±2cmの精度を確保できます
- 複雑なマルチサブマップのIAアーキテクチャのシステムに取り組む前に、固定ビーコン2台のシンプルなNIAアーキテクチャの導入から始めましょう
対象:システムアーキテクト、大規模導入チーム
大規模施設に超音波屋内測位システムを導入するシステムインテグレーター、倉庫自動化の専門家、ロボットエンジニア向けです。本コンテンツでは、複数のサブマップを使う構成によって、ビーコン単体の到達距離の限界を超えて高精度な屋内測位のカバー範囲を広げるという、重要な課題の解決方法を紹介します。
FAQ
サブマップ構成とマルチゾーンカバレッジ
サブマップの構築は、大規模な倉庫や製造施設、自律型ロボットの環境に超音波屋内測位システムを導入するうえで欠かせません。この詳細な技術ガイドでは、なぜサブマップによって単体のビーコンのカバー範囲の限界、つまりモバイルビーコンから固定ビーコンまで最大30メートルという制約を超えられるのかを説明します。プレゼンテーションでは、サブマップを導入する3つの重要な理由を取り上げます。大規模施設での到達範囲の拡大、棚や壁による見通し外(遮蔽)への対処、そして移動する物体による干渉の軽減です。動画では、マップ、サブマップ、サービスゾーン、ハンドオーバーゾーン(隣り合うサブマップの間でモバイルビーコンが移行する、重なり合うエリア)といった基本用語も紹介します。3つのシステムアーキテクチャ、すなわちNIAアーキテクチャ(Non-Inverse Architecture、初心者に推奨)、IAアーキテクチャ(Inverse Architecture、最も複雑)、MF NIA(Multi-Frequency NIA)を比較します。これらの方式は、固定ビーコンの超音波の発信のしかたによって区別されます。ガイドでは、複雑なマルチサブマップの導入に取り組む前に、より簡単な構成から段階的に進めることの重要性を強調し、ビーコン配置の手法、距離テーブル、実装上の実践的なヒントも取り上げます。対象は、複数フロアの倉庫や広いエリアで高精度な屋内GPS性能を必要とする自律型ロボット導入。
トピック
📍 プロジェクトに高精度な屋内測位が必要ですか?