[EthercatDevice_DmpStepper_Generic]
Description
Turn off all motors of the machine on the EtherCAT slave device.
Since this function is a non-blocking function and the update()
function needs to be called continuously to execute the state machine, it may take some time to complete, so the related status may take some time to respond, such as machineIsServoOn()
.
Derived Class:
Class Name | Vendor ID | Product Code |
EthercatDevice_QECR11MP3S | 0x00000bc3 | 0x0086d0d6 |
EthercatDevice_QECR00MP3S | 0x00000bc3 | 0x0086d0d9 |
Syntax
int machineServoOff();
Parameters
None.
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::start()
and before EthercatMaster::stop()
. This function is blocking and cannot be called within the callback functions.
This function only works in G-code Controller mode on the EtherCAT slave device. For more details, please refer to configDeviceMode()
.
This function does not work in the following cases:
- The machine is homing.
- The machine is moving.
Example
#include "Ethercat.h" EthercatMaster master; EthercatDevice_QECR11MP3S slave; void CyclicCallback() { slave.update(); } void setup() { master.begin(); slave.attach(0, master); master.attachCyclicCallback(CyclicCallback); master.start(); slave.machineServoOn(); while (slave.machineIsServoOn() == 0); delay(1000); // .. slave.machineServoOff(); while (slave.machineIsServoOn() == 1); } void loop() { // ... }
Please see EthercatDevice_DmpStepper_Generic Class for more QEC Stepper Drivers instructions and API usage.