forked from epics_driver_modules/motorBase
motor: I added a 50ms sleep when doing a set position in the XPS driver, just before the GroupReferencingStop() command. Some types of XPS axes seem to need this sent a little later than others (eg. a spindle type axis can be left in state 64 if this command is sent too quickly after a GroupReferencingActionExecute().
This commit is contained in:
@@ -665,6 +665,9 @@ static int motorAxisSetDouble(AXIS_HDL pAxis, motorAxisParam_t function, double
|
||||
"None",
|
||||
value*(pAxis->stepSize));
|
||||
/*Stop referencing, then we are homed on all axes in group.*/
|
||||
/*Some types of XPS axes (eg. spindle) need a sleep here, otherwise
|
||||
the axis can be left in referencing mode.*/
|
||||
epicsThreadSleep(0.05);
|
||||
status = GroupReferencingStop(pAxis->pollSocket,
|
||||
pAxis->groupName);
|
||||
if (status != 0) {
|
||||
@@ -696,6 +699,9 @@ static int motorAxisSetDouble(AXIS_HDL pAxis, motorAxisParam_t function, double
|
||||
"SetPosition",
|
||||
"None",
|
||||
value*(pAxis->stepSize));
|
||||
/*Some types of XPS axes (eg. spindle) need a sleep here, otherwise
|
||||
the axis can be left in referencing mode.*/
|
||||
epicsThreadSleep(0.05);
|
||||
status = GroupReferencingStop(pAxis->pollSocket,
|
||||
pAxis->groupName);
|
||||
if (status != 0) {
|
||||
|
||||
Reference in New Issue
Block a user