I want to find...

Search

Libraries

Table of Content

motor.hm_Run()

[EtherCAT Device CiA402]

Description

Initiate a homing operation in Homing mode (hm).

Relevant Objects

  • Object 6040h: Controlword
  • Object 6041h: Statusword

Syntax

int hm_Run();

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(). This function is blocking and cannot 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_HOMING_MODE); 
  master.start(); 
 
  motor.enable(); 
 
  motor.hm_SetHomingMethod(CIA402_HM33); 
  motor.hm_SetHomeOffset(0); 
  motor.hm_SetHomingSpeeds(100, 20); 
  motor.hm_SetHomingAcceleration(100); 
  motor.hm_Run(); 
  while (motor.hm_IsAttained() == CIA402_HM_RUNNING); 
} 
 
void loop() { 
  // put your main code here, to run repeatedly: 
} 

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

Scroll to Top