Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 39 additions & 6 deletions src/emc/motion-logger/motion-logger.c
Original file line number Diff line number Diff line change
Expand Up @@ -488,25 +488,50 @@ int main(int argc, char* argv[]) {
"SET_JOINT_POSITION_LIMITS joint=%d, min=%.6g, max=%.6g\n",
c->joint, c->minLimit, c->maxLimit
);
joints[c->joint].max_pos_limit = c->maxLimit;
joints[c->joint].min_pos_limit = c->minLimit;
if (c->joint < 0) {
log_print("ERROR: SET_JOINT_POSITION_LIMITS ignored since joint number %d is < 0.\n",c->joint);
}
else if (c->joint < EMCMOT_MAX_JOINTS) {
joints[c->joint].max_pos_limit = c->maxLimit;
joints[c->joint].min_pos_limit = c->minLimit;
}
else {
log_print("ERROR: SET_JOINT_POSITION_LIMITS ignored since joint number %d beyond technical limit %d.\n",c->joint,EMCMOT_MAX_JOINTS-1);
}
break;

case EMCMOT_SET_AXIS_POSITION_LIMITS:
log_print(
"SET_AXIS_POSITION_LIMITS axis=%d, min=%.6g, max=%.6g\n",
c->axis, c->minLimit, c->maxLimit
);
axis_set_min_pos_limit(c->axis, c->minLimit);
axis_set_max_pos_limit(c->axis, c->maxLimit);

if (c->axis < 0) {
log_print("ERROR: SET_AXIS_POSITION_LIMITS ignored since axis number %d is < 0.\n",c->axis);
}
else if (c->axis < EMCMOT_MAX_AXIS) {
axis_set_min_pos_limit(c->axis, c->minLimit);
axis_set_max_pos_limit(c->axis, c->maxLimit);
}
else {
log_print("ERROR: SET_AXIS_POSITION_LIMITS ignored since axis number %d beyond technical limit %d.\n",c->axis,EMCMOT_MAX_AXIS-1);
}
break;

case EMCMOT_SET_AXIS_LOCKING_JOINT:
log_print(
"SET_AXIS_LOCKING_JOINT axis=%d, locking_joint=%d\n",
c->axis, c->joint
);
axis_set_locking_joint(c->axis, c->joint);
if (c->axis >= EMCMOT_MAX_AXIS) {
log_print("ERROR: SET_AXIS_LOCKING_JOINT ignored since axis number %d beyond technical limit %d.\n",c->joint,EMCMOT_MAX_AXIS-1);
}
else if (c->joint >= EMCMOT_MAX_JOINTS) {
log_print("ERROR: SET_AXIS_LOCKING_JOINT ignored since joint number %d beyond technical limit %d.\n",c->joint,EMCMOT_MAX_JOINTS-1);
}
else {
axis_set_locking_joint(c->axis, c->joint);
}
break;

case EMCMOT_SET_JOINT_BACKLASH:
Expand Down Expand Up @@ -560,7 +585,15 @@ int main(int argc, char* argv[]) {

case EMCMOT_SET_NUM_SPINDLES:
log_print("SET_NUM_SPINDLES %d\n", c->spindle);
num_spindles = c->spindle;
if (c->spindle < 0) {
log_print("ERROR: SET_NUM_SPINDLES ignored since number of spindles %d is below 0.\n",c->joint);
}
else if (c->spindle <= EMCMOT_MAX_SPINDLES) {
num_spindles = c->spindle;
}
else {
log_print("ERROR: SET_NUM_SPINDLES ignored since joint number %d beyond technical limit %d.\n",c->joint,EMCMOT_MAX_SPINDLES);
}
break;

case EMCMOT_SET_WORLD_HOME:
Expand Down
Loading