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 

zeitgesteuerte Case-Schleife



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!

03.09.2012, 15:28
Beitrag #1

Linsche Offline
LVF-Grünschnabel
*


Beiträge: 19
Registriert seit: Jul 2012

2011
2012
EN


Deutschland
zeitgesteuerte Case-Schleife
Hallo LabViewgemeinde,

ich stehe mal wieder vor einem Problem, an dem ich mir schon seit zwei Woche die Zähne ausbeise.

Ich nehme ein Signal auf, detektiere die Peaks und möchte bei der detektion einen TTL-Trigger mit dem USB6009 senden. Im Moment habe ich eine Case-Schleife, die wenn eine Detektion erfolgt ein Low an den Output sendet und bei keinem Peak ein High sendet. Ich möchte das Low jedoch für eine längere Zeit beibehalten. Und zwar messe ich dazu die Frequenz der Peaks, ziehe davon einen bestimmten Wert ab und möchte das Signal über diesen Zeitraum auch Low haben, bevor es wieder auf High springt. Ich habe Zeitverzögerungen und zeitgesteuerte While-Schleifen schon ausprobiert, aber irgendwie komme ich auf keinen grünen Zweig.
Ich hoffe ihr könnt mir dabei helfen.

Danke,
Linsche


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.09.2012, 16:15
Beitrag #2

BerndDasBrot Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 128
Registriert seit: Feb 2008

8.2.1, 2012, 2017, 2020
2007
EN

7206
Schweiz
RE: zeitgesteuerte Case-Schleife
Hallo Linsche

2 Dinge sind nicht gut in Deinem BD. Das Metronom solltest Du durch ein Delay ersetzen, weil sonst kein definierter Zeitraum unterbrochen wird. Ausserdem sind nur ganze ms zulässig, 0.15 ms subtrahieren bringt also nichts.
Welche Frequenzen willst Du denn haben mit den Peaks?

Ein grösserer Ausschnitt wäre auch hilfreich!

Gruss, BDB
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.09.2012, 08:07
Beitrag #3

Linsche Offline
LVF-Grünschnabel
*


Beiträge: 19
Registriert seit: Jul 2012

2011
2012
EN


Deutschland
RE: zeitgesteuerte Case-Schleife
Hallo BDB,

ich hab schon gemerkt, dass das mit dem Metronom nix wird...hab auch schon vieles anderes ausprobiert, aber es wird irgendwie nix.
Ich nehme ein Atemsignal auf und habe dadurch nur sehr kleine Frequenzen so um die 1-2Hz. Für das Zeitdelay berechne ich die Zeitabstände zwischen den Peaks und ziehe dann wie gesagt eine bestimmte Zeit ab. Da komme ich dann quasi nie auf eine ganze Zahl, was währscheinlich nicht so günstig wäre oder? Dieses express VI Time Delay hatte ich auch schon eingebaut, aber da habe ich dann wahrscheinlich das gleiche Problem mit der gebrochenen Zahl, denn das hat auch nicht funktioniert.
Ich habe so langsam keine Idee mehr, was ich noch tun könnte.
Leider komme ich gerade nicht an den Computer, auf dem mein Programm ist. Ich werde einen größeren Ausschnitt meines BD nachliefern!

Gruß,
Linsche
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.09.2012, 08:19 (Dieser Beitrag wurde zuletzt bearbeitet: 04.09.2012 08:20 von GerdW.)
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.424
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: zeitgesteuerte Case-Schleife
Hallo Linsche,

Zitat:ich hab schon gemerkt, dass das mit dem Metronom nix wird...
Das "Metronom" selbst funktioniert, nur deine Programmierung drum herum nicht. Ist ein gewaltiger Unterschied...

Zitat:hab auch schon vieles anderes ausprobiert, aber es wird irgendwie nix.
Was denn alles?

