|
mkxe |
Forum-Anfänger
|
|
Beiträge: 16
|
|
|
|
Anmeldedatum: 28.02.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 27.03.2017, 14:43
Titel: Simulink Minimum/Maximum
|
|
Hallo,
wie kann ich den kleinsten bzw. den größten Wert einer Funktion in Simulink finden und halten?
Sprich: Ich habe eine Funktion (ZB ein Sinus) und möchte nun bei jedem "Richtungswechsel" den atuellen Wert also den kleinsten bzw. größten Wert bis zum nächsten "Richtugnswechsel" halten.
Geht das irgendwie?
Vielen Dank
|
|
|
|
|
Andreas Goser |
Forum-Meister
|
|
Beiträge: 3.654
|
|
|
|
Anmeldedatum: 04.12.08
|
|
|
|
Wohnort: Ismaning
|
|
|
|
Version: 1.0
|
|
|
|
|
|
Verfasst am: 28.03.2017, 08:13
Titel:
|
|
Das wird schon gehen Zunächst einmal - "eine Funktion in Simulink" dürfte in diesem Fall einfach ein Signal sein, richtig? Dann bitte Informationen zur Art des Signals, weil alles Weitere durchaus davon abhängt.
Es könnte so funktionieren, dass 3 Werte betrachtet werden (mittels Delay Block oder Memory z.B.) zum Simulationszeitpunkt aktuell, Zeitschritt davor und noch ein Zeitschritt davor. Dann gilt es einfach zu prüfen, ob der "Zeitschritt davor" der größte von den Dreien ist.
Andreas
|
|
|
mkxe |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 16
|
|
|
|
Anmeldedatum: 28.02.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 28.03.2017, 10:46
Titel:
|
|
Ja ich meine natürlich ein Signal (sorry dafür).
Das Signal ist in etwa sinusförmig, nur positive werte und die Amplitude ändert sich ab und zu. Was ich nun möchte ist dass ich mir meine Spitzenwerte, also immer dann wenn ein Richtungswechsel stattfindet, merke und aus dem größten und kleinsten wert immer den mittelwert bilde.
Deine Idee mit den drei werten habe ich vom Prinzip her schon verstanden. nur habe ich noch keine idee wie ich das genau umsetze. kannst du das noch etwas näher erläutern?
|
|
|
Andreas Goser |
Forum-Meister
|
|
Beiträge: 3.654
|
|
|
|
Anmeldedatum: 04.12.08
|
|
|
|
Wohnort: Ismaning
|
|
|
|
Version: 1.0
|
|
|
|
|
|
Verfasst am: 28.03.2017, 13:23
Titel:
|
|
Beispiel mit R2016b
Beschreibung: |
|
Download |
Dateiname: |
test_gomatlab_117.slx |
Dateigröße: |
18.27 KB |
Heruntergeladen: |
442 mal |
|
|
|
mkxe |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 16
|
|
|
|
Anmeldedatum: 28.02.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 28.03.2017, 15:40
Titel:
|
|
Vielen Dank! Kannst du das auch nochmal für R2015b abspeichern? Dann kann ich es auch öffnen.
Ich bin zur Zeit unterwegs und könnte erst übermorgen Rückmeldung geben.
|
|
|
Andreas Goser |
Forum-Meister
|
|
Beiträge: 3.654
|
|
|
|
Anmeldedatum: 04.12.08
|
|
|
|
Wohnort: Ismaning
|
|
|
|
Version: 1.0
|
|
|
|
|
|
Verfasst am: 29.03.2017, 07:50
Titel:
|
|
Gerne. Im Anhang. 15b - unterwegs? Kommerzieller Automotive-Anwender?
Andreas
Beschreibung: |
|
Download |
Dateiname: |
test_gomatlab_117_15b.slx |
Dateigröße: |
16.42 KB |
Heruntergeladen: |
391 mal |
|
|
|
Elfriede |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 29.03.2017, 13:01
Titel:
|
|
Hallo ich denke die Lösung von Andreas trifft die Fragestellung nicht ganz.
Es geht ja darum die minimale und die maximale Amplitude zu ermitteln.
Hier mal ein Schubser in die richtige Richtung.
Was Du, mkxe, noch einbauen müsstest wäre eine Rücksetzbedingung, z.B. bei einem Nulldurchgang. Damit Du nach dem Lernen der maximlen/minimalen Amplitude auch wieder absolut kleinere Amplituden erkennst.
Grüße
Elfriede
Beschreibung: |
|
Download |
Dateiname: |
goMatlab_simulink_minimum_maximum.slx |
Dateigröße: |
16.91 KB |
Heruntergeladen: |
432 mal |
|
|
|
mkxe |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 16
|
|
|
|
Anmeldedatum: 28.02.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 30.03.2017, 10:10
Titel:
|
|
Vielen Dank! das sieht schon mal sehr gut aus und mit der maximalen ampltitude genau das was ich suchte.
Allerdings weiss nicht genau was du meinst mit rücksetzbedingung. Was muss ich zurücksetzen?
das Problem was jetzt noch besteht ist dass ich für die minmale Amplitude nur die negativen werte bekomme. Mein signal hat aber nur positive wert und schwankt zb nur zwischen 5 und 2.
nun habe ich leider keine idee wie ich das problem lösen kann. Im prinzip bräuchte ich ja nur einen entsprechenden startwert (welcher jetzt 0 ist) der dann mit dem signal verglichen wird.
|
|
|
mkxe |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 16
|
|
|
|
Anmeldedatum: 28.02.17
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 07.04.2017, 08:45
Titel:
|
|
Hallo,
ich muss nochmal stören.
das mit dem minimum und maximum funktioniert wunderbar und genau so wie ich mir das gedacht habe.
allerdings funktioniert das nur mit diskreten signalen korrekt. in meinem modell in das ich das integrieren möchte benutze ich aber den solver ode45 und mit diesem funktioniert das nicht mehr.
gibt es dafür irgendeine lösung?
|
|
|
|
|
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.
|
|