|
|
den Ausdruck 1:k als Indexvector beim Selector-Block nutzen |
|
Maik |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 22.02.2008, 12:54
Titel: den Ausdruck 1:k als Indexvector beim Selector-Block nutzen
|
|
|
|
|
In meinem Simulinkmodell nutze ich den Selctor-Block um von einer großen Matrix [50x50] bestimmte zusammenhängende Spalten zu selektieren. In dem einen Zeitschritt die Spalten 1 bis 10 und in dem nächsten Zeitschritt z.B. die Spalten 3 bis 22.
Ich würde dies gerne so lösen, das mein Eingangswert (für den Indexport) für den Selctor-Block den Ausdruck 1:10 oder 3:22 hat usw.
Kann ich so ein Signal in Simulink erzeugen?
Meine andere Idee wäre, dass ich keinen Indexport beim Selctor-Block verwende, sondern das ich den Indexwert über das Dialogfeld im Block selber eingebe. Dabei benutze ich dann eine Variable.
-> z.B. sage ich dann 1:k und k lasse ich an anderer Stelle in der Simulation jede Zeiteinheit verändern. Aber da liegt mein Problem. Wie kann ich jede Zeiteinheit diese Variable verändern und diese Variable jede Zeiteinheit während der Simulation wieder aufrufen?
Wollte es ganz gerne mit Data Store Memory machen, nur da muss ich Anscheinend immer den Read-Block verwenden und das bringt mit ja leider nix.
Hat jemand von Euch eine Idee für einen meiner beiden angedachten Lösungsansätze. Oder vielleicht auch eine ganz andere herangehensweise?
Vielen Dank schon vorab!
Gruß!
Maik
|
|
|
|
|
Titus |
Forum-Meister
|
|
Beiträge: 871
|
|
|
|
Anmeldedatum: 19.07.07
|
|
|
|
Wohnort: Aachen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 22.02.2008, 13:24
Titel:
|
|
Hallo,
ganz abgesehen davon, dass der Selector Block das nicht kann: das würde darauf hinauslaufen, dass sich die Signalgröße von Zeitschritt zu Schritt ändern würde, was nicht erlaubt ist. Simulink legt die Größen ALLER Signale zu Beginn der Simulation fest. Alternativen (wenn auch nicht schön) ist das ganze Signal "mitzuschleppen" und dann nur in Schleifen darauf zuzugreifen.
Titus
|
|
|
Maik |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 22.02.2008, 13:59
Titel:
|
|
Danke für die schnelle Antwort!
Wie ist das zu verstehen, dass ich das Signal mitschleppen muss??
Und wie meinst Du es mit den Schleifen? Meinst Du damit Schleifen bei den Blöcken oder meinst Du Schleifen bei der Programmierung?
Wär super, wenn Du das mir kurz erläutern könntest, da ich jetzt an diesem Problem schon 1 1/2 Tage festhänge.
Gruß!
Maik
|
|
|
Titus |
Forum-Meister
|
|
Beiträge: 871
|
|
|
|
Anmeldedatum: 19.07.07
|
|
|
|
Wohnort: Aachen
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 25.02.2008, 10:06
Titel:
|
|
Hallo Maik,
mit Signal "mitschleppen" meinte ich, dass das ganze 50x50 Signal überall im Modell verwendet wird, und Du ein zweites Signal hast, welches die akutellen Indizes trägt. Mit "Schleifen" meinte ich sowas wie den for-Iterator Block, der über die Indizes läuft. Ist nicht trivial aber machbar...
Titus
|
|
|
|
|
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.
|
|