是德科技
直播中

龙旭

7年用户 243经验值
私信 关注
[问答]

Pyvisa编程输出未显示DMM 34470A

我使用scpi和pyvisa编写了以下代码,用于自动化与DMM 34470A连接的2线热敏电阻的温度。
导入numpy为np rm = visa.open.ResourceManager('@ py')digital_multimeter = rm.open_resource(“TCPIP0:186:129:300:243 :: inst0 :: INSTR”)digital_multimeter.timeout = 5000 number_of_readings =
1 digital_multimeter.wrote(“* cls”)digital_multimeter.write(“* IDN”)print digital_multimeter.read()#configuration instrument digital_multimeter.write(“CONF:TEMP THER”)digital_multimeter.write(“TEMP:TRAN:THER:
TYPE 5000“)digital_multimeter.write(”TEMP:TRAN:THER:POW:LTM ON“)digital_multimeter.write(”SAMP:COUN%d“%number_of_readings)print”readtemp of thermister“print digital_multimeter.read()digital_multimeter.close
()在打印设备的IDN后打印“完成”,它只打印:读取热敏电阻的温度“但它没有打印显示在设备中的温度。我是这个编程的新手。请帮我纠正我的代码和
获得所需的输出。

以上来自于谷歌翻译


     以下为原文

  I have written the following code using scpi and pyvisa for automating the temperature of 2 wire thermister connected with DMM 34470A.


import visa
import numpy  as np
rm =visa.open.ResourceManager('@py')
digital_multimeter = rm.open_resource("TCPIP0:186:129:300:243::inst0::INSTR")

digital_multimeter.timeout= 5000
number_of_readings =1

digital_multimeter.wrote("*cls")
digital_multimeter.write("*IDN")
print digital_multimeter.read()

#configuring instrument

digital_multimeter.write("CONF:TEMP THER")
digital_multimeter.write("TEMP:TRAN:THER:TYPE 5000")
digital_multimeter.write("TEMP:TRAN:THER:POW:LTM ON")
digital_multimeter.write("SAMP:COUN %d" %number_of_readings)
print "readingtemp of thermister"
print digital_multimeter.read()

digital_multimeter.close()
print "complete"

after printing the IDN of device, it is only printing : reading temp of thermister" but it is not printing the temperature showing into the device.


I am new to this programming. Please help me to correct my code and get the desired output.  

回帖(2)

杨梅

2018-9-25 14:49:43
小错字,* IDN应该是* IDN?
然后你忘记了几个命令。
要启动DMM,您需要发送INIT,这将告诉它开始进行测量。
然后发送FETCH?
然后你的digital_multimeter.read()读回数据如果你想要你可以发送READ?
取代INIT,FETCH?
组合

以上来自于谷歌翻译


     以下为原文

  Small typo, *IDN should be *IDN?

Then you just forgot a couple of commands.

To get the DMM started you need to send INIT, this will tell it to start taking measurements.  Then send FETCH? followed by your digital_multimeter.read() to read back the data

If you want you can send READ? in place of the INIT, FETCH? combination
举报

龙旭

2018-9-25 15:00:44
引用: 4864165sas 发表于 2018-9-24 20:18
小错字,* IDN应该是* IDN?
然后你忘记了几个命令。
要启动DMM,您需要发送INIT,这将告诉它开始进行测量。

@ lhornburg非常感谢..现在正在工作。
我用过READ命令。

以上来自于谷歌翻译


     以下为原文

  @ lhornburg 

Thank you very much..its now working. I have used READ command.
举报

更多回帖

发帖
×
20
完善资料,
赚取积分