Optimization allows for the dynamic adjustment of tool orientation and other TCP controls to help avoid kinematic errors and collisions throughout the duration of an operation.
Navigation
Optimization is accessible through the operation level settings on the device side of Robotmaster.
Feature overview
When more standard path editing techniques, and Tool orientation settings aren’t able to fix kinematic errors or collisions, the optimization map allows the user to dynamically adjust values throughout an operation, instead of selecting one constant value for the entirety. Through the use of the map settings, advanced layers, and path planning, the optimization map gives a visual two dimensional map of valid values.
Understanding the map
Tabbed system - At the top of the map, there can be multiple tabs denoting different enabled optimization maps.
Pin button - At the top right of the map is a pin button. Selecting this allows the optimization map to be undocked so that it and the robot can be viewed simultaneously.
X-Axis - The points of the operation.
Y-Axis - The value that is being optimized. (Tool Orientation in this case)
Colored sections- Depending on selected error types in Map settings (see below), colors represent errors at the intersection of Y axis value and X axis point.
Optimization line - Spanning from the left side of the map to the right is the optimization line. This line can be adjusted, and control points added, to attempt to avoid all visible error types.
Map settings
Open map settings
The gear button opens up map settings.
Generate map - determines when the optimization map will be drawn.
Always - Will always draw the map when Generate map is pressed.
On Error - Will only draw the map if there are detected errors.
Never - Will not generate a map.
Calculate conditioning map - Determines whether the conditional map layer is calculated. This can be a heavy calculation feature, so is off by default. See the advanced layers section of this article for more information on conditional mapping.
Vertical snap increments - Allows automatic snapping of the path line to certain increments of the vertical axis.
Additional maps - Allows for the addition of other optimization maps. Click the plus button to add a new map.
Visualized error types
Singularity - The robot will encounter a singularity in this orientation.
Out of reach - The desired TCP location is out of reach of the robot.
Joint limit - The robot joint limits do not allow the robot to reach the desired location.
Overtravel - The robot has to move too much to be able to maintain TCP location/orientation.
Wrist flip - The wrist of the robot needs to flip to maintain TCP location/orientation.
Collision - The robot or tooling will collide with something in the cell.
Vertical resolution
Determines the vertical resolution of the optimization map. This value is adjustable to allow for balancing of calculation time versus map detail.
Horizontal resolution
Determines the horizontal resolution of the optimization map. This value is adjustable to allow for balancing of calculation time versus map detail.
Path planning
Path planning allows the user to select an automatically calculated path through the optimization map, if there is a valid path available.
Enable automatic path planning
This setting enables or disables the calculation of automatic path planning. Disable this to save processing time.
Selected channel
When calculated, this list populates with all possible channels for the path to follow.
When selecting a channel, the map will update with a preview of the automatic path. Selecting Accept path will replace the current path with the automatic path.
Automatic path controls
Error clearance - This slider controls how far away from errors the automatic path will attempt to be.
Smoothness - This slider controls how smooth the path will be.
Low Error clearance
Low Smoothness
High Error clearance
High Smoothness
Advanced path planning setting
Clicking on the gear icon next to Path planning will bring up the advanced path planning setting window.
Planning criteria
Clicking on the plus button allows for the selection of different joints and other path criteria to modify.
Criteria
Minimize Changes - Minimizes the value changes in the selected joint.
Minimize distance to reference - Minimizes the difference of the selected joint’s value to a reference value.
Reference - If applicable, the reference value the joint value is measured against.
Relative weight (0-10) - How heavily the criteria will be weighted compared to other criteria and settings.
Advanced layers
Advanced layers apply an additional color gradient over the existing optimization map, helping to visualize the specified joint or kinematic configuration. Hovering over the optimization map will show that joint’s value at the mouse position.
Display on overtravel
Determines whether the advanced layers are displayed or not when an overtravel is detected.
Layer
The advanced map layer that will be displayed on the optimization map. This can be any of the robot’s joints, as well as the robot elbow and conditioning values.
Limits and observation values
Limits - These values are taken directly from the robot’s joint limits defined by the cell configuration.
Lower observation value - The minimum value of the specified joint that the color gradient will portray on the optimization map. This minimum value will be displayed as blue.
Upper observation value - The maximum value of the specified joint that the color gradient will portray on the optimization map. This maximum value will be displayed as red.