09-24-2019 12:31 AM
9/12に問い合わせをさせていただきましたが、DAQ(USB-6343)でリニアエンコーダデータの取り込みを行おうとしています。以前頂いたアドバイスでDAQアシスタントを使ったデータ取得は出来たのですが、DAQmxでのプログラムに苦戦しており、再度アドバイスをお願いできませんでしょうか。
添付のように、Dev2/ctr2を使って作ったクロックをDev2/PFI10を経由で入力して、そのクロックレートで位置データを収集しようとしています。ファイル格納の前にとりあえず読み取ったデータを表示して確認しようとしたのが添付なのですが、表示は固まったままで、データ収集がうまくいっていないように思うのですが、どう修正すればよいでしょうか。
なお、クロック出力はPFI14、A相入力はPFI0、B相入力はPFI2のデフォルトのままで使用しようとしてます。
お手数ですが、よろしくお願いします。
解決済! 解決策の投稿を見る。
09-24-2019 04:03 AM
自己フォローです。
DAQmxチャンネルでA相、B相の入力端子を確認したところ、PFI8,PFI10に割り当てられていました。お騒がせして申し訳ございませんでした。
#クワドラチャエンコーダ測定の理論と実測のページの表1の対応表の通りになっていると思って最初に確認しませんでした。
ついでなので、A相、B相の入力端子の変更方法が分からなかったので教えて頂けないでしょうか。
よろしくお願いします。
09-24-2019 04:13 PM
自己解決されたようで何よりです。
A相、B相の入力端子の変更方法ですが、DAQmxチャンネルプロパティノードで設定可能です。
このサンプルがヘルプメニュー >> サンプルを検索 >> 参照タブ >> ハードウェア入力と出力 >> DAQmx >> カウンタ入力 >> カウンタ - エンコーダを読み取るにあります。
09-26-2019 02:44 AM
端子を書き込みに変更できたのですね。端子設定できることを確認しました。どうもありがとうございました。
お手数ですが、もう1点教えてください。
添付のVIで波形を表示させていますが、例えばサンプル周波数を5kHzにすると1000個分のデータ表示を0.2秒毎に繰返すという動きになります。これをデータ収集の始めから終りまで繋げた形で波形表示させたいのですが、ループの外に置いてデータ収集の完了後に表示させるのではなく、リアルタイムに表示させることはできるでしょうか。
よろしくお願いします。
09-26-2019 03:10 AM
波形グラフをお使いで自動スケールはオフに設定されておりますので、X軸スケールの右端にある最大値をダブルクリックして、最終的に収集するサンプル数に設定してみてください。
09-26-2019 03:22 AM
X軸の最大値を20000に設定しても、1000個分の表示をループ回数分繰返すだけで変わらないです。
なお、自動スケールをONにした場合はX軸の最大値が1000となって、後の動きは変わらないです。
1チャンネル1サンプルであればX軸の設定値まで繋がって表示されますが、Nサンプルなのでこの動きになることは仕方ないとも思うのですが、繋げて表示する方法があればと思って質問させてもらっています。
09-26-2019 03:56 AM
情報ありがとうございます。おかげで状況を理解できました。
波形グラフに表示されるのはループごとにDAQmx読み取りVIから出力される1000個のデータだけなので、連結して表示したいということですね。
データを連結して表示する方法は以下のとおりです。
09-26-2019 03:59 AM
連結させながら表示させればよかったのですね。
どうもありがとうございました。