将数据从LabView发送到Python并返回

Yur*_*uri 4 python labview

如何将数据从LabView发送到Python并获得结果?

use*_*_na 7

另一个解决方案是使用智能消息库ZeroMQ,它带有大量绑定,几乎适用于所有主要语言.

对于Python/Labview案例,GitHub上有一个很好的演示项目:

Python-LabVIEW通信

客户端~LabVIEW
在此输入图像描述 +
服务器端部分(示例)

#-----------------------------------------# 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" )
Run Code Online (Sandbox Code Playgroud)


War*_* P 4

LabView 允许您用多种语言编写扩展,目前的主要技术是使用网络连接。避免在 Labview 进程本身内部运行本机语言工具包。

这里似乎有一个Python Labview工具包,但它不再起作用了。

使用套接字服务器和套接字客户端在 Labview 和 python 之间进行通信。(大多数跨平台解决方案,现在您不必让 python 和 labview 在同一台 PC 上或同一进程中运行)。

不幸的是,目前我无法提供示例,因为我没有安装 LabView,但我已经完成了从 LabView 到两三种语言的数十个应用程序的基于 ole 自动化的集成,但那是很多年前的事了。这些天我会使用网络套接字技术。