WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Laufvariable

 

mana
Forum-Anfänger

Forum-Anfänger


Beiträge: 34
Anmeldedatum: 08.06.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.09.2017, 14:48     Titel: Laufvariable
  Antworten mit Zitat      
Hallo miteinander,

ich habe folgendes Problem. Ich möchte ein Simscapemodell ausführen, welches über die Simulationszeit umparametriert werden soll.
Es ist kein Problem die verwendeten Module mit einem Vektor zu parametrieren. Das Problem allerdings ist, dass ich eine Laufvariable bräuchte die sich mit jedem Simulationsschritt um 1 erhöht, um somit meine Parametrierung in Abhängigkeit der Laufvariablen durchzuführen (z.B. Laufvariable von Simulink = i ... Parametrierung entsprechend R(i)).
Welche Möglichkeit gibt mir Simulink, um eine solche Laufvariable zu erzeugen?

Vielen Dank im Voraus.

mana
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 30.09.2017, 10:34     Titel:
  Antworten mit Zitat      
Hallo,

grundsätzlich ginge das mit einem Unit-Delay-Block.
Für mich klingt das aber nur bei fester Schrittweite sinnvoll. Ansonsten sollte man doch eher über die Simulationszeit (Block "clock") gehen statt über die Schrittanzahl?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
mana
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 34
Anmeldedatum: 08.06.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.10.2017, 14:40     Titel:
  Antworten mit Zitat      
Hallo Harald,

vielen Dank für deine Antwort.

Ich habe eine feste Schrittweite. Ich übergebe einen Vektor (t) zum Abtasten des Simulinkmodells. Meine Parameter (R) in Simscape sind eben von diesem Vektor abhängig und haben die gleiche Länge (length(R) == length(t)). Deshalb brauch ich eine Laufvariable die mir einen Counter (i) bei jedem Simulationsschritt um 1 erhöht, dass ich mit R(i) auf den Parametervektor zugreifen kann.

Ich hoffe meine Erklärung war Verständlich. Ich werde mich mal mit dem Unit-Delay-Block auseinandersetzen. Vielen Dank für den Tipp.


// edit

ich habe es versucht mal so zu lösen wie auf dem Bild dargestellt.

Es funktioniert soweit ganz gut, dass für jeden Simulationsschritt der Wert um 1 erhöht wird.
Mein Problem ist nun folgendes, wie kann ich die Ausgabe des Unit Delay blockes direkt in eine Variable in "Echtzeit" speichern, sodass das Simulinkmodell direkt auf diese Variable zugreifen kann? Die Lösung wie auf dem Bild dargestellt mit einem Matlab Function Block war leider nicht zielführend.

Vielen Dank nochmals für die tolle Hilfe.

Viele Grüße
mana
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.