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 

VISA Read will nicht immer



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!

02.11.2008, 13:47
Beitrag #1

Peter04 Offline
LVF-Stammgast
***


Beiträge: 305
Registriert seit: Jan 2008

2020
2007
DE_EN

79xxx
Deutschland
VISA Read will nicht immer
Hallo,

ärgerliches Problem.
Ich steuere ein Keithley Multimeter über RS232 mit VISA an. Die Kommunikation senden/empfangen (SCPI) klappt prinzipiell.
Irgendwann taucht aber Fehler 1073807339 auf, soll heißen, ich will Daten lesen obwohl nichts anliegt. Es wird auch angezeigt, dass 0 bytes anstatt 16 Bytes ausgelesen werden.
Da zum K2000 und Fehler 1073807339 schon im Forum/Netz einiges zufinden ist, habe ich auch einiges ausprobiert:
- Timeout zwischen Schreiben und Lesen erhöht (ändert nix)
- Baudrate, Flußkontrolle, Abschlusszeichen variiert (ja, an Hard- und Software) (hilft nix)
- NI Treiber für KE2000 probiert (error im subsubsubsub...-vi)
- erst in Gerätespeicher schreiben und dann auslesen (ebenfalls nix)

Im angehängten vi habe ich bspw. "fetch?" in der Schleife laufen. Das geht mal 50, mal 200 mal gut, und dann kommt die Fehler-Meldung.

Mir fällt dazu nix mehr ein.

Schönen Gruß

PeterLv80_img


Sonstige .vi  Keith_1.vi (Größe: 43,32 KB / Downloads: 310)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2008, 12:44
Beitrag #2

macces Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 57
Registriert seit: Oct 2006

8.60 SE
2006
kA

47803
Deutschland
VISA Read will nicht immer
Das folgende beruht nur auf Halbwissen und behebt auch die Ursache nicht (ohne das Gerät eh schwierig), aber vielleicht hilfts ja:

Bricht die Kommunikation komplett ab, oder sind das nur einmalige Ausfälle? Wenn bei 1000 Messwerten mal einer verloren geht, ists ja ned so schlimm.
Vielleicht hilfts ja wenn Du ein Event einfügst, dass er bis zum Eintreten mit dem Lesen wartet.
Oder aber Du verringerst die Schleifenanzahl und lässt häufiger initialisieren.

Jaja, keine eleganten Lösungen. Wenns nich hilft, einfach ignorieren.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2008, 12:56
Beitrag #3

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
VISA Read will nicht immer
Hast du schon mal das READ zwischen "Synchron" und "Asynchron" (rechtsklick...) gewechselt...?

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2008, 12:58
Beitrag #4

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
VISA Read will nicht immer
Hast du schon mal versucht, mit dem Property "Bytes at Port" die Anzahl zu lesen?

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2008, 13:10
Beitrag #5

RoLe Offline
LVF-Guru
*****


Beiträge: 1.236
Registriert seit: Jul 2007

-
1997
en

0
Schweiz
VISA Read will nicht immer
Noch ein Tipp:

Error-Cluster durchverbinden, mit Shiftregister.

