mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik nichtlineares, steifes Differentialgleichungssystem 2ter Ordnung


Autor: Peter_Maxwell (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich bin neu hier im Forum und würde gleich zu Beginn gerne die fachliche 
Kompetenz des Forums in einer eher speziellen Frage in Anspruch nehmen.

Ich habe das Differnetialgleichungssystem zu einem elektrischen Netzwerk 
aufgestellt, das ein nichtlineares Bauelement enthält.

Das Netzwerk und das zugehörige DGL-System sind dem Bild om Anhang zu 
entnehmen.

Dabei ist zu erwähnen, dass das Element "VCB" im Ersatzschaltbild sich 
wie ein nichtlinearer Widerstand mit einer UI-Kennlinie entsprechend 
Gleichung (IV) verhält (K1 sowie K2 sind Konstante Werte).

Einigen hier wird sicher auffallen, dass es sich auch bei Gleichung (I) 
um eine DGL zweiter Ordnung handelt, obwohl man in Masche (I) zunächst 
auf eine DGL erster Ordnung stößt. Folgende Überlegung liegt zu Grunde:

Ich habe das DGL-System in Matlab Simulink aufgebaut und zu lösen 
versucht. Damit das System in sich geschlossen ist, man I_g als einzige 
(bekannte) Eingangsgröße einprägen kann und sich I_3 als gesuche 
Ausgangsgröße ergibt, benötigt man in Gleichung (II) und (III) die 
zweite Ableitung von I_3, welche man aus Gleichung (I) ableiten kann. 
Damit diese zweite Ableitung überhaupt in Gleichung (I)
auftaucht, ist die Ableitung notwendig.

Leider liefert die Simulation in Simulink nicht die erhofften 
Ergebnisse.

Die Frage ist nun: Ist das System zusammen mit der angegebenen 
UI-Kennlinie von VCB überhaupt lösbar und wenn ja, welche Ansätze würdet 
ihr machen?

Der Simulink Solver gibt abhängig von den Startwerten für I_2, I_3 und 
I4_4 einen Fehler aus, weil an einem der Eingänge eines Integrierers 
unendlich anliegt. Falls es jemanden interessiert, kann ich das 
Simulink-File hier auch veröffentlichen.

Über konstruktive Anmerkungen würde ich mich sehr freuen biggrin

Viele Grüße

Maxwell

Autor: Lucky Luck (rantanplan)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Morgen,

also ich würde erstmal Simulink weglassen und zuerst schaun ob die 
Gleichungen auch stimmen.

Auf den ersten Blick sehe ich das in Gln. IV) K2 vorkommt. Das sollte 
dann meines ermessens auch in Gln. I) zumindest einmal auftauchen.

Die Eingangsmasche fehlt komplett. (obwohl trivial)

Dann glaube ich das einige der Knotenströme nicht stimmen.

Das DGL-System ist zu 100% lösbar. (Sag ich jetzt mal aus dem Bauch 
herraus.)

Wenn du deinen Weg zeigst, wie du auf die einzelnen Gleichungen kommst, 
kann man dir besser helfen.

Beste Grüße

Autor: Peter_Maxwell (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

vielen Dank für deine Antwort:)

Anbei einige Bemerkungen:

Ihr könnt davon ausgehen, dass die Gleichungen korrekt sind.

In Masche I ist die Spannung U_VCB als Funktion von I_3 enthalten. Um 
das Simulink Modell aufbauen zu können, war es zwingend nötig, die 
zweite Ableitung dieses Stromes in die Gleichung zu integrieren, weshalb 
die Konstante K_2 in Gleichung I nicht mehr auftaucht.

Genau hier könnte trotzdem ein Problem liegen, da durch die zweite 
Ableitung von Gleichung I mehr Integratoren notwendig werden, also zur 
minimalen Beschreibung des Systems eigentlich nötig sind.

Um den Lösungsweg besser nachvollziehen zu können, habe ich eine .pdf 
Datei angehongen.

Gleichungssystem 0.8 - 0.10 beschreibt das System ohne die zusätzliche 
Ableitung von Gleichung 0.9 und ist ansonsten mit Gleichungssystem 0.11 
- 0.13 identisch.

Die von dir erwähnte Eingangsmasche bringt keinerlei zusätzliche 
Information, da der Strom I_g als eingeprägter Strom und somit als 
bekannt angenommen werden kann.

