[EthercatDevice_DmpStepper_Generic]
描述
Get the current direction of the specified encoder on the EtherCAT slave device.
衍生類別:
Class Name | Vendor ID | Product Code |
EthercatDevice_QECR11MP3S | 0x00000bc3 | 0x0086d0d6 |
EthercatDevice_QECR00MP3S | 0x00000bc3 | 0x0086d0d9 |
語法
int encoderDirectionRead(int encoder);
參數
[in] int encoder
The specified encoder number:
定義 | 值 | 描述 |
ECAT_ENCODER_1 | 0x01 | Encoder 1 on the EtherCAT slave device. |
ECAT_ENCODER_2 | 0x02 | Encoder 2 on the EtherCAT slave device. |
ECAT_ENCODER_3 | 0x03 | Encoder 3 on the EtherCAT slave device. |
ECAT_ENCODER_X | 0x11 | Encoder X, which mapping is determined by the configMachineAxisMapping() . |
ECAT_ENCODER_Y | 0x12 | Encoder Y, which mapping is determined by the configMachineAxisMapping() . |
ECAT_ENCODER_Z | 0x13 | Encoder Z, which mapping is determined by the configMachineAxisMapping() . |
回傳值
Return the current direction of the specified encoder. A return value of 0 indicates forward rotation, while a return value of 1 indicates reverse rotation. If the returned value is less than zero, it indicates an 錯誤代碼.
備註
This function must be called after a successful execution of EthercatMaster::start()
and before EthercatMaster::stop()
. This function is blocking and cannot be called within the callback functions.
範例
#include "Ethercat.h" EthercatMaster master; EthercatDevice_QECR11MP3S slave; void setup() { Serial.begin(115200); master.begin(); slave.attach(0, master); master.start(); } void loop() { Serial.print("Encoder 1 Direction: "); Serial.println(slave.encoderDirectionRead(ECAT_ENCODER_1)); Serial.print("Encoder 2 Direction: "); Serial.println(slave.encoderDirectionRead(ECAT_ENCODER_2)); Serial.print("Encoder 3 Direction: "); Serial.println(slave.encoderDirectionRead(ECAT_ENCODER_3)); Serial.print("Encoder X Direction: "); Serial.println(slave.encoderDirectionRead(ECAT_ENCODER_X)); Serial.print("Encoder Y Direction: "); Serial.println(slave.encoderDirectionRead(ECAT_ENCODER_Y)); Serial.print("Encoder Z Direction: "); Serial.println(slave.encoderDirectionRead(ECAT_ENCODER_Z)); delay(1000); // ... }
Please see EthercatDevice_DmpStepper_Generic 類別 for more QEC Stepper Drivers instructions and API usage.