PCプラットフォームによる PCプラットフォームによる 産業用ソリューションプロバイダー 産業用ソリューションプロバイダー


採用情報


お問合せ

JapaneseEnglish

  • PP129
ホーム > INplc > 技術情報 > EtherCAT®通信(CiA402)によるサーボモーター制御
INplc技術情報
EtherCAT®通信(CiA402)によるサーボモーター制御

■ 概要
サーボモーターが正転・逆転を繰り返す処理を行います。
回転は、加速(1秒)→定速(2秒)→減速(1秒)の順に計30回転行い、回転方向を変更します。
サーボアンプに与える位置データは、1ms毎の絶対位置を記したファイル(レシピファイル)からロードして使用します。
システム構成
制御対象機器(抜粋):
サーボドライバ
サーボアンプ
オムロン R88D-KN01H-ECT
山洋電気 RS2E01A0KA4
Panasonic MADHT1507BA1
サーボモーター オムロン R88M-K10030H
山洋電気 R2EA04003FXP00
Panasonic MSME022G1A
サーボモーター速度線図

■ ダウンロード
ファイル名 サイズ 内容
CiA402Servo.zip 61 KB INplc-SDK(Express) v3.05で作成したプロジェクトとレシピファイルです。 分解能=36,000p/revに設定したPanasonic製MADHT1507BA1とMSME022G1Aを制御対象としています。 Download
  • ダウンロードしたファイルを利用して、万が一障害などが発生しても一切の責任を負いません。必ずご自身の責任においてご利用ください。
  • ダウンロードしたファイルを許可なく再転載や再配布することは禁止いたします。

■ サーボモーターの制御方法
サーボモーターの制御は、INplcのラダープログラムで行います。
ファームウェアライブラリ「ECAT_FWL」 を使用して、CiA402規格のサーボモーター制御を行います。
加減速の制御は、サーボアンプに与える位置データの変化量によって行います。
位置データを記したレシピファイルの読み込みには、 ファームウェアライブラリ「ProConOS」 のファイル操作FBを使用します。

処理の流れ
  • 位置データのロード(ファイル読込)
  • EtherCAT®マスターのステートを[Operational]に変更
  • EtherCAT®スレーブを検索
  • 動作モードを[サイクリック同期位置モード]に設定
  • サーボドライバの状態を[サーボON]に変更
  • モーター動作制御(スキャン毎に位置データの指定)
プログラムの主な設定内容
タスク CYCLIC(周期:1ms)
ファームウェア
ライブラリ
ProConOS(ファイル読込用)
ECAT_FWL(サーボモーター制御用)
EtherCAT®マスター マスター通信サイクル:1ms

システム構成
モーター動作制御のソースコード (抜粋)
EtherCAT®マスターのサイクリック処理の開始を検知し、位置データをサーボアンプに与え、補間動作を行います。
プログラムの1スキャン毎(1ms周期)に位置データを更新するために、ジャンプとラベルを使用して処理をループさせて位置データの指定が完了するまで待機します。

1スキャンの処理内容:
  • EtherCAT®マスターのサイクリック処理の開始をチェック。 (サイクリック処理待ち)
  • サイクリック処理の開始を検知したら、位置データを指定。 (移動要求)
  • 位置データの指定が完了するまでループ(ラベルとジャンプを使用)して待機。
モーター動作制御のソースコード
ラダープログラムの留意点
  • 立ち上がりエッジを検出して動作するFBを毎スキャン実行するには、1スキャンの間にFBの信号をOFFにする処理を入れてください。
  • 処理完了までに2スキャン以上必要なFBを1スキャンの間に完了させるにはジャンプとラベルを利用してループさせてください。 ただし、ファイル操作FBは、内部スレッドのプライオリティがCYCLICタスクよりも低いため、1スキャンの間に処理を完了することはできません。