vcMotionPath

vcMotionPath is a wrapper class for One Way Path and Two Way Path behaviors.

Inherits: vcBehaviour, vcFlow, vcContainer

Properties

Name Type Access Description
Acceleration Real RW Defines rate of acceleration (mm/s^2) for components moving on path.

If zero, acceleration is not calculated.

Accumulate Boolean RW Turns on/off pile-up of components moving on path.

If True, components on the path stop moving when they encounter a blocked component. If False, components on the path stop moving when a component is blocked from exiting the path.

Deceleration Real RW Defines rate of deceleration (mm/s^2) for components moving on path.

If zero, deceleration is not calculated.

DetailCurveMotion Boolean RW Turns on/off detailed movement of components to and from path, for example when moving from linear path to curved path.

If True, bound box of component is used to avoid intersecting with other components. This might create a gap between components, for example components that are cylindrical. This also decreases simulation performance.

You can disable DetailCurveMotion if components are cylindrical or if a slight intersection between components when transferring from linear to curved path is not a concern.

Direction Enumeration RW Defines the direction components move on path, but only if the path supports two or more directions.

See Conveyor Direction Constants for more information.

FastScheduling Boolean RW Turns on/off the optimization of moving components on the path.

If True, the path limits the amount of generated events, thereby improving simulation performance.

If False, the path moves components at shorter increments, thereby increasing the amount of events and decreasing simulation performance.

Interpolation Enumeration RW Defines mode used by path to interpolate its waypoints set in Path property.

See Conveyor Interpolation Mode Constants for more information.

Path List of vcFeature RW Defines an ordered list of Frame features referenced as waypoints of path.

If set, path is calculated based on its interpolation mode.

PathAxis Enumeration RW Defines mode for calculating how much space a component occupies on path, thereby allowing the path to utilize its space and determine if one or more components are blocked if SpaceUtilization property is set to True.

See Path Axis Mode Constants for more information.

PathLength Real R Gets the length of path. That is, the distance from first to last waypoint along the path.
RetainOffset Boolean RW Defines if a component entering, placed or grabbed by the path is snapped to and aligned with path's axis.

If True, a component retains its offset while moving on path. If False, component is snapped to nearest point on path and its origin is aligned with calculated path.

SegmentSize Real RW Defines the size of segments when path uses segmentation to move components to and from different sections of the path.

If value is greater than zero, the number of path segments is calculated in order to determine the capacity of each segment based on total capacity of path. Therefore, components move on path based on the capacity of a proceeding segment.

Sensors List of vcBehaviour RW List of sensors connected to path, which must be either component path or process point type sensors.
SpaceUtilization Boolean RW Defines if components accumulating on path are kept separate from one another and how new components enter path.

If False, components may overlap one another and/or pile up side by side, which might be useful if RetainOffset is set to True.

Speed Real RW Defines the speed (mm/s) of path.

Notes:

  • Speed, Acceleration and Deceleration properties can be overridden if component properties PathVelocity, PathAcceleration and PathDeceleration have values greater than zero. In those cases, component property values will be used instead to calculate component movement on a path. See vcComponent for more information.
  • Accumulation mode only determines what happens when a component is blocked from exiting the end of the path. If a component is explicitly blocked using stopMovement() method, preceding components are accumulated regardless of set value for Accumulate property.

Events

The following events can be assigned callback functions to handle the flow of components moving in and out of containers as well as changes to a component's motion along a path.

Name Parameters Description
OnMotionChanged vcComponent component, Enumeration state Triggered when the state of a component's motion changes on a path.

If the state of a path is changed so that it affects the motion of all components on that path, this event is called for each of those components.

See Path Motion State Constants for more information.

OnPhysicalTransition vcContainer container, vcComponent component, Boolean arrive_leave Triggered when either a) the leading edge of a component enters path or b) the trailing edge of a component exits path.

The Container argument is the current container of the component given in the Component argument, which may not be the container of component at the time of the call since the component may have transitioned elsewhere.

The arrive_leave argument is True if component is entering path; otherwise False means a component is exiting path.