INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Case Struktur 2 Schleifendurchläufe verzögert True setzen aber sofort auf False



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

07.11.2020, 00:14
Beitrag #1

bachatero18 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 74
Registriert seit: Feb 2019

2019 sp1
2018
DE

23795
Deutschland
Case Struktur 2 Schleifendurchläufe verzögert True setzen aber sofort auf False
Hallo zusammen,

ich suche schon wieder eine Lösung und ich komme nicht drauf.

Ich bekomme Messwerte als Eingang die ersten 2 Messwerte schlagen hierbei extrem aus was wohl an dem Anlauf des Systems liegt. Prinzipiell ist es kein Problem, da die ersten 5 Werte nicht verwendet werden, aber da die Messwerte geplottet werden, sieht das extrem komisch aus wenn die ersten 2 Werte einfach 30-40 % über dem Rest liegen sieht aus wie ein Schornstein.

Meine Vorhaben wäre jetzt einfach, die ersten 2 Messwerte einfach auf Null korrigieren und dann sieht der Plot auch ordentlich aus.

Mir fehlt jetzt aber für meine Planung eine Verzögerung die nur verzögert wenn von false auf true gesetzt wird aber nicht von true auf false.
Ein VI für labview 14 habe ich angehängt.

Hat jemand eine Idee wie ich das bewerkstelligen kann?

Gruß Bachatero18

14.0 .vi  Test.vi (Größe: 5,93 KB / Downloads: 10)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
07.11.2020, 10:42
Beitrag #2

Martin.Henz Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 172
Registriert seit: Jan 2005

2.5.1 bis 20
1992
kA

74363
Deutschland
RE: Case Struktur 2 Schleifendurchläufe verzögert True setzen aber sofort auf False
Hi Bachatero18,

hast du nicht mal etwas schwierigeres? :-)

Vielleicht sollte dich mal irgend jemand vor ein LabVIEW FPGA Projekt setzten, aber nicht den quatsch mit "LabVIEW as usual on FPGA", sondern SCTL(Single-Cycle Timed Loop) ...

Ich beschreibe es per Text, damit es nicht ganz so einfach ist :-)
(ein Bildchen oder VI kann ich immer noch nachreichen)

Schalte in die boolsche Leitung zwei Feedback nodes hintereinander (aus optischen Gründen die Richtung von links nach rechts ändern), dannach folgt ein logisches UND mit der boolschen Leitung aus dem Vergleich (Eingangmesswert > 1.0).

Alternative mit Shift Register:
Shift Register erstellen. Vergleichsergebnis rechts ins Shift Register stopfen, links das Shift Register erweitern. Nicht vergessen links die nun vorhandenen beiden Eingänge des Shift-Registers mit Defaultwerten (False) zu verbinden. Und nun den unteren Ausgang des Shift Registers so wie oben mit logisch UND mit dem Ergebnis des Vergleichs verbinden.
(ähm ... ob das jetzt verständlich ist ...)

Martin Henz
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2020, 11:10 (Dieser Beitrag wurde zuletzt bearbeitet: 07.11.2020 11:35 von Martin.Henz.)
Beitrag #3

Martin.Henz Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 172
Registriert seit: Jan 2005

2.5.1 bis 20
1992
kA

74363
Deutschland
RE: Case Struktur 2 Schleifendurchläufe verzögert True setzen aber sofort auf False

Akzeptierte Lösung

Nachtrag:

Welche von beiden Varianten du wählst ist fast ein wenig Geschmackssache. Ist das Diagramm in der While Schleife schon etwas unübersichtlicher und wenn du es nachträglich irgendwo einfügen musst, dann ist wahrscheinlich die Lösung über die Feedback-Node besser geeignet. Im vorliegenden Fall mit dem sehr einfachen Diagram würde ich das Shift-Register bevorzugen, weil damit nur noch das UND innerhalb der While-Schleife im Diagram steht und hier kompakter und IMHO auch übersichtlicher ist.

   

Martin Henz
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2020, 12:48
Beitrag #4

bachatero18 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 74
Registriert seit: Feb 2019

2019 sp1
2018
DE

23795
Deutschland
RE: Case Struktur 2 Schleifendurchläufe verzögert True setzen aber sofort auf False
Moin Martin,

