pv_IsTargetReached()

説明

Check if the target velocity has been reached in Profile Velocity mode (pv).

Relevant Objects

  • Object 6041h: ステータスワード

構文

int pv_IsTargetReached();

媒介変数

なし

戻り値

Return whether the target velocity has been reached.

備考

この関数は、 EthercatMaster::start(). This function is non-blocking and can be called in callback functions.

#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); 
}

詳細は EtherCAT CiA 402 User Manual QEC EtherCAT命令とAPI使用法参照

上部へスクロール