Setting Outputs

Path interpolation can be configured to set output bits on or off at certain timings along the path trajectory. Outputs can be set maxPathInterpolateOutputs times in each path interpolation command.

The timing at which the output is set can be specified in one of several ways. The available types are defined in the PathIntplOutputType enumerator.

For the RemainingTime, CompletedTime, RemainingDist, and CompletedDist types, the time or distance can span multiple segments. For example, consider a path with 100 points that take 10ms each to traverse. If the output type is set to the CompletedTime condition with a trigger value of 50ms and a point of 20, then the output will be set at the timing that point 25 starts executing.

If auto smoothing is enabled, then the added circular segments may change the time and distance between points. If a circular segment is added after a point, the timing that the point ends becomes earlier. If a circular segment is added before a point, the timing that the point starts becomes later. This is illustrated in the following figures:

Before Auto Smoothing:

../_images/WMXDOC_FUNC_PTH_image14.png

After Auto Smoothing:

../_images/WMXDOC_FUNC_PTH_image15.png

When calculating the time and distance across multiple segments, the time and distance of the inserted circular segments are also counted.

Output conditions are evaluated only after all previous outputs have been triggered. Outputs must be defined in the order that they will be triggered. For example, if output[0], output[1], and output[2] are defined, then output[2] will be set only after output[0] and output[1] have both been set, even if the condition for output[2] is satisfied earlier than output[0] or output[1].

If multiple consecutive outputs have conditions that would trigger at the same timing, then the outputs will always be set during the same communication cycle. For example, if the same condition is specified for output[0] and output[1], the two outputs will be be set in the same communication cycle.

At the end of the path interpolation, all remaining outputs that have not triggered yet are triggered.