|
|
Zwei Modelle mit switch ein-/ausschalten? |
|
JaWi |
Themenstarter
Forum-Fortgeschrittener
|
|
Beiträge: 56
|
|
|
|
Anmeldedatum: 10.08.13
|
|
|
|
Wohnort: Deutschland
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 09.01.2014, 17:40
Titel:
|
|
Hallo Harald,
nach ein paar Tests muss ich meinem vorherigen Post doch widersprechen und dir Recht geben: Das nicht angesteuerte Subsystem und das darin enthaltene Modell wird "nicht wirklich" ausgeführt. Es ist etwas schwer zu erklären, ich versuch es mal: Das referenzierte Modell im nicht enabled Subsystem läuft nicht, dass heißt es verarbeitet keine Daten (bei mir bedeutet das, dass es keine Infos am mein GUI weitergibt), aber anscheinend wird das referenzierte Modell trotzdem anfangs einmal hmmm angesteuert, berechnet - was auch immer. Das Problem ist wie eingangs beschrieben, dass das jeweils nicht benötigte Modell nicht genügend Information (für from Workspace-Blöcke) bzw. gar eine ganze Toolbox nicht verfügung steht.
Gibt es eine Möglichkeit das jeweils "unnötige" Subsystem per Quellcode o.ä. auszukommentieren? Dann könnte ich immer nur ein Subsystem aktiv lassen.
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 09.01.2014, 17:45
Titel:
|
|
|
|
|
Hallo,
bedingt durch den Pulsgenerator als Eingang wechseln wir ja zwischen den beiden Implementierungen hin und her. Du müsstest das also durch eine Konstante ersetzen, die immer 0 oder 1 ist.
Ich habe ein Modell angehängt, in dem man sieht, dass der Displayblock bei einem Subsystem immer auf 0 stehen bleibt.
Nach meinem Verständnis wird ein Subsystem ausgeführt, wenn das Steuersignal positiv ist. Das ist meines Erachtens auch aus dem Beispielmodell nachvollziehbar.
Es kann allerdings sein, dass beide Subsysteme vor Simulationsstart initialisiert werden, also theoretisch ausführbar sein müssen - das würde dann deine Beobachtungen erklären.
So oder so, mir scheint, dass für deinen Fall das configurable subsystem der übersichtlichere und bessere Weg ist. Ich dachte ursprünglich nur, dass du während der Simulation umschalten musst.
Grüße,
Harald
Beschreibung: |
|
Download |
Dateiname: |
switch_between_subsystems.mdl |
Dateigröße: |
46.73 KB |
Heruntergeladen: |
483 mal |
|
|
|
JaWi |
Themenstarter
Forum-Fortgeschrittener
|
|
Beiträge: 56
|
|
|
|
Anmeldedatum: 10.08.13
|
|
|
|
Wohnort: Deutschland
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.01.2014, 13:17
Titel:
|
|
Hallo Harald,
ja genau: wegen der Initialisierung gibt es Probleme mit den nicht belegten Variablen in den From Workspace-Blöcken.
Unter
http://www.mathworks.de/help/releas.....onfigurablesubsystem.html
ist eine ganz gute Erklärung wie man eine configurable Subsystem erstellt.
Falls es jmd hilft worüber ich gestolpert bin:
zu 1. library erstellen: das geht ganz einfach oben im Simulink-Menü unter File -> New-> library. Sieht aus,als ob man ein neues Modell erstellt. Dann unter .slx speichern
zu 7. Block Choice: ist zu finden mit Rechtsklick auf das configurable Subsystem in der eigenen Bibliothek
Der Rest war verständlich finde ich.
Wenn man dann den Block im configured Subsystem ändern möchte geht das über diesen Befehl:
Jetzt funktioniert alles. Danke für deine Hilfe, Harald!
|
|
|
|
Gehe zu Seite Zurück 1, 2
|
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.
|
|