Loadsharing
Diese Bibliothek stellt Bausteine zur Verfügung, damit eine Master-Slave-Konfiguration mit einem Mehrfachwicklung Motor gesteuert werden kann.
TB_MasterSlaveControl
Der Baustein hat 2 Funktionen:
1.) Den TB_MasterSlaveInit ansteuern per Array a_MasterSlaveInit, um im richtigen
Moment die MasterSlave Funktion im Drive zu aktivieren / deaktiveren
2.) Abhängig des MasterSlave Masters, den/die MasterSlave Slaves Ein/Auszuschalten
(Hat ein MasterSlave Slave einen Fehler muss das von der Applikationssoftware programmiert
werden, was in diesem Fall geschehen soll)
(s. Detailbeschreibung)
Beschreibungallgemein
Beispielübersichtsbild für 2 Motoren in Master Slave Verschaltung (mit 4fach Mehrfachwicklung):
Der MotionHandler[1] ist die MasterSlave Master.
Auf die Array Nummern bezieht sich der MasterSlaveControl Baustein. In dem unten gezeigten Beispiel ist der a_MotionHandler[5] der MasterSlave Slave.
Der MultiWinding Baustein bezieht sich auch auf diese definierten Array Nummern.
| Motor | Motor 1 | Motor 2 | ||||||
| Winding | M1 W1 | M1 W2 | M1 W3 | M1 W4 | M2 W1 | M2 W2 | M2 W3 | M2 W4 |
| a_MC_Axis_Array[..] => Motion Zuweisung | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| a_MotionHandler[..] => MotionHandler Zuweisung | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| Funktion | Master Slave MASTER | Master Slave SLAVE | ||||||
| w_MaSl_Selection | 0 (Bit 0) | 0 | 0 | 0 | 1 (Bit 4) | 0 | 0 | 0 |
Beschaltungsbeispiel der verschiedenen Bausteine:
MotionHandler Motor 1 (4fach Wicklung)
MotionHandler Motor 2 (4fach Wicklung)
TB_MultiWindingControl:
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
| Bezeichnung: | Datentyp: | Beschreibung: |
|---|---|---|
| x_Enable | BOOL | TRUE: Freigabe des Bausteins |
| x_MaSl_CoupleOut | BOOL | TRUE: Entkoppeln der MasterSlave Slaves |
| w_MaSl_SlaveSelection | WORD | Bitleiste - Definition welcher der angeschlossen MotionHandler ein MasterSlave Slave ist |
| w_MasterStatus | WORD | MasterSlave Master Status |
Ausgänge
| Bezeichnung: | Datentyp: | Beschreibung: |
|---|---|---|
| x_Active | BOOL | TRUE: Baustein ist frei gegeben und aktiv |
| x_MaSlSlaveOn | BOOL | TRUE: MasterSlave Slaves sind eingekoppelt |
| x_Error | BOOL | TRUE: Der Baustein hat einen Fehler erkannt |
| w_ErrorID | WORD | Fehlernummer des Bausteins: 906: MotionHandler MasterSlave Master Fehler 907: MotionHandler MasterSlave Slave Fehler 908: MasterSlave Koppelfehler |
Ein-/Ausgänge
| Bezeichnung: | Datentyp: | Beschreibung: |
|---|---|---|
| a_MasterSlave_Init | TB_MASTER_SLAVE_INIT_TMPL | TorqueSharing Init Array |
| a_MotionHandler | TB_MOTION_HANDLER_TMPL | MotionHandler Array |

