[EthercatDevice_DmpStepper_Generic]
説明
Gコード・コントローラ・モードで EtherCATスレーブデバイス上の指定された機械軸のソフトウェアリミットを設定します。これらの変数はEtherCATスレーブデバイスのEEPROMに書き込まれ、起動時に読み込まれるため、ユーザーはプログラムを実行する前に毎回これらの変数を設定する必要はありません。
ユーザーが machineGcode()
を呼び出して移動コマンドを受信すると、EtherCATスレーブデバイスは各軸の目標位置を内部で計算します。
- ある軸の目標位置 P がその軸の最大位置値Pmaxより大きい場合、 P はPmaxに調整されます。
- ある軸の目標位置 P がその軸の最大位置値Pmaxより小さい場合、P はPmaxに調整されます。
派生クラス:
クラス名 | 製造者ID | 製品コード |
EthercatDevice_QECR11MP3S | 0x00000bc3 | 0x0086d0d6 |
EthercatDevice_QECR00MP3S | 0x00000bc3 | 0x0086d0d9 |
構文
int configMachineSoftLimit(int machine_axis, double min, double max);
媒介変数
[in] int machine_axis
EtherCATスレーブデバイス上の指定された機械軸の番号:
定義 | Value | 説明 |
ECAT_MACHINE_X_AXIS | 0 | X軸で、マッピングはconfigMachineAxisMapping() によって決定されます。 |
ECAT_MACHINE_Y_AXIS | 1 | Y軸で、マッピングはconfigMachineAxisMapping() によって決定されます。 |
ECAT_MACHINE_Z_AXIS | 2 | Z軸で、マッピングは configMachineAxisMapping() によって決定されます。 |
[in] double min
設定するソフトウェアリミットの最小位置値 Pmin (ミリメートル単位)。[in] double max
設定するソフトウェアリミットの最大位置値 Pmax (ミリメートル単位)。
戻り値
error codeを返します。返された値が 0の場合、この関数が正常に完了したことを示します。
備考
この関数は、 EthercatMaster::begin()
が正常に実行された後に呼び出す必要があります。 この関数はブロッキングされており、コールバック関数内で呼び出すことはできません。
例
#include "Ethercat.h" EthercatMaster master; EthercatDevice_QECR11MP3S slave; void setup() { master.begin(); slave.attach(0, master); slave.configMachineSoftLimit(ECAT_MACHINE_X_AXIS, 0, 100); slave.configMachineSoftLimit(ECAT_MACHINE_Y_AXIS, 0, 100); slave.configMachineSoftLimit(ECAT_MACHINE_Z_AXIS, 0, 100); } void loop() { // ... }
Please see EthercatDevice_DmpStepper_Generic Class for more QEC Stepper Drivers instructions and API usage.