Loadsharing
This library provides functions to take the control about a master and slave configuration with multi winding motors.
TB_MasterSlaveControl
The function block has 2 functions:
1) To control the TB_MasterSlaveInit via array a_MasterSlaveInit, in order to
activate / deactivate the the right moment to activate / deactivate the MasterSlave function in the drive.
2) Depending on the MasterSlave master, switch the MasterSlave slave(s) on/off
(if a MasterSlave slave has an error, this must be programmed by the application software,
which should be done in this case).
(see detailed description)
Empfohlene Task: Cyclic / Event
Verwendete Bibliotheken: BM_TYPES_40bd04 oder höher MOTION_TYPES_40bd11 oder höher MOTION_CONTROL_40bd11 oder höher TECH_TYPES_40bd13 oder höher TECH_FB_STRUCT_40bd02 oder höher
Eingänge
| Marking: | Data type: | Description: |
|---|---|---|
| x_Enable | BOOL | TRUE: Release of the function block. |
| x_MaSl_CoupleOut | BOOL | Decoupling the MasterSlave Slaves |
| w_MaSl_SlaveSelection | WORD | Definition of which of the connected MotionHandlers is a MasterSlave Slave |
| w_MasterStatus | WORD | MasterSlave Master Status |
Ausgänge
| Marking: | Data type: | Description: |
|---|---|---|
| x_Active | BOOL | TRUE: The function block is enabled and active |
| x_MaSlSlaveOn | BOOL | TRUE: MasterSlave Slaves are coupled in |
| x_Error | BOOL | TRUE: The function block has detected an error |
| w_ErrorID | WORD | Error number of the function block: 906: MotionHandler MasterSlave Master error 907: MotionHandler MasterSlave Slave error 908: MasterSlave coupling error |
Ein-/Ausgänge
| Marking: | Data type: | Description: |
|---|---|---|
| a_MasterSlave_Init | TB_MASTER_SLAVE_INIT_TMPL | TorqueSharing Init Array |
| a_MotionHandler | TB_MOTION_HANDLER_TMPL | Drivehandler Array |

TB_MasterSlaveControl
The function block has 2 functions:
1) To control the TB_MasterSlaveInit via array a_MasterSlaveInit, in order to
activate / deactivate the the right moment to activate / deactivate the MasterSlave function in the drive.
2) Depending on the MasterSlave master, switch the MasterSlave slave(s) on/off
(if a MasterSlave slave has an error, this must be programmed by the application software,
which should be done in this case).
(see detailed description)
Empfohlene Task: Cyclic / Event
Verwendete Bibliotheken: BM_TYPES_40bd04 oder höher MOTION_TYPES_40bd11 oder höher MOTION_CONTROL_40bd11 oder höher TECH_TYPES_40bd13 oder höher TECH_FB_STRUCT_40bd02 oder höher
Eingänge
| Marking: | Data type: | Description: |
|---|---|---|
| x_Enable | BOOL | TRUE: Release of the function block. |
| x_MaSl_CoupleOut | BOOL | Decoupling the MasterSlave Slaves |
| w_MaSl_SlaveSelection | WORD | Definition of which of the connected MotionHandlers is a MasterSlave Slave |
| w_MasterStatus | WORD | MasterSlave Master Status |
Ausgänge
| Marking: | Data type: | Description: |
|---|---|---|
| x_Active | BOOL | TRUE: The function block is enabled and active |
| x_MaSlSlaveOn | BOOL | TRUE: MasterSlave Slaves are coupled in |
| x_Error | BOOL | TRUE: The function block has detected an error |
| w_ErrorID | WORD | Error number of the function block: 906: MotionHandler MasterSlave Master error 907: MotionHandler MasterSlave Slave error 908: MasterSlave coupling error |
Ein-/Ausgänge
| Marking: | Data type: | Description: |
|---|---|---|
| a_MasterSlave_Init | TB_MASTER_SLAVE_INIT_TMPL | TorqueSharing Init Array |
| a_MotionHandler | TB_MOTION_HANDLER_TMPL | Drivehandler Array |

