2012-12-04 5 views
31

私はBluetooth低エネルギーコンセプトプロジェクトに取り組んでいます。 RSSI値が1から100の間で になっています。タグを動かすと、周辺機器がiPhoneから離れてRSSI値が増加し、近くに移動するにつれて値が減少します。Bluetooth低エネルギー対応デバイスのRSSI値からの距離を求める

iPhoneとBluetoothタグの正確な距離をRSSI値に基づいて知ることができますか?利用可能な式がありますか?

私はこのブルートゥース低エネルギーのデリゲートメソッドの助けを借りて、デバイスのRSSI値を取得していますが:

- (void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:(CBPeripheral 
    *)peripheral advertisementData:(NSDictionary *)advertisementData RSSI:(NSNumber *)RSSI 
+0

このスレッドは多かれ少なかれこの1つの複製です:http://stackoverflow.com/questions/15687332/bluetooth-le-rssi-for-proximity-detection-ios。結論は非常に難しいことです。 – Jessedc

+0

RSSIを使用してBLEデバイスとユーザの位置の距離がありますか?はいの場合は、私を案内します。 – Moxarth

答えて

32

私はここでそれを繰り返して、別のスレッドでこれに答えました。

視線方向(RSSIの変化を引き起こす障害はありません)では、-6dBは距離の2倍と思われます

あなたは1メートルの距離でRSSI -40dBが、その後2メートルは8メートルは-58dBを与え、4メートルは-52dBを与える、-46dBを与える読めば、16メートルは-64dBを与えます。

正確な位置を得ることはできません。円形の最大距離のみを取得できます。

2-3個以上のデバイスで三角測量を使用すると、より正確な測位結果が得られます。 これは広告パッケージから純粋に取得できますが、スキャン - >スキャンを無効にするか、iOS CoreBluetoothにすべてのadvパッケージを報告するように指示する必要があります。

フォアグラウンドモードでこれを行うことはできますが、バックグラウンドモードではすべてのadvパッケージを取得することはできません。バックグラウンドでそれを行うには、RSSIに接続して読み取る必要があります。

+3

私はそれが私の場合には事実だとは思わない。距離が1m以内の私の場合、それは常に約-66dBを読みます。 – Yeung

+1

これは実際には-66dBではなく-66dBmです。基本的にアナログアンプの出力に電圧がかかっていますが、これは距離に依存するのではなく、使用されるアンテナの種類、両側のアンテナの位置およびその他多くの面にも依存します。あなたが2倍以上離れるとちょうど変化は約6dBです。 –

+3

ニンピクしてはいけませんが、この場合実際には三角測量であり三角測量ではありません。あなたは関係する角度を知りません、それは全体のポイントです、あなたが知っているのは横方向の距離なので、それは三辺測量です。 –

26

に関するいくつかの研究をしています三角測量やフィンガープリンティングなどのローカライゼーション技術をベースにしています。それらのどれも完璧ではありません。 RSSIは、障害物、マルチパスフェージング、アンテナ偏波、クロスボディシールドなどの多くの要因の影響を受けます。

RSSIと距離との間の理論的な関係は、このようなものである:

D距離であり、 が離れBLEデバイスから測定されたRSSI 1メートル点であるオフセットさ
RSSI[dbm] = −(10n log10(d) − A) 

googleをRSSI[dbm] = −(10n log10(d) − A)とすれば、それについての情報源がいくつか見つかります。

+5

この式では「n」は何ですか? –

+0

異なる地形、都市部、山岳部、遠隔地で異なる経験的価値です。通常約2〜4。私はすぐに参考にしていません。 – foresightyj

+1

この文書では、(ソースをさらに参照して)「屋内局在化のRSSIの信頼性の評価」http://www.rn.inf.tu-dresden.de/dargie/papers/icwcuca.pdfを参照してください。 –

関連する問題