NI-DAQmxでカウンタ出力イベントプロパティを使用する

Contents


NI-DAQmxシリーズ入門では、NI-DAQmxを使用したプログラミングの基本について解説します。Measurement & Automation Explorer(MAX)を使ったデバイス操作の確認や、LabVIEWを使用したデータ集録アプリケーションのプログラミングなどの方法を説明したビデオやテキストによるチュートリアルをご覧いただけます。DAQアシスタントを使用したことのないビギナーからNI-DAQmxの高度な機能に関心を持つ上級ユーザまで、あらゆるレベルのユーザを対象としています。

概要

カウンタは、入力信号の比較に基づいてレジスタ値(カウント)を増分し、レジスタ値に基づいて出力パルスを生成する場合に使用します。図1に示す通り、少なくともSourceとGateの2つの入力があり、アプリケーションによってはOutラインも使用することがあります。

図1. カウンタチップコンポーネント

カウントレジスタ

カウンタはカウントレジスタで現在のカウントを保存します。エッジがSource入力で検出されると、カウンタが増分または減分します。ナショナルインスツルメンツのカウンタチップは、ソフトウェアレジスタとハードウェアレジスタの両方があります。ハードウェアレジスタは、現在のカウントを保存します。これは、ハードウェアのカウント操作の干渉なしにアプリケーションでレジスタをクエリするため、ソフトウェアレジスタがハードウェアレジスタのコピーを保持します。

カウンタサイズ

カウンタのサイズは、特定のカウンタチップがゼロに対してロールオーバーする前までにカウントできる最大数です。カウントは、通常、カウンタの分解能を表す合計ビット数(N)とともにカウントレジスタでバイナリビットとして表示されます。したがって、最大カウント数は、以下の式で計算されます。

2^N - 1 ここでNはビット数です。

たとえば、24ビットの分解能を持つカウンタは、最大カウントが2^24 – 1= 16,777,215です。

カウンタターミナルカウント(TC)

ターミナルカントは、カウントレジスタがゼロにロールオーバーするときにヒットします。カウンタがTCをヒットする場合、カウンタ出力は、論理LOWと論理HIGHの間でトグルするか、または出力ピンからパルスを送信するようにプログラミングできます。生成された出力信号は、デバイスまたは処理の警告に使用できます。

カウンタ出力イベント

ターミナルカウントが一定値に達したかどうかは、DAQmxでカウンタ出力イベントプロパティを使用してハードウェアで判断されます。カウンタ出力イベントは、カウンタがターミナルカウントに達すると発生するイベントです。DAQmxでは、信号の出力動作を選択し、指定した端子にカウンタ出力イベントをエクスポートすることができます。

カウンタ出力イベントを構成するにはDAQmx信号をエクスポートプロパティノードを使用します。図2に示す通り、これはLabVIEWで、測定I/O » DAQmx-データ集録 » DAQmx上級タスクオプション » DAQmxエクスポート信号を選択します。


図2. DAQmx信号をエクスポートサブパレット

カウンタ出力イベントで、以下のプロパティを定義できます。

  • カウンタ出力端子
  • カウンタ出力動作
  • カウンタ出力パルス極性
  • カウンタ出力トグル状態



図3に示す通り、これらのプロパティは、DAQmx信号をエクスポートプロパティノード » イベント » カウンタ出力イベントの下にあります。


図3. カウンタ出力イベントプロパティ

出力端子プロパティは信号の経路設定を行う端子を指定する間、出力動作プロパティはカウンタ出力イベントの出力動作(パルスまたはトグル)を指定します。

信号パルスを生成するか、端子カウントで状態をトグルして、ラインがトグルに設定されている場合は出力パルスの極性またはアイドル状態を指定する信号を生成できます。

  • パルスラインについては、パルス » 極性プロパティを使用します。
  • トグルラインについては、トグル » 待機状態プロパティを使用します。
     

図4は、カウンタ出力イベントでサンプルデジタルエッジカウント操作を使用し、端子カウントを決定してHIGHアクティブの極性でパルスを生成することを示します。


図4. 端子カウント出力イベントを使用する簡単なエッジカウンタ処理

 

Was this information helpful?

Yes

No