2016-08-03 13 views
1

Ich versuche, einen 4-Link-Mechanismus zu implementieren und dem Modell, das ich zusammengestellt habe, sind hier gezeigt: Mechanism and ModelFehler auf einfachen Viergelenkmechanismus Simulation mit Modelica

Revolute1 hat eine Geschwindigkeit von 5 rd/s. Alle Stäbe haben einen Durchmesser von 0,05 m. Welteinstellungen sind Standard und Sie können die Balkenvektoren auf dem Bild sehen. Nichts anderes wird geändert.

Wenn ich versuche, die Simulation ich diese Fehler auf OpenModelica erhalten auszuführen:

[1] 10.29.43 Symbolische Fehler [Modelica.Mechanics.MultiBody.Parts: 238: 5-238: 62]: Modell ist strukturell singulär, Fehler gefunden Sortiergleichungen

[2] 10:33:25 Übersetzungsfehler Interner Fehler Transformationsmodul PFPlusExt-Index Reduktionsmethode Pantelides fehlgeschlagen!

Was mache ich falsch? Scheint ziemlich geradlinig.

Danke.

+0

Haben Sie die Bedingungen oben rechts im verknüpften Diagramm erfüllt? Nach meiner Erfahrung sind singuläre Modelle oft entweder aufgrund von redundanten Gleichungen oder irgendwie inkompatiblen Bedingungen beim Start. Eine andere Möglichkeit ist, dass Ihr Gleichungssystem nicht erfüllt werden kann, z. wenn die Längen Ihrer Bars falsch sind, so dass sie nicht physisch verbunden werden können, denke ich. – Christoph

+0

@Christoph Wenn ich nicht verstehe, wie der "r" -Vektor der Balken funktioniert, habe ich ihn erfüllt. Von was ich sehe, ist "r" immer relativ zur Position von Punkt frame_a richtig? In diesem Fall können Sie im Modell sehen, dass meine ABCD-Punkte wie folgt gesetzt sind: {0, 0, 0}, {0, 2, 0}, {4, 3, 0}, {5, 0, 0} was ergibt AB = 2, BC = sqrt (17), CD = sqrt (10) und AD = 5 Abgesehen von dem "r" Vektor und dem Durchmesser muss ich einen anderen Parameter für die Bars setzen? – tapirath

+0

Ich kann dir da nicht helfen, ich habe nie mit mechanischen Komponenten gearbeitet. – Christoph

Antwort

1

Sie müssen einen der Revolute Gelenke durch einen RevolutePlanarLoopConstraint ersetzen. Warum? Unter Berufung auf die documentation:

Wenn ein planarer Schleife vorhanden ist, beispielsweise bestehend aus 4 Drehgelenke wobei die Gelenkachsen alle parallel zueinander sind, dann gibt es keine eindeutige mathematische Lösung, wenn alle Drehgelenke modelliert mit Joints.Revolute und die symbolischen Algorithmen werden fehlschlagen. Der Grund ist , dass z.B. die Schnittkräfte in den Rotationsgelenken rechtwinklig zu der planaren Schleife nicht eindeutig definiert sind, wenn sie 3-dim sind. Beschreibungen von Drehgelenke sind

5

Neben der erforderlichen Nutzung von Modelica.Mechanics.MultiBody.Joints.RevolutePlanarLoopConstraint für die planare Vierstangenverbindung auch die Modelltopologie angepasst werden muss, bar2 wird world fixiert asuming verwendet. Siehe das Beispielmodell Planar4Bar.