NI製品ディスカッション

キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

エンコーダの計測をアナログ出力と同期して開始

モータへ信号(正弦波など)を入力すると、モータが回転する というデバイスで、
信号の入力に対してモータの応答がどうなっているかを詳細に計測したいと考えております。
そこで、モータへの信号入力と同時にエンコーダの位置検出を開始し、
デッドタイム(応答するまでにかかる時間) など、モータ動作の詳細を計測しようと
考えております。
 
例えば、
正弦波のアナログ出力が0.1Vを超えたら、カウンタ入力を開始する
というプログラムです。
 
どうやってトリガ設定すれば良いでしょうか?
 
ちなみに、アナログ出力は50kHz程度の正弦波・矩形波・三角波などで、
エンコーダの位置検出はアナログ出力の1周期あたり数点の収録をしたいと
考えてあります。
使用しているDAQボードは、PXI-6259です。
参考になるアドバイスなど頂けましたら幸に存じます。
0 件の賞賛
メッセージ1/13
5,990件の閲覧回数
平素よりNI製品をご利用頂きまして誠に有難うございます。
日本ナショナルインスツルメンツ技術部の宮本と申します。

ご投稿ありがとうございます。

PXI-6259を使用してアナログ出力とカウンタ入力を行っていると存じております。アナログの出力がある閾値を超えるとカウンタ入力をスタートするトリガ設定を知りたいとの事ですが、ご使用中のデバイスでは、カウンタ入力にてスタートトリガをかける事は出来ません。しかし、アナログ出力のサンプルクロックをカウンタ入力のサンプルクロックとして使用する事で、アナログ出力とカウンタ入力を同期させる事が出来ます。これにより、各アナログ出力値に対してカウンタ入力値を集録する事が可能となります。

アナログ出力とカウンタ入力を同期させるためには、添付の画像ファイルにあるようにカウンタ入力のサンプルクロックのソースをアナログ出力のサンプルクロックに設定してください。

上記内容をご確認いただき、今一度結果をご返信願えますでしょうか。
お手数ではありますが、よろしくお願い致します。
0 件の賞賛
メッセージ2/13
5,960件の閲覧回数

宮本様

うまくいきました。ありがとうございました。スマイリー ウインク

1つ解らない点が御座いますので教えていただけますでしょうか?

アナログ出力をwhile loop内で、「DAQmxタスク完了確認」を使われておりますが、

これは何故ですか?私は、有限サンプルの出力の場合にだけ使われるものだと思っておりま

したが、連続サンプルの出力で使う意味は何でしょうか?

度々すみませんが、教えて頂きたくお願い申し上げます。

0 件の賞賛
メッセージ3/13
5,946件の閲覧回数
kojiando 様

日本ナショナルインスツルメンツ技術部の櫻田と申します。
解決の旨、ご連絡頂きましてありがとうございます。
現在、宮本が出張中のため宮本に代わりましてご回答申し上げます。


「DAQmxタスク完了確認」は、連続アナログ出力の際にタスクにエラーが発生していないか確認する為に使用しています。ですので、とくにタスクが完了しているか否かは、この使用方法では関係ありません。タスク情報の受け渡しとエラー出力があるので、それを使用しているだけです。

有限アナログ出力の際にも「DAQmxタスク完了確認」を使用してループなどを回し、タスクが完了するまで待機させその後にタスクをクリアするという使用方法も可能ですが、「DAQmx完了まで待機」を使用する方法が一般的かと存じます。


今後ともよろしくお願い申し上げます。

日本ナショナルインスツルメンツ技術部
櫻田
メッセージ4/13
5,921件の閲覧回数
櫻田さま  宮本さま
 
ありがとうございました。 教えて頂いた内容を良く理解できたつもりだった
のですが、自分でやってみますと・・・・・・  まだまだ修行不足のようです。
 
少し私なりにアレンジを加えまして、添付のように作成してみましたが、
エラーが発生してしまいます。大きな変更点は、
①アナログ出力を有限サンプルに
②カウンタ入力も有限サンプルに
ですが、どこが間違っているのでしょうか。
 
度々すみませんが、アドバイスを頂けますと非常に助かります。
 
 
0 件の賞賛
メッセージ5/13
5,917件の閲覧回数
kojiando 様

日本ナショナルインスツルメンツ技術部の櫻田です。


連続集録から有限集録への変更には、もう少し変更しなければいけない箇所があります。
添付の画像をご参照のうえ、下記説明をお読み願います。

