[EtherCAT Device CiA402]
描述
Check if a positive or negative edge has occurred on the touch probe 2 signal source.
Relevant Objects
- Object 60B9h: Touch probe status
語法
bool isTouchProbe2ValueReady(int value_selector);
參數
[in] value_selector
Choose the event to check on touch probe 2:
| 定義 | 代碼 | 描述 |
| CIA402_TPVALUE_POS_EDGE | 0 | Check if a positive edge has occurred on the touch probe 2 signal source. |
| CIA402_TPVALUE_NEG_EDGE | 1 | Check if a negative edge has occurred on the touch probe 2 signal source. |
回傳值
Return whether a positive or negative edge has occurred on the touch probe 2 signal source.
備註
This function must be called after a successful execution of EthercatMaster::begin(). This function is non-blocking and can be called in callback functions if the related object is mapped to PDO.
範例程式碼
#include "Ethercat.h"
EthercatMaster master;
EthercatDevice_CiA402 motor;
void setup() {
Serial.begin(115200);
while (!Serial);
master.begin();
motor.attach(0, master);
motor.enableTouchProbe2(CIA402_TPMODE_FIRST_EVENT, CIA402_TPSRC_TP_INPUT, CIA402_TPTIMING_POS_EDGE);
while (motor.isTouchProbe2ValueReady(CIA402_TPVALUE_POS_EDGE) == false);
Serial.print("Touch probe position 2 positive value: ");
Serial.println(motor.readTouchProbe2Value(CIA402_TPVALUE_POS_EDGE));
motor.disableTouchProbe2();
}
void loop() {
// put your main code here, to run repeatedly:
}
Please see the EtherCAT CiA 402 使用手冊 for more QEC EtherCAT instructions and API usage.