|
|
Matlabfunctionblock Funktionsweise in Simulink |
|
BA |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 24.10.2013, 07:56
Titel: Matlabfunctionblock Funktionsweise in Simulink
|
|
Hallo,
ich habe ein Simulink Modell und benutze darin einen Marlabfunction Block. Wenn ich den jetzt mit gesetzten Punkten Stück für Stück ausführen will, um zu sehen, was er in der Funktion setzt und was nicht, dann muss ich tausendmal fortführen drücken (Die Simulationszeit ist noch bei null und er hat den Block aber schon 100 mal ausgeführt).
Wie oft ruft sich so ein Block den selber auf bzw. wie oft in 1 ner Sekunde durchläuft der die Funktion? Kann man das irgendwo einstellen?
Wie funktioniert so ein Matlabfunctionblock überhaupt?
Wäre super, wenn mir wer weiterhelfen könnte
|
|
|
|
|
Andreas Goser |
Forum-Meister
|
|
Beiträge: 3.654
|
|
|
|
Anmeldedatum: 04.12.08
|
|
|
|
Wohnort: Ismaning
|
|
|
|
Version: 1.0
|
|
|
|
|
|
Verfasst am: 24.10.2013, 08:23
Titel:
|
|
Der Block ruft sich für jeden Zeitschritt auf. Zeitschritte können aktiv gesetzt werden oder Simulink macht das automatisch. Es gibt feste und variable Schrittweiten. Ausserdem bruach Simulink manchmal "minor time steps" die nich angezeigt werden.
Um die Frage also komplett zu beantworten gilt es sich mit den Solvern zu beschäftigen.
Andreas
|
|
|
BA |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 24.10.2013, 08:39
Titel:
|
|
Vielen Dank für deine Antwort.
Also angemommen ich setzte meinen Minimalstep im Solver auf 0.1, dann dürfte die Matlabfunction also nur maximal alle 0.1 Sekunden aufgerufen/ausgeführt werden?
Wäre schön, wenn du mir nochmal schreibst.
|
|
|
Hiwi-Job |
Forum-Fortgeschrittener
|
|
Beiträge: 71
|
|
|
|
Anmeldedatum: 28.09.11
|
|
|
|
Wohnort: Hannover
|
|
|
|
Version: 2013a
|
|
|
|
|
|
Verfasst am: 24.10.2013, 15:13
Titel:
|
|
Hallo!
Nein, wenn Matlab noch "minor time steps" benötigt, kann die Funktion auch häufiger aufgerufen/ausgeführt werden. Wenn du zum Beispiel einen Integrator-Block eingebaut hast, werden "minor time steps" benötigt.
Viele Grüße!
|
|
|
Andreas Goser |
Forum-Meister
|
|
Beiträge: 3.654
|
|
|
|
Anmeldedatum: 04.12.08
|
|
|
|
Wohnort: Ismaning
|
|
|
|
Version: 1.0
|
|
|
|
|
|
Verfasst am: 25.10.2013, 07:27
Titel:
|
|
Richtig. Aber die Ausgabe erfolgt nur alle 0.1 Sekunden. Je nach dem wie man das Modell debuggt sieht man Minor Time Steps oder nicht.
Andreas
|
|
|
BA |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 25.10.2013, 07:54
Titel:
|
|
Ok, da der so oft aufgerufen wird, benötige ich sowas wie eine delay/Stopwatch Funktion.
Das heißt, mein Programmablauf soll um eine gewisse Zeit innehalten, das Simulink Modell jedoch weiterlaufen.
(Ich habe als Eingang den Spannungsverlauf der Ladekurve einer Batterie. Jetzt will ich den Strom ausschalten. Danach fällt die Spannung dann erstmal ab. Nach 10 Sekunden möchte ich die Spannung aber erst messen und den Wert Speichern.)
Habt ihr da ne Idee, wie man das umsetzen kann. Denn der Matlabfunctionblock erkennt irgendwie nicht die Funktion tictoc oder Stopwatch.
Vielen Dank nochmal
|
|
|
|
|
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.
|
|