连贯的FieldMax2 ActiveX.dll在LabView中工作,但在Python中不工作

2024-09-29 17:12:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在将相干FieldMax2(通过USB连接的光功率计)集成到Python的自动测量程序中。供应商提供的唯一信息是LabView示例(.vi)和ActiveX.dll(根据可用文档)

从LabView示例中,我可以访问.dll中可用的各种函数。 到目前为止,我已经尝试了以下方法的变体,以与LabView示例中相同的方式连接到电能表:

import ctypes

mydll =ctypes.WinDLL("C:\Windows\System32\FieldMax2Lib.dll")

py_connect=mydll.fm2LibOpenDriver
py_connect.restype=c_int32
py_connect.argtypes=[c_int16]
response=py_connect(0) # arg 0 = 1 available power meter
print(response)

然而,不管我怎么做,我只得到响应'-1',根据有限的文档,这意味着.dll文件找不到任何电能表。 可以找到LabView块方案

LabView block scheme

如果您能就如何解决这个问题提出建议,我将不胜感激


Tags: 文档py程序示例responseconnect功率ctypes
1条回答
网友
1楼 · 发布于 2024-09-29 17:12:58

我无法重现此问题,我的版本为:
系统版本v3.7.1rc2[MSC v.1914 64位(AMD64)]
c类型。版本:1.1.0
FieldMaxII
v3.3.2.9_rc1
我的代码正在使用安装程序目录中的dll:

import ctypes as c

mydll = c.WinDLL(r'C:\Program Files (x86)\Coherent\FieldMaxII PC\Drivers\Win10\FieldMax2Lib\x64\FieldMax2Lib.dll')

py_connect=mydll.fm2LibOpenDriver
py_connect.restype=c.c_int32
py_connect.argtypes=[c.c_int16]
response=py_connect(0) # arg 0 = 1 available power meter
print(response)

当返回“0”时,FieldMaxII的额外通信/读出也是可能的

相关问题 更多 >

    热门问题