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 

Interrupt?



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!

13.11.2007, 10:40
Beitrag #1

jeffrey Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 123
Registriert seit: Aug 2007

8.0 zuhause, 8.2 Uni
2007
kA


Deutschland
Interrupt?
Hallo,
gibt es in LabVIEW so etas wie einen Timer-Interrupt? Ich möchte ein Gerät nach einer bestimmten Zeit (in ms) ein bzw aus schalten.
Gibt es dazu eine Art Timer im Hintergrund laufen zu lassen, der nach der vorgegebenen Zeit einen Interrupt auslöst? Oder muss ich in einer While-Schleife die ganze Zeit die Zeit auslesen und mit meinem Wert vergleichen? Das wäre eher schlecht, weil diese Schleife ja fast ohne Verzögerung laufen müsste, ich aber neben her noch einige andere parallele Schleifen laufen habe.
MfG Jeffrey
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
13.11.2007, 10:41
Beitrag #2

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Interrupt?
' schrieb:Hallo,
gibt es in LabVIEW so etas wie einen Timer-Interrupt? Ich möchte ein Gerät nach einer bestimmten Zeit (in ms) ein bzw aus schalten.
Gibt es dazu eine Art Timer im Hintergrund laufen zu lassen, der nach der vorgegebenen Zeit einen Interrupt auslöst? Oder muss ich in einer While-Schleife die ganze Zeit die Zeit auslesen und mit meinem Wert vergleichen? Das wäre eher schlecht, weil diese Schleife ja fast ohne Verzögerung laufen müsste, ich aber neben her noch einige andere parallele Schleifen laufen habe.
MfG Jeffrey


Benutze das Wait.vi oder eine Timing Loop dazu.

eg

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.11.2007, 11:41
Beitrag #3

jeffrey Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 123
Registriert seit: Aug 2007

8.0 zuhause, 8.2 Uni
2007
kA


Deutschland
Interrupt?
' schrieb:Benutze das Wait.vi oder eine Timing Loop dazu.

eg
Hallo,
klingt gar nicht so schlecht, aber ich habe da noch ein paar Fragen dazu.

Vielleicht zuerst wofür ich das ganze brauche. Also ich will eine Regleung für mehrere (ca. 30) Heizungen realisieren. Dies können aber nur ein bzw aus geschaltet werden. Um nun die Leistung zu regeln soll für jede Heizung ein PWM Signal erzeugt werden. Die PWM-Periodendauer wird relativ lang (1-3s noch nicht ganz sicher, aber konstant) sein. Also ist es nicht ganz so zeitkritisch, also +- 5 ms oder so wäre nicht so tragisch. Deswegen weiß ich auch nicht in welcher Reihenfolge die Heizungen geschaltet werden müssen.

So jetzt wäre eine Lösung: Ich berechene die einzelnen Zeiten und damit die Differenzen dazwischen. Das ganze gebe ich in eine For-Schleife. In der Schleife wird dann der entsprechende Ausgang geschrieben und danach die Zeitdiffernz bis zum nächsten Schreibvorgang gewartet. Das Problem ist nun, dass der Schreibvorgang duraus einige ms dauern kann.

So jetzt die Probleme, die ich dabei habe:
Von wann bis wann wartet wait.vi? Vom Start der Schleife an, oder nach beenden des Schreibvorgangs?
Funktioniert das auch mit einem timed loop? Wie kann ich da die Anzahl der Schleifenwiederholungen einstellen?

MfG Jeffrey
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.11.2007, 13:34
Beitrag #4

monoceros84 Offline
LVF-Stammgast
***


Beiträge: 445
Registriert seit: Oct 2006

2011
2006
EN


