[EthercatDevice_DmpStepper_Generic]
説明
EtherCATスレーブデバイス上の指定されたエンコーダの入力ピンの極性を設定します。この変数は EtherCATスレーブデバイスのEEPROMに書き込まれ、起動時に読み込まれるため、ユーザーはプログラムを実行する前に毎回この変数を設定する必要はありません。
派生クラス:
クラス名 | 製造者ID | 製品コード |
EthercatDevice_QECR11MP3S | 0x00000bc3 | 0x0086d0d6 |
EthercatDevice_QECR00MP3S | 0x00000bc3 | 0x0086d0d9 |
構文
int configEncoderInputPolarity(int encoder, bool pin_a, bool pin_b, bool pin_z);
媒介変数
[in] int encoder
指定されたエンコーダ番号:
定義 | Value | 説明 |
ECAT_ENCODER_1 | 0x01 | EtherCATスレーブデバイス上のエンコーダ1 |
ECAT_ENCODER_2 | 0x02 | EtherCATスレーブデバイス上のエンコーダ2 |
ECAT_ENCODER_3 | 0x03 | EtherCATスレーブデバイス上のエンコーダ3 |
ECAT_ENCODER_X | 0x11 | エンコーダXで、マッピングは configMachineAxisMapping() によって決定されます。 |
ECAT_ENCODER_Y | 0x12 | エンコーダZで、マッピングはconfigMachineAxisMapping() によって決定されます。 |
ECAT_ENCODER_Z | 0x13 | エンコーダZで、マッピングは configMachineAxisMapping() によって決定されます。 |
[in] bool pin_a
指定されたエンコーダの入力ピンAの極性を設定します。- true: 高電圧は論理 1を表し、低電圧は論理 0を表します。
- false: 高電圧は論理 0を表し、低電圧は論理 1を表します。
[in] bool pin_b
指定されたエンコーダの入力ピンBの極性を設定します。入力値の説明はpin_aと同じです[in] bool pin_z
指定されたエンコーダの入力ピンZの極性を設定します。入力値の説明は pin_a と同じです。
戻り値
error codeを返します。返された値が 0の場合、この関数が正常に完了したことを示します。
備考
この関数は、 EthercatMaster::begin()
が正常に実行された後に呼び出す必要があります。 この関数はブロッキングされており、コールバック関数内で呼び出すことはできません。
例
#include "Ethercat.h" EthercatMaster master; EthercatDevice_QECR11MP3S slave; void setup() { master.begin(); slave.attach(0, master); slave.configEncoderInputPolarity(ECAT_ENCODER_1, true, true, true); slave.configEncoderInputPolarity(ECAT_ENCODER_2, true, true, true); slave.configEncoderInputPolarity(ECAT_ENCODER_3, true, true, true); // ... } void loop() { // ... }
Please see EthercatDevice_DmpStepper_Generic Class for more QEC Stepper Drivers instructions and API usage.