Merge pull request #5 from Binary-Coalescence/Speed-conversion-update

Fixed speed conversions
This commit is contained in:
BScatterplot
2024-08-05 11:01:22 -05:00
committed by GitHub
2 changed files with 4 additions and 5 deletions

View File

@@ -185,7 +185,7 @@ asynStatus MD90Axis::sendAccelAndVelocity(double acceleration, double velocity)
// Velocity provided in steps/sec
// Our unit step size of the encoder is 10 nm, but the motor moves in steps approx. 5 micrometers.
// Motor controller accepts step frequency in Hz.
freq = NINT(fabs(velocity / 500.));
freq = NINT(fabs(velocity / COUNTS_PER_STEP));
sprintf(pC_->outString_, "SSF %d", freq);
status = pC_->writeReadController();
if (!status) {
@@ -446,7 +446,7 @@ asynStatus MD90Axis::poll(bool *moving)
if (comStatus) goto skip;
// The response string is of the form "0: Current step frequency: 100"
sscanf(pC_->inString_, "%d: %[^:]: %d", &replyStatus, replyString, &replyValue);
velocity = replyValue * 500.0;
velocity = replyValue * COUNTS_PER_STEP;
setDoubleParam(pC_->motorVelocity_, velocity);
// Read the current motor integral gain (range 1-1000)

View File

@@ -2,9 +2,6 @@
FILENAME... MD90Driver.h
USAGE... Motor driver support for the DSM MD-90 controller.
Mark Rivers
March 1, 2012
*/
#include "asynMotorController.h"
@@ -15,6 +12,8 @@ March 1, 2012
// No controller-specific parameters yet
#define NUM_MD90_PARAMS 0
#define COUNTS_PER_STEP 1000.0 //Number of encoder counts per motor step (measured by testing)
class epicsShareClass MD90Axis : public asynMotorAxis
{
public: