NI製品ディスカッション

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

LabVIEWmotionのモータ制御法について

いつもお世話になっております。
現在,MAX上でモータのチューニングを行っているのですが,以下の4点について教えてください。
(motionボードはPCI-7344,UMIはUMI-7764を用いています)
 
1,Axis ConfigurationでTypeをServoとした場合に,
  どのような信号でモータの回転方向(正回転,逆回転)および速度を制御しているのでしょうか?
 
2,Axis ConfigurationでTypeをStepperとした場合に,
  どのような信号でモータの速度を制御しているのでしょうか?
 
3,Axis ConfigurationでTypeをServoとした場合に,
  PID制御はできないのでしょうか?(CalibrationでのAuto Tuneは使えないのでしょうか?
 
4,1-D Interactiveでモータを回転させている際,Advanced DataのFallowing Errorが
  すぐに大きな値になってしまうのですが,改善方法はありますでしょうか?
 
以上,ご教授よろしくお願いいたします。
0 件の賞賛
メッセージ1/4
3,915件の閲覧回数

3,Axis ConfigurationでTypeをStepperとした場合に,

  PID制御はできないのでしょうか?(CalibrationでのAuto Tuneは使えないのでしょうか?

です。申し訳ありません。

0 件の賞賛
メッセージ2/4
3,913件の閲覧回数
いつもお世話になっております。
日本ナショナルインスツルメンツ技術部、数馬と申します。

お問い合わせの問題に関しまして以下の様に回答させていただきます。

1,Axis ConfigurationでTypeをServoとした場合に,どのような信号でモータの回転方向(正回転,逆回転)および速度を制御しているのでしょうか?

回転方向
アナログ電圧レベルで制御を行うタイプのサーボモータでは、プラスの電圧が一方向で、マイナスの電圧が反対方向となるものが一般的です。

速度

アナログ電圧で速度制御を行うタイプでは、出力電圧が高ければ速度が増し、低ければ速度が低くなります。
パルス信号のデューティ比で速度制御を行うタイプもServoモータとして扱います。デューティ比が高ければ速度が増し、低ければ速度が低くなります。
 
2,Axis ConfigurationでTypeをStepperとした場合に, どのような信号でモータの速度を制御しているのでしょうか?

Stepperモータでは、入力されたパルスの下図によって回転する角度が決まります。パルス周波数が高ければ高速、低ければ低速となります。

3,Axis ConfigurationでTypeをStepperとした場合に,PID制御はできないのでしょうか?(CalibrationでのAuto Tuneは使えないのでしょうか?
です。

StepperタイプのモータはPID制御は対応しておりません。

4,1-D Interactiveでモータを回転させている際,Advanced DataのFallowing Errorがすぐに大きな値になってしまうのですが,改善方法はありますでし

ょうか?

Following Error が大きくなってしまうということですが、使用されているモータはどのようなものでしょうか?

Following Errorとは、命令値とフィードバックの値(実測値)の差のことを指します。

Stepperモータを使用されている場合、Following Errorが大きくなる原因としては、パルス周波数が速すぎる可能性があります。これはパルスを受け取るドライバが応答しきれないことが原因ですが、通常 対応しているパルス周波数はスペック表などに明記してあります。パルスの周波数は、MAXで変更することが可能です。

Servoモータを使用されている場合、Following Errorが大きくなる原因としては、PID制御のパラメータがうまく設定されていないことが原因である可能性があります。




よろしければ、使用されているモータの種類を教えていただけますでしょうか?

以上よろしくお願いいたします。

日本NI 数馬
メッセージ3/4
3,863件の閲覧回数
数馬様
御解答ありがとうございます。
また,返答が遅くなってしまい,大変申し訳ありませんでした。

現在使用しているモータはオリエンタルモータ社のブラシレスDCモータ(減速比30)
http://www.orientalmotor.co.jp/hppwc/HMD0201.do?gid=AXH450K-%5B%5D&sflg=1&lng=ja&uc=&wid=ja001002002...

に小野測器社のロータリエンコーダ(1信号あたり600pulse/revolution)
(http://www.onosokki.co.jp/HP-WK/c_support/faq/rp/pdf/rp8524.pdf)
を取り付けています。
 
(以前,http://forums.ni.com/ni/board/message?board.id=1170&message.id=1617で質問したものです。)
 

これまで,このモータをStepperモードで使用していたのですが,
速度設定のパルスを受ける配線をしていませんでした。
この速度設定のパルスはUMIのどの端子から出力されているのでしょうか?

また,今後できればServoモードで,
PID制御を用いた位置決め制御を行いたいと考えています。
 
そこで,このモータのドライバは回転方向を制御する端子(0V:CW,5V:CCW)と
速度を制御する端子(0~5V)が別々のものとなっているため,
 
Torque SettingsのPrimary DAC Outputで-5V~5Vの範囲に設定し,
UMIのAnalogOutputからの信号をコンパレータ,
整流器等を通してそれぞれに分割しようと考えています。(モータを変えるのが一番早いのでしょうが…)
 
この方法でMAX上で動かしてみたところ,AnalogOutput端子から-5V~5Vのパルス信号が出力され,
Following Errorも比較的小さな値に落ち着くことが確認できました。
 

そこでもう一つ質問ですが,モータの制御法として(パルスのデューティー比ではなく)
アナログ電圧レベルで制御を行うことはできないのでしょうか?
 
 
以上2点,よろしくお願いいたします。
0 件の賞賛
メッセージ4/4
3,770件の閲覧回数