|
|
Vervielfachung aller Elemente eines Modells |
|
amoibos |
Forum-Anfänger
|
|
Beiträge: 40
|
|
|
|
Anmeldedatum: 23.05.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: 2013a
|
|
|
|
|
|
Verfasst am: 05.09.2014, 14:10
Titel: Vervielfachung aller Elemente eines Modells
|
|
An folgenden Aufgabe arbeite ich:
Ich bastle gerade mir ein Block(Grundform Subsystem) der über Maskeneingaben den Inhalt ändern kann, sprich logische Kopien aller Elemente. Hierzu sollen Modellname und Anzahl der Duplikate einstellbar sein.
Nach Recherche stehe ich vor den Problem, wie ich das umsetzen kann.
Man kann zwar mittels Simulink.BlockDiagram.CopyContentsToSubSystem(model_name, Subsystem_name) kopieren dafür muss gelten:
Zielsubsystemblock muss leer sein, also mehrfach geht nicht.
Was für Möglichkeiten gibts denn noch ohne mir einen abzubrechen und "von Hand" Blöcke und Verbindungen nachzubauen?
_________________
An guten Tagen stürzt Matlab nur zweimal ab.
|
|
|
|
|
amoibos |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 40
|
|
|
|
Anmeldedatum: 23.05.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: 2013a
|
|
|
|
|
|
Verfasst am: 09.09.2014, 15:45
Titel:
|
|
Nur für's Archiv, es läuft darauf hinaus das man sich ein temporäres Modell(new_system) baut Subsystem-Blöcke anlegt, jeweils den Content(des Modells) dort reinkopiert(copyContentsToSubSystem) und die Ein- und Ausgänge noch bestückt(add_block, add_line). Anschließend wird dieses Modell in den eigentlichen Block kopiert. Zu beachten, die Subsystem müssen vorher stets leer sein, dürfen also keine "Lines" oder "Blocks"(delete_block, delete_line) beinhalten. Ärgerlich ist die Autosave Funktion die einem Kopien erzeugt.
_________________
An guten Tagen stürzt Matlab nur zweimal ab.
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 09.09.2014, 20:37
Titel:
|
|
Hallo,
Autosave kannst du in den Preferences abschalten.
Ich muss sagen, ich würde das aber nie tun. Nicht benötigte Dateien sollten sich später mit delete wieder löschen lassen.
Grüße,
Harald
|
|
|
amoibos |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 40
|
|
|
|
Anmeldedatum: 23.05.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: 2013a
|
|
|
|
|
|
Verfasst am: 18.09.2014, 13:42
Titel:
|
|
|
|
|
Ich hab jetzt beides. Auf den Rechner lokal ist es abgestellt, zusätzlich werden meine temporären Modelle gelöscht. Eigentlich trat das nur auf, wenn ich beim Debuggen zulange verweilt hatte. Nebenbei, es scheint wohl ein Bug zu sein, dass das Modell sich nicht aktualisiert und dann auch nicht wieder geschlossen werden kann über die GUI während man entwanzt wäre es sehr hilfreich gewesen.
Aber ein weiterer Punkt ist aufgetreten, die Benennung der Ports des Blocks, ein Feature im Maskeneditor. Die Funktion port_label ist nur im Kontext der Maske bekannt, gibt es was vergleichbares für außerhalb?
Ich hätte gern die Möglichkeit, dass zur Identifizierung was wo verbunden werden muss, ein Hilfestellung gegeben wird. Derzeit steht nichts dran zur Verdeutlichung des Problems, der Inhalt wird dynamisch dem Block hinzugefügt. Damit ist die Anzahl der In- & Outports variabel, nachdem verlassen.
EDIT: Via Simulink.Mask.get komm ich wohl zu den Kontext. Aber es kann ja nicht gewollt sein, dass ich Display händisch manipuliere. Zudem wenn ich vom Laufzeitverhalten ausgehe, scheinen die Zeilen auch bei der Skalierung des Blocks durchlaufen zu werden.
_________________
An guten Tagen stürzt Matlab nur zweimal ab.
|
|
|
|
|
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.
|
|