首页 > 解决方案 > 从 python 控制 Thorlabs PM100USB

问题描述

我将 Thorlabs PM100USB 功率计连接到计算机,我想从 python 获取当前读数。从下面的代码中,测量类型显示“TEMP”,它给出了来自温度传感器的当前温度。我打印了资源列表,这就是我得到的

rm.list_resources()
Out[7]: ('USB0::0x1313::0x80F8::M00495436::INSTR', 'ASRL1::INSTR', 'ASRL10::INSTR')

我在我的代码中使用了它

import visa
import pyvisa
from ThorlabsPM100 import ThorlabsPM100
rm = visa.ResourceManager()
rm.list_resources()
inst = rm.open_resource('USB0::0x1313::0x80F8::M00495436::INSTR')
power_meter = ThorlabsPM100(inst=inst)
inst.timeout = None

print("Measurement type :", power_meter.getconfigure)
print("Current value    :", power_meter.read)

print(inst.query("*IDN?"))
print(rm)
print(inst)

这是我得到的输出

Measurement type : TEMP
Current value    : 24.350668
Thorlabs,TSP01,M00495436,1.2.0

Resource Manager of Visa Library at C:\WINDOWS\system32\visa64.dll
USBInstrument at USB0::0x1313::0x80F8::M00495436::INSTR

我想获得功率读数,而不是温度读数。任何线索将不胜感激

标签: pythonvisapyvisa

解决方案


看看他们 github 上的示例程序。https://github.com/clade/ThorlabsPM100/blob/master/example.py

它显示了一些设置要读取的测量类型的方法。例子:

power_meter.sense.power.dc.range.auto = "ON"

如果您再次运行这些行,它应该会改变并显示它现在正在测量的内容:

print("Measurement type :", power_meter.getconfigure)
print("Current value    :", power_meter.read)

推荐阅读