Zitat:Dieses express VI Time Delay hatte ich auch schon eingebaut, aber da habe ich dann wahrscheinlich das gleiche Problem mit der gebrochenen Zahl, denn das hat auch nicht funktioniert.
Glaube ich nicht. Das ExpressVI arbeitet mit DBL-Werten...

- Die "einfachen" Timer-Funktionen erwarten Millisekunden-Werte als Integer, während du anscheinend in deinem VI in Sekunden rechnest. Klarer Fehler von "Nicht die Anleitung gelesen!"... Mit etwas Mathematik ließe sich dieses Problem aber beheben!
- Das ExpressVI erwartet Sekunden-Angaben als DBL. Dies würde zu deinem VI (so wie du es gezeigt hast) passen. Warum das bei dir nicht funktioniert: musst du mal selbst schauen...

P.S.:
Wenn man in einem FALSE-Case ein TRUE ausgibt, dann ist das ein NOT. Wink

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.09.2012, 08:51
Beitrag #5

Linsche Offline
LVF-Grünschnabel
*


Beiträge: 19
Registriert seit: Jul 2012

2011
2012
EN


Deutschland
RE: zeitgesteuerte Case-Schleife
Hallo Gerd,

Zitat: Das "Metronom" selbst funktioniert, nur deine Programmierung drum herum nicht. Ist ein gewaltiger Unterschied...
Das war auch so gemeint, dass es in diesem Fall in meinem Programm nicht funktioniert.

Zitat:Was denn alles?
Ich habe es mit einer zeitgesteuerten While-Schleife Probiert, aber damit bin ich leider gar nicht zurecht gekommen. Dann habe ich ein Zeitdelay eingebaut und diese Tick Count funktion, bei der dann ein Boolean gesendet wird, wenn die Zeit abgelaufen ist habe ich auch probiert. Habe alles auch mit mehreren Einstellungen probiert, komme aber wie gesagt leider auf keinen so richtig grünen Zweig.

Mit der Zeit muss ich ganz ehrlich zugeben, dass hab ich bis jetzt noch gar nicht bemerkt...ich weiß, dass man dafür ms braucht, da hab ich wohl den Wald aber vor lauter Bäumen nicht gesehen Blush

Ich probiere es noch einmal mit dem Delay, vielleicht habe ich ja doch irgendwas falsch gemacht.

Danke erstmal,
Linsche
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.09.2012, 09:29
Beitrag #6

Falk Offline
ja, das bin ich...
***


Beiträge: 343
Registriert seit: Jan 2006

8.0 :: 201x ::202x
2006
DE_EN


Deutschland
RE: zeitgesteuerte Case-Schleife
Hallo Linsche,

ich kann mich BerndDasBrot nur anschließen. Zeige mal wenn möglich deinen Programmcode komplett. Vielleicht kann man mit einem anderen Design dessen eine andere (vielleicht sogar elegantere) Lösung deiner Problemstellung finden.

Schöne Grüße
Falk

Currently: zzzZZZZZZZZ
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.09.2012, 10:12
Beitrag #7

Linsche Offline
LVF-Grünschnabel
*


Beiträge: 19
Registriert seit: Jul 2012

2011
2012
EN


Deutschland
RE: zeitgesteuerte Case-Schleife
Hallo Falk,

so hier nun mein BD. Aus dem SubVI kommt die Zeit zwischen den Peaks der Detektor gibt bei Peak eine 1 und sonst eine 0. Damit wollte ich das Zeitdelay für das TTL Signal steuern steuern.
Ich habe noch einmal die Delayfunktion eingebaut, aber wie gesagt komme ich da nicht so wirklich auf einen grünen Zweig.

Entschuldigt die Unordnung im VI, ich hoffe man sieht durch Blush

Danke,
Linsche


Angehängte Datei(en)
11.0 .vi  Peak Detector4.4.vi (Größe: 105,82 KB / Downloads: 190)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.09.2012, 11:09 (Dieser Beitrag wurde zuletzt bearbeitet: 04.09.2012 11:26 von Falk.)
Beitrag #8

