EasyManua.ls Logo

Delta EtherCAT

Delta EtherCAT
481 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
EtherCAT Programming Guide General Operation of Motion Axis
March, 2017 8-31
8
Example
U16 Status, TouchProbe_Status;
U16 CardNo=16,AxisNo=1,SlotNo=0;
I32 LatchPosition = 0;
U16 TriggerMode =0; // It records the pulse (position) when the signal is triggered for the first
time.
U16 Signal_Source=1; // Motor’s Z pulse is regarded as trigger signal of the first Touch Probe
function.
Status = _ECAT_Slave_Motion_Set_TouchProbe_Config(CardNo, AxisNo, SlotNo,
TriggerMode, Signal_Source);
Status = _ECAT_Slave_Motion_Set_TouchProbe_QuickStart(CardNo, AxisNo, SlotNo);
while (1)
{
Status = _ECAT_Slave_Motion_Get_TouchProbe_Status(CardNo, AxisNo, SlotNo, &
TouchProbe_Status);
if (TouchProbe_Status & 0x2)
{
Status = _ECAT_Slave_Motion_Get_TouchProbe_Position(CardNo, AxisNo, SlotNo,
&LatchPosition);
break;
}
}
// This API simplifies the step of re-activating the Touch Probe function (TriggerMode=0).
Status = _ECAT_Slave_Motion_Set_TouchProbe_QuickDone(CardNo, AxisNo, SlotNo);
while (1)
{
Status = _ECAT_Slave_Motion_Get_TouchProbe_Status(CardNo, AxisNo, SlotNo, &
TouchProbe_Status);
if (TouchProbe_Status & 0x2)
{
Status = _ECAT_Slave_Motion_Get_TouchProbe_Position(CardNo, AxisNo, SlotNo,
&LatchPosition);
break;
}
}

Table of Contents

Related product manuals