Aktive Schwingungsdämpfung mit Abaqus: Field-Variables und User-Subroutines

Veröffentlicht 26.07.2022

Viele Brücken aus Stahl werden von Fußgängern oder Autos leicht zu Schwingungen angeregt. Dies liegt häufig an dem meist geringen Gewicht, bedingt durch die vielfach filigrane Bauweise. Brücken mit Eigenfrequenzen im Bereich von Anregungsfrequenzen können deren Verkehrssicherheit/Gebrauchstauglichkeit deutlich herabsetzen. Soll eine filigrane Bauweise erhalten bleiben, kann die Gebrauchstauglichkeit in vielen Fällen mit Schwingungsdämpfern wiederhergestellt werden. Es gibt passive und aktive Systeme. Im Vergleich zu passiven Schwingungsdämpfern werden bei aktiven Schwingungsdämpfern Massen-Feder-Dämpfer-Systeme in Abhängigkeit von gemessenen Beschleunigungen gezielt bewegt.

Redaktionsleitung
Dipl.-Ing. Nicole Meyer
Dipl.-Ing. Nicole Meyer
Senior Consulting 3DS-PLM | Redakteurin 3DS-PLM Technisches Magazin
Autor*in
Sven Reinstädler, Dr.-Ing.
Dr.-Ing. Sven Reinstädler
Consultant FEM 3DS-PLM

Im Folgenden wird eine Methode vorgestellt, mit der aktive Schwingungsdämpfer in Abaqus modelliert werden können. Sie wird an einem Einfeldträger mit zwei Schwingungsdämpfern in den äußeren Viertelpunkten dargestellt (siehe Abb. 1 mit Knotennummern in schwarz und Elementnummern in rot). Der zugehörige Sensor misst die Beschleunigung des Tragwerks in Feldmitte. Die Platzierung des Sensors in Feldmitte ist bewusst gewählt. Zum einen wird das Tragwerk an dieser Stelle maximal beschleunigt, zum anderen soll hiermit gezeigt werden, dass der Sensor bei der vorgestellten Methodik nicht zwingend an derselben Stelle angebracht sein muss, an der auch die Schwingungsdämpfer montiert sind.

Bei der vorgestellten Methodik wird die User-Subroutine UAMP genutzt. Innerhalb von UAMP kann die Funktion GetSensorValue aufgerufen werden, mit der eine History Variable an einem beliebigen FE-Knoten abgefragt werden kann. Bevor auf die Keyword-Lines zum Modell näher eingegangen wird, sind zunächst die Node-Sets angegeben, die im Folgenden verwendet werden (siehe Abb. 2).

Der folgende Befehl fordert die vertikale Beschleunigung der Brücke in Feldmitte an:

*OUTPUT, HISTORY, SENSOR, NAME=MY_SENSOR
*NODE OUTPUT, NSET=MIDDLE_NODE

A2

Wesentlich sind hier die Parameter SENSOR und NAME, die bei Verwendung von Abaqus/CAE über den Keyword-Editor gesetzt werden können.

Nachfolgend werden der Aufbau und die Funktionsweise der User-Subroutine UAMP.f kurz dargestellt (siehe Abb. 3). In Zeile 13 wird die vertikale Geschwindigkeit der Brücke der Variablen SensorVal zugewiesen. Der Name des Sensors wird mit dem Aufruf der Routine übergeben (siehe Zeile 3), sodass in Zeile 13 allgemeingültig sensorNames(1) verwendet wird. LookUp und sVal werden außerhalb von GetSensorValue nicht verwendet, sodass diese Felder hier nicht weiter betrachtet werden. Wesentlich und wichtiger ist Zeile 15. Mit Zeile 15 wird der Wert der Amplitude linear in Abhängigkeit der gemessenen Beschleunigung gesteigert. Auf nichtlineare Beziehungen, die mit FORTRAN einfach zu implementieren sind, wird an dieser Stelle nicht näher eingegangen. In diesem Artikel soll allein die Methodik im Vordergrund stehen.

Die Amplitude zur Schwingungsdämpfung ist mit
*AMPLITUDE, NAME=AMP_USER, DEFINITION=USER

in das Input-Deck mit aufgenommen. Kann die Reaktionskraft des Schwingungsdämpfers analytisch hergeleitet werden, so kann mit

*CLOAD, AMPLITUDE=AMP_USER
NODES_FORCE, 2, MyScaling

einer erhöhten Brückenschwingung in Abhängigkeit von MyScaling direkt entgegengewirkt werden, ohne die Mechanik der Dämpfer mit geeigneten Elementen konkret zu modellieren. Mittels

DEFINITION=USER in *AMPLITUDE