Falk Offline
ja, das bin ich...
***


Beiträge: 343
Registriert seit: Jan 2006

8.0 :: 201x ::202x
2006
DE_EN


Deutschland
RE: zeitgesteuerte Case-Schleife
Sage mal in welchem Pulslängen bewegen wir uns eigentlich? Wenige ms oder doch eher ein Faktor 10 oder 100 mehr? Ich frage aus dem Gründe da du ja sowieso ein "Wait" von 30ms in deiner Schleife hast.

Nachtrag: Habe mal ein kleines VI gebaut. Soll das Verhalten so aussehen?


Angehängte Datei(en)
11.0 .vi  LVF.vi (Größe: 8,82 KB / Downloads: 177)

Currently: zzzZZZZZZZZ
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.09.2012, 13:43
Beitrag #9

Linsche Offline
LVF-Grünschnabel
*


Beiträge: 19
Registriert seit: Jul 2012

2011
2012
EN


Deutschland
RE: zeitgesteuerte Case-Schleife
Oh jee, dieses wait hab ich noch von ner Zeit drin, wo ich das Signal nur simuliert habe Blush das kann natürlich weg, da das Programm auch ohne funktioniert.

Zu den Pulslängen: Ich nehme eine Respirationskurve auf und habe dann jenachdem 20-100 Atemzüge pro Minute. Das wären dann 0,6-3 pro Sekunde. Es geht also um sehr kleine Frequenzen.
Ja so in etwa soll das Verhalten aussehen. Ich sende quasi permanent ein high und möchte dann mit der Detektion des Peaks ein low senden, welches so lange wie möglich low bleibt bevor der nächste Peak gemessen wird. Ich möchte mit dem Low die komplette Expirationsphase ausnutzen. Siehe Bild: Peak ist die Inspiration und das Plateau ist die Expirationsphase.

Ich schau mal, ob ich das mit deinem VI umsetzen kann.

Grüße,
Linsche


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.09.2012, 14:14
Beitrag #10

Linsche Offline
LVF-Grünschnabel
*


Beiträge: 19
Registriert seit: Jul 2012

2011
2012
EN


Deutschland
RE: zeitgesteuerte Case-Schleife
Hallo Falk,

also ich habe jetzt mal umgesetzt was du mir geschickt hast. Allerdings stoße ich da auf ein mir bekanntest Problem...das Delay funktioniert, leider wird das ganze Programm dann langsamer und die Signalaufnahme kommt ins Stocken bzw. einfach alles kommt ins Stocken. Es ist bei meinem Programm aber sehr wichtig, dass die Signalverarbeitung so schnell wie möglich funktioniert.

Gibts vielleicht noch ne Idee, ohne dass das Programm ausgebremst wird?

Grüße,
Linsche
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Case-Struktur: Angegebener Case nicht vorhanden braendy 10 4.999 02.02.2021 15:05
Letzter Beitrag: Lucki
  Event Case Ignoriert Tastendruck wenn in Gegenwart eines anderen "Leeren" Event Case Ksanto 8 6.742 23.10.2017 09:08
Letzter Beitrag: Ksanto
  Drei Queues in einer While-Schleife mit case-Struktur EinVolvic 12 11.254 17.05.2017 20:25
Letzter Beitrag: EinVolvic
  Zeitgesteuerte Schleifen martinkrimsh. 1 3.403 26.07.2016 08:14
Letzter Beitrag: GerdW
  Wert aus Case Structure in While Schleife Squanchy 5 5.517 10.06.2016 13:57
Letzter Beitrag: Lucki
  Ansteuern einer Case Struktur mit for-Schleife berlinfatih 10 8.513 22.04.2016 05:25
Letzter Beitrag: berlinfatih

Gehe zu: