|
|
Algebraic Loop warning in meinem Simulink Modell |
|
Speedmaxl |
Forum-Anfänger
|
|
Beiträge: 25
|
|
|
|
Anmeldedatum: 19.10.20
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 27.11.2020, 13:56
Titel: Algebraic Loop warning in meinem Simulink Modell
|
|
|
|
|
Hallo zusammen,
Ich habe die Tage mein Modell eines Zwei-Freiheitsgrade-Schwingers (Pendel mit Feder und Dämpfer hängt an vertikal geführten Masseblock welcher ebenfalls mit Feder und Dämpfer oben aufgehängt ist) in Simulink modelliert. Das Programm lief auch soweit ganz gut und brachte plausible Ergebnisse.
Jedoch bei gewissen Eingaben (speziell bei Anfangswerten bei den Integrieren) bekomme ich seit 2 Tagen eine "Algebraic Loop" Warning von Simulink zurück. Habe mich bisher mit der RelativTolerance sowie verschiedenen Solvern (ODE45 und ODE15) herumgespielt. Jedoch ohne Erfolg. Nach einer Recherche bin ich auf ein paar Tricks gekommen die besagten, in der betroffenen Schleife einen Memory Block oder eine Transfer Function einzubauen. Dies übersteigt aber nun mein Bescheidenes Wissen auf dem Gebiet der Schwingungs-Simulation.
Ich hab Screenshots der betroffenen Schleife sowie der Fehlermeldung hinzugefügt. Hoffe, es sind soweit genug Infos und es kann mir jemand ein paar Inputs geben, wie man die Schleife wieder zum laufen bringt.
Vielen Dank.
Beschreibung: |
|
Download |
Dateiname: |
algebraic loop1.png |
Dateigröße: |
95.67 KB |
Heruntergeladen: |
286 mal |
Beschreibung: |
|
Download |
Dateiname: |
algebraic loop.png |
Dateigröße: |
104.07 KB |
Heruntergeladen: |
268 mal |
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 27.11.2020, 14:54
Titel:
|
|
Hallo,
der Anhang hebt ja schön gelb hervor, wo die algebraische Schleife ist.
In meiner Erfahrung deutet eine algebraische Schleife meist auf einen Modellierungsfehler hin. Wenn es um die Modellierung einer diskreten oder kontinuierlichen Dynamik geht, dann fehlt ein Unit Delay oder Integrator.
Um beim Beheben zu helfen, müsste man wissen, welche Gleichungen du denn da umsetzen möchtest.
Für die Übersichtlichkeit würde ich empfehlen, Signalkreuzungen möglichst zu vermeiden und einen möglichst klaren Fluss von links nach rechts im Modell sicherzustellen. Von rechts nach links sollten nach Möglichkeit wirklich nur einfache Rückführungen gehen.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
Speedmaxl |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 25
|
|
|
|
Anmeldedatum: 19.10.20
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 27.11.2020, 16:17
Titel:
|
|
Danke mal für die Antwort,
Ja stimmt, DGL's und System habe ich in den Anhang gegeben. Modelliert wäre es für mich richtig. Bin es zumindest schon x-mal durchgegangen.
Der Fehler kommt auch nicht jedesmal. Eigentlich nur, wenn ich bei zwei Integratoren gleichzeitig einen Anfangswert festlege...
Bezüglich Übersicht: Ja da hast du recht, das muss ich noch besser strukturieren.
Grüße,
Paul
Beschreibung: |
|
Download |
Dateiname: |
DGL's.png |
Dateigröße: |
8.09 KB |
Heruntergeladen: |
251 mal |
Beschreibung: |
|
Download |
Dateiname: |
System zu DGL's.jpeg |
Dateigröße: |
132.1 KB |
Heruntergeladen: |
252 mal |
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 27.11.2020, 16:30
Titel:
|
|
Hallo,
ja, da kommen die zweiten Ableitungen mehrfach vor. Ich erinnere mich jetzt.
In MATLAB kann man das ja über eine Massenmatrix lösen, in Simulink auch:
https://www.gomatlab.de/implementat.....n-in-simulink-t36716.html
Das "ärgerliche" ist hier, dass die Massenmatrix von phi abhängt und in jedem Simulationsschritt berechnet werden muss.
Kann es denn sein, dass die Massenmatrix je nach Parametern singulär wird? Das wäre eine sehr gute Erklärung für Probleme bei der Simulation.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
Speedmaxl |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 25
|
|
|
|
Anmeldedatum: 19.10.20
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 27.11.2020, 17:01
Titel:
|
|
Hm.. ok das ist ein guter Punkt. Da ich die DGL's im klassischen Sinn hergeleitet habe, habe ich noch gar keine Massenmatrix definiert und muss mich da erst einlesen zu dem Thema..
Nur verstehe ich noch nicht so ganz, wie ich diese Massenmatrix später in Simulink einbaue. Ist da das Modell komplett neu aufzubauen?
Danke,
Grüße
Paul
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 27.11.2020, 19:36
Titel:
|
|
Hallo,
das mit der Massenmatrix ist "nicht so schlimm", würde ich behaupten. Wie im anderen Thread gesagt: erst als System erster Ordnung umschreiben, dann sollte das ohne allzu große Probleme gehen.
Zitat: |
Nur verstehe ich noch nicht so ganz, wie ich diese Massenmatrix später in Simulink einbaue. Ist da das Modell komplett neu aufzubauen? |
Komplett neu würde ich jetzt nicht sagen, auch wenn es so oder so eine gute Übung sein kann, das Modell besser strukturiert aufzubauen.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
Speedmaxl |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 25
|
|
|
|
Anmeldedatum: 19.10.20
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 29.11.2020, 11:00
Titel:
|
|
Hallo,
Also ich habe es jetzt geschafft, meine Massenmatrix aufzustellen
In der Zwischenzeit bin ich aber auf einen Benutzerfehler meinerseits draufgekommen.
Ich hatte versehentlich viel zu hohe Werte für meine Anfangsbedingungen festgelegt. Da ist mir ein (etwas peinlicher) Fehler unterlaufen. Damit ich den Anfangswert für phi (externer Eingang am Integrator) in Grad eingeben kann, habe ich einen Vorfaktor hinzugefügt und der lautete bei mir *180/pi anstatt *pi/180... damit kamen natürlich viel zu hohe rad-Werte in die Berechnung rein. Und damit ist der Solver nicht klar gekommen.
Kann es sein, dass es daran gelegen hat, weil seit ich das geändert habe, läuft es wieder...?
Lg Paul
|
|
|
Speedmaxl |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 25
|
|
|
|
Anmeldedatum: 19.10.20
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 29.11.2020, 11:07
Titel:
|
|
PS: ich hab mich gerade mit den Anfangswerten für phi gespielt..
Die Fehlermeldung kommt jetzt ab einem Wert von 33°. Ist das Systemtechnisch erklär- bzw. vertretbar, oder sollte ich hier noch weiter optimieren?
Grüße,
Paul
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 29.11.2020, 11:14
Titel:
|
|
Hallo,
die interessante Frage finde ich: wie sieht denn die Massematrix aus, wenn die algebraische Schleife auftritt? Ohne das momentane Modell ist es schwierig, mehr dazu zu sagen.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
Speedmaxl |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 25
|
|
|
|
Anmeldedatum: 19.10.20
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 29.11.2020, 12:14
Titel:
|
|
Habe die Massenmatrix im Anhang gegeben. In Matlab löst der Solver die DGL ohne Probleme.
Die Frage ist jetzt nur, wie bekomme ich Simulink dazu es auch so zu machen...?
Grüße Paul
Beschreibung: |
|
Download |
Dateiname: |
Bildschirmfoto 2020-11-29 um 12.12.39.png |
Dateigröße: |
15.13 KB |
Heruntergeladen: |
268 mal |
|
|
|
Speedmaxl |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 25
|
|
|
|
Anmeldedatum: 19.10.20
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 29.11.2020, 12:42
Titel:
|
|
Also, ich denke ich habe mich vorher falsch ausgedrückt. Ich hab am ursprünglichen Simulink Modell noch nichts geändert. Lediglich die Dgl‘s mit eben der Matrix aus dem Anhang direkt in MATLAB gelöst...
|
|
|
Speedmaxl |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 25
|
|
|
|
Anmeldedatum: 19.10.20
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 29.11.2020, 12:51
Titel:
|
|
Ich versuche heute mal das Simulink Modell anhand der jetzt 4 neuen DGL‘s aufzubauen und werde dann berichten.
Lg Paul
|
|
|
Speedmaxl |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 25
|
|
|
|
Anmeldedatum: 19.10.20
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 02.12.2020, 00:26
Titel:
|
|
Hallo,
ich bin leider noch nicht zu meinem neuen Simulinkmodell gekommen, da ich seit gestern an einer anderen Baustelle arbeite.
Es geht darum, zuerst einen Plot der Eigenfrequenzen (Masse und Pendel zu erzeugen). Diese möchte ich mit dem bode Befehl aus meiner Zustandsraumdarstellung ausgelesen und plotten.
Leider wird mir nur die erste Eigenfrequenz der vertikalen Masse angezeigt (f0_1) und ich komme einfach nicht darauf, wie ich mir f0_phi auch plotten lassen kann...
Hab den Code im Anhang und zusätzlich einen Screenshot, wie das ganze ausschauen sollte...
Grüße,
Paul
Beschreibung: |
|
Download |
Dateiname: |
Bildschirmfoto 2020-12-02 um 00.25.03.png |
Dateigröße: |
46.77 KB |
Heruntergeladen: |
245 mal |
Beschreibung: |
|
Download |
Dateiname: |
Bestimmung Eigenfrequenzen.png |
Dateigröße: |
397.71 KB |
Heruntergeladen: |
237 mal |
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 02.12.2020, 08:50
Titel:
|
|
Hallo,
ich kenne mich mit Bode-Diagrammen nur sehr begrenzt aus.
Wenn eine Frage wenig mit dem bisherigen Thema zu tun hat, bitte ein neues Thema erstellen. So besteht zumindest eine größere Chance, dass auch jemand anders drauf schaut.
Bitte dann auch den Code als solchen zur Verfügung stellen und nicht nur einen Screenshot davon. Dann kann man den Code auch ausführen und sich die Variablen ansehen ohne den Code abzutippen (was ich nicht vorhabe ).
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
Speedmaxl |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 25
|
|
|
|
Anmeldedatum: 19.10.20
|
|
|
|
Wohnort: Wien
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 02.12.2020, 16:24
Titel:
|
|
Hallo Harald!
Ja stimmt, da hast du recht. Wäre gescheiter...
Werd das Problem an einer eigenen Stelle posten.
Lg Paul
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|