|
|
Inhalt eines Simulinkblocks für andere sperren |
|
patrik84 |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 16.12.2013, 16:23
Titel: Inhalt eines Simulinkblocks für andere sperren
|
|
Hallo liebe MATLAB Community,
Da ich schon öfters auf dieser Seite Rat gefunden habe, hoffe ich auch diesmal einen Lösungsansatz für mein Problem zu finden.
Ich möchte ein von mir erstelltes Simulinkmodell weitergeben. Dieses bildet das Verhalten eines komplexen Systems in Form von Lookuptables, Übertragungsfunktionen usw. ab. Da ich dieses, von mir erworbene Wissen über das System nicht 1:1 teilen möchte, suche ich nach einem Weg den Inhalt des Modells zu sperren.
Als Resultat soll ein Block entstehen, der eine BlackBox ist und deren interner Aufbau nicht sichtbar ist. Ähnlich wie beispielsweise bei den SimScape-Blöcken. Bei vielen Blöcken kommt dort unter "Look under Mask" auch nur eine weiter MessageBox mit dem Hinweis "SimScape Block"
Wäre super wenn jemand weiß ich ich so eine BlackBox selbst erzeugen könnte.
|
|
|
|
|
Andreas Goser |
Forum-Meister
|
|
Beiträge: 3.654
|
|
|
|
Anmeldedatum: 04.12.08
|
|
|
|
Wohnort: Ismaning
|
|
|
|
Version: 1.0
|
|
|
|
|
|
Verfasst am: 16.12.2013, 17:40
Titel:
|
|
|
|
patrik84 |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.12.2013, 09:05
Titel:
|
|
Danke für den Link!
Auf diese Variante bin ich bei meiner Suche auch schon öfter gestoßen. Ist sicherlich die eleganteste Lösung, wobei man dafür ja den Real-Time Workshop braucht. Diese Lizenz habe ich aber leider nicht.
Gäbe es einen anderen Weg ohne zusätzliche Toolboxen? Ich stelle mir vor beispielsweise eine dll-Datei die ich z.B. in C schreibe.
|
|
|
Andreas Goser |
Forum-Meister
|
|
Beiträge: 3.654
|
|
|
|
Anmeldedatum: 04.12.08
|
|
|
|
Wohnort: Ismaning
|
|
|
|
Version: 1.0
|
|
|
|
|
|
Verfasst am: 17.12.2013, 10:21
Titel:
|
|
Man könnte ijn der Tat einen Teil des Modells als C-MEX S-Function in C schreiben. Ist natürlich ziemlicher Aufwand und wofür hat man dann Simulink?
Die meisten Anwender haben Zugang zim Simulink Coder (früher Real-Time Workshop) über Netzwerklizenzen. Diese Kontakte innerhalb der Hochschule / des Unternehmens kann ich gerne vermitteln. Einfach Kontaktinformationen und Lizenznummer per PN oder Email an mich.
Andreas
|
|
|
patrik84 |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.12.2013, 17:21
Titel:
|
|
Danke für den Hinweis mit der C-MEX S-Function, das sieht meiner Meinung nach vielversprechend aus. So bekomme ich aus meinem C-File eine entsprechende .mexw32 Datei. Wie könnte ich diese Datei nun in Simulink verwenden?
In unserem Unternehmen habe wir bis auf kleine Ausnahmen die Basisversion mit MATLAB und Simulink ohne zusätzliche Toolboxen. Ist einfach eine Kosten/Nutzen Frage.
|
|
|
Andreas Goser |
Forum-Meister
|
|
Beiträge: 3.654
|
|
|
|
Anmeldedatum: 04.12.08
|
|
|
|
Wohnort: Ismaning
|
|
|
|
Version: 1.0
|
|
|
|
|
|
Verfasst am: 17.12.2013, 17:47
Titel:
|
|
Modellbasierte Entwicklung ist immer auch eine Kosten/Nutzen Frage
Eine C-MEX S-Function selber zu schreiben kostet halt Arbeitszeit und damit Kosten. Und wenn man dann Änderungen durchführen möchte? Dauert. Ist Fehleranfällig. Etc. Genau daher macht man das mit Simulink...
Wie auch immer. Man fügt die MEXW64 files (hoffentlich nicht mehr 32Bit ) über den entsprechenden Block ein: http://www.mathworks.com/help/simul.....sic-c-mex-s-function.html
Andreas
|
|
|
patrik84 |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 18.12.2013, 13:37
Titel:
|
|
Ja, wenn du mich als Techniker fragst, dann hast du damit sicher Recht und ich bin voll deiner Meinung. javascript:emoticon('')
Auf diesen Link bin ich auch gestoßen und habe das Beispiel wie beschrieben durchgearbeitet. Am Ende erhält man dann mit "mex timestwo.c" eine entsprechende mex Datei "timestwo.mexw32. (ja in meinem Fall wirklich noch 32Bit javascript:emoticon(''), aus Kompatibilitätsgründen).
Leider fand ich dann nur den Hinweis, dass die Datei mit einem S-Function Block in Simulink verwendet werden kann, aber nicht genau wie ich das mache. Auch in der MATLAB Hilfe habe ich dazu nichts gefunden oder ich verstehe es einfach nicht javascript:emoticon('')
|
|
|
Andreas Goser |
Forum-Meister
|
|
Beiträge: 3.654
|
|
|
|
Anmeldedatum: 04.12.08
|
|
|
|
Wohnort: Ismaning
|
|
|
|
Version: 1.0
|
|
|
|
|
|
Verfasst am: 18.12.2013, 15:03
Titel:
|
|
Auch hier: "Einfach Kontaktinformationen und Lizenznummer per PN oder Email an mich." Ich werde dann einen Supportingenieur bitten den Kontakt aufzunehmen.
Andreas
|
|
|
patrik84 |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.12.2013, 09:57
Titel:
|
|
Nachdem ich mich gestern nochmal mit mex-Dateien und deren Einbindung in Simulink beschäftigt habe, habe ich es dann doch geschafft die Datei mit dem S-Function Block in Simulink zu verwenden.
Mein Fehler war einfach, dass ich die mex-Datei nach dem Erstellen umbenannt habe was als Resultat eine Fehler beim Start der Simulation verursacht: 'S-function name mismatch'. Ich hätte natürlich auch das Source-File entsprechend ändern müssen.
Danke nochmal für die Hilfe bei der Lösung meines Problems. Ob wir uns nun die Arbeit machen und den Weg über die C-MEX Funktion gehen oder gleich den Simulink Coder anschaffen müssen andere entscheiden.
|
|
|
|
|
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.
|
|