問題タブ [digital-compass]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
455 参照

ios - GPS 方位 - コンパス方位

矢印の付いたダイヤルがあります。この矢印が GPS 座標を指すようにし、同時にコンパスの方向を調整するようにします。

コンパスが正常に回転するようになり、正しい GPS 方向に矢印を向けることもできますが、GPS 方向矢印を回転させるときにコンパスの方向を補正するのに問題があります。

誰かが私にこれの簡単な例を教えてもらえますか? 何日も奮闘中!

ATB。クリス

0 投票する
1 に答える
1210 参照

java - ローパスフィルターの平滑化パラメータの値の計算方法(コンパスセンサーデータの平滑化の場合)

ローパスフィルターを使用してスマートフォンのコンパスセンサーデータを平滑化し、ローパスフィルター実装の平滑化パラメーターを計算したいと考えています。

このフォーラムで利用可能な質問/投稿の 1 つに関して質問があります

上記の投稿では、著者はローパス フィルターを使用してセンサー データを平滑化したいと考えており、必要に応じて平滑化パラメーター (ALPHA) を設定することを提案しています。スムージング パラメータは 0 ~ 1 の間にある必要があります。0 に近い値は、データ内で滑らかです。

したがって、著者は ALPHA = 0.15 を使用しました。

私の意見によると、科学的には、目を閉じて 0 から 1 までのランダムな値を選択することによってこれを行うことはできません。

私の質問は、サンプリング レートが 100Hz の場合に、平滑化パラメーター (ALPHA) を計算する方法です。私の意見では、この平滑化パラメータはサンプリング レートによって異なります。したがって、平滑化パラメータの推測または分析はリアルタイムでは機能しません。

したがって、ローパス フィルターの平滑化パラメーターを計算する方法を探しています。これに関して、私はこの興味深いプレゼンテーションを見ました

13 ページでは、時定数 (Tau) がわかっている場合、平滑化パラメーターを計算する式を確認できます。

タウを計算する式 = 静電容量 * 抵抗

電子コンパス AK8974 のデータシートから、抵抗と静電容量を計算し、(Tau) を計算しました。

タウを知っていれば、次の式を使用して平滑化パラメータを簡単に計算できます

ALPHA=タウ/タウ+デルタT

私の場合のALPHAの値は(0.00714)です

時定数(Tau)と平滑化パラメータの計算について意見が欲しいです。これは、平滑化パラメータを正当化する正しい方法ですか? 他に方法はありますか?

0 投票する
1 に答える
854 参照

ios - iOS 7 は、真北方位が利用可能かどうかを検出します

最近、Apple の新しいコンパス フュージョン API を使用するように変換したアプリがあります。古い (現在は廃止された) API を使用していました。

これが、モーションの更新を有効にする方法です。位置情報サービスが利用できない場合は、システムが磁北から北を試すために磁気偏角を決定できないため、磁北を要求する必要があります。これを行わないと、コンパスがハングアップして何も起こりません

真北が取れないケースは他にもあると思います。デバイスを機内モードにすると、インターネットで偏角を検索できず、失敗します。システムが古い磁気偏角をキャッシュすることがあるため、この方法で失敗させるのは少し難しいです。

システムが真北に到達できるかどうかを判断するための好ましい方法を知っている人はいますか? Reachability クラスを使用することもできますが、それはやり過ぎかもしれません。キャッシュされた値により、真北を決定できる場合があります。

[編集]

これを行うには、やや堅牢な別の方法を見つけました。真北の方向を要求したときに真北を決定できない場合、要求時にモーション マネージャーの deviceMotion は nil になるようです。Motion Manager を起動して実行できるようにするには、起動してから 1 ~ 2 秒後にこれを行う必要があります。

このメソッドに関する私の唯一の懸念は、この場合に nil が返されるという動作が文書化されていないと思うことです。現在は機能しますが、将来のリリースでは機能しない可能性があります。

0 投票する
1 に答える
2438 参照

android - コンパスを Unity の特定の場所に向ける

