405029_ja-JP

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

405029_ja-JP

405029_ja-JP

図書館に関する質問<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

こんにちは、

 

Fusion Library 5.0 について次の質問があります。

1) Systick は 9 軸融合の場合 53 を示します。9軸融合機能には(53/120MHz)==0.44uSが必要ですか?一度実行しますか?

2) 融合タスクはサンプリングタスクよりも優先度が低いため、サンプリングタスクによって割り込まれます。ACC の読み取りに必要な時間をテストしたところ、約 237uS でした。融合タスクがサンプリングタスクによって中断された場合、systick はさらに長くなるのでしょうか?

3) 私のプロジェクトでは MQX を使用していません。データ サンプリング、融合、MAGCal に PIT0/1/2 を使用しています。PIT0 の優先度は PIT1/2 よりも高くなります。PIT1 の優先度は PIT2 よりも高くなります。

9 軸融合機能を呼び出すと、約 1.6 ミリ秒かかりますか?なぜそんなに大きな違いが出るのでしょうか?

 

ありがとうございます

 

クリスティ

センサ・フュージョンRe: Questions about library<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

それでいいでしょう!謎が解明されてよかったです。

Mike

Re: Questions about library<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

こんにちは、Mikeさん

理由が分かりました。最適化を行うには、-O0 ではなく -O3 を使用する必要があります。今ではデモ プロジェクトとほぼ同じです...

ありがとうございます

クリスティ

Re: Questions about library<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

こんにちは、Mikeさん

1) 私の間違いです。K-ticks では測定時間は妥当です。

2) あなたのデモ プロジェクトと自分のプロジェクトの間のタイミングを測定します。

-----私のプロジェクトでのサンプリング時間は約 1183uS===7100/60MHz です。

-----私のプロジェクトでの9軸データ融合==1600uS==95700/60MHz、あなたのデモプロジェクトでは==442uS

-----私のプロジェクトでの6軸GBデータ融合==317uS==19000/60MHz、あなたのデモプロジェクトでは==94uS

-----私のプロジェクトでの9軸GYデータ融合===96uS==5750/60MHz、あなたのデモプロジェクトでは==25uS

両方のプロジェクトのすべての機能は正常に動作しています。データ融合の結果にパフォーマンスの違いがあると思いますか?

3) KDS 3.0.0を使用していますKSDK 1.2.0 を使用して独自のプロジェクトを開発しました。両方のプロジェクトは同じデモ ボード上で実行されています。私のプロジェクトでは、コアに 120 MHz、BUS クロックに 60 MHz を使用しています。PIT0/1/2には60MHzを使用しています。時間を測定するために PIT0 ティックを使用しています。私の測定時間はデータ融合機能のためだけです。

2 つのプロジェクト間の CPU フローティング設定または数学ライブラリの違いに関連している可能性がありますか?

ありがとうございます

クリスティ

Re: Questions about library<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

クリスティ、

順番に:

  1. 数桁ほど間違っています。表示は K ティック単位で行われます。SO 53,000/120,000,000 = 0.44 ミリ秒です。はい、これは融合を 1 回実行する時間です。
  2. まあ、大したことはないですね。ご覧のとおり、融合タスクは思っていたよりも長いです。しかし概念的にはそうです。あなたが使用していると思われる K64F では、通常、連続する 2 つのサンプルの間には、中断することなく融合を実行するのに十分な時間があります。
  3. あなたは優先順位を正しく理解しています。ここでは systick カウンターを使用して時間を測定していますか、それともスコープと GPIO 経由で時間を測定していますか?後者の場合、私の最初の質問は「MCU のクロックをどの周波数にプログラムしましたか?」です。前者の場合、どのくらいの数のシスティック数が得られますか?参考までに、データシートの数値には磁気キャリブレーションとセンサー サンプリングのタスクは含まれていません。

Mike

Tags (1)
No ratings
Version history
Last update:
‎02-04-2026 03:53 AM
Updated by: