2012-01-23 9 views
1

私たちはPXI-8110コントローラでLabVIEW Real-Timeを使用しています。 私は次の問題に直面しています: 私は500μs周期時間(時間ループ)のループを持ち、他のタスクはありません。私はラムに各ループ反復の時間を書いて、その後にデータを保存する。 期間は正確ですが、+/-25μsで500μsであることがわかります。 タイムドループのクロックは1 MHzです。LabVIEW Real-Time Timed Loopの解像度

500μs〜25μsをどのようにすることが可能ですか?私の計算が重くなると500μs+xxμsが得られるかどうか分かります。しかし今まで私は何も加えていません。

誰かが間違っていることを知っていますか? NIが宣伝しているように(計算がそれほど重くない場合は)1μsの分解能を持つことが可能であると考えました。

ありがとうございました。

+0

PCまたはPXIでコードを実行していますか? – CookieOfFortune

+0

私たちは、このコードをPXIシステム上でスタンドアロンアプリケーションとして実行しています。 – steffenmauch

答えて

1

コードが動作しているスレッドを確認する必要があるかもしれません。より簡単に動作させるには、Timedループを使用することです。これは、オーバーランを修正しようとします。また、データを格納している配列を事前に割り当ててから、配列のサブセットをそれぞれ新しい値に置き換えます。このような方法で大きな改善が見られるはずです。 その値を表示し、開発モードで実行している場合は、すべてをホストに報告しているときにジッタ時間が表示されます。実行可能ファイルをビルドすると、ジッタは再び小さくなります。