Anritsu Pyvisa问题

时间:2013-12-02 20:54:52

标签: python python-2.7 instruments visa gpib

我遇到了使用Anritsu MG69377B微波发生器的问题。

进入远程模式并识别仪器没有问题,但任何其他返回值的命令都会超时,仪器似乎确实响应任何写入命令。我正在使用pyvisa与仪器进行通信。

>>>import visa
>>> x = visa.connect('GPIB::5') #Address the instrument
>>> x.ask('*IDN?')  # Works Fine
>>>'ANRITSU,69377B,010918,2.35'
>>>
>>> x.ask('*STB?')

Traceback (most recent call last):
    File "<pyshell#37>", line 1, in <module>
        x.ask('*STB?')
    File "C:\Python27\lib\site-packages\pyvisa\visa.py", line 502, in ask
        return self.read()
    File "C:\Python27\lib\site-packages\pyvisa\visa.py", line 433, in read
        return self._strip_term_chars(self.read_raw())
    File "C:\Python27\lib\site-packages\pyvisa\visa.py", line 407, in read_raw
        chunk = vpp43.read(self.vi, self.chunk_size)
    File "C:\Python27\lib\site-packages\pyvisa\vpp43.py", line 840, in read
        visa_library().viRead(vi, buffer, count, byref(return_count))
    File "C:\Python27\lib\site-packages\pyvisa\vpp43.py", line 398, in check_status
        raise visa_exceptions.VisaIOError, status
   VisaIOError: VI_ERROR_TMO: Timeout expired before operation completed.

* STB?是一个标准的IEEE命令,应该适用于任何符合标准的仪器(基本上都是)。我查看了手册,我似乎也发现其他代码的语法没有任何问题。当使用pyvisa远程连接时,仪器似乎不起作用。 (不确定这是一个pyvisa问题还是我的乐器的问题)。

提前感谢您的帮助。我在这里拉着吸管,但也许那里的一些巫师可以帮助我解决谁有这方面的经验。

1 个答案:

答案 0 :(得分:2)

693xxB支持两种语言,称为Native和SCPI。在该文书中,SCPI语言是一种选择(选项19)。在带有选项19的693xxB中,语言是仪器设置。

Native模式只支持通用命令* IDN?。 SCPI模式支持更常见的命令,比如* STB?例如。

您的语法和VISA连接似乎很好。它位于仪器设置/支持端。