Description
Check if the target velocity has been reached in Profile Velocity mode (pv).
Relevant Objects
- Object 6041h: Statusword
Syntax
int pv_IsTargetReached();
Parameters
None.
Return Value
Return whether the target velocity 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_PV_MODE);
master.start();
motor.enable();
}
void loop() {
motor.pv_SetMotionProfileType(0);
motor.pv_SetAcceleration(5000);
motor.pv_SetDeceleration(5000);
motor.pv_Run(1000);
while (motor.pv_IsTargetReached() == 0);
delay(3000);
motor.pv_SetMotionProfileType(0);
motor.pv_SetAcceleration(5000);
motor.pv_SetDeceleration(5000);
motor.pv_Run(-1000);
while (motor.pv_IsTargetReached() == 0);
delay(3000);
}Please see the EtherCAT CiA 402 User Manual for more QEC EtherCAT instructions and API usage.