[EthercatDevice_DmpStepper_Generic]
Description
Write the counter of the specified encoder on the EtherCAT slave device.
Derived Class:
Class Name | Vendor ID | Product Code |
EthercatDevice_QECR11MP3S | 0x00000bc3 | 0x0086d0d6 |
EthercatDevice_QECR00MP3S | 0x00000bc3 | 0x0086d0d9 |
Syntax
int encoderWrite(int encoder, int32_t value);
Parameters
[in] int encoder
The specified encoder number:
Definition | Value | Description |
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() . |
[in] int32_t value
The value to be written.
Return Value
Return an error code. If the returned value is zero, it indicates a successful execution of this function.
Comment
This function must be called after a successful execution of EthercatMaster::begin()
. This function is blocking and cannot be called within the Cyclic Callback.
Example
#include "Ethercat.h" EthercatMaster master; EthercatDevice_QECR11MP3S slave; void setup() { master.begin(); slave.attach(0, master); slave.encoderWrite(ECAT_ENCODER_1, 100); slave.encoderWrite(ECAT_ENCODER_2, 100); slave.encoderWrite(ECAT_ENCODER_3, 100); master.start(); } void loop() { // ... }
Please see EthercatDevice_DmpStepper_Generic Class for more QEC Stepper Drivers instructions and API usage.