|
|
Matlab funktionsblock Zeitparameter?? |
|
Kral1987 |

Forum-Anfänger
|
 |
Beiträge: 13
|
 |
|
 |
Anmeldedatum: 14.08.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.08.2014, 15:23
Titel: Matlab funktionsblock Zeitparameter??
|
 |
Hallo Leute,
ich bin noch ein Neuling bei Matlab und ich hoffe ihr könnt mir bei meinem Problem helfen.
und zwar habe ich eine elektrische Schaltung über Sim Powersystems aufgebaut.
Natürlich mit Anbindung an eine Matlab Funktion.
Meine Schaltung wird sich später mit der Umladung von Batteriezellen (Balancing) beschäftigen.
und zwar soll der Vorgang erst gestartet werden wenn der Ladestrom 0 ist und dieser Zustand 5 Minuten anhält.
als Eingangsvariable habe ich jetzt "Strom" wie kann ich aber die Zeit noch realisieren? hab da noch nicht so viel Plan.
if Strom== 0 && % wie bringe ich hier die dauer von 5 minute (600s) rein
ich nehme jede Hilfe dankend an
Vielen Dank!
|
|
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 14.08.2014, 15:58
Titel:
|
 |
|
|
Kral1987 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 13
|
 |
|
 |
Anmeldedatum: 14.08.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.08.2014, 16:42
Titel:
|
 |
Hallo Harald, Hallo Forum,
erstmal vielen Dank für die schnelle Antwort!
habe es nun so probiert:
function [y1,y2,y3,y4,y5,y6,y7,y8] = fcn (Strom)
persistent k
k=0;
if strom ~= k
y1=0;
y2=0;
y3=0;
y4=0;
y5=0;
y6=0;
y7=0;
y8=0;
elseif %% bestimmte Schalter werden dann geschlossen
...jetzt kann ich zwar vergleichen aber wie kann ich denn sicherstellen, dass er wirklich erst schaltet wenn mindestens 5 Minuten kein Strom geflossen ist. Denn hier würde er ja die Schalter ansteuern sobald kein Strom fließt.
Vielen Dank!
mfg,
KraL
Vielen Dank!
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 14.08.2014, 17:00
Titel:
|
 |
Hallo,
du speicherst nun den Schaltzustand als persistent-Variable, ich meinte aber die Schaltzeit.
Die Verwendung von persistent macht bisher auch wenig Sinn, weil ja k anfangs auf 0 gesetzt und der vorherige Zustand eben somit nicht gespeichert wird.
Grüße,
Harald
|
|
|
Kral1987 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 13
|
 |
|
 |
Anmeldedatum: 14.08.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.08.2014, 19:55
Titel:
|
 |
Hallo Harald, Hallo Forum,
nochmals Danke!
das k hatte ich nur gleich Null gesetzt damit ich eben bestimmen kann,
ob ein Strom fließt.
für meinen Aufbau ist es wichtig, das 5 Minuten kein Strom fließen darf.
Erst dann dürfen sich die Schaltzustände (y1-y überhaupt ändern.
Ich weiß noch nicht genau wie ich das mit persistent machen kann.
Persistent ist ja wenn ich richtig verstanden habe eine lokale Variable die einen Wert speichert.
Danke für Eure Hilfe
mfg,
KraL
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 14.08.2014, 20:22
Titel:
|
 |
Hallo,
Zitat: |
für meinen Aufbau ist es wichtig, das 5 Minuten kein Strom fließen darf. |
Dann nimm doch die Systemzeit (Block Clock) als Eingang und frage sie ab?
Und wenn es um die vergangene Zeit seit dem Einschaltvorgang geht, dann s.o.
Grüße,
Harald
|
|
|
Kral1987 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 13
|
 |
|
 |
Anmeldedatum: 14.08.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.08.2014, 21:03
Titel:
|
 |
Hallo Harald, Hallo Forum,
ich peile das mit persistent noch nicht ganz.
wie speichere ich denn den ersten Zeitpunkt?
bzw wie frage ich die Clock zeit ab?
finde da irgendwie nichts
Sorry das sind wahrscheinlich ganz einfache Fragen...
aber bin ein echter Neuling.
Danke
mfg,
KraL
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 14.08.2014, 21:22
Titel:
|
 |
Hallo,
Zitat: |
bzw wie frage ich die Clock zeit ab? |
Clock ist ein Block unter Sources, den du in deinen MATLAB-Function Block schicken kannst.
Zitat: |
wie speichere ich denn den ersten Zeitpunkt? |
t = (der Eingang, der als Clock reinkommt)
In dem Link ist die Initialisierung von persistent erklärt und das Überschreiben, mehr gibts dazu an sich nicht zu sagen.
Grüße,
Harald
|
|
|
Kral1987 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 13
|
 |
|
 |
Anmeldedatum: 14.08.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 15.08.2014, 21:20
Titel:
|
 |
Hallo Harald, Hallo Forum,
bei mir ist das Problem das ich mir noch nicht genau vorstellen
kann wie Matlab/Simulink mit der Zeit umgeht.
Sollte ich den 1 Zustand als persistent speichern?
persistant Zeit;
Zeit= t; %% t ist hierbei das Clock eingangssignal.
Selbst wenn ich das so richtig ist wie kann ich nun sicherstellen, dass die Schalter erst nach einer Wartezeit von 5 minuten betätigt werden.
weiß einfach nicht wie ich das realisieren kann.
1-2Programmzeilen würden mir sicher schon helfen damit ich es nachvollziehen kann.
Bzw wie kann ich erreichen das ein Schalter erst nach einer bestimmten Zeit geschlossen werden soll?
Vielen Dank (ich weiß ich bin schwer von Begriff)
mfg,
KraL
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 17.08.2014, 21:16
Titel:
|
 |
Hallo,
du musst dich wirklich an die Vorgaben aus dem Link halten.
Für weitere Unterstützung musst du weitere Informationen liefern:
- ist das Ereignis einmalig?
- was soll bei mehrmaligem Eintreten des Ereignisses vor Ablauf der 5 Minuten passieren? Zählt das erste Eintreten oder was?
- gibt es ein "Auschalten"? Wie wird das ausgelöst?
Grüße,
Harald
|
|
|
Kral1987 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 13
|
 |
|
 |
Anmeldedatum: 14.08.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 29.08.2014, 15:09
Titel:
|
 |
Hallo Harald, Hallo Forum
mein Internet war die letzte Woche im Eimer.
Danke das hat mir sehr geholfen!
mfg,
KraL
|
|
|
|
|
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 - 2025
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.
|
|