モーションコントローラが index マーカを見つけられないのはなぜですか?



ハードウェア: Motion Control>>Controllers

問題: モーションコントローラを使用しているのですが、Find Reference関数でindex信号を検出することができません。モータは一定時間後には停止しますが、なぜindex信号で停止させられないのでしょうか。


解決策: Find Reference 関数はインデックスマーカを探すためにフィードバックエンコーダを初期化します。モーションコントローラがindexを見落としてしまうのは以下のような理由が考えられます。

1. 「Load Counts/Steps per Revolution」VIで正しく1回転あたりのカウント値が正しく設定されているか確認します。これはFind Reference関数が正しく動作するための必要な作業です。この時点ではモータは回転しindex信号で停止するはずです。もしindexが見つけられなかった場合は、モータは1回転と数カウント分進んだところで停止します。

2. オシロスコープを用いてエンコーダからindexパルスが正しく来ているか確認します。

3. 問題がボード側かエンコーダ側のどちらにあるか区別するために、index信号のリード線を短絡させてindexパルスのLOWをシミュレートさせ、モータが停止するかを確認します。モータが停止するようなら、問題はエンコーダ側かその配線にある可能性があります。

4. Find Reference VIがindexパルスを読み取る時は、エンコーダのA相とB相の信号が両方ともLOWである必要があります。もしindexパルスが発生した時にA相もしくはB相がHIGHであると、indexは見つけられません。これを調べるためにこの3つの信号をオシロスコープで観察してみて下さい。他の方法としてはリード線のAとA~を切り替えます。この結果モータは逆方向に回りますが、indexは見つかるはずです。もしこの方法でindexを見つけることができれば、モータを正しい方向に回転させるために単純にA相とB相を入れ替えます。

関連リンク:

添付:





報告日時: 03/07/2001
最終更新日: 08/22/2017
ドキュメントID: 276AA4OA