WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

M-File in Simulink importieren

 

mdmrec
Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 18.02.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2009, 15:56     Titel: M-File in Simulink importieren
  Antworten mit Zitat      
Hallo zusammen,

ich habe eine wahrscheinlich etwas leichtere Frage an euch... habe mich schon im Forum umgesehen aber nichts passendes/keine Lösung dazu gefunden.

Ich habe eine M-File geschrieben, in dem die y-Werte eines einfachen Kosinus zu den Zeiten t=0,1,2,3 definiert werden.
Also habe ich t1,t2,t3,t4 und dazu jeweils y1,y2,y3,y4. Das sind 4 Punkte, die ich dann gerne in einem Simulink Model benutzen würde, z.B. direkt ausgeben auf einen SCOPE (einfachheitshalber).
Ich weiss, dass man TXT Files in Simulink importieren kann und auch dass man in der M-File direkt einen Plot generieren kann - würde es aber dennoch gerne in einem SCOPE haben.

Wie kann ich also eine M-File in Simulink importieren und dann auf einem SCOPE die Punkte ausgeben bzw. die Werte weiter nutzen?

Wäre um alle Antworten sehr dankbar!!

MfG,
mdmrec
Private Nachricht senden Benutzer-Profile anzeigen


josekamara
Forum-Meister

Forum-Meister


Beiträge: 529
Anmeldedatum: 26.04.08
Wohnort: München
Version: ---
     Beitrag Verfasst am: 18.02.2009, 16:59     Titel:
  Antworten mit Zitat      
Hallo,
Du kannst lieber die daten in einer mat-file speichern und von mat-file in simulink importieren.
_________________

Simulation
Private Nachricht senden Benutzer-Profile anzeigen
 
mdmrec
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 18.02.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2009, 17:16     Titel:
  Antworten mit Zitat      
Ola Jose Wink

das muss doch mit der M-File auch gehen? Es gibt da sogar Blöcke dafür im Simulink, aber ich bekomme das einfach nicht hin.

Hier ist der Quellcode von der M-File:

Code:

%test.m
t=(0:1:3);
y=cos(t);
save('testdaten.m','t,'y');
 


Diese M-File generiert eine andere M-File (testdaten.m) in der dann die Werte theoretisch stehen sollten, auch wenn man sie nicht mit dem Matlab-Editor lesen kann (nur Hyroglyphen).

Nun möchte ich eine der Beiden Dateien im Simulink einbinden, je nachdem welche tut... wie mach ich das? Eine der Beiden sollte doch funktionieren? Bin etwas verzweifelt...

MfG,
mdmrec

edit by steve: Code-Umgebung ergänzt! Bitte selbständig formatieren!
Private Nachricht senden Benutzer-Profile anzeigen
 
josekamara
Forum-Meister

Forum-Meister


Beiträge: 529
Anmeldedatum: 26.04.08
Wohnort: München
Version: ---
     Beitrag Verfasst am: 18.02.2009, 17:24     Titel:
  Antworten mit Zitat      
versuch mal mit der Embedded Matlab Function. Sie ist unter User defined Function in Simulink Library zu finden.
_________________

Simulation
Private Nachricht senden Benutzer-Profile anzeigen
 
mdmrec
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 18.02.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2009, 17:41     Titel:
  Antworten mit Zitat      
Hey cool das scheint zu funktionieren.
habe aber nun 4 waagrechte Striche, wahrscheinlich funktioniert es nicht einfach mit nur 4 Punkten oder?
Habe nun folgenden Quellcode im EMBEDDED MATLAB FUNCTION:

function y=fcn(u)
t=(0:1:3);
y=cos(t);

Mir bleibt nur die Frage warum es nicht auch mit dem Einbinden einer M-File funktioniert... das wäre wichtig zu wissen.

MfG,
mdmrec
Private Nachricht senden Benutzer-Profile anzeigen
 
josekamara
Forum-Meister

Forum-Meister


Beiträge: 529
Anmeldedatum: 26.04.08
Wohnort: München
Version: ---
     Beitrag Verfasst am: 18.02.2009, 18:26     Titel:
  Antworten mit Zitat      
Die einzigen Möglichkeiten, die ich kenne, sind die mit der EMBEDDED MATLAB FUNCTION oder M-FILE S-FUNCTION. Bei deinem Fall wäre die erste Möglichkeit einfacher.
Hoffentlich kriegst du andere Vorschläge.

Schöne Grüße.
_________________

Simulation
Private Nachricht senden Benutzer-Profile anzeigen
 
mdmrec
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 18.02.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2009, 18:28     Titel:
  Antworten mit Zitat      
danke Jose.

MfG,
mdmrec
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.02.2009, 18:36     Titel:
  Antworten mit Zitat      
Hab nicht alles gelesen, aber mir ist
Zitat:
Code:
save('testdaten.m','t,'y');
augefallen.
Die erstellte Datei hat zwar die Erweiterung m, ist aber kein m-File im Sinne von Matlab, d.h. keine Funktion und kein Skript. Vielmehr ist es ein mat-File, welches die Variablen t und y enthält, die mit load wieder geladen werden können. Da es sich nicht um ein ASCII-File handelt stellt der Editor den Inhalt nicht richtig dar.
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.