11.12.2008, 11:54
Beitrag #2
|
Gabs
LVF-Grünschnabel
Beiträge: 41
Registriert seit: Jan 2005
7.1 ... 2009
1995
EN
76XXX
Deutschland
|
Probleme mit GPIB Ansteuerung von Linearstages
Hallo Andreas,
oh je - das alte GPIB Zeugs....
So wie Du den Fehler beschreibst sieht es auch für mich danach aus daß der Controller nicht wieder in den Listener Zustand zurückkommt. Hast Du mal versucht, den NI Spy mitlaufen zu lassen? Darüber solltest Du eigentlich herausfinden können, was passiert. Die Frage ist ja, ob der GPIB-Controller host-seitig nicht die richtigen Bits setzt oder ob der PI-Controller eventuell gar nicht antwortet. Syntax ist sicherlich richtig, denn wie Du schreibst bekommst Du auf die 1. Abfrage ja eine korrekte Antwort? Ist der Termination-Character richtig eingestellt, so daß der Treiber weiß wann die Antwort zu Ende ist und nicht auf weitere Zeichen wartet? Wenn Du dann den zweiten Write-Befehl (ein Abfragekommando) sendest, funktioniert bereits das Senden nicht oder tritt der Fehler erst beim anschließenden erneuten Read auf? Kabel getauscht (ist bei GPIB oft kritisch und führt manchmal zu den seltsamsten Effekten)?
Mehr Fragen als Antworten, aber vielleicht hilft Dir das eine oder andere.
Viele Grüße,
Gabs
' schrieb:Hallo zusammen,
bin recht neu in LabVIEW und stoße so langsam auf Probleme die ich selber nicht mehr lösen kann und mir der Herr google in Verbindung mit meinem Verständnis des Ganzen nicht helfen kann.
Folgendes:
Ich steuere zwei (alte) Linearstages von PI mit einem (alten) Controller C-800 über GPIB an. Standard ist IEEE 488.1, also der alte.
Die Ansteuerung mittels GPIB Write Befehlen in LV funktioniert tadellos.
Wenn ich jetzt aber auf einen Write Befehl einen Read Befehl ausführe um das Gerät auszulesen, funktioniert das genau einmal. Das zweite mal gibts keinen Fehler, aber auch keinen zurückgegebenen String. Das dritte mal gibts den GPIB Error 6. Einzige Möglichkeit ist dann den Controller komplett (!) zurückzusetzen und dann gehts wieder von vorne los.
Ich vermute, dass der Read Befehl den Controller automatisch als Talker setzt aber nicht mehr zurück auf Listener (deckt sich in etwa mit meinen Beobachtungen der statusbits).
Kann man in LV einzelne GPIB Statusbits setzen?
Hat jemand noch Ahnung von dem alten Zeugs und kann mir eventuell sagen wie ich da rangehen soll?
Danke schonmal und viele Grüße
Andreas
|
|
|
11.12.2008, 13:43
Beitrag #3
|
F_aus_S
LVF-Grünschnabel
Beiträge: 10
Registriert seit: Dec 2008
8
2008
en
70000
Deutschland
|
Probleme mit GPIB Ansteuerung von Linearstages
Hallo Gabs,
danke für deine schnelle Antwort.
Ich habe nochmal alles durchgeschaut und dank deiner Tipps nochmal was probiert was ich eigentlichs chon gecheckt habe. Und zwar den Termination Character zu verändern. Und siehe da, der Read Befehl will keinen termination character. Wenn ich den Termination Mode im Read Befehl abschalte, aber mit CR schreibe, dann mag er das plötzlich und sagt mir auch so oft ich will was er gerade macht :-)
Verstehe wer will...
Jetzt muss ich nur noch irgendwie die Antworten interpretieren können, im Handbuch steht irgendwas von Dualzahlen... mal in meinem Hirn suchen was das noch gleich war...
Viele Grüße
Andreas
|
|
|
11.12.2008, 15:02
Beitrag #4
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
Probleme mit GPIB Ansteuerung von Linearstages
' schrieb:Ich habe nochmal alles durchgeschaut und dank deiner Tipps nochmal was probiert was ich eigentlichs chon gecheckt habe. Und zwar den Termination Character zu verändern. Und siehe da, der Read Befehl will keinen termination character. Wenn ich den Termination Mode im Read Befehl abschalte, aber mit CR schreibe, dann mag er das plötzlich und sagt mir auch so oft ich will was er gerade macht :-)
Verstehe wer will...
mglw. geht es schon mit Termination Char, aber wenn du nicht einen anderen Code anschließt, dann steht der standardmäßig auf "Newline" (Hex 0A), nicht auf CR (HEX 0D).
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Einführende Links zu LabVIEW, s. GerdWs Signatur.
|
|
|
11.12.2008, 16:03
Beitrag #5
|
F_aus_S
LVF-Grünschnabel
Beiträge: 10
Registriert seit: Dec 2008
8
2008
en
70000
Deutschland
|
Probleme mit GPIB Ansteuerung von Linearstages
' schrieb:mglw. geht es schon mit Termination Char, aber wenn du nicht einen anderen Code anschließt, dann steht der standardmäßig auf "Newline" (Hex 0A), nicht auf CR (HEX 0D).
Gruß, Jens
Ich weiß nicht genau was du meinst, sehe aber gerade dass ich da mit EOS (bei read) und EOI (bei write) eventuell was durcheinanderbringe. Muss mir da mal in Ruhe anschauen, so langsam ist mein Kopf aber voll...
Ist so ein Termination Char denn wichtig?
Und noch was: Tipp von einem Kollegen war, einen Serial Poll zu machen. Hat zwar nicht funktioniert,allerdings hab ich nicht mal herausgefunden was der macht. Wozu ist das gut?
Gruß,
Andreas
|
|
|
| |