Stop or reset now also resets the deferred movement flags
This commit is contained in:
@ -343,6 +343,10 @@ asynStatus detectorTowerAngleAxis::stop(double acceleration) {
|
|||||||
return asynError;
|
return asynError;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Reset the deferred movement flags
|
||||||
|
startingDeferredMovement_ = false;
|
||||||
|
deferredMovementWait_ = false;
|
||||||
|
|
||||||
return rwStatus;
|
return rwStatus;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -526,6 +530,10 @@ asynStatus detectorTowerAngleAxis::doReset() {
|
|||||||
__PRETTY_FUNCTION__, __LINE__);
|
__PRETTY_FUNCTION__, __LINE__);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Reset the deferred movement flags
|
||||||
|
startingDeferredMovement_ = false;
|
||||||
|
deferredMovementWait_ = false;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Check which action should be performed:
|
Check which action should be performed:
|
||||||
- If error_ == 10 or 11 (FTZ motor error): P352 = 3 (Recover FTZ)
|
- If error_ == 10 or 11 (FTZ motor error): P352 = 3 (Recover FTZ)
|
||||||
|
@ -192,37 +192,8 @@ asynStatus detectorTowerLiftAxis::doMove(double position, int relative,
|
|||||||
asynStatus detectorTowerLiftAxis::reset() { return angleAxis()->reset(); };
|
asynStatus detectorTowerLiftAxis::reset() { return angleAxis()->reset(); };
|
||||||
|
|
||||||
asynStatus detectorTowerLiftAxis::stop(double acceleration) {
|
asynStatus detectorTowerLiftAxis::stop(double acceleration) {
|
||||||
|
return angleAxis()->stop(acceleration);
|
||||||
// Status of read-write-operations of ASCII commands to the controller
|
};
|
||||||
asynStatus rwStatus = asynSuccess;
|
|
||||||
|
|
||||||
// Status of parameter library operations
|
|
||||||
asynStatus plStatus = asynSuccess;
|
|
||||||
|
|
||||||
char response[pC_->MAXBUF_] = {0};
|
|
||||||
|
|
||||||
// =========================================================================
|
|
||||||
|
|
||||||
rwStatus = pC_->writeRead(axisNo_, "P350=8", response, 0);
|
|
||||||
|
|
||||||
if (rwStatus != asynSuccess) {
|
|
||||||
asynPrint(pC_->pasynUser(), ASYN_TRACE_ERROR,
|
|
||||||
"Controller \"%s\", axis %d => %s, line %d\nStopping "
|
|
||||||
"the movement "
|
|
||||||
"failed.\n",
|
|
||||||
pC_->portName, axisNo_, __PRETTY_FUNCTION__, __LINE__);
|
|
||||||
|
|
||||||
plStatus = setIntegerParam(pC_->motorStatusProblem(), true);
|
|
||||||
if (plStatus != asynSuccess) {
|
|
||||||
return pC_->paramLibAccessFailed(plStatus, "motorStatusProblem_",
|
|
||||||
axisNo_, __PRETTY_FUNCTION__,
|
|
||||||
__LINE__);
|
|
||||||
}
|
|
||||||
return asynError;
|
|
||||||
}
|
|
||||||
|
|
||||||
return rwStatus;
|
|
||||||
}
|
|
||||||
|
|
||||||
asynStatus detectorTowerLiftAxis::readEncoderType() {
|
asynStatus detectorTowerLiftAxis::readEncoderType() {
|
||||||
return angleAxis()->readEncoderType();
|
return angleAxis()->readEncoderType();
|
||||||
|
Reference in New Issue
Block a user