|
Calle |
Forum-Century
|
|
Beiträge: 145
|
|
|
|
Anmeldedatum: 08.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 09.04.2012, 09:53
Titel: Embedded MATLAB Function
|
|
Hallo,
ich habe ein Simulink Modell mit einem Embedded-MATLAB-function Block. in dieser Funktion rufe ich eine weitere FUnktin auf.
Es ist nicht wirklich eine FUnktion. ich habe mit der Curve-Fitting-Toolbox eine Datei erstellt, mit der ich bei gegebnene x-wert einen y-wert bekomme. Aber das aufrufen ist wie eine funktion.
Allerdings kommt eine Fehlermeldung
Die FUnktion fängt wie folgt an:
temperature und pressure sind dabei die zwei dateien, die mit der Curve-fitting-Toolbox erstellt wurden.
Wenn ich die Funktion aus MATLAB aus starte, funktioniert das ohne Probleme.
Meine Fragen lauten:
kann ich keine funktion in einer funktion im embedded-matlab-function aufrufen? (Wenn das eine Funktion ist)
wenn ja, wieso bekomme ich fehler?
was mache ich falsch?
mfg
|
|
|
|
|
DSP |
Forum-Meister
|
|
Beiträge: 2.117
|
|
|
|
Anmeldedatum: 28.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2014b
|
|
|
|
|
|
Verfasst am: 09.04.2012, 11:08
Titel:
|
|
Soweit ich die Doku verstanden habe, ist der Funktionsaufruf nicht möglich
Zitat: |
Unsupported MATLAB Features
Calling out to functions on the path (except for simulation)
|
Es ist hier noch ein Bsp. aufgeführt, in der eine eigene mean Funktion innerhalb des Blocks verfasst und aufgerufen wird. Allerdings bezweifel ich, dass dies für deine Funktion ebenfalls geht. Der Befehl load ist vermutlich schon ein Fallstrick...in dem Block sind nur einfache Befehle und Operationen möglich.
|
|
|
Calle |
Themenstarter
Forum-Century
|
|
Beiträge: 145
|
|
|
|
Anmeldedatum: 08.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 09.04.2012, 11:34
Titel:
|
|
Das ist natürlich schade. Gibt es denn noch eine Andere möglichkeit, mit der ich eine Funktion in Simulink simulieren kann? Habe irgendwie keinen anderen block dazu gefunden.
|
|
|
DSP |
Forum-Meister
|
|
Beiträge: 2.117
|
|
|
|
Anmeldedatum: 28.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2014b
|
|
|
|
|
|
Verfasst am: 09.04.2012, 11:44
Titel:
|
|
Hast du denn mal versucht deine Funktion mit in den Block zu packen, so dass sie dort aufgerufen werden kann? Ich habe mal noch in der Liste der möglichen Matlab Fct. für diesen Block geschaut...load ist da nicht dabei. Das sollte ja wohl aber auch nicht das Problem sein. Dann übergibst du die beiden Vektoren/Signale eben mit an den emb. matlab fnc Block.
|
|
|
Calle |
Themenstarter
Forum-Century
|
|
Beiträge: 145
|
|
|
|
Anmeldedatum: 08.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 09.04.2012, 12:12
Titel:
|
|
Es ist ja wie gesagt nicht wirklich eine Funktion. Ich habe von einer Kurve die Eingangs und Ausgangsdaten gegeben. Damit habe ich in der Curve-Fitting-Toolbox mit der Smoothing-Spline eine Datei erstellt. Wenn ich die Datei öffne, steht da nichts drinn. Aber wenn ich das wie eine Funktion aufrufe
bekomme ich den Ausgangswert.
Von daher kann ich die Funktion nicht mit hineinpacken. Dann muss ich mir doch etwas anderes überlegen. ABer ganz vielen Dank schon einmal für deine Hilfe
|
|
|
Calle |
Themenstarter
Forum-Century
|
|
Beiträge: 145
|
|
|
|
Anmeldedatum: 08.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 10.04.2012, 04:03
Titel:
|
|
Habe es gelöst bekommen.
Für alle die es Interressiert:
Ich habe mir für die Werte eine neue Funktion gesucht (Power), da dieser aber nicht für negative x-werte eine Funktion erstellen kann, habe ich dieses zunächst ausgelassen. Da es aber keine andere Wahl (für mich) gab, habe ich diese Funktion einfach von hand umgestellt und siehe da, es funktioniert.
Diese Funktion kann ich nun auch aus einen embedded-MATLAB-function Block aufrufen. Dazu muss in der Funktion allerdings noch
eingefügt werden, damit es mit der embedded-MATLAB-function lauffähig ist.
Ich danke aber trotzdem für deine Hilfe.
|
|
|
|
|
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.
|
|