WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Verschiedene Maxima/Minima speichern

 

Hendrik_1
Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 18.06.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.06.2009, 18:37     Titel: Verschiedene Maxima/Minima speichern
  Antworten mit Zitat      
Hallo,

ich habe 2 Ausgänge 2er Subsysteme. Der eine Ausgangswert gilt solange, wie der Eingang in die Subsysteme steigt. Fällt der Eingang muss ich den erreichten Wert speichern und die Ausgabe des 2. Subsystems davon abziehen.
beginnt der eingang wieder zu steigen, muss ich wieder den ausgang des ersten systems dazu addieren und so weiter...
Das Problem ist das speichern der jeweiligen maxima und minima. ich habe es über eine embedded matlabfunction und den befehl max probiert. da wird aber immer ein neuer wert ausgegeben. hat jemand eine idee?
gibt es dafür fertige blocks?


mfg

Hendrik
Private Nachricht senden Benutzer-Profile anzeigen


Volker81k
Forum-Anfänger

Forum-Anfänger


Beiträge: 26
Anmeldedatum: 12.05.09
Wohnort: Zürich
Version: R2006a
     Beitrag Verfasst am: 30.06.2009, 08:32     Titel:
  Antworten mit Zitat      
Moin Hendrik,

es gibt die Blöcke "MinMax" und "MinMax Running Resettable". Der erste gibt von zwei Eingangssignalen das grössere bzw. kleinere aus. Das Speichern kann hierbei über eine Rückführung erreicht werden.
Der zweite enthält bereits den Speicher und einen Reseteingang.
Hilft dir das?

Grüsse
Volker
Private Nachricht senden Benutzer-Profile anzeigen
 
Hendrik_1
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 18.06.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.06.2009, 10:13     Titel:
  Antworten mit Zitat      
Hallo Volker,

der Block "MinMax Running Resettable" scheint fast das richtige zu sein. Probleme gibt es beim Umschalten, also zu dem Zeitpunkt, in dem das Eingangssignal wieder steigt. Das Problem ist, das ich die Initial Condition nicht kenne und Sie sich auch immer ändern kann.
ich habe mal ein system angehängt. meine eigentlichen subsysteme habe ich durch 2 funtionsblöcke ersetzt. aber auf die kommt es auch nicht an. ich hoffe aber so lässt sich das problem leichter erkennen.

show.mdl
 Beschreibung:

Download
 Dateiname:  show.mdl
 Dateigröße:  31.11 KB
 Heruntergeladen:  573 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Volker81k
Forum-Anfänger

Forum-Anfänger


Beiträge: 26
Anmeldedatum: 12.05.09
Wohnort: Zürich
Version: R2006a
     Beitrag Verfasst am: 30.06.2009, 11:11     Titel:
  Antworten mit Zitat      
Also, ich habe deine Schaltung ein wenig modifiziert. Der untere Teil mit dem Differenzierer war nur dafür da um die Steigung zu ermitteln und damit das Subtraktionsverhalten zu steuern, richtig? Daher habe ich diesen Teil erst mal terminiert.

Die pos. Steigung wird über den Block "Detect Increase" ermittelt. Bei steigendem Signal wird der Schalter angesteuert und nur das Maximum ausgegeben.

Bei fallendem Signal gibt der "Detect Increase" "0" aus und der Schalter nimmt das andere Signal (Einstellung im Schalter: u2 ~= 0).

Steigt das Signal wieder, wird das Maxium durch einen pos. Flankenimpuls auf den aktuellen Wert des Eingangssignals gesetzt. Das löst das Problem mit der InitialCondition.

Ich bin mir nicht sicher ob das genau das ist was du brauchst. Sonst weisst du ja wo du mich findest Smile.

Grüsse
Volker

show_V2.mdl
 Beschreibung:

Download
 Dateiname:  show_V2.mdl
 Dateigröße:  31.24 KB
 Heruntergeladen:  487 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.06.2009, 12:50     Titel:
  Antworten mit Zitat      
vielen dank!

es sieht so aus, als wäre das genau das, was ich suche. das ausgangssignal stimmt zwar noch nicht hundertprozentig, aber ich denke, das liegt an meinen subsystemen.

mfg

Hendrik
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.