|
|
Matlab Skript in Simulink einbinden |
|
Azador |
Forum-Anfänger
|
|
Beiträge: 14
|
|
|
|
Anmeldedatum: 22.01.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 18.06.2008, 12:08
Titel: Matlab Skript in Simulink einbinden
|
|
Hallo,
ich hab folgendes Problem. Ich habe einen Zustandsvektor den (Position, Winkel) mit dem ich gern eine Position ausrechnen würde die sich aus den einzelnen Winkel zusammensetzt.
Dabei sieht die FUnktion wie folgt z.B. aus:
y = cos(u(1))+cos(u(1)+u(2))
da sich die Funktion in Abhängigkeit von einer anderen Variable dauert ändert, kann ich nicht einfach einen Function Bloc nehmen und die Signale als Input verwenden.
Ich hab nun ein Skript geschrieben, dass die Gleichung für die einzelnen Fälle ausrechnet. Ich brauch halt nur noch die Winkel (u(1),u(2) usw..)
Wie kann ich nun ein Matlab Skript in einem Simulink Modell einbinden, ein Eingangssignal dafür festlegen und das Ausgangssignal abgreifen?
Ich hoffe ich konnte mein Problem genau genug erklären. Danke schon mal
|
|
|
|
|
josekamara |
Forum-Meister
|
|
Beiträge: 529
|
|
|
|
Anmeldedatum: 26.04.08
|
|
|
|
Wohnort: München
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 18.06.2008, 12:40
Titel:
|
|
Hallo,
In Simulink Library Browser gibt es uns User-Defined Functions genügend Blöcke(hier m-files), die man mit Matlab einbinden kann.
Jose
_________________
Simulation
|
|
|
Azador |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 14
|
|
|
|
Anmeldedatum: 22.01.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 18.06.2008, 12:56
Titel:
|
|
Geht leider nicht so richtig.
Also ich hab zwar nen Matlab-Fcn Block und wenn ich in diesem die Berechnungsvorschrift
y = U(1)....usw eingebe, dann funktionierts ohne Probleme.
Nun hab ich die Berechnungsvorschrift im Workspace als Variable (char) stehen. Wie bekomme ich das jetzt hin, dass ich diesen Ausdruck in den Function Block bekomme?
Ansonsten hab ich nur den "Level 2 M-File S-Function" Block, der mir aber meckert wenn ich das M-File eintrage, weil er dann sagt, ist keine Function ist ein Skript (wo er auch Recht hat) Ich will ja auch nur das Skript einbinden
|
|
|
Azador |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 14
|
|
|
|
Anmeldedatum: 22.01.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 20.06.2008, 11:51
Titel:
|
|
Also ich hab mich mal mit der Embedded M-Function etwas näher beschäftigt und ich denke ich kann die gut für mein Problem verwenden, allerdings hab ich folgendes Problem.
Wenn ich in dem Embedded File eine Schleife schreibe
Dann kommt folgende Fehlermeldung
"Variable "Sum_A" is undefined on som execution paths." Dazu ist das Sum_A rechts vom '=' im Else Fall hervorgehoben.
??Weiß da jemand Rat? Danke.
|
|
|
Christoph_ |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.06.2008, 13:01
Titel:
|
|
Hallo,
Embedded Matlab ist eine für effiziente Umsetzung in C-Code für z.B. eingebettete Steuergeräte gedachte Teilmenge von Matlab, die folglich einige Einschränkungen mit sich bringt, d.h. du kannst nicht allgemeine Matlab-Scripte damit ausführen.
Eine der Einschränkungen ist, dass der Compiler aus dem Programmtext statisch, d.h. bevor es das erste mal ausgeführt wird, die Datentypen und Größen sämtlicher Variablen herausanalysieren muss. Dazu muss er für jede Variable die erste Zuweisung finden.
Das geht in deinem Fall zwar, aber nur theoretisch. Er möchte wohl lieber sowas haben:
|
|
|
|
|
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.
|
|