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 

Nicht regelmäßiges Einlesen erzeugt Timeout fehler



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!

04.12.2008, 14:13
Beitrag #1

Kex2006 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 59
Registriert seit: May 2008

8.2.1
2008
de

65812
Deutschland
Nicht regelmäßiges Einlesen erzeugt Timeout fehler
Hallo,
ich bekomme nur ab und zu etwas einlesen. wenn ich den ganz normalen VISA seriel port nehme und den einlese durch visa read dann bekomme ich nach der entsprechenden timeout einen fehler.

das programm soll aber auch ablaufen wenn eben keine daten gesendet werden. alle jede sekunde oder 500 ms würde schon reichen.
von einem vorgänger hab ich ein vi übernommen, die ungefähr das macht (nachdem ich die timeout zeit auf 700ms runtergesetzt habe) nur verstehe ich nicht was das vi macht. kanns mir jemand erklären?
lieben gruß

LabVIEW 8.2


Angehängte Datei(en)
Sonstige .vi  Seriel_port_auslesen_labview_8.2.vi (Größe: 14,62 KB / Downloads: 231)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.12.2008, 18:21
Beitrag #2

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.697
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Nicht regelmäßiges Einlesen erzeugt Timeout fehler
' schrieb:Hallo,
ich bekomme nur ab und zu etwas einlesen. wenn ich den ganz normalen VISA seriel port nehme und den einlese durch visa read dann bekomme ich nach der entsprechenden timeout einen fehler.

das programm soll aber auch ablaufen wenn eben keine daten gesendet werden. alle jede sekunde oder 500 ms würde schon reichen.
Ich verstehe nicht, ob und was diese beiden Sätze etwas mit einem Problem zu tun haben.

Daher kann ich nur folgendes beantworten:
Zitat:von einem vorgänger hab ich ein vi übernommen, die ungefähr das macht (nachdem ich die timeout zeit auf 700ms runtergesetzt habe) nur verstehe ich nicht was das vi macht.
Das ist einfach: Das gepostetet VI konfiguriert einen Com-Port und versucht 8 Zeichen auszulesen. Allerdings wird dieses VI an sich nicht richtig funktionieren. Die beiden VIs müssen sequenziert werden: Erst initialisieren, dann Einlese-Versuch.

Beachte, dass das Initialisieren mur einmalg nötig ist.

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
05.12.2008, 10:28
Beitrag #3

Kex2006 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 59
Registriert seit: May 2008

8.2.1
2008
de

65812
Deutschland
Nicht regelmäßiges Einlesen erzeugt Timeout fehler
naja mein problem ist das das visa read vi wartet bis daten empfangen wurden. wenn innerhalb der timeout zeit nix empfangen wurde bricht das programm mit einem fehler ab.
das bedeutet erstens das das programm nicht ausgeführt wird solang das read vi auf daten wartet und zweitens eben dass es komplett abbricht wenn ich innerhalb von 10s keine daten bekomme.

das kann aber gut seind ass ich innerhalb dieser zeit keine daten bekomme!! das programm soll aber keinen fehler melden sondern weiter arbeitn! außerdem soll das programm nicht 10 s dort warten (was bedeutet dass das proramm in der zeit keine eingaben einliest) sondern soll egal ob daten kommen oder nicht alle 500ms ausgeführt werden..