TB_MasterSlaveInit
This function block is used to activate the master slave function in the drive.
The function block is controlled by TB_MasterSlaveControl via array.
Therefore, this function block must be connected with the predefined array a_MasterSlaveInit.
(see description of TB_MasterSlaveControl).
Empfohlene Task: Cyclic / Event
Verwendete Bibliotheken: BM_TYPES_40bd04 oder höher MOTION_TYPES_40bd11 oder höher MOTION_CONTROL_40bd11 oder höher TECH_TYPES_40bd13 oder höher TECH_FB_STRUCT_40bd02 oder höher
Eingänge
| Marking: | Data type: | Description: |
|---|---|---|
| x_Enable | BOOL | TRUE: Release of the function block. |
| x_Master | BOOL | TRUE: Master or Slave (0 = Slave, 1 = Master) |
| x_Couple | BOOL | TRUE: Activate Coupling Mode in Drive |
| x_Decouple | BOOL | TRUE: Activate Decouple Mode in Drive |
| x_Invert | BOOL | TRUE: Invert SetValue speed & current (Enable before x_Master) |
Ausgänge
| Marking: | Data type: | Description: |
|---|---|---|
| x_Active | BOOL | TRUE: The function block is enabled and active |
| x_Busy | BOOL | TRUE: Service data communication to the drive is active |
| x_Coupling_Active | BOOL | TRUE: MasterSlave coupling function activated in the drive |
| x_Error | BOOL | TRUE: The function block has detected an error |
| w_ErrorID | WORD | Error number of the function block 90: Service data error 91: Slave coupling error 92: Master coupling error |
Ein-/Ausgänge
| Marking: | Data type: | Description: |
|---|---|---|
| _Axis | AXIS_REF | Axis reference |

TB_MasterSlaveInit
This function block is used to activate the master slave function in the drive.
The function block is controlled by TB_MasterSlaveControl via array.
Therefore, this function block must be connected with the predefined array a_MasterSlaveInit.
(see description of TB_MasterSlaveControl).
Empfohlene Task: Cyclic / Event
Verwendete Bibliotheken: BM_TYPES_40bd04 oder höher MOTION_TYPES_40bd11 oder höher MOTION_CONTROL_40bd11 oder höher TECH_TYPES_40bd13 oder höher TECH_FB_STRUCT_40bd02 oder höher
Eingänge
| Marking: | Data type: | Description: |
|---|---|---|
| x_Enable | BOOL | TRUE: Release of the function block. |
| x_Master | BOOL | TRUE: Master or Slave (0 = Slave, 1 = Master) |
| x_Couple | BOOL | TRUE: Activate Coupling Mode in Drive |
| x_Decouple | BOOL | TRUE: Activate Decouple Mode in Drive |
| x_Invert | BOOL | TRUE: Invert SetValue speed & current (Enable before x_Master) |
Ausgänge
| Marking: | Data type: | Description: |
|---|---|---|
| x_Active | BOOL | TRUE: The function block is enabled and active |
| x_Busy | BOOL | TRUE: Service data communication to the drive is active |
| x_Coupling_Active | BOOL | TRUE: MasterSlave coupling function activated in the drive |
| x_Error | BOOL | TRUE: The function block has detected an error |
| w_ErrorID | WORD | Error number of the function block 90: Service data error 91: Slave coupling error 92: Master coupling error |
Ein-/Ausgänge
| Marking: | Data type: | Description: |
|---|---|---|
| _Axis | AXIS_REF | Axis reference |

