|
|
m.file von GUI in Simulink via Matlab Function |
|
gydoh |
Forum-Anfänger
|
|
Beiträge: 33
|
|
|
|
Anmeldedatum: 16.11.15
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 16.11.2015, 11:08
Titel: m.file von GUI in Simulink via Matlab Function
|
|
Hallo liebe Leute,
ich habe leider nicht sehr viel Erfahrung mit Matlab und hoffe ihr könnt mir helfen.
Ich habe mit guide eine GUI (GUI_verlaeufe) erstellt. Diese soll jetzt aber über Simulink laufen, da das ganze Programm über eine Steuerung laufen soll, die nur mit Simulink arbeiten kann. Ich habe mein m.file in Simulink in einen "matlab-function"-Block geladen. leider bekomme ich folgende Fehlermeldung:
The function 'gui_mainfcn' is not supported for standalone code generation. See the documentation for coder.extrinsic to learn how you can use this function in simulation.
Kann mir jemand sagen wie ich coder.extrinsic anwende? Ein Beispielcode wäre super!!
Hier mein Code:
Vielen Dank!!!
|
|
|
|
|
gydoh |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 33
|
|
|
|
Anmeldedatum: 16.11.15
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 16.11.2015, 11:28
Titel:
|
|
Oder gibt es eine andere Möglichkeit ohne dass ich mein GUI wieder neu programmieren muss?
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 16.11.2015, 13:12
Titel:
|
|
Hallo,
in der Dokumentation von
coder.extrinsic
findest du eine ausführliche Beschreibung inkl. Beispielcode.
Das bedeutet dann allerdings, dass in jedem Simulationsschritt die GUI ausgeführt wird. Ist das wirklich das, was du möchtest?
Es ist weitaus üblicher, dass man eine GUI erstellt und in dieser über
sim
ein Simulink-Modell ausführen lässt.
Grüße,
Harald
|
|
|
gydoh |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 33
|
|
|
|
Anmeldedatum: 16.11.15
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 16.11.2015, 14:19
Titel:
|
|
Ich habe meine GUI komplett in Matlab erstellt und benötige Simulink eigentlich nicht um mein GUI laufen zu lassen. Aber da das ganze nun auf eine Beckhoff-Steuerung gespielt werden soll, auf der nur Simulink laufen kann, muss ich das ganze irgendwie in Simulink implementieren. Gibt es dafür eine einfachere Möglichkeit?
Wo und wie würde ich den Befehl coder.extrinsic einsetzen? Ich kann mit der Matlab Hilfe leider nicht viel anfangen. Ich habe schon ein wenig ausprobiert, komme aber zu keiner Lösung. Danke für die Hilfe!!
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 16.11.2015, 14:37
Titel:
|
|
Hallo,
Zitat: |
Wo und wie würde ich den Befehl coder.extrinsic einsetzen? |
Das ist klar im Beispiel in der Doku zu erkennen. Ich könnte dir hier höchstens die Doku übersetzen.
Zitat: |
Ich kann mit der Matlab Hilfe leider nicht viel anfangen |
Wo genau liegen die Probleme? Hast du dir den von mir geschickten Link angesehen? Wenn nicht, was?
Zitat: |
Ich habe schon ein wenig ausprobiert, komme aber zu keiner Lösung. |
Was hast du versucht, und welche Probleme sind dabei aufgetreten?
Grüße,
Harald
|
|
|
gydoh |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 33
|
|
|
|
Anmeldedatum: 16.11.15
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 16.11.2015, 14:49
Titel:
|
|
Wenn ich den Befehl coder.extrinsic(fcn) benutze, wird mir folgende Fehlermeldung ausgegeben:
Arguments to coder.extrinsic must be constant strings.
Ist es demnach überhaupt möglich diesen Befehl dafür zu nutzen?
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 16.11.2015, 15:17
Titel:
|
|
Hallo,
ist das denn der genaue Befehl, den du verwendest??
Die Fehlermeldung sagt ja, dass 'gui_mainfcn' nicht für die Codegenerierung unterstützt wird, also müsste auch das hinzugefügt werden.
Grüße,
Harald
|
|
|
Johnny_Schokolade |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 10.12.2015, 13:55
Titel: coder.extrinsic
|
|
Hallo zusammen,
ich habe ein Problem zum gleichen Kontext. Zuerst hatte ich die Fehlermeldung wie vorhin angeführt und diese habe ich behoben in dem ich folgendes gemacht habe.
Jetzt erhalte ich leider den Fehler
Hierzu habe ich leider nichts gefunden im www
weiß dazu jemand etwas?
Viele Grüße
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 11.12.2015, 04:47
Titel:
|
|
Hallo,
ist keine gültige Syntax.
Zur Meldung an sich: man könnte höchstens versuchen, die Function Handles in Strings umzuwandeln (func2str). Ich kann dir aber nur das sagen, was ich auch dem ursprünglichen Fragesteller gesagt habe: ich halte das Vorhaben in der Form nicht für zweckmäßig. Generell führt man aus einer GUI heraus ein Simulink-Modell aus, nicht umgekehrt.
Grüße,
Harald
|
|
|
Johnny_Schokolade |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 14.12.2015, 13:58
Titel:
|
|
Vielen Dank Harald für deine Antwort! Leider habe ich mich vielleicht nicht korrekt ausgedrückt bzw. kenne ich mich mit Simulink nicht wirklich aus.
Ich möchte aus einem m.-file eine exe-file erzeugen mit dem Coder.
Zu Beginn hatte ich gedacht der Coder macht das für mich schon aber leider falsch gedacht.
Ich hatte zu Beginn der Funktion das
nur leider war die erste Fehlermeldung, dass varargout nicht zulässig ist. Deshalb habe ich nach Recherche die erste Zeile geändert. Damit hatte ich keine Fehlermeldung mehr. Jetzt steht der Coder an der oben erwähnten Fehlermeldung und ich bin eure Beiträge gestoßen.
Ich denke das der Fehler wieder an mir liegt aber der Matlab-Coder überzeugt mich derzeit wenig, wenn ich schon bei den ersten Zeilen meines GUI, die automatisch von Matlab erzeugt werden Fehlermeldungen bekomme.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 14.12.2015, 14:46
Titel:
|
|
Hallo,
die Frage hat ja dann nur sehr am Rande mit dem ursprünglichen Thema zu tun.
Zitat: |
Ich möchte aus einem m.-file eine exe-file erzeugen mit dem Coder. |
Für diesen Zweck ist eher MATLAB Compiler gedacht als MATLAB Coder.
Zitat: |
der Matlab-Coder überzeugt mich derzeit wenig, wenn ich schon bei den ersten Zeilen meines GUI, die automatisch von Matlab erzeugt werden Fehlermeldungen bekomme. |
MATLAB Coder unterstützt nur bestimmte Befehle und Konstrukte. Dies ist auch klar so dokumentiert:
http://de.mathworks.com/help/simuli.....on--categorical-list.html
Grüße,
Harald
|
|
|
Johnny_Schokolade |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.01.2016, 12:34
Titel:
|
|
|
|
|
|
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.
|
|