アプリ版:「スタンプのみでお礼する」機能のリリースについて

DCモータを使って位置,速度制御をした経験がありますが,ほぼ素人と思って説明していただけたら幸いです.

モータを使って位置制御をしたいのですが,手元にDCモータがなく,ACモータしかありません.
ここで質問なのですが,ACモータもDCモータのように比例制御などができるのでしょうか?
インターネット等で調べたのですが,周波数?インバータ?などの用語が出てくるだけで,位置制御をするのに実用的な説明を見つけられませんでした.
ですので,概念的なものでなく,実際に制御を行うまでの手順のような形で教えてください.

ちなみに私が使おうと思っているモータはRSF-5A-50-E050-Cという型式のモータです.

よろしくお願いします.

A 回答 (3件)

#2訂正


τ*の式で、x*とxが逆でした。(#2の式で利得を正にすると、正帰還になってしまい、制御できない)。訂正します。
    • good
    • 0
この回答へのお礼

foobarさん,

ご指摘通り,逆ですね.ご丁寧にありがとうございます.

お礼日時:2007/12/07 19:09

#1さん紹介のコントローラHA-680と組み合わせると、位置制御や、(アナログ信号で)トルク制御できるようです。


(トルク制御入力を使うと直流モータを電流制御して使うのと同様の使いかたができます。)

コントローラが持っている位置制御の機能をそのまま使ってもいいでしょうし、トルク制御の機能を使って外部回路で位置制御をさせても良いかと思います。

例えば、トルク制御を使って位置制御をさせようとすると、
トルク信号τ*を
τ*=Ki∫(x-x*)dt+Kp(x-x*)+Kd(d(x-x*)/dt)
ただし、x:位置の検出信号、x*:位置の目標値、Ki,Kp,Kd:制御ゲイン
で作ってやれば、位置のPID制御ができるかと思います。

参考URL:http://www.hds.co.jp/products/material/data/rota …
    • good
    • 0
この回答へのお礼

foobarさん,ご回答ありがとうございます.

ドライバと組み合わせれば位置制御,トルク制御ができるということはDCモータと同じように制御ができるということですね.
分かりました.さっそくシステムを組み合わせてみようと思います.

具体的な説明でとても助かりました.ありがとうございました.

お礼日時:2007/12/06 00:28

こんにちは。


ACモータの場合には、DCモータと違って、電圧や電流制御によって、起動したり、制動をかけたりなどということが出来ません。

そのため、周波数制御と呼ばれる仕組みが必要になります。この周波数制御を行う装置がインバーターと呼ばれる装置です。周波数制御とは、モーターを駆動するのに必要な電圧を制御するのではなく、ACという名のとおり、変動電流(交流)を与えるのですが、この交流の周波数を変換することによります。なお、PWM制御やPAM制御も、ACサーボと同じ理屈によります(この場合には、パルス幅制御やパルス電圧制御によって、ステッピングモータを制御する方式)。

さて、位置制御を行うとなると、ある位置でモータの回転を止めなければなりません。このため、ACサーボの場合には、ロータリーエンコーダなどの装置によって、モータの回転速度や位置を確認する必要があります。

このような要素技術を組み合わせるのですが、PLL制御と呼ばれる制御技術が必要になります。

具体的には、モーターの軸もしくはモータ減速機の軸にロータリーエンコーダーを取り付け、ここからの信号をインバーターに送ります。インバーターの内部には、マイクロコンピュータやシーケンサーなどの装置によって、記憶されたプログラム、もしくは停止信号などの入力装置(センサーなど)からの信号によって、モータを制御する装置が内蔵されていますので、この装置を活用することになります。

RSF-5A-50-E050-Cの場合には、HA-680シリーズというドライバー装置があり、この装置との間で結合することで、サーボ制御が可能なのです。

このドライバー装置に、先ほど記載した入力信号端子があり、ここへシーケンサーやセンサーなどからの信号によって、起動・加速・減速・停止の各手順を行うことができると思います。

細かいことは、ドライバー装置及び該当製品の技術資料を読んだ方が早いと思いますよ。
モータの資料:http://www.hds.co.jp/products/material/data/rota …
    • good
    • 0
この回答へのお礼

A-Tanakaさん,とても丁寧な回答ありがとうございます.

DCモータとの違い電圧を入力するのではなく,周波数を与えて駆動するものなのですね.ACという名前からしても納得がいきました.
また,エンコーダを使えば位置制御が可能であるということも分かりました.

ただ,まだ少し分からないことがあるのでお尋ねしてもよろしいでしょうか?
実際にプログラムを組む際,モータの位置はエンコーダの値をカウンタボード等で取得するとして,入力する周波数というのはどのようにして入力してやればよいのでしょうか?
DCモータでPID制御をするときはDAボードを使って電圧を出力してやればよかったと思うのですが,「周波数を入力する」ということがいまいちピンときません.(理解力が乏しくて非常に申し訳ありません…)
周波数を入力する方法と,できればPLL制御についてもう少し教えていただけないでしょうか?

HA-680シリーズのドライバの仕様書を見てみたのですが,配線などの情報しかなく,疑問がすべて解決する域までたどり着けませんでした.

よろしくお願いします.

お礼日時:2007/12/05 02:52

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!