Skip to content

Trajectory File

Supports trajectory file management, including operations such as querying, running, deleting, and saving.

Query Trajectory List rm_get_trajectory_file_list()

  • Method prototype:
C
int rm_get_trajectory_file_list(rm_robot_handle *handle, int page_num, int page_size, const char *vague_search,rm_trajectory_list_t *trajectory_list);

Jump to rm_robot_handle and rm_trajectory_list_t for details of the structure.

  • Parameter description:
ParameterTypeDescription
handleInputRobotic arm handle.
page_numInputPage number.
page_sizeInputNumber of items per page.
vague_searchInputVague search.
listOutputQuery trajectory list.
  • Return value:
ParameterTypeDescriptionHandling Suggestions
0intSuccess.-
1intThe controller returns false, indicating that the parameters are sent incorrectly or the robotic arm state is wrong.- Validate JSON Command:
① Enable DEBUG logs for the API to capture the raw JSON data.
② Check JSON syntax: Ensure correct formatting of parentheses, quotes, commas, etc. (You can use a JSON validation tool).
③ Verify against the API documentation that parameter names, data types, and value ranges comply with the specifications.
④ After fixing the issues, resend the command and check if the controller returns a normal status code and business data.
- Check Robot Arm Status:
① Check for real-time error messages in the robot arm controller or logs (such as hardware failures, over-limit conditions), and reset, calibrate, or troubleshoot hardware issues according to the prompts.
② After fixing the issues, resend the command and check if the controller returns a normal status code and business data.
-1intThe data transmission fails, indicating that a problem occurs during the communication.Check Network Connectivity:
Use tools like ping/telnet to check if the communication link with the controller is normal.
-2intThe data reception fails, indicating that a problem occurs during the communication, or the controller has a return timeout.- Check Network Connectivity:
Use tools like ping/telnet to check if the communication link with the controller is normal.
- Verify Version Compatibility:
① Check if the controller firmware version supports the current API functions. For specific version compatibility, refer to the Version Description.
② If the version is too low, upgrade the controller or use an API version that is compatible.
-3intThe return value parse fails, indicating that the received data format is incorrect or incomplete.Verify Version Compatibility:
① Check if the controller firmware version supports the current API functions. For specific version compatibility, refer to the Version Description.
② If the version is too low, upgrade the controller or use an API version that is compatible.
-4intThis interface is not supported by the Gen 3 Controller.-
  • Usage demo

Query the saved drag - and - teach list, page number: 1, page size: 10, vague search for trajectories with "s" in the name.

C
ret = rm_get_trajectory_file_list(handle, 1, 10, "s", &trajectory_list);
printf("\n================== trajectory file list ==================\n");
printf("get trajectory file list result : %d\n", ret);
printf("total trajectory file count: %d\n", trajectory_list.total_size);
for (int i = 0; i < trajectory_list.list_len; i++)
{
    printf("trajectory file point_num: %d\n", trajectory_list.tra_list[i].point_num);
    printf("trajectory file name: %s\n", trajectory_list.tra_list[i].name);
    printf("trajectory file time: %s\n", trajectory_list.tra_list[i].create_time);
}

Start Running Specified Trajectory rm_set_run_trajectory()

  • Method prototype:
C
int rm_set_run_trajectory(rm_robot_handle *handle, const char *trajectory_name);

Jump to rm_robot_handle for details of the structure.

  • Parameter description:
ParameterTypeDescription
handleInputRobotic arm handle.
trajectory_nameInputTrajectory name.
  • Return value:
ParameterTypeDescriptionHandling Suggestions
0intSuccess.-
1intThe controller returns false, indicating that the parameters are sent incorrectly or the robotic arm state is wrong.- Validate JSON Command:
① Enable DEBUG logs for the API to capture the raw JSON data.
② Check JSON syntax: Ensure correct formatting of parentheses, quotes, commas, etc. (You can use a JSON validation tool).
③ Verify against the API documentation that parameter names, data types, and value ranges comply with the specifications.
④ After fixing the issues, resend the command and check if the controller returns a normal status code and business data.
- Check Robot Arm Status:
① Check for real-time error messages in the robot arm controller or logs (such as hardware failures, over-limit conditions), and reset, calibrate, or troubleshoot hardware issues according to the prompts.
② After fixing the issues, resend the command and check if the controller returns a normal status code and business data.
-1intThe data transmission fails, indicating that a problem occurs during the communication.Check Network Connectivity:
Use tools like ping/telnet to check if the communication link with the controller is normal.
-2intThe data reception fails, indicating that a problem occurs during the communication, or the controller has a return timeout.- Check Network Connectivity:
Use tools like ping/telnet to check if the communication link with the controller is normal.
- Verify Version Compatibility:
① Check if the controller firmware version supports the current API functions. For specific version compatibility, refer to the Version Description.
② If the version is too low, upgrade the controller or use an API version that is compatible.
-3intThe return value parse fails, indicating that the received data format is incorrect or incomplete.Verify Version Compatibility:
① Check if the controller firmware version supports the current API functions. For specific version compatibility, refer to the Version Description.
② If the version is too low, upgrade the controller or use an API version that is compatible.
-4intThis interface is not supported by the Gen 3 Controller.-
  • Usage demo

