|
|
for Schleife außerhalb zwei Funktionen |
|
BlackDice |
Forum-Century
|
|
Beiträge: 148
|
|
|
|
Anmeldedatum: 08.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2020b
|
|
|
|
|
|
Verfasst am: 12.04.2021, 14:30
Titel: for Schleife außerhalb zwei Funktionen
|
|
Moin zusammen,
ich habe zwei Funktionen. Die eine stößt eine Messung an und die andere Plottet die Messwerte. Das möchte ich auch bei mehreren Messungen in dieser Reihenfolge machen.
Kann ich dafür eine for Schleife außerhalb der beiden Funktionen schreiben und den Schleifen Wert in den Funktionen nutzten? Oder gibt es für so etwas eine andere Möglichkeit?
Viele Grüße
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 12.04.2021, 15:08
Titel:
|
|
Hallo,
Zitat: |
Kann ich dafür eine for Schleife außerhalb der beiden Funktionen schreiben |
Ich wüsste nicht, was dagegen spricht.
Zitat: |
den Schleifen Wert in den Funktionen nutzten? |
Funktionen bedeutet getrennte Workspaces. Das heißt, dass alle benötigten Daten übergeben werden müssen.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
BlackDice |
Themenstarter
Forum-Century
|
|
Beiträge: 148
|
|
|
|
Anmeldedatum: 08.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2020b
|
|
|
|
|
|
Verfasst am: 12.04.2021, 15:19
Titel:
|
|
Moin Harald,
wie kann ich denn aus dem Workspace einer Funktion auf Variablen einer Schleife außerhalb zugreifen?
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 12.04.2021, 15:24
Titel:
|
|
Hallo,
wie gesagt: übergeben.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
BlackDice |
Themenstarter
Forum-Century
|
|
Beiträge: 148
|
|
|
|
Anmeldedatum: 08.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2020b
|
|
|
|
|
|
Verfasst am: 14.04.2021, 09:19
Titel:
|
|
Moin,
ich habe mir das so überlegt:
Die Variable v benutzte ich dann auch innerhalb der Funktionen. Allerdings bekomme ich den Fehler "Too many input arguments."
Ich weiß nicht wo ich in der Doku danach suchen muss.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 14.04.2021, 10:08
Titel:
|
|
Hallo,
die Funktionen MeasurementStart und AxesValue müssen v auch entgegennehmen, d.h. die erste Zeile bzw. die Deklarationszeile muss so aussehen:
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
BlackDice |
Themenstarter
Forum-Century
|
|
Beiträge: 148
|
|
|
|
Anmeldedatum: 08.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2020b
|
|
|
|
|
|
Verfasst am: 14.04.2021, 13:02
Titel:
|
|
Perfekt, danke.
Wie kann ich es so programmieren, dass die Schleife einen weiter zählt, wenn ich den Button drücke?
Ich komme aber grad nicht drauf wie ich es funktionierend programmieren kann.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 14.04.2021, 13:29
Titel:
|
|
Hallo,
wenn du die Schleife in einem Callback hast, werden die Iterationen unabhängig vom Betätigen weiterer Buttons ausgeführt.
Mir ist also nicht klar, was folgendes bedeuten und bezwecken soll:
Zitat: |
dass die Schleife einen weiter zählt, wenn ich den Button drücke? |
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
BlackDice |
Themenstarter
Forum-Century
|
|
Beiträge: 148
|
|
|
|
Anmeldedatum: 08.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2020b
|
|
|
|
|
|
Verfasst am: 14.04.2021, 15:19
Titel:
|
|
Moin, stimmt du hast recht. Die for Schleife ist überflüssig. Wenn ich es so schreibe bekomme ich natürlich "Unrecognized function or variable 'v'." Wie kann ich v nur in dieser Funktion erstellen und nutzen?
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 14.04.2021, 15:59
Titel:
|
|
Hallo,
vermutlich willst du also v bei Start der App auf 1 oder 0 setzen und dir den Wert für die nächste Ausführung merken?
Das geht mit persistent. Wichtig wird sein, dass du die persistent-Variable wieder zurücksetzt, wenn du die App schließt. Ich meine, das geht mit
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
BlackDice |
Themenstarter
Forum-Century
|
|
Beiträge: 148
|
|
|
|
Anmeldedatum: 08.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2020b
|
|
|
|
|
|
Verfasst am: 16.04.2021, 11:18
Titel:
|
|
Kann ich eine for Schleife auch erst weiter laufen lassen wenn ich ein Call back von einem Button bekomme?
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 16.04.2021, 11:42
Titel:
|
|
Hallo,
technisch wohl möglich, aber meiner Meinung nach keine gute Idee. Für mich fühlt sich das an, als würde man ein Paket von Hamburg nach München über China schicken.
Hast du versucht, den Vorschlag umzusetzen? Welche Probleme sind dabei ggf. aufgetreten?
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
BlackDice |
Themenstarter
Forum-Century
|
|
Beiträge: 148
|
|
|
|
Anmeldedatum: 08.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2020b
|
|
|
|
|
|
Verfasst am: 16.04.2021, 11:55
Titel:
|
|
Ich habe versuch die Variable v, die auch in in meine Funktionen übergeben möchte, nach dem drücken eines Buttons zu erzeugen. So wie ich es aber geschrieben habe wurde in der if Bedingung v jedes mal aufs neue auf 1 gesetzt.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 16.04.2021, 12:18
Titel:
|
|
Hallo,
ich hatte dir vorgeschlagen, eine persistent-Variable zu verwenden, siehe
https://de.mathworks.com/help/matlab/ref/persistent.html und dort z.B. "Count Calls to Function".
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
BlackDice |
Themenstarter
Forum-Century
|
|
Beiträge: 148
|
|
|
|
Anmeldedatum: 08.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2020b
|
|
|
|
|
|
Verfasst am: 16.04.2021, 12:40
Titel:
|
|
Ok danke, jetzt hat das für mich Sinn gemacht.
So habe ich es jetzt programmiert:
Kann man das so stehen lassen oder gibt es da noch Verbesserungsvorschläge?
|
|
|
|
Gehe zu Seite 1, 2 Weiter
|
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.
|
|