Tracking

Tracking is characterized by an axis group (A) that follows with its movement the movement of a single axis or another axis group (B). During the coordinated following A is performing a movement/task relative to the movement of B. The tracking data is a multidimensional source incl. position and orientation. Solutions can include a moving coordinate system or a multidimensional gear functionality. Tracking can be seen as a superposition of two movements, although these movements are independent. One, which is the movement of the product (moving PCS) and the second one, which describes the path of the TCP that would be executed if the product is standing still (Positions have to be defined in PCS). The Position of the PCS and therefore also the movement of the PCS relative to MCS is described by the coordinate transformation MCS to PCS. For tracking the following Function Blocks are defined here: MC_SetDynCoordTransform as a general one, and MC_TrackConveyorBelt plus MC_TrackRotaryTable for specific applications.

Note

The considerations on the limitations of the dynamics or mechanics are implementation specific.

Basic example:

The basic example for the tracking of an axis group and a single axis is conveyor tracking, where the robot picks or places parts on the moving conveyor or is putting some crème on a cake moving on the belt. An example for the tracking of another axes group is having two robots, where robot B is holding a work piece, and robot A is performing some welding on the part at the same time B is moving the work piece (see picture).

../_images/c5d616ea01df1a240a33139000b91ca5

Generally there is no difference if A is tracking a single axis or an axis group, when thinking of a single axis as an axis group having only one axis but also a kinematic (even if it is very simple). Then concepts of the motion planning as well as of programming are the same.

Example:

A second tracking example deals with synchronization of a group and a transportation belt. The group synchronizes to the belt, which is the master. We have a (simple) Cartesian robot, consisting of 3 motors moving 3 axis. Application examples are to pick something from the belt (with a correction in the Z-position), or to put some cream on a cookie that is lying on the belt.

../_images/393d71f201df27f70a3313900078a3a4