サイト内検索

検索

Shares

Table of Content

EthercatDevice_DmpStepper.configEncoderIndexReset()

[EthercatDevice_DmpStepper_Generic]

説明

EtherCATスレーブデバイス上の指定されたエンコーダのインデックス信号リセット・カウンタ機能を有効または無効にします。図に示すように、この機能を有効にすると、カウンタはゼロにリセットされ、インデックス信号(信号Z)が検出されると インデックス・リセット ・イベントがトリガされます。この変数は EtherCATスレーブデバイスのEEPROMに書き込まれ、起動時に読み込まれるため、ユーザーはプログラムを実行する前に毎回この変数を設定する必要はありません。

派生クラス:

クラス名製造者ID製品コード
EthercatDevice_QECR11MP3S0x00000bc30x0086d0d6
EthercatDevice_QECR00MP3S0x00000bc30x0086d0d9

構文

int configEncoderIndexReset(int encoder, bool enable);

媒介変数

  • [in] int encoder
    指定されたエンコーダ番号:
定義Value説明
ECAT_ENCODER_10x01EtherCATスレーブデバイス上のエンコーダ1
ECAT_ENCODER_20x02EtherCATスレーブデバイス上のエンコーダ2
ECAT_ENCODER_30x03EtherCATスレーブデバイス上のエンコーダ3
ECAT_ENCODER_X0x11エンコーダXで、マッピングは configMachineAxisMapping()によって決定されます。
ECAT_ENCODER_Y0x12エンコーダZで、マッピングはconfigMachineAxisMapping()によって決定されます。
ECAT_ENCODER_Z0x13エンコーダZで、マッピングは configMachineAxisMapping()によって決定されます。
  • [in] bool enable
    指定されたエンコーダのインデックス信号リセット機能を有効にするか、無効にするかを指定するブール値。
    • true: インデックス信号リセット機能が有効になります。
    • false: インデックス信号リセット機能は無効になります。

戻り値

error codeを返します。返された値が 0の場合、この関数が正常に完了したことを示します。

備考

この関数は、 EthercatMaster::begin()が正常に実行された後に呼び出す必要があります。 この関数はブロッキングされており、コールバック関数内で呼び出すことはできません。

#include "Ethercat.h"

EthercatMaster master;
EthercatDevice_QECR11MP3S slave;

void setup() {
  master.begin();
  slave.attach(0, master);

  slave.configEncoderIndexReset(ECAT_ENCODER_1, false);
  slave.configEncoderIndexReset(ECAT_ENCODER_2, false);
  slave.configEncoderIndexReset(ECAT_ENCODER_3, false);
  // ...
}

void loop() {
  // ...
}

Please see EthercatDevice_DmpStepper_Generic Class for more QEC Stepper Drivers instructions and API usage.

上部へスクロール