send data from LabView to Python and get back

Yuri picture Yuri · Jul 6, 2011 · Viewed 17k times · Source

How do I send data from LabView to Python and get a result back?

Answer

user_na picture user_na · Sep 26, 2016

One other solution is using the smart messaging library ZeroMQ, which comes with a lot of bindings, almost for all major languages.

For the Python/Labview case there is a nice demo project on sourceforge:

Python-LabVIEW Communication

Client-side ~LabVIEW
enter image description here +
Server-side part (example)

#-----------------------------------------# INFRASTRUCTURE for communication
context = zmq.Context()                   # I/O-DAEMON CONTEXT
socket  = context.socket(zmq.REP)         # ARCHETYPE for a Smart Messaging 
socket.bind( "tcp://127.0.0.1:5555" )     # PORT ready for LabView to .connect()
#-----------------------------------------# TRANSPORT-CLASS-es {ipc|tcp|+..}

while True:                               # LOOP & WAIT FOR REQ-calls
    #                                     # Wait for request from client
    message = socket.recv()
    print("Received request: %s" % message )

    try:
        r = eval( message )
        print(r )

        socket.send(bytearray(str( r ),
                             'utf-8' ))    # send returned value as bytearry to client
    except NameError:
        socket.send( b"Unknown command" )

    except:
        socket.send( b"Unknown error" )