WiFi Direct高周波からRSSIインジケータを取得する

WiFi Direct高周波からRSSIインジケータを取得する

だから私はしばらくこの問題で苦労しました。

Wi-Fiセンサー付きのラズベリーパイがあり、他のAPから送信されるWi-Fi Direct信号のRSSI(基本的に信号強度)を取得するには、センサーが必要です。

これは距離測定(PIとAP間)を取得するために使用されるため、1秒以内に高い頻度で測定する必要があります(理想的には100ミリ秒または1秒のRSSI平均が必要です)。

wpa_supplicantのp2p機能を使用してRSSIを取得できることを知っていますが、頻度は毎秒約6〜12回の測定値であり、分散はかなり高いです。役に立つ他のツール/方法を知っている人はいますか? wpa_supplicantが「平均指標」を提供するのは良いことです。

注:私は実装の前に仕事をしているので、距離/角度を計算する方法の数学/科学を完全に理解していません。この値はおそらく十分です。概念的には何かが欠けているかもしれません。もしそうなら教えてください:)。

ベストアンサー1

を使用しないでwpa_supplicant1レベルダウングレードしてください。今試しました。

while true ; do date -Ins ; /sbin/iw wlan0 station dump | grep signal ; done

私のデスクトップでは、毎秒100以上の測定を実行できますが、違いは特に高くありません。

signal avgしたがって、毎秒1回ではなくgrepを実行するとsignal大丈夫です。処理能力が低いため、RaspPiでは異なって見えるかもしれません。

これらの値はドライバー内部の黒魔法によって計算され、ハードウェアとドライバーによって異なりますので、おおよその表示としてのみ使用してください。

したがって、ソースを正確に見つけるためには、多くの測定を行う必要があります。

数学的には、信号強度を距離にマッピングする単調関数を想定する必要があり、その逆も同様です。この関数がどのように見えるかについていくつかの仮定をする必要があります(たとえば、2次/3次、最初にいくつかの測定を実行することもできます)。与えられたエラー値を取得するには、ソース座標を見つけ、エラーを最小化する座標を見つけます。

このためのオープンソースプロジェクトを作成したら、リンクを見たいと思います。 :-)

おすすめ記事