This module can create a cam with which an event is triggered at a cam position. The cam can be pre-controlled for time to compensate for dead times.
In conjunction with the TB_MasterEngine function module, the dead time compensation can also be calculated exactly during the acceleration and braking phases. When using a real axis, only one velocity compensation can be used.
A cam that is triggered based on a (encoder) position is created. The goal is to operate an actuator (with dead time) in such a way that the response occurs exactly at a specified position (di_CamPos). For this purpose, the pre-controlled cam position is determined using the current velocity of the position encoder (di_Vel).
The start signal sets the position di_Pos to di_StartPos and x_Running to TRUE. Thus the module is told where the first target position (di_CamPos) is currently located.
With long deceleration times, the next cam may be set before the current one has been processed. Vertical tubular bag machine example: If the drop time of the product is greater than the cycle time, several drops are found in the drop tube. To determine whether all drops have arrived in the bags, the status of the x_Running output can be tested for being FALSE.
In general, it must be considered that a started cam can no longer be retracted or changed. In the example of the tubular bag machine, this means that a product that has been thrown off can naturally no longer be stopped or braked. In addition, a position that has already been passed can no longer be reached. This would also be the case if the dead time is increased briefly before the cam start OR if the velocity di_Vel is heavily increased. (error i_Error = -2).
For this reason, the following items are to be observed in general:
If the position of a virtual master axis is used, the acceleration is pre-controlled in addition to the velocity. Thus the cam position can also be determined exactly when accelerating and braking.