|
|
Script wahlweise mit Attributen starten |
|
Max_U |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.12.2010, 11:32
Titel: Script wahlweise mit Attributen starten
|
 |
Hallo Zusammen,
ich habe ein Script, welches ich normal über das M-File starten möchte und eventuell auch aus dem Command Window mit Attributen.
Mit Starten über das M-File meine ich, dass ich das M-File öffne und dann mit F5 den Code ausführe.
Mit Starten aus dem Command Window mit Attributen meine ich, dass ich das Script ausführen will per Befehl und ihm dabei Attribute mitübergeben möchte.
Das Script erzeugt ein Simulink Modell.
Attribute habe ich 2:
- Den Pfad für das Modell
- Ein Flag ob das Modell kompiliert werden soll oder nicht.
Mein Code:
Wenn ich nun das Script per M-File starte bekomme ich den Fehler:
Zitat: |
??? Reference to a cleared variable modell_pfad
|
Ist mein Ansatz falsch? Wie kann ich Matlab sagen, dass Attribute dabei sein können oder auch nicht? Und wenn nicht, dass er einen Default-wert annehmen soll?
Vielen Dank.
Gruß
Max
|
|
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 01.12.2010, 11:46
Titel: Re: Script wahlweise mit Attributen starten
|
 |
Hallo Max_U,
Damit kannst Du die Funktion "Erstellen" ohne Argumente oder mit einem leeren ersten Argument aufrufen. In beiden Fällen wird die Benutzer_eingabe() aufgerufen.
Gruß, Jan
|
|
|
Max_U |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.12.2010, 12:14
Titel:
|
 |
Hallo Jan S,
"nargin" funktioniert soweit, wunderbar, danke!
die function "Erstellen" ist mein Hauptprogramm. (So lautet auch der Dateiname der M-File)
wenn ich nun im ersten Schritt den Code wie folgt ändere(else Bedingung eingefügt):
bekomme ich wieder den Fehler:
Zitat: |
??? Reference to a cleared variable modell_pfad.
Error in ==> Erstellen at 6
[pathstr, name, ext, versn] = fileparts(modell_pfad);
|
der Aufruf erfolgt im Command Window mit:
Zitat: |
Erstellen('C:\Test_Model\test.mdl') |
darf ich die übergebenen Parameter nicht in dieser Form nutzen?
Danke.
Gruß
Max[/quote][/b]
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 01.12.2010, 12:58
Titel:
|
 |
Hallo Max_U,
Zitat: |
??? Reference to a cleared variable modell_pfad.
Error in ==> Erstellen at 6
[pathstr, name, ext, versn] = fileparts(modell_pfad);
|
Ich finde das "cleared" sehr merkwürdig. Hast Du vielleicht noch einen CLEAR in Deiner Funktion, den Du in der geposteten Version weggelassen hast?? Ein CLEAR hätte hier zumindest nichts zu suchen.
Gruß, Jan
|
|
|
Max_U |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.12.2010, 13:31
Titel: gelöst
|
 |
Hallo Jan S,
ja das habe ich beim Kopieren des betroffenen Ausschnitts tatsächlich ausgelassen.
Hatte ein "clear('all');" am Anfang der Funktion.
Vielen Dank für deine gute Hilfe!
Schönen Tag dir noch.
Gruß
Max
|
|
|
|
|
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.
|
|