TB_MultiWindingControl
This function block switches the slave windings of a multi-winding motor depending on the master winding (winding 1).
The function block does this via the connected a_MotionHandler array.
Depending on i_AxisWinding_1, i_AxisWinding_2 to 4 are switched.
It is assumed that the MotionInit operating mode corresponds to the final operating mode.
The function block does not switch any operating modes.
The numbers at the i_AxisWinding inputs correspond to the array numbers of the MotionHandler array,
as the real windings are controlled.
EtherCat cross communication is provided for load sharing within the windings.
The current setpoint is sent from the master winding to the slave windings,
and the actual position value is distributed to the slave windings as a fieldbus encoder.
For configuration in ProMaster, the central application must be contacted.
Alternatively, this can also be done via analogue wiring (current) and split cable (encoder position value), or via SIE module.
An circuit example can be found here.
Empfohlene Task: Cyclic / Event
Verwendete Bibliotheken: BM_TYPES_40bd04 oder höher MOTION_TYPES_40bd11 oder höher MOTION_CONTROL_40bd11 oder höher TECH_TYPES_40bd13 oder höher TECH_FB_STRUCT_40bd02 oder höher
Eingänge
| Marking: | Data type: | Description: |
|---|---|---|
| x_Enable | BOOL | TRUE: Release of the function block |
| ui_NrWindings | UINT | Number of Windings |
| i_AxisWinding_1 | INT | Master Axis (Winding 1) |
| i_AxisWinding_2 | INT | Slave Axis (Winding 2) |
| i_AxisWinding_3 | INT | Slave Axis (Winding 3) |
| i_AxisWinding_4 | INT | Slave Axis (Winding 4) |
Ausgänge
| Marking: | Data type: | Description: |
|---|---|---|
| x_Active | BOOL | TRUE: The function block is enabled and active |
| x_SlavesOn | BOOL | TRUE: All connected slaves are in 4 |
| i_State | INT | Statemachine States (for debugging purposes) |
| x_Error | BOOL | TRUE: The function block has detected an error |
| w_ErrorID | WORD | Error number of the function block: 906: MultiWinding Master error 907: MultiWinding Slave Error |
Ein-/Ausgänge
| Marking: | Data type: | Description: |
|---|---|---|
| a_MotionHandler | TB_MOTION_HANDLER_TMPL | Drivehandler Array |

TB_MultiWindingControl
This function block switches the slave windings of a multi-winding motor depending on the master winding (winding 1).
The function block does this via the connected a_MotionHandler array.
Depending on i_AxisWinding_1, i_AxisWinding_2 to 4 are switched.
It is assumed that the MotionInit operating mode corresponds to the final operating mode.
The function block does not switch any operating modes.
The numbers at the i_AxisWinding inputs correspond to the array numbers of the MotionHandler array,
as the real windings are controlled.
EtherCat cross communication is provided for load sharing within the windings.
The current setpoint is sent from the master winding to the slave windings,
and the actual position value is distributed to the slave windings as a fieldbus encoder.
For configuration in ProMaster, the central application must be contacted.
Alternatively, this can also be done via analogue wiring (current) and split cable (encoder position value), or via SIE module.
An circuit example can be found here.
Empfohlene Task: Cyclic / Event
Verwendete Bibliotheken: BM_TYPES_40bd04 oder höher MOTION_TYPES_40bd11 oder höher MOTION_CONTROL_40bd11 oder höher TECH_TYPES_40bd13 oder höher TECH_FB_STRUCT_40bd02 oder höher
Eingänge
| Marking: | Data type: | Description: |
|---|---|---|
| x_Enable | BOOL | TRUE: Release of the function block |
| ui_NrWindings | UINT | Number of Windings |
| i_AxisWinding_1 | INT | Master Axis (Winding 1) |
| i_AxisWinding_2 | INT | Slave Axis (Winding 2) |
| i_AxisWinding_3 | INT | Slave Axis (Winding 3) |
| i_AxisWinding_4 | INT | Slave Axis (Winding 4) |
Ausgänge
| Marking: | Data type: | Description: |
|---|---|---|
| x_Active | BOOL | TRUE: The function block is enabled and active |
| x_SlavesOn | BOOL | TRUE: All connected slaves are in 4 |
| i_State | INT | Statemachine States (for debugging purposes) |
| x_Error | BOOL | TRUE: The function block has detected an error |
| w_ErrorID | WORD | Error number of the function block: 906: MultiWinding Master error 907: MultiWinding Slave Error |
Ein-/Ausgänge
| Marking: | Data type: | Description: |
|---|---|---|
| a_MotionHandler | TB_MOTION_HANDLER_TMPL | Drivehandler Array |
