I want to find...

Search

Libraries

Table of Content

motor.isTargetReached

[EtherCAT Device CiA402]

Description

Check if the target has been reached. It checks the target reached bit in the statusword object.

Relevant Objects

  • Object 6041h: Statusword

Syntax

int isTargetReached();

Parameters

None.

Return Value

Return whether the target has been reached.

Comment

This function must be called after a successful execution of EthercatMaster::start(). This function is non-blocking and can be called in callback functions.

Example Code

#include "Ethercat.h" 
 
EthercatMaster master; 
EthercatDevice_CiA402 motor; 
 
void setup() { 
  master.begin(); 
  motor.attach(0, master); 
  motor.setCiA402Mode(CIA402_PP_MODE); 
  master.start(); 
 
  motor.enable(); 
} 
 
void loop() { 
  motor.setTargetPosition(100000); 
  motor.setModeSpecificBit6(true); 
  motor.setModeSpecificBit5(true); 
  motor.setModeSpecificBit4(true); 
  while (motor.checkModeSpecificBit12() == 0); 
  motor.setModeSpecificBit4(false); 
  while (motor.checkModeSpecificBit12() == 1); 
  while (motor.isTargetReached() == 0); 
 
  motor.setTargetPosition(-100000); 
  motor.setModeSpecificBit6(true); 
  motor.setModeSpecificBit5(true); 
  motor.setModeSpecificBit4(true); 
  while (motor.checkModeSpecificBit12() == 0); 
  motor.setModeSpecificBit4(false); 
  while (motor.checkModeSpecificBit12() == 1); 
  while (motor.isTargetReached() == 0); 
}

Please see the EtherCAT CiA 402 User Manual for more QEC EtherCAT instructions and API usage.

Scroll to Top