NI製品ディスカッション

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

USB6008でロータリーエンコーダを使いたい

いつもお世話になります。

 

LabVIEW2012+USB6008を使用しています。

 

ロータリーエンコーダで角度計測をしたいのですが、上記組み合わせで可能でしょうか。

(ロータリーエンコーダは、インクリメンタルタイプです)

 

可能な場合、どの様な接続、設定等をすれば良いのか教えていただけると助かります。

 

大変困っています、、どなたかアドバイスいただければ幸いです。

0 件の賞賛
メッセージ1/5
5,368件の閲覧回数

こんにちは。

 

USB-6008 でもエンコーダーでの角度計測は可能です。

ただ、6008 にはオンボードのクロックを搭載していないため、デジタル信号の検知を

ソフトウェアタイミングで行うことになります。ですので、100Hz程度のパルス信号の検知なら可能かと思いますが、

エンコーダーが毎秒何パルス出力するかわかりますか?意味のない信号を集録してもしょうがないので、

ここが重要になります。

 

もし上記の速度で問題なければ、下記の様なDAQmxのAPIを使用したエンコーダー計測や

 

Read Quadrature Encoder in Software Time

 

DAQアシスタントを使用したエンコーダー計測が使えますよ。

 

0 件の賞賛
メッセージ2/5
5,337件の閲覧回数

doradorachanさん

 

こんにちは、コメントありがとうございます。m(_ _)m

 

ロータリーエンコーダの出力パルス仕様は、2000パルス/回転です。

装置使用時の回転数は2rpm未満ですので、

100Hz程度まで検知可能ということであれば、使えそうです。

 

ご紹介いただいた内容を基にチャレンジしてみます。

結果をまた報告させていただきます。

(分からないことがあったらまた質問させていただくかも知れないです。。)

宜しくお願いします。

0 件の賞賛
メッセージ3/5
5,318件の閲覧回数

doradorachanさん

 

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

ご紹介いただいたviを利用して角度データを取得出来る様になりました。

 

今は次なる障害に当たっています。。。

添付画像(r_enc_vi.jpg)の様に角度データを配列に格納しようとしています。

しかし、最初の一つ目のデータが書き換わっていくだけで、一向に2つ目以降のデータに値が入りません。。

添付画像(array.jpg)で言うと、一番上の値が書き変わって行くだけです。

 

恐らく基本的な何かを間違えているのだろう、と考え、色々と調べたり、試したりしてみたのですが、解決しません。

配線上は正しい様なのですが。。(繋がっているので。。)

 

大変恐縮なのですが、またお知恵をお借りできると助かります。m(_ _)m

すべてをダウンロード
0 件の賞賛
メッセージ4/5
5,243件の閲覧回数

ループの一つの反復から次の反復にデータを渡すとき、シフトレジスタが必要になります。

添付したファイルやリンクを見てみてください。

 

ちなみに配列連結追加で簡単に配列のデータを増やすことはできるので少量のデータなら問題ないですが、

動的に配列のサイズを増やすのはあまり薦められていませんので、置換の関数も使ってみてください。

0 件の賞賛
メッセージ5/5
5,239件の閲覧回数