Autor: Lucky Luck (rantanplan)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry, das ich dir unterstellt habe das die Gleichungen nicht stimmen 
aber meistens stecken in deren Aufstellung schon die ersten Fehler.
Und zum nachrechnen war es mir zu aufwendig.

Jetzt wäre es mal interessant das Simulink Modell zu sehen.

Woher nimmst du die Werte für R,L,C für dein Modell? Im PDF wird dazu 
keine Angabe gemacht.

Dir ist bekannt das man in Simulink bei den Integratoren die jeweiligen 
Anfangswerte eintragen muss?

Autor: Thomas B. (detritus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Welchen Solver hast du in Simulink eingestellt?

Autor: Peter_Maxwell (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Die Werte für R, L und C sowie der Verlauf der Anregung i_g sind 
bekannt.

Mögliche Wertekombinationen können dem Anhang entnommen werden, wobei 
i_g einen cos-förmigen Verlauf haben muss und z.B. als i_g = 50 * 
cos(2*pi*50*t) angenommen werden kann.

Von Interesse ist nur die erste viertel Periode der 50 Hz Schwingung, 
also der Zeitbereich bis 5 ms.

Mir ist klar, dass die Integratoren Anfangswerte verlangen. Diese kann 
ich allerdings nur abschätzen. Zu Beginn ist es so, dass sämtliche 
Kondensatoren recht hochohmig sind, da das Netzwerk anfänglich mit 50 Hz 
angeregt wird. gegen Ende der ersten viertel Periode, also mit sinkendem 
Strom sollte sich dem 50 Hz Anteil von i_3 dann eine hochfrequente, 
zunehmend anklingende Schwingung überlagern.

i_3(t=0) = 50 A und i_3'(t=0) = 0 A/s wäre also die realistischste 
Abschätzung der AW, denke ich. i_2 und i_4 sind zu Beginn entsprechend 
sehr klein, quasi Null.

Autor: Peter_Maxwell (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Thomas B.

Erfolglos getest habe ich unter anderem den ode45, ode15s sowie ode23s, 
da es sich vermutlich um ein steifes DGL System handelt. Die Simulation 
bricht jeweils nach kurzer Zeit mit der Fehlermeldung "Inf" oder "NaN" 
an einem der Eingänge der oberen Integratorkette für i_3 ab.

Meine Vermutung ist derzeit, dass sich die Startwerte der einzelnen 
Integratoren möglicherweise gegenseiteig mathematisch ausschließen, da 
das System derzeit durch die 6 Integratoren redundant beschrieben wird 
(im Netzwerk sind ja nur 5 Energiespeicher vorhanden).

Autor: Martin O. (ossi-2)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn I3 bei Null startet ist Uvcb nicht definiert.

Autor: Walter Tarpan (nicolas)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmmm....bei oberflächlicher Betrachtung bin ich mir gar nicht sicher, ob 
das System eine ODE ist - sieht mir mehr nach DAE aus (Gleichung 4).
Ich schlage vor, das System ersteinmal in ein normiertes ODE-System 
erster Ordnung umzubauen - wenn das nicht geht, haben auch die 
ODE-Solver unter Matlab keine Chance.

Grüße
Nicolas

Autor: Tobias .. (tobi7212)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
wenn du deine Matlab-Dateien zur Verfügung stellst, brauch ich das nicht 
nachbauen um zu helfen.
Ohne mich das genau angesehen zu haben: Was für Startwerte hast du denn 
für die Integratoren genommen .. der eine geht ja in den Devide-Block... 
Wenn du also die Standarteinstellungen noch drin hast, wird dort durch 
Null geteilt und est kommt die Fehlermeldung.

Autor: Peter_Maxwell (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
M. Ossmann schrieb:
> Wenn I3 bei Null startet ist Uvcb nicht definiert.

Richtig, deshalb darf i_3 auch nicht bei Null starten. Der Anfangswert 
sollte dem Scheitelwert von i_g entsprechen, also z.B. 50 A. Das kannst 
du auch noch mal in meinem letzten Post nachlesen.

Nicolas S. schrieb:
> Ich schlage vor, das System ersteinmal in ein normiertes ODE-System
> erster Ordnung umzubauen - wenn das nicht geht, haben auch die
> ODE-Solver unter Matlab keine Chance.

Genau das habe ich gestern versucht. Dabei habe ich für die Ströme i_2, 
i_3 und i_4, sowie für deren Ableitungen i_2', i_3' und i_4' insgesamt 6 
neue Unbekannten eingeführt. Man erhält dann 6 DGLs erster Ordnung, die 
jetzt als m-file zu lösen versuche.

No name No name schrieb:
> Ohne mich das genau angesehen zu haben: Was für Startwerte hast du denn
> für die Integratoren genommen .. der eine geht ja in den Devide-Block...
> Wenn du also die Standarteinstellungen noch drin hast, wird dort durch
> Null geteilt und est kommt die Fehlermeldung.

An der Stelle verweise ich auf meine Antwort ein paar Zeilen weiter 
oben:) Der Startwert für i_3 sollte dem Scheitelwert von i_g 
entsprechen, z.B. 50 A.

Der Ausgang des Divide-Blocks nimmt zwar sehr große Werte an, aber 
nicht, weil durch Null geteilt wird, sondern, weil der Zähler schneller 
ansteigt als der Nenner.

Abschließend möchte ich mich an dieser Stelle schon Mal bei allen 
Mitdenkenden bedanken:)

Ps: Im Anhang befindet sich das MatLAB Simulink file.

Autor: JohnnyB (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nicolas S. schrieb:
> Hmmm....bei oberflächlicher Betrachtung bin ich mir gar nicht sicher, ob
> das System eine ODE ist - sieht mir mehr nach DAE aus (Gleichung 4).
> Ich schlage vor, das System ersteinmal in ein normiertes ODE-System
> erster Ordnung umzubauen - wenn das nicht geht, haben auch die
> ODE-Solver unter Matlab keine Chance.
>
> Grüße
> Nicolas

Nur mal am Rande gefragt: Gibt es eigentlich Verfahren, um 
festzustellen, ob solche Systeme numerisch lösbar sind? Für die 
analytische Lösbarkeit habe ich schon davon gehört...

Autor: Tobias .. (tobi7212)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
in den Verknüpfungen habe ich keinen Fehler gefunden, das passt zu den 
Gleichungen. Hoffe die sind richtig.
Von der schaltung hoffe ich auch mal, dass das so möglich ist.

Prinzipiell ist zu erkennen, dass die integratoren eine positive 
Rückkopplung haben. Und das bei doppelter Integration! Das ist so 
natürlich instabil.
Ich habe mal ein paar Begrenzungen eingebaut, sodass man schön sehen 
kann, wie das System wegläuft, ohne dass es alzuschnell ausßerhalb des 
berechenbaren bereiches liegt. hoffe das hilft etwas beim Verständnis.
Evtl kann man mit veränderten Parametern schon stabiles verhalten 
erreichen.
Viel Erfolg.

Autor: Peter_Maxwell (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
JohnnyB schrieb:
> Nur mal am Rande gefragt: Gibt es eigentlich Verfahren, um
> festzustellen, ob solche Systeme numerisch lösbar sind? Für die
> analytische Lösbarkeit habe ich schon davon gehört...

Für die analytische Lösbarkeit geht das definitiv, für die numerische, 
glaube ich nicht. Da bin ich mit aber nicht sicher.

@tobi7212

Die Instabilität ist so gewollt. Deshalb simuliere ich auch nur bis zum 
ersten Nulldurchgang des Sromes i_3, also maximal 5 ms.

Beim letzten post habe ich vergessen, das m-file, dass die Parameter der 
Simulink Datei definiert, mit anzuhängen, daher hier noch mal die 
Simulink Datei und das zugehörige m-file.

Außerdem habe ich einen Skreenshot des Stromes i_3 angefügt. Er sollte 
sich aus einer 50 Hz Komponente mit einem überlagerten hochfrequenten 
Anteil zusammensetzen. Je kleiner der Strom i_3 wird, desto instabiler 
wird das System, weshalb die hochfrequente Schwingung in ihrer Amplitude 
zum Nulldurchgang hin ansteigt.

Dabei handelt es sich allerdings lediglich um eine Vermutung, die es zu 
belegen gilt. Es kann durchaus sein, dass genau das nicht möglich ist.

Ps: Kann sich jemand vorstellen, dass die zweite, zusätzliche Ableitung 
von Gleichung 0.9 ein Problem darstellt?

Folgende Überlegung liegt zu Grunde: Das System enthält 5 
Energiespeicher, im Modell sind allerdings 6 Integratoren enthalten, 
deren Startwerte sich möglicherweise gegenseitig ausschließen!?

Ohne diese Ableitung, ist es leider nicht möglich das Simulink Modell 
aufzustellen.

Viele Grüße

Maxwell

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.