まず、有限集録の場合にはwhileループを削除します。
つぎに、カウンタ入力でのDAQmx読み取り関数において、集録する総サンプル数を指定します。
本関数は、指定したサンプル数を読み取るまで、この関数の場所で待機します。
アナログ出力はタスク完了まで待機関数を設置し、全サンプルが出力されるまでタスクストップが実行されないようにします。

以上の変更により有限動作が可能ですが、以前の連続集録のプログラムでも、経過時間や集録したサンプル数などを定数と比較し、その比較結果出力をwhileループの停止条件に接続することにより、擬似有限集録が可能になりますので、その方法も合わせてご検討願います。

また、LabVIEWサンプルファインダから、有限集録と連続集録のそれぞれのサンプルをご覧頂き比較して頂ければと思います。


以上、ご不明な点等ございましたらご連絡下さい。
よろしくお願い申し上げます。

日本ナショナルインスツルメンツ技術部
櫻田
メッセージ6/13
5,911件の閲覧回数

櫻田様

ありがとうございました。早速試してみましたら、やはりエラーが発生するようです。

なぜでしょう??エラーは、

Data was overwritten before it could be ready by the System.

If Data transfer Mechanism is Interrupt, try using DMA. Otherwise, divide the input signal

before taking the Measurement.

です。「読み取り可能になる前に上書きされた」 という内容ですが、もしかしたら、

オンボードFIFOメモリからPCバッファに転送する速度が遅いために、オンボードFIFOメモリが

すぐに一杯になってしまうから なのでしょうか?もしそうだとするならば、どうやって回避すれば

良いのでしょうか。

ちなみに、アナログ出力信号の周波数は50kHz程度で、1周期あたりのデータポイントは20~30ポイント

で、出力する周期数(サイクル数)は10サイクル~1000サイクル が私の希望です。

本当に度重なる質問で恐縮ですが、ご返答頂けますと幸甚に存じます。

0 件の賞賛
メッセージ7/13
5,900件の閲覧回数
kojiando 様

日本ナショナルインスツルメンツ技術部の櫻田です。


kojiando様と同じレート設定において、エラーの発生をこちらでも確認いたしました。
本エラーはkojiando様がご指摘の通りの原因で発生しております。
回避方法は、デフォルトで転送方式がDMAになっておりますので、カウンタ入力のサンプリングレートを下げるしか方法がありません。

今回の場合は、カウンタ入力のサンプリングレートはアナログ出力のサンプリングレートと連動しているため、サンプリングレートの低下はアナログ出力波形の劣化に繋がります。
私の方での動作確認(PCI-6251)では、600kサンプル/秒においてエラー無く動作が可能でしたが、この場合は50kHzに対して周期あたりのデータポイントが12ポイントになってしまいます。出力の周期数は特に問題はございません。
動作環境が異なりますが、現在の構成ですと概ねこの程度かと存じます。

他の方法(サンプリングレートの共有以外)により、ご所望の速度での動作が可能か試行してみたいと思います。
私の方でもトライ&エラーでの作業になってしまうため、お時間が掛かってしまいます事をご了承願います。


よろしくお願い申し上げます。
メッセージ8/13
5,885件の閲覧回数
櫻田様
ご確認頂き、誠にありがとうございました。私と致しましては原因が何で
あるかを特定できた事が何よりもの収穫で御座います。
 
それでは、お言葉に甘えまして引き続きのご検討を宜しくお願い申し上げます。
0 件の賞賛
メッセージ9/13
5,880件の閲覧回数
kojiando 様

日本ナショナルインスツルメンツ技術部の櫻田です。

ご所望の速度での動作が可能な方法が確認できましたのでご報告申し上げます。
添付のブロックダイアグラム画像をご参照下さい。

本方法はダミーでアナログ入力を動作させ、そのサンプルクロックをカウンタ入力のクロックとして使用する方法です。
アナログ出力の内部的なスタートトリガ信号を、アナログ入力の開始トリガとすることにより、アナログ入力とアナログ出力の同期を取ります。アナログ出力とアナログ入力のサンプルクロックは同じオンボードクロックを基準として生成されており、ご所望の動作速度におきましては、両者の位相ずれは無視できるレベルです。

私の環境では、アナログ出力信号の周波数が50kHz、1周期あたりのデータポイントは40ポイント、出力する周期数(サイクル数)が1000サイクルの条件で、エンコーダの位置検出はアナログ出力の1周期あたり10点の集録が確認できました。
添付のフロントパネルの画像をご参照下さい。


以上、ご不明な点等ございましたらご連絡願います。
よろしくお願い申し上げます。
すべてをダウンロード
メッセージ10/13
5,858件の閲覧回数