Run the drag and teach trajectory named "test".

C
ret = rm_set_run_trajectory(handle,"test");
printf("set run trajectory result : %d\n", ret);

Delete Specified Trajectory File rm_delete_trajectory_file()

  • Method prototype:
C
int rm_delete_trajectory_file(rm_robot_handle *handle, const char *trajectory_name);

Jump to rm_robot_handle for details of the structure.

  • Parameter description:
ParameterTypeDescription
handleInputRobotic arm handle.
trajectory_nameInputTrajectory name.
  • Return value:
ParameterTypeDescriptionHandling Suggestions
0intSuccess.-
1intThe controller returns false, indicating that the parameters are sent incorrectly or the robotic arm state is wrong.- Validate JSON Command:
① Enable DEBUG logs for the API to capture the raw JSON data.
② Check JSON syntax: Ensure correct formatting of parentheses, quotes, commas, etc. (You can use a JSON validation tool).
③ Verify against the API documentation that parameter names, data types, and value ranges comply with the specifications.
④ After fixing the issues, resend the command and check if the controller returns a normal status code and business data.
- Check Robot Arm Status:
① Check for real-time error messages in the robot arm controller or logs (such as hardware failures, over-limit conditions), and reset, calibrate, or troubleshoot hardware issues according to the prompts.
② After fixing the issues, resend the command and check if the controller returns a normal status code and business data.
-1intThe data transmission fails, indicating that a problem occurs during the communication.Check Network Connectivity:
Use tools like ping/telnet to check if the communication link with the controller is normal.
-2intThe data reception fails, indicating that a problem occurs during the communication, or the controller has a return timeout.- Check Network Connectivity:
Use tools like ping/telnet to check if the communication link with the controller is normal.
- Verify Version Compatibility:
① Check if the controller firmware version supports the current API functions. For specific version compatibility, refer to the Version Description.
② If the version is too low, upgrade the controller or use an API version that is compatible.
-3intThe return value parse fails, indicating that the received data format is incorrect or incomplete.Verify Version Compatibility:
① Check if the controller firmware version supports the current API functions. For specific version compatibility, refer to the Version Description.
② If the version is too low, upgrade the controller or use an API version that is compatible.
-4intThis interface is not supported by the Gen 3 Controller.-
  • Usage demo

Delete the trajectory named "test".

C
ret = rm_delete_trajectory_file(handle,"test");
printf("delete trajectory file result : %d\n", ret);

Save Trajectory File rm_save_trajectory_file()

  • Method prototype:
C
int rm_save_trajectory_file(rm_robot_handle *handle, const char *trajectory_name);

Jump to rm_robot_handle for details of the structure.

  • Parameter description:
ParameterTypeDescription
handleInputRobotic arm handle.
trajectory_nameInputTrajectory name.
  • Return value:
ParameterTypeDescriptionHandling Suggestions
0intSuccess.-
1intThe controller returns false, indicating that the parameters are sent incorrectly or the robotic arm state is wrong.- Validate JSON Command:
① Enable DEBUG logs for the API to capture the raw JSON data.
② Check JSON syntax: Ensure correct formatting of parentheses, quotes, commas, etc. (You can use a JSON validation tool).
③ Verify against the API documentation that parameter names, data types, and value ranges comply with the specifications.
④ After fixing the issues, resend the command and check if the controller returns a normal status code and business data.
- Check Robot Arm Status:
① Check for real-time error messages in the robot arm controller or logs (such as hardware failures, over-limit conditions), and reset, calibrate, or troubleshoot hardware issues according to the prompts.
② After fixing the issues, resend the command and check if the controller returns a normal status code and business data.
-1intThe data transmission fails, indicating that a problem occurs during the communication.Check Network Connectivity:
Use tools like ping/telnet to check if the communication link with the controller is normal.
-2intThe data reception fails, indicating that a problem occurs during the communication, or the controller has a return timeout.- Check Network Connectivity:
Use tools like ping/telnet to check if the communication link with the controller is normal.
- Verify Version Compatibility:
① Check if the controller firmware version supports the current API functions. For specific version compatibility, refer to the Version Description.
② If the version is too low, upgrade the controller or use an API version that is compatible.
-3intThe return value parse fails, indicating that the received data format is incorrect or incomplete.Verify Version Compatibility:
① Check if the controller firmware version supports the current API functions. For specific version compatibility, refer to the Version Description.
② If the version is too low, upgrade the controller or use an API version that is compatible.
-4intThis interface is not supported by the Gen 3 Controller.-
  • Usage demo

Save the just dragged trajectory as "test".

C
ret = rm_save_trajectory_file(handle,"test");
printf("save trajectory file result : %d\n", ret);