Unity プログラムでカスタムの場所を指すコンパスを作成しようとしています。しかし、それは完全にずれており、一般的に間違った方向を指しており、自分のロジックの何が問題なのかを理解できないようです。

私はここから湾曲したジオメトリベアリング方程式を使用しています: http://www.yourhomenow.com/house/haversine.html

  1. 現在地を取得します。
  2. 現在地から目的地までの方位を計算します。
  3. 画面コンパスを真北に対して回転させます。

    /li>

そのコードの方位オフセットを削除すると、デジタル コンパスが十分に北を指します。

0 投票する
2 に答える
6248 参照

c - 傾いた磁力計の出力 - ピッチとロールの傾き補正 - 迷子になった

私はこの特定の問題に 2 日 (および夜) を無駄にし、磁力計出力の傾斜補正に完全に失敗しました。
Google やオープン ソースの例で読むことができるすべてのことを試してみましたが、両方 (ロールとピッチ) の適切な傾き補正を導くものは何もありませんでした。.

セットアップ: 調整値を使用しますが、ユニティ値は使用しません。
適切かつ正確に機能する融合重力ベクトルがあります。
センサーは 9dof BMX055 ( http://www.mouser.com/ds/2/621/BST-BMX055-DS000-01-274824.pdf ) 磁力計の最小/最大は各軸で +- 512 (小さい違いはありますが、すべての軸がゼロになっています)。ハードウェアは Sam3X8e (Cortex M3) で、すべて C で記述されています。
浮動小数点と三角法は非常に高速に実行できるため、問題ありません。BMX055 チップは、ピン 20、19、18 が正面を向くように配置されています。
データシートの 159 ~ 161 ページに方向が示されています。フロントを上げるとピッチが上がります。
左サイドを上げるとロールが上がります。

値の例:
水平に水平にしたときにアルゴリズムが 305deg と呼ぶ方向を指す

位置合わせは常に約 305 度 (私ができる範囲で) である必要があり、おそらく +-5 度です。

式:(どこでも同じものを使用)

さまざまな組み合わせを試しました。1 つの軸のみを固定し、1 つの軸を常に 0 のままにして、X/Y ピッチ/ロールを交換し、いずれかの入力で *-1 を使用しようとしました。

結果は常に完全に間違っています。場合によっては (試行錯誤によって値を反転しようとする場所または反転しない場所に応じて)、値がほぼ線形にずれているように見えることがあります。場合によっては、1 つの軸が正の領域で補正されます。
ただし、ローリングとピッチングは常に「ランダムな」ジャンプと方向の変化を引き起こします。
数学は私のお気に入りではありませんでしたが、今では後悔しています。

私の個人的な推測では、式は原則として正しく、マガジンは原則として機能しています (結局のところ、平準化すると適切な学位が得られます) が、どういうわけか間違ったものを与えています。(Y と X を交換する必要があるように、z*-1、ピッチは *-1 にする必要があります)

このテーマが得意な人が、適切なヘディングを取得する方法を見て、ガイドしてくれませんか?
機能不全のアルゴリズムについて再び夢を見ることなく、今夜数時間眠ることができれば素晴らしいことです:)

更新: ここでの傾斜補正は、305 度のヘディングを指しているときに負のロールに対して機能します。ここでも使用されています: http://www.emcu.it/MEMS/Compass/MEMS_Compass_A_RTM1v3.pdf

0 投票する
0 に答える
141 参照

android - デバイスセンサーの軸を一時的に交換します

ジャイロスコープ、コンパス、加速度計などの XYZ デバイス センサーの軸を一時的に交換できるアプリを作成したいと考えています (つまり、X 軸が Z、北が南、右が左、上が左であるとデバイスに認識させます)。ダウンなど...)。このアプリが読み込まれている限り、他のすべてのアプリは偽のセンサー データを信じます。通知バーから直接オン/オフを切り替えることができます。可能であれば、ルートなしで動作するようにしたいと思います! 誰かが助けてくれたり、既存の解決策を教えてくれたりしたら、とても感謝しています! あなたが私のためにそれを開発することができれば、私は合理的な価格を喜んで支払うでしょう!