|
|
Elektrolysesimulation (Algebraische Schleife) |
|
Miral |
Forum-Newbie
|
|
Beiträge: 1
|
|
|
|
Anmeldedatum: 06.03.15
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 06.03.2015, 17:43
Titel: Elektrolysesimulation (Algebraische Schleife)
|
|
|
|
|
Hallo Leute!
ich bin gerade dabei ein Elektrolysemodell zu erstellen und habe dabei das Problem, dass ich Ausgangswerte als Eingangswerte benötige.
Ich habe die Simulation erstmal so weit vereinfacht, um mein Problem zu verdeutlichen. (Bild1)
Mit einem Wert P (Leistung) vom Workspace und einem Wert I (Strom) soll U (Spannung) berechnet werden. Dabei hängen I und U voneinander ab.
Die Berechnung erfolgt mit zwei MATLAB Fuction Blöcken
1. Block: I=P/U
2. Block: U=30*I+15 (sehr vereinfachte Darstellung, die originale Abhängigkeit könnte nicht so einfach nach I aufgelöst werden)
Zwischen diesen zwei Blöcken wird ein IC Block für den Startwert von I verwendet.
Jetzt möchte ich für unterschiedliche Werte P die dazugehörigen Werte U berechnen lassen.
Solange P nur einen Wert enthält, z.B. [0 100], funktioniert alles bestens.
Wenn ich aber einen zweiten hinzufüge, z.B. [0 100;1 200] (Bild2), bekomme ich für U einen Wert, der mit der Simulationszeit steigt (Scope1).
Wenn der zweite Wert niedriger als der erste ist, z.B. [0 100; 1 50], bekomme ich eine Fehlermeldung:
"An error occurred while running the simulation and the simulation was terminated
Simulink cannot solve the algebraic loop containing 'Problem/MATLAB Function' at time 2.04 using the TrustRegion-based algorithm due to one of the following reasons: the model is ill-defined i.e., the system equations do not have a solution; or the nonlinear equation solver failed to converge due to numerical issues.
To rule out solver convergence as the cause of this error, either
a) switch to LineSearch-based algorithm using
set_param('Problem','AlgebraicLoopSolver','LineSearch')
b) reducing the fixed step size.
If the error persists in spite of the above changes, then the model is likely ill-defined and requires modification."
Die Lösungsvorschläge habe ich alle versucht, hat aber nichts gebracht.
Ist meine Vorgehensweise P mehrere Werte zuzuweisen überhaupt richtig?
Oder habe ich generell mit dem aufgebauten Modell ein Problem?
Ich würde mich riesig über eure Hilfe freuen!
Danke schonmal und viele Grüße
Miral
Beschreibung: |
|
Download |
Dateiname: |
Problem.slx |
Dateigröße: |
16.87 KB |
Heruntergeladen: |
476 mal |
Beschreibung: |
|
Download |
Dateiname: |
Scope1.jpg |
Dateigröße: |
45.04 KB |
Heruntergeladen: |
515 mal |
Beschreibung: |
|
Download |
Dateiname: |
Bild2.jpg |
Dateigröße: |
14.6 KB |
Heruntergeladen: |
536 mal |
Beschreibung: |
|
Download |
Dateiname: |
Bild1.jpg |
Dateigröße: |
43.29 KB |
Heruntergeladen: |
501 mal |
|
|
|
|
|
rien |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 16.03.2015, 11:32
Titel:
|
|
Erstmals: ich kann dein Modell nicht ausführen weil ich wohl nicht alle notwendigen Files habe (?).
Wenn du P = [0 100;1 200] eingibst hast du keinen Sprung von P sondern eine Rampe. Deshalb der linear steigende Wert (linear steigendes Eingangssignal, keine Integration oder Ableitung), bei [0 100; 1 50], erreicht dein Modell bei 2 Sekunden P=0, 0.04s dürfte deine Step-Size sein, und da aus P=0 U=0 folgt und durch 0 Teilen nicht geht --> error
Also --> Inputsignal muss für deine Zwecke ein Rechtecksignal sein
|
|
|
|
|
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.
|
|