Description of [robot]_algo.json file

You are currently viewing the documentation for version 1.7.4. To access documentation for other versions, click the "Switch Version" button located in the upper-right corner of the page.

■ To use the latest version, visit the Mech-Mind Download Center to download it.

■ If you're unsure about the version of the product you are using, please contact Mech-Mind Technical Support for assistance.

[robot]_algo.json is a robot configuration file which records the property information of the robot. It defines the robot type, DH parameters, range of motion, home position of joints, rotation of joints, etc.

The code fragment below is extracted from [robot]_algo.json file as an example.

{
    "algo_type": "UR_UR5_Like",
    "robot_type": "UR_16E",
    "dh": [ A, B, D, G, F, H ],
    "shoulder_offset": C,
    "elbow_offset": E,
    "min_limits": [ J1 min, J2 min, J3 min, J4 min, J5 min, J6 min ],
    "max_limits": [ J1 max, J2 max, J3 max, J4 max, J5 max, J6 max ],
    "mastering_joints": [ J1, J2, J3, J4, J5, J6 ],     # Unnecessary
    "axis_flip": "J1J2J3J4J5J6"                         # Unnecessary
}
algo_type

The type of configuration of the robot. The robot models are divided into 13 categories in Mech-Viz V1.6.0. For more information about the robot configuration, please refer to Robot Configurations.

robot_type

The type name of the robot, which should be the same as the folder name of the robot model file, or else the robot model cannot be located.

dh

The DH parameters of the joints of the robot.

minlimits, maxlimits

Defines the minimum and maximum range of motion for each axis.

Except for FANUC and NACHI, the accurate range of motion for each axis can be found in the product specification for robots of most brands.

With this attribute, each joint will be added with two parameters, i.e., the minimum range of motion and the maximum range of motion. This attribute relates to Axis_flip, and the two parameters and their negative/positive values should be reversed under certain circumstances.

mastering_joints

Defines the positions of joints when their rotation angles are 0 degree. When the value of parameters are all set to 0, the robot pose is the same as the one during modeling. For some robots such as KUKA robots of all series, when the value of J2 and J3 are set to 0, its pose is not same as the default home position in Mech-Viz, and therefore the value of J2 and J3 in mastering_joints should be adjusted.

axis_flip

Defines the direction of rotation of the axes. After modeling the robot, please modify this attribute in Mech-Viz if the direction of rotation does not match with that of the real robot. If it does not match, then this parameter needs to be modified.

This attribute will affect other attributes such as minlimits, maxlimits, link3_dynamic_limits, link4_dynamic_limits, etc.


When using a newly created robot model, please make sure that the settings of the following attributes correspond with the real robot.

axis_flip

Check if the rotation of the axes of the real robot corresponds to the settings of this attribute in Mech-Viz.

dh

You can check if the pose of the simulated robot in Mech-Viz corresponds to that of the real robot by using the following two methods.

  • Synchronize the JPs and compare the TCP

  • Synchronize the TCP and compare JPs

    The closer the DH parameters of the real robot are to the theoretical values in the parameter file, the more precise the robot is. An error of less than 1mm is generally considered acceptable.

mastering_joints

Check if the pose of the simulated robot in Mech-Viz corresponds to that of the real robot.

Please pay attention to axis-1, axis-4, and axis-6 while checking.

min_limits/max_limit

Check if the pose of the simulated robot in Mech-Viz corresponds to that of the real robot.

The soft limits of the robot must not exceed its hard limits.

We Value Your Privacy

We use cookies to provide you with the best possible experience on our website. By continuing to use the site, you acknowledge that you agree to the use of cookies. If you decline, a single cookie will be used to ensure you're not tracked or remembered when you visit this website.