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

Fehler bei Erhöhung der fixed step size

 

Astropeter
Forum-Anfänger

Forum-Anfänger


Beiträge: 25
Anmeldedatum: 16.10.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.05.2019, 09:47     Titel: Fehler bei Erhöhung der fixed step size
  Antworten mit Zitat      
Hallo,
ich möchte bei einer umfangreichen Simulation die step size erhöhen.
Bisher war die immer bei 0,1 Sekunden.

Allerdings machen mir dabei immer über pulse generator getriggerte subsysteme Ärger.

Der Error sagt Folgendes:

The computed sample time (0.5) is not an integer multiple of the fixed step size (1). The period, pulse width and phase delay parameters of this block need to be integer multiples of the fixed step size

Ich weiß leider nicht, wo die computed sample time herkommt.

Beim pulse generator ist period gleich sampleTime*2, pulse width ist 50 und phase delay ist 0.

Ich weiß echt nicht, wo der Fehler liegt, aber vielleicht hat ja hier jemand eine Idee Wink

Viele Grüße,
Astropeter
Private Nachricht senden Benutzer-Profile anzeigen


Samuelsurium
Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 03.05.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.05.2019, 10:55     Titel:
  Antworten mit Zitat      
ich denke ich konnte die Fehlermeldung rekonstruieren. Verstehe ich das Problem richtig: du verwendest eine Fixed-Stepsize von 0.1s (solver), eine Sampletime für die Period des Pulse Generator von 2*0.1 (bzw was ist deine Sampletime?) mit einem time based Pulse Generator (oder Sample based?). Danach änderst du die Fixed-Stepsize auf 1s, der Puls soll der gleiche bleiben, (d.h. bei einer Simulationsdauer von bspw. 10s hast du 50 peaks) erhälst hier aber die Fehlermeldung.


bei fixed step size kannst du (glaub ich zumindest) keine zwischenschritte provozieren was zu dieser Meldung führt.
Private Nachricht senden Benutzer-Profile anzeigen
 
Astropeter
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 25
Anmeldedatum: 16.10.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.05.2019, 11:10     Titel:
  Antworten mit Zitat      
Hallo,
danke schon mal für die Antwort.
Also normalerweise verwendet die Simulation immer eine fixed step size von 0.1s, (das ist die sampleTime, das hab ich vergessen zu erwähnen, sry). Die Periode des pulse generators (übrigens time based) ändert sich also analog zur step size.
Dann setze ich sampleTime auf 1s und der Fehler kommt.

Der grund ist einfach, dass ich jetzt z.b. über eine Stunde simulieren will und ich von anderer stelle nicht 36000 datensätze für den input kriegen kann.
Private Nachricht senden Benutzer-Profile anzeigen
 
Samuelsurium
Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 03.05.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.05.2019, 12:03     Titel:
  Antworten mit Zitat      
ok,

komisch. sobald ich die Period analog zur SampleTime anpasse erhalte ich die Fehlermeldung nicht mehr. Hast du evt. ein Eingabefehler im pulse generator? (bspw. erhalte ich dieselbe Fehlermeldung wenn die Period=SampleTime=1s ist)

Error in 'untitled/Pulse Generator': The computed sample time (0.5) is not an integer multiple of the fixed step size (1). The period, pulse width and phase delay parameters of this block need to be integer multiples of the fixed step size

Die computed sample time ist die vom Pulse Generator generierte sample time basierend auf die definierte Period und Pulse Width. Period*Pulse Width = computed sample time >= fixed step size. (wenn Delay=0)

bekomme dieselbe Fehlermeldung wenn ich bspw. bei einer Period von 2s eine Pulse Width von 25(%) verwende.

Und btw. hast du schon einen anderen solver probiert?

Hoffe das hilft dir evt. weiter.
Private Nachricht senden Benutzer-Profile anzeigen
 
Astropeter
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 25
Anmeldedatum: 16.10.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.05.2019, 12:51     Titel:
  Antworten mit Zitat      
Hallo,
ich habe das Problem gelöst!
Dank dir kam ich auf die Idee, mal im Code von einer zugehörigen config file nachzugucken. (hab ich alles nicht selbst geschrieben)
und siehe, für fast jedes subsystem in in der zugehörigen struct eine eigene sampleTime definiert. die meisten wurden gleich der globalen sampleTime gesetzt ( die auch die step size definiert), aber eben nicht alle. jetzt habe ich alle gleichgesetzt und die simulation läuft.
Vielen Dank für deine Mühe, du hast mir sehr geholfen!
Private Nachricht senden Benutzer-Profile anzeigen
 
Samuelsurium
Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 03.05.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.05.2019, 13:02     Titel:
  Antworten mit Zitat      
schön das ich helfen konnte! habe ich mir fast schon gedacht, immer gefährlich anderer skripten zu verwenden Wink
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.