Deutschland
Interrupt?
Wait wartet vom Start der Schleife... Es funktioniert auch in For-Schleifen (weil du die Schleifenanzahl einstellen willst). Alternativ kann du auch den Schleifenzähler (blaues i) einer While- oder Timmed Loop abfragen. Wenn er einen bestimmten Wert erreicht, soll die Schleife verlassen werden.

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.11.2007, 13:40 (Dieser Beitrag wurde zuletzt bearbeitet: 13.11.2007 13:41 von eg.)
Beitrag #5

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Interrupt?
' schrieb:Wait wartet vom Start der Schleife...

Ja?!?! Warum? Habe ich was verpasst?

eg

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.11.2007, 13:44
Beitrag #6

monoceros84 Offline
LVF-Stammgast
***


Beiträge: 445
Registriert seit: Oct 2006

2011
2006
EN


Deutschland
Interrupt?
Ok, um genauer zu sein: Wait wartet von da an, wo dieses VI ausgeführt wird. Da es aber eigentlich immer "einfach so" in der Schleife liegt, also parallel zum eigentlichen Inhalt, kann man davon ausgehen, dass es nahezu vom Beginn der Schleife wartet. Erst Recht, wenn es auf ein paar Millisekunden hoch und runter nicht ankommt - wie oben geschrieben.

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
13.11.2007, 13:51
Beitrag #7

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Interrupt?
Um genau zu wissen, wann und wie mein Prog wartet habe ich mir dieses kleine VI gemacht.

   

Und benutze es so:

   

eg

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.11.2007, 14:07
Beitrag #8

jeffrey Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 123
Registriert seit: Aug 2007

8.0 zuhause, 8.2 Uni
2007
kA


Deutschland
Interrupt?
' schrieb:Ok, um genauer zu sein: Wait wartet von da an, wo dieses VI ausgeführt wird. Da es aber eigentlich immer "einfach so" in der Schleife liegt, also parallel zum eigentlichen Inhalt, kann man davon ausgehen, dass es nahezu vom Beginn der Schleife wartet. Erst Recht, wenn es auf ein paar Millisekunden hoch und runter nicht ankommt - wie oben geschrieben.
Hallo,
und wann werden dann die Befehle ausgeführt, die in der Schleife stehen? Nach dem Wait? Es soll halt so sein, dass zuesrt meine Befehle über die Schnittstelle geschickt werden, und dann gewartet wird. Allerdings soll die Schleife insgesamt nur die in wait vorgegebene Zeit benötigen. Und nicht die Zeit von wait+ die Zeit, die das senden der Befehle benötigt. Das senden der Befehle kann mehrere ms dauern, so dass es schon eine Rolle spielt, ob diese zeit zusätzlich gebraucht wird, vorallem, weil es sich ja über die Heizungen aufaddiert. Außerdem ist es wichtig zu wissen, dass der Befehl gleich am Anfang der Schleife ausgeführt wird.
Werde mal versuchen das mit der zeitgesteuerten Schleife zu machen. Kann man da die einzelnen Zeiten für den Schleifendurchlauf während des Durchlaufs ändern?
MfG Jeffrey
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.11.2007, 14:19
Beitrag #9

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.692
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Interrupt?
Es gibt ja auch noch den Metronom: "Warten auf Raster von"

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.11.2007, 14:33
Beitrag #10

jeffrey Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 123
Registriert seit: Aug 2007

8.0 zuhause, 8.2 Uni
2007
kA


Deutschland
Interrupt?
' schrieb:Es gibt ja auch noch den Metronom: "Warten auf Raster von"
Hallo,
das funktioniert nicht, weil man ja nicht weiß, wie weit es bis zum nächsten Vielfachen ist, weil man ja nicht bei 0 statet.

Ich habe es noch nicht geschafft, bei einer zeitgesteurten Schleife die Durchlaufzeit während des Durchlaufs zu verändern. habe es so wie unten versucht. Funktioniert aber irgendwie nicht.

MfG Jeffrey


Angehängte Datei(en) Thumbnail(s)
   
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
  Gibt es so was wie einen Interrupt? anja210 6 9.431 05.09.2012 12:10
Letzter Beitrag: Lucki

Gehe zu: