Ich arbeite derzeit mit mechanischen Mehrkörpersystemen, die die in der Modelica-Standardverteilung enthaltene MultiBody-Bibliothek verwenden.Zwischen zwei Flanschen wechseln
Ich muss einen Schalter zwischen Flanschen implementieren, um Position oder Kraftsteuerung für ein bestimmtes Gelenk zu wählen.
model FlangeSwitch "Switch between flanges"
Modelica.Mechanics.Translational.Interfaces.Flange_a flange_a_1;
Modelica.Mechanics.Translational.Interfaces.Flange_b flange_b_1;
Modelica.Mechanics.Translational.Interfaces.Flange_a flange_a_2;
Modelica.Mechanics.Translational.Interfaces.Flange_b flange_b_2;
Modelica.Mechanics.Translational.Interfaces.Flange_a flange_a_exit;
Modelica.Mechanics.Translational.Interfaces.Flange_b flange_b_exit;
Modelica.Blocks.Interfaces.BooleanInput u;
equation
if u then
flange_a_exit = flange_a_2;
flange_b_exit = flange_b_2;
else
flange_a_exit = flange_a_1;
flange_b_exit = flange_b_1;
end if;
end FlangeSwitch;
Aber dieser Ansatz funktioniert nicht, das System ist nicht ausgeglichen: 10 Gleichungen und 12 Variablen.
Gibt es eine Möglichkeit, dies zu tun?
Danke für die Antwort. Sie haben Recht, dass es für eine dynamische Änderung in den Differentialgleichungen erforderlich wäre, die das Modell während der Simulation definieren, und vielleicht ist dies in Modelica noch nicht möglich. Ich werde einen anderen Ansatz versuchen. –