[解決済み] Bluetooth LEのtxPowerとは具体的にどのようなもので、どのように使用するのですか?
質問内容
Beaconを利用したAndroidアプリを開発する予定なので、txPowerとは何か、どのように利用するのかを理解しようとしています。
ネット上で2つの定義を見ました。
1.ビーコンの送信電力。
2.ビーコンから1m離れたところでの受信電力。
この2つの定義にはどのような関係があるのでしょうか? また、QuickBeaconなどのアプリを使用してデバイスからBeacon信号を送信する場合、パワー(txPower)を何に設定すればよいのか、どのように判断すればよいのでしょうか?
どのように解決するのですか?
ほとんどのビーコン・フォーマットでは、送信時に以下の1バイトが含まれています。 は、1メートル離れたときに期待される信号レベルを示しています。 このバイトは、以下のように呼ばれることがあります。 txPower (送信電力の略)、時には 測定された電力。
これは、いくつかのビーコンモデルで、送信機が実際にブロードキャストを送信する強さを変えることができる第2の構成設定と混同しないように注意してください。 これは通常、次のように呼ばれます。 送信電力 そのため、測定された電力は混同されにくい用語です。
測定されたパワーフィールドは、距離の推定に使用されます。 携帯電話の信号レベルが、ビーコンが送信した電力測定値と同じであれば、ちょうど1メートル離れていることが分かります。 より強い信号があれば、より近いと認識します。 信号が強ければ近いと認識し、信号が弱ければ遠いと認識します。 計算式を使って、大まかな距離(メートル)を知ることができます。
この距離の推定を正確に行うには、測定した電界を1メートルで予想される信号レベルに適切に設定する必要があります。 これは、メーカーがビーコンにあらかじめ設定していることが多いのですが、通常は調整可能です。 なぜ調整する必要があるのでしょうか? ビーコンをキャビネットの中に設置すると、信号が減衰する可能性があります。 また、ビーコンを金属の壁面に設置すると、反射により信号が増加することがあります。 このような理由からです。 設置後、測定した電力値を設定し、ビーコンを校正することをお勧めします。
キャリブレーションでは、携帯電話を使用してビーコンの信号レベルを測定します(dBm単位で測定されるReceived Signal Strength IndicatorまたはRSSIと呼ばれる測定方法を使用します)。 キャリブレーションを行うには、一般的な性能のBluetoothレシーバーを搭載した携帯電話(理想的にはiPhone 6ですが、Nexusデバイスもうまく機能します)をビーコンから正確に1メートル離し、30秒間の平均信号強度を測定します。 多くのビーコン設定アプリやツールは、次のようなものです。 iOS版Locate と アンドロイド は、キャリブレーションユーティリティを備えています。
校正値を入手したら、メーカーの説明書に従ってビーコンに設定する必要があります。 そうすることで、より正確な距離の推定が可能になります。
関連
-
[解決済み】react-native: コマンドが見つかりません。
-
[解決済み] カスタムアダプタからnotifyDataSetChangeが機能しない
-
[解決済み】apkインストール時のINSTALL_FAILED_NO_MATCHING_ABIS
-
[解決済み】リストビューにonclicklistenerを追加する(android)
-
[解決済み】新しいAVDを作成すると、CPU/ABIフィールドに「システムイメージがインストールされていません」と表示される。
-
[解決済み】SDKの場所がandroid studioで見つからない。
-
[解決済み] Androidのgravityとlayout_gravityの違いは何ですか?
-
[解決済み] TextViewでテキストを水平・垂直方向にセンタリングするには?
-
[解決済み] match_parentとfill_parentの違いは何ですか?
-
[解決済み】「px」、「dip」、「dp」、「sp」の違いは?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Edit Textのandroid:ems属性とは何ですか?[重複しています]
-
[解決済み】インストールエラー。インストールエラー:install_failed_older_sdk
-
[解決済み] カスタムアダプタからnotifyDataSetChangeが機能しない
-
[解決済み】Dalvikとdalvik-cacheとは何ですか?
-
[解決済み] [Solved] Unsupported method: ベースコンフィグ.getApplicationIdSuffix()
-
[解決済み】sendUserActionEvent()がnullである。
-
[解決済み】SDKの場所がandroid studioで見つからない。
-
[解決済み】アクティビティにない場所でのgetLayoutInflater()の呼び出し
-
[解決済み] AndroidのADBデバイスが不正に
-
[解決済み] Gradle DSL メソッドが見つかりません:'compile()'