.·´¯)--> Leben ist das, was dir passiert, wenn du eifrig dabei bist andere Pläne zu machen <--(¯`·.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2008, 13:26
Beitrag #6

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
VISA Read will nicht immer
' schrieb:Noch ein Tipp:

Error-Cluster durchverbinden, mit Shiftregister.

Ich weiss nicht was das bringen soll.

Aber mein Vorschlag ist die Wartezeit wegzumachen und stattdessen das Timeout z.B. auf 1000 zu erhöhen. Und falls so ein Fehler kommt den Befehl noch Mal zu senden.

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
07.11.2008, 13:38
Beitrag #7

RoLe Offline
LVF-Guru
*****


Beiträge: 1.236
Registriert seit: Jul 2007

-
1997
en

0
Schweiz
VISA Read will nicht immer
' schrieb:Ich weiss nicht was das bringen soll.

Richtigen LV-Code (Errorhandling) Wink

.·´¯)--> Leben ist das, was dir passiert, wenn du eifrig dabei bist andere Pläne zu machen <--(¯`·.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2008, 13:43 (Dieser Beitrag wurde zuletzt bearbeitet: 07.11.2008 14:06 von eg.)
Beitrag #8

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
VISA Read will nicht immer
Aber wenn er das macht und ein Error auftritt wird er doch niemals etwas lesen können weil der Fehler im Schieberegister erhalten bleibt. Oder soll er am Ende den Fehler quittieren? Wenn ja, wozu soll der Nichtfehler dann zur nächsten Iteration durchgeschliffen werden?

Ich mache es z.B. immer so und verstehe immer noch nicht wozu der Fehler im Schieberegister:


Angehängte Datei(en) Thumbnail(s)
   

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2008, 14:18 (Dieser Beitrag wurde zuletzt bearbeitet: 07.11.2008 14:22 von RoLe.)
Beitrag #9

RoLe Offline
LVF-Guru
*****


Beiträge: 1.236
Registriert seit: Jul 2007

-
1997
en

0
Schweiz
VISA Read will nicht immer
' schrieb:Aber wenn er das macht und ein Error auftritt wird er doch niemals etwas lesen können weil der Fehler im Schieberegister erhalten bleibt. Oder soll er am Ende den Fehler quittieren? Wenn ja, wozu soll der Nichtfehler dann zur nächsten Iteration durchgeschliffen werden?

Es kommt halt darauf an, ob es was ausmacht, wenn Daten fehlen.
Was ist, wenn schon vor der For-Schleife ein Fehler auftritt?
Ich vermute, dass der Befehl nicht geschrieben werden konnte, und daher das lesen Fehler macht.
Ich gehe weiter davon aus, dass er kein Wait mehr hat, ich weis nicht wer sowas macht. Schauen ob es Daten hat, und dann lesen ist meiner Meinung nach das einzig richtige Vorgehen.
Wenn dann ein Fehler auftritt, wird die For-Schleife (??) ohne schreiben, lesen noch die Anzahl N gemacht, da die Funktionen bei Fehlereingang nichts mehr machen.

Aber, dein Vorschlag geht auch und ist einfacher.

EDIT: So wie in deinem Bild, braucht es das SR nicht, da gebe ich dir Recht, Peter04 macht es aber "noch" nicht so

.·´¯)--> Leben ist das, was dir passiert, wenn du eifrig dabei bist andere Pläne zu machen <--(¯`·.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2008, 15:18 (Dieser Beitrag wurde zuletzt bearbeitet: 07.11.2008 15:29 von Lucki.)
Beitrag #10

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
VISA Read will nicht immer
Das kann doch auch an der Gegenstelle liegen, daß sie manchmal nichts sendet. Wenn es so selten ist, dann ist doch die Frage für Dich: brauche ich dieses eine Datenelement wirklich, oder kann ich mir leisten, dieses Datenelemant auzuslassen.
Hier zwei Beispiele zur Fehlerbehandlung:
       

Zitat:Irgendwann taucht aber Fehler 1073807339 auf, soll heißen, ich will Daten lesen obwohl nichts anliegt.
Die Formulierung gefällt mir gar nicht, und in Verbindung mit der überflüssigen Wartezeit vor dem Lesen (Worauf Eugen schon hinwies), beweist es, daß Du die Funktion Lesen noch nicht richtig verstanden hast.

Also: Daß im Moment des Aufrufs des Lesen-VI noch kein Daten im Buffer sind, ist ganz normal und kein Grund für eine Fehlermeldung. Das VI wartet dann geduldig, und zwar so lange, bis eines von dem geschieht:
1.) das Abschlußzeichen wird detektiert
2.) die vorgegebene Anzahl von Bytes ist erreicht
3.) Timout ist erreicht.
Bei 3.) kommt eine Fehlermeldung und man hat keine gültigen Daten am Ausgang.

Ich würde auch mal die Reaktionszeiten protokollieren und sehen, ob sie stark schwanken, und das Timout sehr hoch nehmen:
   
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
  VISA Error 1073807339 aber nicht mit Lämpchen an Hachiko 6 6.504 01.06.2021 13:32
Letzter Beitrag: Hachiko
  Gerät wird im VI nicht mehr erkannt - Problem mit VISA? MissHeadcrusher 10 10.195 25.11.2019 00:14
Letzter Beitrag: rolfk
  VISA Read und Bytes at Port tanka 9 13.832 28.08.2019 08:10
Letzter Beitrag: Lucki
  GPIB / VISA Verbindung funktioniert nicht mehr in exe marc10k 2 4.405 25.01.2019 12:15
Letzter Beitrag: marc10k
  VISA über MAX geht, im VI nicht mehr buettnerstefan 7 6.721 29.06.2018 13:02
Letzter Beitrag: buettnerstefan
  VISA Read Fehler 1073807302 Stefan1101 4 7.662 29.08.2016 10:13
Letzter Beitrag: Stefan1101

Gehe zu: