pp_Resume()

Description

Resume the paused operation that was called before pp_Halt().

Relevant Objects

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

Syntax

int pp_Resume();

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_PP_MODE);
  master.start(); 
  
  motor.enable(); 
} 

void loop() { 
  motor.pp_SetMotionProfileType(0);
  motor.pp_SetVelocity(100000);
  motor.pp_SetAcceleration(5000); 
  motor.pp_SetDeceleration(5000);
  motor.pp_Run(1000000, CIA402_PP_RELATIVE, true);
  delay(3000);
  motor.pp_Halt();
  delay(3000);
  motor.pp_Resume();
  while (motor.pp_IsTargetReached() == 0);
  
  motor.pp_SetMotionProfileType(0);
  motor.pp_SetVelocity(100000); 
  motor.pp_SetAcceleration(5000); 
  motor.pp_SetDeceleration(5000); 
  motor.pp_Run(-1000000, CIA402_PP_RELATIVE, true); 
  delay(3000); 
  motor.pp_Halt(); 
  delay(3000);
  motor.pp_Resume(); 
  while (motor.pp_IsTargetReached() == 0); 
}

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

Scroll to Top