The following pages provide detailed information on the properties and methods of the reference frame class, RefFrame. If one or more Location Objects are defined with respect to a RefFrame Object, when the position and/or orientation of the reference frame are altered, the position and orientation of all associated Location Objects are automatically adjusted as well.
RefFrame Objects are very useful when picking up or placing several parts that are at fixed positions relative to a base plate or when accessing pallets that have parts arranged in a rectangular grid or when the robot is to operate on a conveyor belt. The assembly of a printed circuit board is a common example of the first situation. When a PCB enters into a machine for mounting electronic components, the position and orientation of the PCB is first accurately determined, typically using a vision system. The reference frame that represents the PCB is then updated and all of the positions and orientations of the components to be placed are automatically adjusted. The use of robots in the laboratory automation industry provides a good example of the use of pallet reference frames. In this case, samples to be tested are placed on a tray and arranged in a rectangular grid pattern. After the tray is located and its associated reference frame updated, the RefFrame Class provides a simple means for stepping from sample to sample. Finally, conveyor reference frames are utilized to implement the GPL conveyor tracking capability. This feature allows locations to be specified relative to a moving conveyor line. This capability is important in the packaging industry where parts are often transported on conveyors.
To allow different types of static and dynamic reference frames to be represented, the RefFrame Object includes a Type property. At present, only basic, pallet and conveyor reference frames are supported. In the future, additional types of reference frames may be added.
In general, each type of reference frame only makes use of a subset of the properties and methods of the RefFrame Class. The tables below summarize the properties and methods utilized for each type of reference frame.
Basic Reference Frame | ||
---|---|---|
Member |
Type |
Description |
Property |
Set to 0 to indicate a basic reference frame. |
|
Property |
Loc.Pos is set equal to the position and orientation of the reference frame by a GPL procedure. |
|
Method |
Returns the absolute (“total”) position and orientation for any type of reference frame object. |
|
Method |
Returns the position for any type of reference frame while ignoring any further reference frames. |
|
Property |
Sets and gets a String value not used by GPL. Available for general use by applications. |
Pallet Reference Frame | ||
---|---|---|
Member |
Type |
Description |
Property |
Set to 1 to indicate a pallet reference frame. |
|
Property |
Loc.X, Y and Z define the position of the first row, column and layer. The orientation of the X, Y, and Z axes of Loc define the direction for each row, column, and layer respectively. |
|
Method |
Returns the absolute (“total”) position and orientation for any type of reference frame object. |
|
Method |
Returns the position for any type of reference frame while ignoring any further reference frames. |
|
Property |
Sets and gets a String value not used by GPL. Available for general use by applications. |
|
Property |
Sets and gets the index for the next position along the pallet row, column, or layer (1 to n). |
|
Property |
Sets and gets the maximum position index along the pallet row, column, or layer (1 to n). |
|
Method |
Advances to the next pallet position. |
|
Property |
Sets and gets the parameter that specifies the order in which PlalletNextPos indexes along the row, column, and layer indices. |
|
Property |
Sets and gets the step size for advancing along each row, column, or layer. |
|
Method |
Sets the next pallet position row, column, and layer indices in a single instruction. |
Conveyor Reference Frame | ||
---|---|---|
Member |
Type |
Description |
Property |
Set to 2 to indicate a conveyor reference frame. |
|
Property |
Not used. Conveyor reference frames cannot be defined with respect to any other reference frame. |
|
Method |
Returns the absolute (“total”) position and orientation for any type of reference frame object. |
|
Method |
Returns the position of the "nominal" transformation for the associated conveyor robot. |
|
Property |
Sets and gets a String value not used by GPL. Available for general use by applications. |
|
Property |
Sets or gets the property that specifies the zero position of the conveyor belt's encoder. |
|
Property |
Sets or gets the property that specifies the robot module that is interfaced to the belt encoder and contains the data that defines the conveyor. |