AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Matlab-Aufgabe (Simulink) - Wieso löst man das so?
Thema durchsuchen
Ansicht
Themen-Optionen

Matlab-Aufgabe (Simulink) - Wieso löst man das so?

Ein Thema von Matze · begonnen am 4. Jan 2008 · letzter Beitrag vom 5. Jan 2008
Antwort Antwort
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#1

Matlab-Aufgabe (Simulink) - Wieso löst man das so?

  Alt 4. Jan 2008, 12:43
Moin,

da man mit Matlab etwas ähnliches wie Programmieren macht, schreibe ich das mal hier hin. Ich bin mal gespannt, ob das hier jemand weiß.

Ich habe Aufgaben, bei denen ich Differenzialgleichungen simulieren muss und habe dabei schon ein Problem mit der Simulink-Schaltung. Die Musterlösung kann ich nicht ganz nachvollziehen.

Beispielsweise sollen wir die Sprungantwort der DGL T*y' + y = Sprungfkt. sigma(t) mit T = 4 Sekunden mittels eines Integralglieds simulieren.
Um das mit Simulink lösen zu können, muss ich die DGL meines Wissens nach der höchsten Ableitung auflösen: y' = (sigma(t) - y) / T

Ich dachte mir dann, die Schaltung müsste aussehen wie im Anhang. Die Musterlösung ist darunter abgebildet.

Kann mir bitte jemand erklären

- wieso das Verstärkerglied vor der Abzweigung zum Summierglied zu plazieren ist? Ich hätte gedacht, die Verstärkung wäre der letzte Schritt. Einerseits wenn ich das direkt nach dem Integrationsglied verstärke, dann wäre es halbwegs logisch, da es sich dabei um eine Integrationskonstante handelt, doch laut der Formel wäre es für mich anders einleuchtender.

- wieso die Schaltung überhaupt so aussehen muss (ganz allgemein)?
Wir haben das ab und zu so gelöst, doch die Erklärungen habe ich nie richtig verstanden.

Für mich sieht das folgendermaßen aus:
Man geht davon aus, dass die Sprungfunktion die erste Ableitung y' sei, integriert das, um auf y zu kommen und zieht das verstärkte y dann über das Summierglied von der Sprungfunktion ab, was mir etwas weit hergeholt zu sein scheint.

Grüße, Matze
Miniaturansicht angehängter Grafiken
simulink_165.png  
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#2

Re: Matlab-Aufgabe (Simulink) - Wieso löst man das so?

  Alt 4. Jan 2008, 16:35
Du ziehst das Ergebnis vor dem Gain raus, somit hast du (wie du schon richtig schreibst) dort y. Du ziehst also y ab.

vor dem Abziehen hast du folgendes:
= y'
= ( sigma(t) - y ) / T

nach dem Abziehen hast du:
= y' - y
= ( ( sigma(t) - y ) / T ) - y

Du hast also die falsche Basis um y ab zu ziehen. Aber nach dem Gain, der ja 1/T berechnet, da hättest du dann halt nicht mehr y sondern y/T, und das kannst du gut abziehen.

= y' - y / T
= ( ( sigma(t) - y ) / T ) - ( y / T ) = sigma(t) / T
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Matlab-Aufgabe (Simulink) - Wieso löst man das so?

  Alt 4. Jan 2008, 23:50
Hallo,

das hast du schön erklärt, danke. Dann ist Matlab also nicht so schlau und bildet selbst den Hauptnenner, sondern das muss man selbst machen.

Was mir aber noch unklar ist: Wird diese Zurückführung zum Addierer nur ein einziges Mal durchlaufen? Vielleicht denke ich zu sehr programmiertechnisch, doch ich hätte nun gedacht, das wäre eine Art Endlosschleife.

Grüße
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#4

Re: Matlab-Aufgabe (Simulink) - Wieso löst man das so?

  Alt 5. Jan 2008, 03:50
Zitat von Matze:
Was mir aber noch unklar ist: Wird diese Zurückführung zum Addierer nur ein einziges Mal durchlaufen? Vielleicht denke ich zu sehr programmiertechnisch, doch ich hätte nun gedacht, das wäre eine Art Endlosschleife.
Nein, ständig. Dein Scope gibt dir ja auch ständig einen neuen Wert aus und nicht nur einen. Das ganze wird über LGS gelöst - aber die Solver kannst du ja entsprechend im Matlab Projekt einstellen.
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Matlab-Aufgabe (Simulink) - Wieso löst man das so?

  Alt 5. Jan 2008, 10:29
Hi,

das ist relativ komplex, muss ich sagen. So eine simple Schaltung und es steckt ganz schön viel dahinter. Aber vielen Dank.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz