About time estimation
The Time Estimation module is designed to provide time estimates for robotic operations in Robotmaster. Time estimation includes in-process time, out-of-process time, and total time by setup, program, robot, and operation.
Time estimates take into account programmed paths, move types, feedrates, joint rates, and robot kinematics to provide approximate operational times for programs.
Time Estimation in Robotmaster is only an estimate and may not reflect real-world times due to various factors. For instance, time estimates do not take acceleration and deceleration into account, all speeds are assumed to be achieved instantaneously.
The time estimation report
The time estimation report is available in any part programming session.
Run the time estimation report
Make sure to solve all robotic errors in the session.
With an operation assigned on the device side, select Calculate. A program must be calculated in order to run the time estimation report.
Select the Time Estimation button.
The report displays estimated times for the session, color-coded with out-of-process time in yellow, in-process time in blue, and total time in white.
Out of process time
Time spent by moves outside of process. This includes:
All joint moves (JC and JJ move types) in regular operations.
All transition operations, regardless of move type. This includes home, manual, graphical, and waypoint transitions.
All safe approach and safe retract moves, regardless of move type.
Note that the time to move between Home and the first operation is included in the out-of-process time for the first operation.
In process time
The total time spent by all constraint moves (LC or CC move types) within the process.
Total time
Sum of in-process time and out-of-process time. Fractional times which may appear as zero in the report are still maintained to their full precision and included in total times.
Additional notes
Setup time is the sum of all Program times.
For multi-robot cells, Program time is the longest Robot time within the program.
Robot time is the sum of all operations, transitions, and so on for the robot in that specific program.
Time estimation inputs
Several inputs are used to calculate the estimated in-process and out-of-process times.
Linear moves
Linear speed (feedrate) defined in the operation for linear and circular (LC and CC) moves is used for estimated time calculations.
Angular speed of the TCP is not defined in the operation, but may be specified as a fallback value in a Time estimation override (discussed below).
If a specific Linear or Angular speed is entered in the Point List (device side > panel on the right > Edit pose), that value will be used instead of the speed from the operation (defined on the task side) or Time estimation override.
If a Time estimation override for linear or angular speed is applied on an operation and no other speed is specified or the speed is zero, that will be used as a fallback value.
Joint moves
Rapid joint moves are accounted for in time estimates, based on a percentage of maximum joint speed of the robot. Each joint J1–J6 has a Maximum joint speed in °/s defined in the robot cell. A percentage of that speed is used for joint speed calculations, as defined in the Time estimation override (discussed below). This percentage should match what is set in the robot controller, in order to get more accurate times in Robotmaster.
External axes
External rail axis and rotary axis motion is taken into account for time estimates.
Speed limits
A robot has a Maximum linear speed in mm/s and Maximum angular speed in °/s defined in the robot cell. Any linear or angular speeds that would exceed the limits will be capped to stay at or below the maximum speed.
Overrides for time estimation
For operations where either no linear or angular speed is set or the speed is zero, fallback values can be specified for time estimation purposes. Note that time estimation fallback values are not used in the point list or in robot code.
On the device side, time estimation override / fallback values are available for:
Cell
Setup
Program
Robot
Home
Operations
Transitions
The values follow a hierarchy. Any item will inherit an override value from its parent. If an override value is specified for a child, that will take precendence over any inherited value from parent nodes.
Fallback speed
Linear speed
Fallback linear speed value of the TCP in mm/s for all points that do not have a speed defined or have a speed of zero. This value must be greater than zero.
Angular speed
Fallback angular speed value of the TCP in °/s for all points that do not have a speed defined or have a speed of zero. This value must be greater than zero. For Angular speed, which is not specified in the operation, this serves as the “default” angular speed used in time estimation calculations.
Joint rate
Joint percentage
Joint percentage rate of the maximum manipulator joint speed. Maximum speeds for each joint are set in the robot cell in Robotmaster. In order for time estimation to be accurate, this value should correspond to what is set in the robot controller for percentage of maximum joint speed.
The percentage entered here is applied to each joint to get the joint speeds used in time estimation. For example, given the maximum joint speeds listed, a value of 30% would have this effect:
Maximum Joint Speed (°/s) | Joint Rate | Joint Speed Used in Time Estimation (°/s) | |
---|---|---|---|
J1 | 150 | 30% | 45 |
J2 | 150 | 30% | 45 |
J3 | 175 | 30% | 52.5 |
J4 | 250 | 30% | 75 |
J5 | 250 | 30% | 75 |
J6 | 350 | 30% | 105 |
Remove override
In the Time estimation override panel, you can remove any override from a cell, setup, program, robot program, or operation by selecting Remove override.
Associated warnings
Higher linear feedrate than maximum linear feedrate detected. They are capped to maximum linear feedrate.
Feedrate that would yield higher joint rate than the maximum joint rate is detected for Jn. Feedrate is capped due to maximum joint rate.
Time estimation is not applied on operations that have robotic errors.
Time estimation is not applied on operations that have not been calculated.