我想找...

搜尋

函式庫參考

目錄

motor.isTargetReached

[EtherCAT Device CiA402]

描述

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

Relevant Objects

  • Object 6041h: Statusword

語法

int isTargetReached();

參數

無

回傳值

Return whether the target has been reached.

備註

This function must be called after a successful execution of 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_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 使用手冊 for more QEC EtherCAT instructions and API usage.

返回頂端