get_user_home (Manual Mode)

This section explains how to use get_user_home during Manual (Teach) operations. It retrieves the user-defined home pose of the robot — a safe standby position typically used at the start and end of manual calibration tasks. This helps confirm that the robot will move to a predictable, collision-free posture before continuing operations.

Typical usage

  • Retrieve the home pose for manual verification before returning to it.

  • Display or log home position for operator safety checks.

  • Compare with the current joint position (get_current_posj) before returning to it.

Note

  • The return type is ROBOT_POSE.

  • The home pose is user-defined and can be set with set_user_home.

  • This command only retrieves data; it does not initiate motion.

Example: Display and Move Back to User Home

// Step 1. Retrieve the user home joint position
LPROBOT_POSE pHome = drfl.get_user_home();
if (pHome == NULL) {
    printf("get_user_home could not be sent.\n");
    return -1;
}

printf("[User Home]\n");
for (int i = 0; i < NUMBER_OF_JOINT; ++i)
    printf("J%d [deg]: %.2f\n", i + 1, pHome->_fPosition[i]);

// Step 2. Move the robot to the user home
printf("Moving robot to user home...\n");
if (!drfl.move_home(MOVE_HOME_USER, 1)) {
    printf("move_home was refused.\n");
    return -1;
}
drfl.mwait();

Tips

  • Use before shutdown or between teaching sessions to safely park the robot.

  • Pair with set_user_home to define custom rest positions.

  • Always confirm the workspace is clear before executing a home move.