Python: Empfangen von Daten über Sockets - [Errno 11] Resource temporarily unavailable

Hintergrund

Brauche ich die Kommunikation mit einem Tektronix MSO 4104 von python. Die Kommunikation erfolgt über das LAN mit vxi11-ethernet-Protokoll und python-socket-Bibliothek.

Situation

Nun, dies funktioniert auch Recht gut; ich kann cconnect auf den Umfang und die ich senden kann es jedem Befehl, den ich will (zB: <socket object>.send('*IDN?')). Allerdings, wenn Sie einen Befehl senden soll eine Antwort (wie *IDN? tun soll:) ich Versuch zu verwenden <socket object>.recv(1024) aber ich IMMER erhalten die Fehlermeldung "[Errno 11] Resource temporarily unavailable."

Ich weiß, die Verbindung ist gut, wie ich kann, erhalten Informationen zu der selben '*IDN?' prompt über den eingebauten HTTP-Schnittstelle.

Code

Folgende ist ein Ausschnitt aus scope.py das schafft die socket-Schnittstelle, die mit dem Umfang.

import socket
import sys
import time

class Tek_scope(object):
    '''
    Open up socket connection for a Tektronix scope given an IP address
    '''
    def __init__(self, IPaddress, PortNumber = 4000):
        self.s = socket.socket(socket.AF_INET , socket.SOCK_STREAM)
        self.s.connect((IPaddress, PortNumber))
        self.s.setblocking(False)
        print "Scope opened Successfully"

Nun um den Fehler zu erhalten, führe ich die folgenden:

import scope # Imports the above (and other utility functions)

scope1 = scope.Tek_scope("10.1.10.15") #Connects to the scope

scope1.s.send('*IDN?') #Sends the *IDN? command to the scope. 

# I have verified these signals are always recieved as I can 
# see them reading out on the display

scope1.s.recv(1024) 

# This should receive the response... but it always gives the error

System

  • Fedora 16
  • Python 2.7
  • Tektronix MSO4104

Frage

So, warum bin ich nicht zum recieveing keine Daten in der Antwort auf meine Aufforderung? Habe ich vergessen irgendeine Art von prep? Die Daten gehen irgendwo, ich bin nur nicht kontrolliert? Habe ich nur die Module falsch? Jede Hilfe wäre sehr geschätzt werden!

InformationsquelleAutor Bacaa14 | 2013-07-11
Schreibe einen Kommentar