das kann doch nicht wieder so einfach sein Big Grin.
Ich brauch Wochenende Big Grin.

Also bis dato nicht, das einzige ist, dass das Programm bei verschiedenen Bildschirmauflösungen verwendet werden soll.
Die automatische Skalierung funktioniert nur bedient und das sieht nicht aus werde wohl für jede Bildschirmauflösung das Frontpanel anpassen und dann ist gut.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2020, 14:08
Beitrag #5

Martin.Henz Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 172
Registriert seit: Jan 2005

2.5.1 bis 20
1992
kA

74363
Deutschland
RE: Case Struktur 2 Schleifendurchläufe verzögert True setzen aber sofort auf False
(07.11.2020 12:48 )bachatero18 schrieb:  Also bis dato nicht, das einzige ist, dass das Programm bei verschiedenen Bildschirmauflösungen verwendet werden soll.
Die automatische Skalierung funktioniert nur bedient und das sieht nicht aus werde wohl für jede Bildschirmauflösung das Frontpanel anpassen und dann ist gut.

Ich emfinde diese automatische Skalierung zwar auch als reichlich misslungen und eher als Katatrophe, aber in manchen Fällen funktioniert es dann doch ausreichend gut. Der Benutzer sollte nicht ständig die Fenstergröße ändern. Die Unterschiede der Bildschirmauflösungen sollten (je nach Fall) nicht zu rießig sein. Entwickelt wird das Ganze für die kleinste Bildschirmauflösung. Die Elemente auf dem FP (Front Panel) sollten ganz exakt zueinander ausgerichtet sein (auf's Pixel genau). Cluster oder Arrays sollten auf dem FP möglichst nicht vorhanden sein. Manchmal hilft auch das Gruppieren von Elementen. gelegentlich ist es sinnvoll eine Art "Reset" einzubauen. Damit meine ich, dass bei Einstellung auf die kleinste Auflösung alle Elemente alle wieder auf die ursprünglichen Positionen und Größen zurückgesetzt werdem. Das geht recht einfach (Abfrage von Position und Größe aller Elemente auf dem FP beim Programmstart und beim "Reset" werden die dann alle wieder eingestellt. Das korrigiert die Rundungsfehler welche durch die Skalierung entstehen.

Bei dieser automatischen Skalierung bestehen zwei wesentliche Probleme: Die Umrechnung erfolgt nur auf ganze Zahlen und die Umrechnung erfolgt immer nur ausgehend von der aktuellen Position und Größe der Elemente. Dadurch ergeben sich ständig Rundungsfehler die sehr schnell immer größer werden. Das müsste eigentlich anders funktionieren. Die Skalierung müsste immer ausgehend von der ursprünglichen FP-Größe erfolgen (also von den Positionen und Größen die der Entwickler festgelegt hat).

Dazu gibt es dann noch die Problematik mit den Schriftgrößen. Das ist jedoch etwas ganz anderes und hängt doch sehr von der jeweiligen Anwendung ab. Alle Schriftgrößen einfach immer zu skalieren ist genauso falsch, wie alle Schriftgrößen so zu belassen wie sie sind. Da bleibt nichts anderes, als es individuell für jedes Element festzulegen.

Ok, das kann so implementiert werden und dann funktioniert es auch. Warum NI das so gemacht hat, wie es jetzt ist, das were ich wohl nie wirklich verstehen ...

Martin Henz
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Nur ein SubVI in Whileschleife soll verzögert werden mikadm 2 1.360 12.08.2020 14:54
Letzter Beitrag: mikadm
  CAN Nachrichten in Array verarbeiten und aus Case Struktur weiterverarbeiten Tomate27 4 1.404 17.07.2020 13:30
Letzter Beitrag: Tomate27
  Steuerung, Case-Struktur pixie_2 4 1.182 16.04.2020 14:30
Letzter Beitrag: GerdW
  While-Schleife sofort beenden ? RobertRoth 17 3.417 21.10.2019 11:00
Letzter Beitrag: RobertRoth
  Schleife sofort beenden mprocket 9 2.935 19.01.2018 23:26
Letzter Beitrag: mprocket
  Event Case Ignoriert Tastendruck wenn in Gegenwart eines anderen "Leeren" Event Case Ksanto 8 3.639 23.10.2017 09:08
Letzter Beitrag: Ksanto

Gehe zu: