Gast
#3491302
Guten Abend! Ich hoffe Ihr könnt mir bei der folgenden Problemstellung behilflich sein, da ich mit den vorhandenen Simulinkblöcken nicht das von mir gewünschte Verhalten hinbekomme. Ich möchte eine Berechnung einmalig starten nachdem ein Pulssignal detektiert wurde (z.b. nach der ersten steigenden Flanke). Bei weiteren Flankenwechsel gleichen Typs (zweite, dritte, vierte, etc. steigende Flanke) soll diese Berechnung jedoch nicht gestartet werden! Daher kann ich kein triggerd Subsystem nutzen, da nach meinen Testerkenntnissen eben das Subsystem beim nächsten Flankenwechsel wieder aktiviert wird. Nun möchte ich außerdem die Berechnung wieder nach bestimmten Kriterien (bzw. Abhängig von anderen Signalwerten oder nach einer definierten "Pufferzeit") wieder starten. So bei meinen bisherigen Tests habe ich versucht den Zustand "Subsystem einmalig ausgeführt/nicht ausgeführt" auf irgendeine Weise zu speichern und dies als Kriterium zu nutzen um das Signal für den Trigger (oder Enable) freizuschalten. Allerdings beißt sich da auch die Katze in den Schwanz und ich bekomme eine Race Condition oder der zweite Fall, dass Subsystem ist nur kurz aktiv kann wohl nicht die komplette Berechnung in einem Step Durchführen (zumindest scheint das Subsystem für mich inaktiv zu sein?). So hab ich irgendetwas übersehen oder liege ich zumindest mit meinen Beobachtungen richtig und wie nun das Problem lösen? Ich habe mal ein Beispiel angehängt und hoffe Ihr könnt mir vielleicht weiterhelfen wie ich dieses Problem lösen kann.
