[EthercatDevice_DmpStepper_Generic]
説明
EtherCATスレーブデバイス上の指定されたマシン軸のリミットスイッチがタッチされているかどうかを確認します。
派生クラス:
クラス名 | 製造者ID | 製品コード |
EthercatDevice_QECR11MP3S | 0x00000bc3 | 0x0086d0d6 |
EthercatDevice_QECR00MP3S | 0x00000bc3 | 0x0086d0d9 |
構文
int machineIsLimitTouched(int machine_axis);
媒介変数
[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() によって決定されます。 |
戻り値
指定された機械軸のリミットスイッチがタッチされているかどうかを返します。
- 1 means the Machine Limit Switch is touched.
- 到達していなければ0です。
戻り値が0未満の場合、 error codeを示します。.
備考
この関数は、 EthercatMaster::start()
が正常に実行された後で、 EthercatMaster::stop()
が正常に実行された後に呼び出す必要があります。 この関数はブロッキングされており、コールバック関数内で呼び出すことはできません。
この関数はEtherCATスレーブデバイスのGコード・コントローラ・モードでのみ動作します。詳細については、 configDeviceMode()
を参照ください。
例
#include "Ethercat.h" EthercatMaster master; EthercatDevice_QECR11MP3S slave; void CyclicCallback() { slave.update(); } void setup() { Serial.begin(115200); master.begin(); slave.attach(0, master); master.attachCyclicCallback(CyclicCallback); master.start(); } void loop() { Serial.print("Limit Switch => "); Serial.print("X: "); Serial.print(slave.machineIsLimitTouched(ECAT_MACHINE_X_AXIS)); Serial.print(", Y: "); Serial.print(slave.machineIsLimitTouched(ECAT_MACHINE_Y_AXIS)); Serial.print(", Z: "); Serial.println(slave.machineIsLimitTouched(ECAT_MACHINE_Z_AXIS)); delay(1000); // ... }
Please see EthercatDevice_DmpStepper_Generic Class for more QEC Stepper Drivers instructions and API usage.