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

Integration bis Erfüllung einer bestimmten Bedingung

 

Raketenmaid
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 58
Anmeldedatum: 28.09.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.09.2012, 13:17     Titel: Integration bis Erfüllung einer bestimmten Bedingung
  Antworten mit Zitat      
Das Problem ist folgendes:

Ein Gefährt verbraucht kontinuierlich Treibstoff. Sobald der Treibstoff verbraucht ist, soll der Motor stoppen. Die Treibstoffmenge ist vorgegeben.

Der Massenstrom ist ebenfalls gegeben und variiert. Er liegt als Tabelle in Abhängigkeit von mehreren Parametern vor. Diese Parameter ändern über die Simulationszeit hinweg ihre Werte.

Zum jetzigen Zeitpunkt habe ich eine Prüfung, ob der Verbrauch (durch Aufintegrieren vom Massenstrom) die vorhandene Treibstoffmenge übersteigt. Ist dies der Fall, schaltet der Antrieb ab.

Nun ist es so, dass ja folgender Fall eintreten kann:

(Zahlenwerte nur als Beispiel zur Verdeutlichung)

Im vorangegangenen Integrationsschritt betrug der Verbrauch 100 kg. Meine ursprüngliche Treibstoffmenge betrug 102 kg. Im aktuellen Integrationsschritt sind also noch 2 kg übrig.

Wenn mein Massenstrom aber nun zum aktuellen Zeitpunkt 10 kg/s beträgt und, sagen wir mal, die Sample Time 0,5s beträgt, wäre der aufintegrierte Verbrauch im aktuellen Integrationsschritt 105 kg und die Differenz zwischen vorhandener Treibstoffmasse und Verbrauch wäre -3 kg.

Nun kann ich zwar Simulink dazu bringen hier abzubrechen, aber eigentlich habe ich eine Überkonsummierung, oder aber die Werte vom vorherigen Schritt zu nehmen, wo aber nicht der vollständige Treibstoff verbraucht wurde.

Was ich gerne erreichen möchte, wäre, dass simulink aus dem vorherigen Schritt und den aktuellen Massenstromwerten ermittelt, zu welchem Zeitpunkt die Differenz genau null wird und mit dieser Zeit weiterrechnet.

Ich möchte gerne vermeiden, per se die Sample Zeit sehr gering einzustellen.
Private Nachricht senden Benutzer-Profile anzeigen


Raketenmaid
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 58
Anmeldedatum: 28.09.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.09.2012, 16:09     Titel:
  Antworten mit Zitat      
wäre schön, wenn mir jemand einen Tipp geben kann, wie ich das löse.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 28.09.2012, 16:32     Titel:
  Antworten mit Zitat      
Hallo und willkommen im Forum,

Hast du es schon mit Hit-Crossing Block (aus Discontinuities) in Verbindung mit Stop Simulation (aus Sinks) versucht?

Grüße,
Harald

P.S.: es ist hier üblich, dass man min. 24 Stunden wartet, bis man seine Beiträge pusht. Die meisten hier machen ja auch noch was anderes, als im Forum Fragen beantworten Wink
Private Nachricht senden Benutzer-Profile anzeigen
 
Raketenmaid
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 58
Anmeldedatum: 28.09.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.10.2012, 09:21     Titel:
  Antworten mit Zitat      
Danke für den Tipp. Werde ich mal ausprobieren. Stop simulation unterbricht aber nicht dauerhaft die Sim, oder?

Mein zweiter Post war nicht zum pushen, sondern beim Durchlesen meines ersten Posts ist mir aufgefallen, dass ich nur das Problem dargestellt habe, ohne zu sagen, was ich eigentlich möchte in diesem Forum Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 01.10.2012, 16:24     Titel:
  Antworten mit Zitat      
Hallo,

"STOP Simulation" bricht die Simulation ab.

Ich habe mal ein Mini-Beispiel gemacht: Ball fällt aus 10 m Höhe und soll nicht den Boden "durchschlagen".

Grüße,
Harald

teststop.mdl
 Beschreibung:

Download
 Dateiname:  teststop.mdl
 Dateigröße:  25.67 KB
 Heruntergeladen:  386 mal
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.