Added asyn motor driver support for actual raw velocity (RVEL field).

This commit is contained in:
Ron Sluiter
2013-04-24 18:52:24 +00:00
parent 241f2f24b6
commit bcb11ae5a7
3 changed files with 5 additions and 3 deletions
+3 -2
View File
@@ -88,6 +88,7 @@ typedef enum {
motorLowLimit = motorAxisLowLimit,
motorSetClosedLoop = motorAxisClosedLoop,
motorEncoderPosition = motorAxisEncoderPosn,
motorActualVel = motorAxisActualVel,
motorDeferMoves = motorAxisDeferMoves,
motorMoveToHome = motorAxisMoveToHome,
/* Status bits split out */
@@ -861,10 +862,10 @@ static void intCallback(void *axisPvt, unsigned int nChanged,
(*pPvt->drvset->getDouble)(pAxis->axis, changed[i],
&(pAxis->status.encoderPosition));
}
/* if (changed[i] == motorVelocity) {
if (changed[i] == motorAxisActualVel) {
(*pPvt->drvset->getDouble)(pAxis->axis, changed[i],
&(pAxis->status.velocity));
}*/
}
}
/* Pass float64 interrupts */
+1
View File
@@ -311,6 +311,7 @@ typedef enum
motorAxisDGain, /**< (double) The differential gain term for PID control in controller dependent units */
motorAxisClosedLoop, /**< (int) Enables closed loop in the controller if non-zero */
motorAxisEncoderPosn, /**< (double, r/o) Current encoder position */
motorAxisActualVel, /**< (double, r/o) Current actual velocity */
motorAxisDirection, /**< (int, r/o) last motion direction 0=Negative, 1=Positive */
motorAxisDone, /**< (int, r/o) a motion is complete */
motorAxisHighHardLimit, /**< (int, r/o) plus limit switch has been hit */
+1 -1
View File
@@ -158,7 +158,7 @@ struct mess_info
int encoder_present; /* one YES/NO for each axis */
epicsInt32 position; /* one pos for each axis */
epicsInt32 encoder_position; /* one pos for each axis */
epicsInt32 velocity; /* Raw velocity readback(not implemented) */
epicsInt32 velocity; /* Raw velocity readback */
int no_motion_count;
epicsTime status_delay; /* Insure 10ms delay between motion/velocity
* commands and status query. */