Location Class Summary

The following pages provide detailed information on the properties and methods of the Location Class. This class and its Location Object instances provide the fundamental means for representing robot and part positions and orientations within GPL. Location Objects and Profile Objects (which define motion performance parameters) are the standard arguments required by most Move methods for defining how to drive the robot along a path to a destination specified by a Location.

Each Location Object contains data that defines: a Type indicator; a position and orientation; clearance information that is used to safely approach the Location; and robot configuration specific information that pertains to the target robot.

There are two Type’s of Location Objects: Angles and Cartesian. The Angles Locations store robot positions as an array of axes positions. When we refer to the “position” or “total position” of an Angles Location, we are referring to the array of axes positions. The more general Type is called a Cartesian Location. Cartesian Locations contain a Cartesian position and orientation that is displayed as an X, Y, Z displacement and a set of three Euler Angles: Yaw, Pitch, and Roll. In addition to this position and orientation, each Cartesian Location contains an optional pointer to a reference frame object. The X, Y, Z, Yaw, Pitch, and Roll values define the Location’s “position with respect to the reference frame” (PosWrtRef). When we refer to the “position” or “total position” of a Cartesian Location, we are discussing the combined effect of the “position with respect to the reference frame” and any specified reference frames.

Since flexible automation must alter a robot’s actions in order to accommodate to variations in a material handling, assembly or other type of operation, extensive methods are provided for mathematically manipulating the position and orientation of Locations. The table below summarizes the properties and methods that are described in greater detail in the following sections.

Member Type Description

location_obj.Angle

Property

Sets and gets a single axis position for an Angles Location.

location_obj.Angles

Method

Changes all of the axes positions values in an Angles Location.

location_obj.Clone

Method

Returns a copy of the location_obj.

location_obj.Config

Property

Sets and gets the bit flags that specify special robot specific location attributes.

location_obj.ConveyorLimit

Method

Returns the distance that a Location, which is defined relative to a conveyor reference frame, is from the operating limits of the conveyor.

Location.Distance

Method

Returns the distance between the XYZ positions of two Cartesian Locations.

location_obj.Here

Method

Modifies the “total position” of the location_obj to be equal to the current location of a robot.

location_obj.Here3

Method

Defines the "total position" of location_obj based upon the XYZ coordinates of three specified locations.

location_obj.Inverse

Method

Returns the inverse of the “total position” of the Cartesian location_obj.

location_obj.Kinesol

Method

Returns a Cartesian Location equivalent to an Angles Location for a specific kinematic model or vise versa.

location_obj.Mul

Method

Returns the result of combining the “total position” of location_obj with the “total position” of another Cartesian Location.

location_obj.Normalize

Method

Corrects the value of the PosWrtRef of a Cartesian Location for any mathematical inconsistencies in the value.

location_obj.Pitch

Property

Sets and gets the Pitch angle of the PosWrtRef of a Cartesian Location.

location_obj.Pos

Property

Sets and gets the “total position” of the location_obj.

location_obj.PosWrtRef

Property

Sets and gets the PosWrtRef of a Cartesian Location.

location_obj.RefFrame

Property

Sets and gets a pointer to the reference frame object that the location_object is defined relative to.

location_obj.Roll

Property

Sets and gets the Roll angle of the PosWrtRef of a Cartesian Location.

location_obj.Text

Property

Sets and gets a String value not used by GPL. Available for general use by applications.

location_obj.Type

Property

Sets and gets the Type specification.

location_obj.X

Property

Sets and gets the X position value of the PosWrtRef of a Cartesian Location.

location_obj.XYZ

Method

Changes the X, Y, Z, Yaw, Pitch, and Roll values of the PosWrtRef of a Cartesian Location.

location_obj.XYZInc

Method

Increments the X, Y, and Z values of the PosWrtRef of a Cartesian Location.

Location.XYZValue

Method

Returns a Cartesian Location with a "total position" equal to specified X, Y, Z, Yaw, Pitch, and Roll coordinates.

location_obj.Y

Property

Sets and gets the Y position value of the PosWrtRef of a Cartesian Location.

location_obj.Yaw

Property

Sets and gets the Yaw angle of the PosWrtRef of a Cartesian Location.

location_obj.Z

Property

Sets and gets the Z position value of the PosWrtRef of a Cartesian Location.

location_obj.ZClearance

Property

Sets and gets the distance along the Z-axis that defines the safe approach position to the Location.

location_obj.ZWorld

Property

Sets and gets the flag that indicates if the approach distance is measured along the Tool or World Z coordinate axis.