ist die User-Subroutine UAMP automatisch von Abaqus in die Simulation mit eingebunden, wenn der zugehörige Job mit

ABAQUS JOB=JOB_NAME USER=UAMP.f

gestartet wird (vergleiche Automatisierung von Abaqus-Simulationen).

Kann die Reaktionskraft von komplexen Schwingungsdämpfern nicht analytisch hergeleitet werden, kann man diese gut mit Konnektor-Elementen modellieren. Das mechanische Verhalten kann dann mitunter über Materialparameter (Steifigkeit / Viskosität / Masse) gesteuert werden. Viele Materialparameter können in Abaqus in Abhängigkeit von sogenannten Field Variablen definiert werden. Die Modellierung mit Field Variablen wird im Folgenden an der Viskosität eines Konnektors gezeigt. Mit

*CONNECTOR DAMPING, COMPONENT=1, DEPENDENCIES=1
1000., , ,1.
2000., , ,2.

erhöht sich die Viskosität der eingesetzten Konnektoren in Abhängigkeit der Field Variablen f1 (vergleiche Abb. 4).

Generell ist es möglich die Viskosität in Abhängigkeit mehrerer Field Variablen zu formulieren. Hier soll sie aber nur von einer Field Variablen abhängig sein, sodass DEPENDENCIES in *CONNECTOR DAMPING auf Eins gesetzt ist.

Die Field Variable wird mit

*FIELD, AMPLITUDE=AMP_USER
CONNECTOR_NODES, 1.

an den Knoten der Konnektoren definiert und in Abhängigkeit der Brückenbeschleunigung moduliert.

Zuletzt sollen die Keywords diskutiert werden, die zur Definition von Konnektor-Elementen erforderlich sind. Wie in Abb. 5 Zeile 1 zu sehen ist, werden Konnektor-Elemente wie gewöhnliche finite Elemente angelegt. Unabhängig von der speziellen Art des Konnektors (Translator, Hinge, etc.), die Konnektoren sind entweder vom Typ CONN3D2 oder CONN2D2, je nachdem ob sie in 2D- oder 3D-Modellen verwendet werden. Im vorliegenden Fall ist Element 9 ein 3D-Konnektor, der die Knoten 3 und 4 verbindet (vergleiche Abb. 1). Wichtig ist der Parameter ELSET, über den die Art des Konnektors (Translator, Hinge, etc.) indirekt zugewiesen wird. Mit *CONNECTOR SECTION werden hier zwei Translator angelegt, die nur Relativbewegungen in einer Verschiebungsrichtung zulassen (siehe Abb. 6). Für die Orientierung der Konnektoren ist mit *ORIENTATION in Zeile 7 ein lokales Koordinatensystem angelegt, sodass die Konnektoren unabhängig von der Lage der FE-Knoten entlang der Y-Achse ausgerichtet sind.

Die Nachgiebigkeit von Konnektoren wird innerhalb von *CONNECTOR BEHAVIOR definiert. Das Keyword *CONNECTOR BEHAVIOR ist analog zum Keyword *MATERIAL zu sehen. Neben den Keywords zur Elastizität und zur Dämpfung (Zeile 16 und 19) gibt es bezüglich *CONNECTOR noch eine Vielzahl weiterer Keywords, mit denen unter anderem auch Plastizität und Schädigung modelliert werden können (siehe Abb. 7). Die Verknüpfung zwischen *CONNECTOR BEHAVIOR und *CONNECTOR SECTION ist mit dem Flag MyConSection gegeben, das den Parametern NAME und BEHAVIOR zugewiesen ist (siehe Zeile 15 bzw. Zeile 4). Die Bewegung der Konnektoren wird mit *CONNECTOR MOTION festgelegt (siehe Zeile 26).

Die Verwendung von Konnektoren hat viele Vorteile. Einige sind nachfolgend genannt. Konnektoren:

  • sind für große Rotationen implementiert,
  • können Bewegungs- und Kraftgrößen einprägen,
  • bieten Elastizität, Dämpfung, Plastizität und Schädigung und
  • haben eigene History Variablen,

mit denen unter anderem Interaktionskräfte und Relativverschiebungen ausgegeben werden können.

Im vorliegenden Artikel haben wir Ihnen gezeigt wie Sie

  • Sensoren und Konnektoren in Abaqus-Modellen implementieren,
  • GetSensorValue in der User-Subroutine UAMP nutzen und
  • Materialparameter in Abhängigkeit von Field Variablen definieren.

Haben Sie Fragen zu diesem Thema - nehmen Sie Kontakt mit uns auf.

Weitere Artikel zum Thema

Technisches Magazin jetzt abonnieren