(das der port außerhalb der programmschliefe initialisiert werden muss weiß ihc.. war ja nur n beispiel zum posten..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
05.12.2008, 12:53 (Dieser Beitrag wurde zuletzt bearbeitet: 05.12.2008 12:54 von IchSelbst.)
Beitrag #4

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.697
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Nicht regelmäßiges Einlesen erzeugt Timeout fehler
' schrieb:naja mein problem ist das das visa read vi wartet bis daten empfangen wurden. wenn innerhalb der timeout zeit nix empfangen wurde bricht das programm mit einem fehler ab.
Verwende nicht die VISA/Serial-VIs, denen du nur die Portnummer übergeben musst. Verwende die VISA-VIs, mit denen du alles selber machen musst bzw. kannst. Diese VISA-VIs arbeiten mit einer Referenz.
Es gibt ein VISA-Property (dafür brauchst du die Referenz), das dir die akteulle Anzahl der Zeichen im Eingangspuffer angibt. Lies also dieses Property aus, und du weißt ob und wieviele Daten im Puffer stehen. Jetzt musst du nur noch um dieses Property den entsprechenden Sourcecode herumbauen: wenn was da, dann auslesen und bearbeiten; sonst eben nichts tun.

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
05.12.2008, 17:32
Beitrag #5

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.697
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Nicht regelmäßiges Einlesen erzeugt Timeout fehler
Ich hab dir mal ein Bild gemacht. Vielleicht kannst du ja was daraus lesen.


Angehängte Datei(en) Thumbnail(s)
   

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
08.12.2008, 16:04
Beitrag #6

Kex2006 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 59
Registriert seit: May 2008

8.2.1
2008
de

65812
Deutschland
Nicht regelmäßiges Einlesen erzeugt Timeout fehler
erstmal DANEK!!
also verstehe ich das richtig:
erst wird ausgelesen wieviele bytes am port anliegen. wenn weniger als die "gewollten" anliegen läuft die while schleife. aber maximal 100mal. dann geht das programm weiter an das Read visa
wenn bytes emofangen wurden soll das read Vi genau die anzahl von bytes auslesen. wenn aber keine bytes empfangen wurden soll das read vi auch nur 0 (null) bytes auslesen, und sendet daher keine fehlermeldung wenn keine daten anliegen?

PS: nächste aufgabe für mich ist die daten via tcp ip auszulesen. gibt es da gescheite beispiele wie das funktioniert in LabVIEW?

liebe grüße und nochmal danke
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
08.12.2008, 16:50
Beitrag #7

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.697
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Nicht regelmäßiges Einlesen erzeugt Timeout fehler
' schrieb:erst wird ausgelesen wieviele bytes am port anliegen. wenn weniger als die "gewollten" anliegen läuft die while schleife. aber maximal 100mal. dann geht das programm weiter an das Read visa
Jawohl, das verstehst du richtig.

Zitat:wenn bytes emofangen wurden soll das read Vi genau die anzahl von bytes auslesen.
Entweder genau die erforderliche Anzahl. Oder eben weniger, wenn nur weniger angekommen sind. Sind weniger angekommen, erkennt die Nachfolgeschaltung einen Fehler - und es kommt nicht zu einem Ablauffehler. Schon erst recht nicht zu einen Fehler aus dem VISA-VI heraus.

Zitat:wenn aber keine bytes empfangen wurden soll das read vi auch nur 0 (null) bytes auslesen, und sendet daher keine fehlermeldung wenn keine daten anliegen?
Im Prinzip genau so. Das VISA-VI selbst darf keinen Fehler machen, wenn es 0 lesen soll und 0 da sind.

Zitat:PS: nächste aufgabe für mich ist die daten via tcp ip auszulesen. gibt es da gescheite beispiele wie das funktioniert in LabVIEW?
Neu Frage, neues Thema ausmachen.

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
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Polling über USB RAW - Timeout funktioniert nicht MirkoB 3 5.135 06.09.2017 15:18
Letzter Beitrag: MirkoB
  TimeOut error 6101 patriote00 15 13.981 18.12.2015 14:55
Letzter Beitrag: patriote00
  VISA: Timeout Error (1073807339) TobSTAR 4 9.667 03.07.2014 09:22
Letzter Beitrag: TobSTAR
  Byte (hex) erzeugt Timeout im VISA Lolleg 2 4.263 06.06.2014 13:26
Letzter Beitrag: Lolleg
  VISA: Wait on Event - Vor Timeout Abbrechen Lien_Alere 7 8.715 20.01.2012 16:00
Letzter Beitrag: GerdW
  Timeout des VISA Seriellen Port konfigurieren micheljoel2002 1 6.322 18.09.2010 20:57
Letzter Beitrag: GerdW

Gehe zu: