
No.5ベストアンサー
- 回答日時:
(レシプロ測定という名称は、もしかしたら某測定器メーカだけが使ってる用語かも、、。
)測定方法の概要は以下のとおりです。
1. カウンタを2つ(AとB)、タイマーを一つ(これはサンプリング周期をセット)用意する。
2. カウンタAにはエンコーダからのパルスを入力、Bには基準周波数(1MHzとか、10MHzとか)を入力
3.測定開始信号直後の、エンコーダのパルス立ち上がりで、カウンタA,B、タイマーをスタート
4.タイマーの終了後、最初のエンコーダパルス立ち上がりでカウンタA、Bを停止(カウンタAは最後の立ち上がりをカウントしないようにする。カウントする場合には、1をカウント値から引く)
5. 周波数は、(カウンタAの値)/(カウンタBの値)*(カウンタBの入力周波数)
要は、エンコーダパルス整数周期(>サンプリング間隔)分の周期測定をカウンタBで行う という測定です。
で、問題になるのが、3.と4.の処理です。エンコーダの立ち上がりでカウンタの動作を制御する必要があります。これが実現できれば、現状のシステムでも可能かと思います。
留意点がいくつかあって、
1.測定分解能は、カウンタBの入力周波数とサンプリング間隔でほぼきまる。(最高周波数が1MHzのカウンタで間隔0.1msだと、1%程度の分解能しか得られない)
2. エンコーダ出力パルスの周期が長いと、測定周期が長くなる。
3. 最低サンプリング間隔は タイマ設定時間+エンコーダパルス幅*2 程度となり、また測定時間は若干ばらつく(エンコーダパルスの周期、スタート信号のタイミングにより)
ご参考になれば。
No.4
- 回答日時:
整理すると、
モータの最高回転数 5000rpm(約80rps)
エンコーダ出力パルス 2048*4(8kパルス/回転)
サンプリング 0.1ms
ですか。
この条件だと、最高回転数で回しても1サンプリングあたり64カウント程度ですから、速度計算にそのまま使うのは分解能不足かと思います。(回転数が下がれば、それだけカウント数も減りますし)
もし、現状の機材で私がするとしたら、
1. サンプリング時間を見直す。測定に許容できる最大の時間にする
2. エンコーダ分周比を見直し、使用する最高回転数を考慮してボード入力周波数(1MHz)を越えない範囲で最大のパルス数/回転に設定する
(場合によっては、もっと高速のPCI-632206(Max50MHz)に変える)
をまず試みて、サンプリング期間中のカウント数を増やし、データのバラツキを抑えます。
そののちに、先に挙げた周期測定、レシプロ測定を検討します。
(もっとも、0.1msで0.1%のバラツキにいれようとしたら、10MHzをカウントできるカウンタが必要なので、6204では対応困難ですし、低速域でパルス周期が0.1msを越えないようにする必要が有ります。)
632206では、周期測定、平均周波数測定ができるようなので、こういったものを検討する必要も有るかと思います。
参考URL:http://www.interface.co.jp/catalog/prdc.asp?name …
わかりました。ありがとうございます。
レシプロ測定を現状のシステムでやることはできますよね?外部回路とか必要になってくるのでしょうか?
No.3
- 回答日時:
いくつか気になる点が、、
角度を算出するカウンタがフルスケールを越えたときの処理はどうやってますか?
カウンタがフルスケール越えたときには、角度(t)<角度(t-1) になりますので、ここの処理を適切に行なわないと、速度信号にノイズが入ります。
サンプリング間隔とエンコーダの一回転あたりのパルス数はいくらでしょうか。これが判らないと、的外れなアドバイスをしてしまう可能性が、、。
このボードにはZ信号でリセットする機能が有りますが、これは使ってませんよね?
これを使うと、リセット前後で角度(t)<角度(t-1) になり、速度信号にノイズが入ります。(しかもリセットが一回転毎に行なわれるため、ノイズが頻繁に入ります)
この回答への補足
>角度を算出するカウンタがフルスケールを越えたときの処理はどうやってますか?
今のところ一回転すらさせていない状況で使用していますのでフルスケールになるまで使っていません。
>このボードにはZ信号でリセットする機能が有りますが、これは使ってませんよね?
Z信号は使っていません。
>サンプリング間隔とエンコーダの一回転あたりのパルス数はいくらでしょうか?
サンプリング間隔は0.1[ms]、一回転あたり65536の分解能があり、分周出力16~16384[パルス/1回転]です。現在、分周出力は2048[パルス/1回転]で使用し、カウンタボードで4逓倍しています。
No.2
- 回答日時:
まずどの程度の速度(m/min)を測定したいのかが知りたいですね
それとソフト上でと言う事は使用機器はPCですかPLCですか,それとも高速カウンタから測定値を入力しているのですか? 結論から言うとパルスの受け側が正常にエンコーダパルスを受け取れていないのでは?
パルスの受け側のスキャンは相当高速ですか?
エンコーダが1回転すると例えば4096パルス出力したとすると受側も4096パルスきちんと受け取れる入力精度がなければ正確な演算は無理ですよ 単純平均値ぐらいしか出ないのでは・・・
私が経験した機械では巻出装置で速度は(25m/min)でロータリエンコーダはOMRONでPLCもOMRONのCVM1(スキャンは約10msec)これで速度ではなく距離演算してましたが,OMRONのロータリエンコーダ用の高速カウンタを使用してもパルス飛びが出ていたので,相当早いスキャンの高速カウンタを使用しなければ,まともに速度が算出できないと思いますよ
この回答への補足
どの程度の速度で使うかは未定ですが最高5000[1/min]まで出せるモータを使ってます。
使用機器はPCでソフトにはVisual Basic6.0、アップダウンカウンタボードにはInterface社製のPCI-6204を使用しています。ロータリーエンコーダはモータに最初から付属しているものを使用しています。
No.1
- 回答日時:
サンプリング間隔が短いと、角度の差分(カウント数の増分)が少なくなって、非常に荒い速度しか出てきません。
(例えば、サンプル時間内でのカウント数が十程度しか増えないとすると、速度データは+-10%程度のバラツキを持ってしまいます。)
これは、回転数が低い場合(パルスの周波数が低い場合)には顕著です。
で、どうやって対処するかとなると、ひとつの方法は、例えばパルスの周期を測定して、周波数(回転数)を計算する方法が有ります。この方法は低速で精度の良い測定が出来ますが、高速になると周期測定の確度が下がるという問題が有ります。
両者を組み合わせた方法として、
・一定時間以上、パルスをカウント(カウント数をnとする)する。
・nパルス分の時間(T)を測定する
・T/nで平均周期を求め、そこから回転数を出す
という方法を使うことも有ります。
(レシプロ測定とか呼ばれていたような)
また、周期測定をする場合には、ロータリーエンコーダのパルス間隔が均一である必要が有ります。周期測定をする場合には、パルス数をエンコーダ一周分のパルス数の整数倍にして、エンコーダのパルス間隔不均一さの影響を受けないようにする必要が有るかもしれません。
だいたいわかりました。ありがとうございます。パルスの周期はソフト上でどうのようにしたらいいのでしょうか?
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
誤差について教えてください、...
-
計算がわからない
-
低圧絶縁抵抗測定について教え...
-
N増しとは?
-
高校生です。合成抵抗の測定値...
-
誤差の範囲とは一体どういう意...
-
共振周波数の計算値と実測値
-
シャトルランについて
-
共振周波数と尖鋭度の測定値と...
-
新規に購入した測定機器の校正
-
繰り返し測定 3回 の意味
-
「体重をはかる」は量る?測る?
-
トランスに繋がっている配線の...
-
レポートでの文体について
-
メガ(絶縁抵抗)の測定方法について
-
0の有効数字
-
電流計(電圧計)の測定レンジと...
-
管理値、管理基準値、規格値の...
-
有効数字が指定された測定値は...
-
細胞増殖アッセイ alamar blue...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
おすすめ情報