TB_MasterSlaveInit
Dieser Baustein dient dazu, die Master Slave Funktion im Drive zu aktivieren.
Der Baustein wird vom TB_MasterSlaveControl per Array angesteuert.
Deswegen muss dieser Baustein mit dem vordefinierten Array a_MasterSlaveInit beschalten werden.
(s. Beschreibung vom 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
| Bezeichnung: | Datentyp: | Beschreibung: |
|---|---|---|
| x_Enable | BOOL | TRUE: Freigabe des Bausteins |
| x_Master | BOOL | TRUE: Master oder Slave (0 = Slave, 1 = Master) |
| x_Couple | BOOL | TRUE: Aktivieren des Kopplungsmodus im Antrieb |
| x_Decouple | BOOL | TRUE: Aktivieren des Entkopplungsmodus im Antrieb |
| x_Invert | BOOL | TRUE: Sollwerteinvertieren - Geschwindigkeit & Strom (Freigabe vor x_Master!) (nur bei BM44 Nutzung) |
Ausgänge
| Bezeichnung: | Datentyp: | Beschreibung: |
|---|---|---|
| x_Active | BOOL | TRUE: Baustein ist frei gegeben und aktiv |
| x_Busy | BOOL | TRUE: Service Daten Kommunikation zum Drive ist aktiv |
| x_Coupled | BOOL | TRUE: MasterSlave Kopplungsfunktion im Drive aktiviert |
| x_Error | BOOL | TRUE: Der Baustein hat einen Fehler erkannt |
| w_ErrorID | WORD | Fehlernummer des Bausteins 90: Servicedaten Fehler 91: Slave Kopplungsfehler 92: Master Kopplungsfehler |
Ein-/Ausgänge
| Bezeichnung: | Datentyp: | Beschreibung: |
|---|---|---|
| _Axis | AXIS_REF | Referenz auf die Achse |

TB_MultiWindingControl
Dieser Baustein schaltet bei einem Mehrfachwicklungsmotor die Slave Wicklungen, abhängig der Master Wicklung (Wicklung 1).
Dies macht der Baustein Über das angeschlossene a_MotionHandler-Array.
Abhängig von i_AxisWinding_1 werden die i_AxisWinding_2 bis 4 geschaltet.
Es wird voraus gsetzt, das die MotionInit Betriebsart der finalen Betriebsart entspricht.
Der Baustein schaltet keine Betriebsarten.
Die Nummern an den i_AxisWinding-Eingängen, entsprechen der Array Nummern des MotionHandler-Arrays,
so wie die realen Wicklungen angesteuert werden.
Für das Loadsharing innerhalb der Wicklungen ist die EtherCat Querkommunikation vorgesehen.
Dabei wird der Stromsollwert von der Master Wicklung auf die Slave Wicklungen geschickt,
sowie der Lageistwert als Feldbusgeber an die Slave Wicklungen weiter verteilt.
Für die Konfiguration in ProMaster muss die Zentrale Applikation kontaktiert werden.
Alternative kann das auch Über Analogverdrahtung (Strom) und Splittkabel (Geberlagewert) geschehen, oder per SIE Modul.
Eine Beispielbeschaltung kann hier entnommen werden.
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
| Bezeichnung: | Datentyp: | Beschreibung: |
|---|---|---|
| x_Enable | BOOL | TRUE: Freigabe des Bausteins |
| ui_NrWindings | UINT | Anzahl der Wicklungen |
| i_AxisWinding_1 | INT | Master-Achse (Wicklung 1) |
| i_AxisWinding_2 | INT | Slave-Achse (Wicklung 2) |
| i_AxisWinding_3 | INT | Slave-Achse (Wicklung 3) |
| i_AxisWinding_4 | INT | Slave-Achse (Wicklung 4) |
Ausgänge
| Bezeichnung: | Datentyp: | Beschreibung: |
|---|---|---|
| x_Active | BOOL | TRUE: Baustein ist frei gegeben und aktiv |
| x_SlavesOn | BOOL | TRUE: Alle verbundenen Slaves sind in 4 |
| i_State | INT | Statemachine States (für Debugging Zwecke) |
| x_Error | BOOL | TRUE: Der Baustein hat einen Fehler erkannt |
| w_ErrorID | WORD | Fehlernummer des Bausteins 906: MultiWinding Master Fehler 907: MultiWinding Slave Fehler |
Ein-/Ausgänge
| Bezeichnung: | Datentyp: | Beschreibung: |
|---|---|---|
| a_MotionHandler | TB_MOTION_HANDLER_TMPL | MotionHandler Array |
