Check motor.OUT; make sure motors are in signal order, with no gaps

This commit is contained in:
timmmooney
2014-06-12 20:49:12 +00:00
parent 5d3c130b07
commit 4a31cb3ad1
+12
View File
@@ -192,6 +192,8 @@ int waitingForTrigger;
double vmax;
double amax;
int card;
int signal;
ss maxTrajectoryScan {
@@ -253,6 +255,16 @@ ss maxTrajectoryScan {
pvAssign(epicsMotorACCL[i], motorName);
pvMonitor(epicsMotorACCL[i]);
sprintf(motorName, "%s%s.OUT", macValueGet("P"), macValueGet(macroBuf));
pvAssign(epicsMotorOUT[i], motorName);
pvGet(epicsMotorOUT[i]);
sscanf(epicsMotorOUT[i], "#C%d S%d", &card, &signal);
if (signal != i) {
printf("MAX_trajectoryScan: motor %d has signal %d (must be same)\n", i, signal);
initStatus = STATUS_FAILURE;
}
if (cardNumber == -2) {
cardNumber = epicsMotorCard[i];
} else {