Keithley 2410 и PyVISA - VI_ERROR_TMO: истекло время ожидания до завершения операции

Я пытаюсь управлять Keithley 2410 через python на машине с Linux x86_64 (CentOS 7). Я использую Python 2.7.5, NI-VISA 16 и PyVISA 1.8. Keithley подключается к компьютеру через кабель RS232-USB и настраивается для связи RS232 (с параметрами: бод 57600, биты 8, четность отсутствует, терминатор, flow-ctrl нет). Когда я пытаюсь запросить Keithley, я получаю ошибку тайм-аута, как показано ниже:

>>> import visa
>>> rm = visa.ResourceManager()
>>> print(rm.list_resources())
(u'ASRL1::INSTR', u'ASRL2::INSTR')
>>> keithley = rm.open_resource("ASRL2::INSTR")
>>> print(keithley.query('*IDN?'))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/site-packages/pyvisa/resources/messagebased.py", line 407, in query
return self.read()
File "/usr/lib/python2.7/site-packages/pyvisa/resources/messagebased.py", line 332, in read
message = self.read_raw().decode(enco)
File "/usr/lib/python2.7/site-packages/pyvisa/resources/messagebased.py", line 306, in read_raw
chunk, status = self.visalib.read(self.session, size)
File "/usr/lib/python2.7/site-packages/pyvisa/ctwrapper/functions.py", line 1582, in read
ret = library.viRead(session, buffer, count, byref(return_count))
File "/usr/lib/python2.7/site-packages/pyvisa/ctwrapper/highlevel.py", line 188, in _return_handler
raise errors.VisaIOError(ret_value)
pyvisa.errors.VisaIOError: VI_ERROR_TMO (-1073807339): Timeout expired before operation completed.

2 ответа

PyVISA 1.8 должен по умолчанию использовать терминатор строки '\r' для последовательного порта, поэтому ваш 2410, возможно, не получает '\n', который ему необходим для запуска анализа парсинга. Попробуй сделать

keithley.write_termination = '\n'
keithley.read_termination = '\n'

сразу после вашего open_resource() вызов.

Спасибо за предложение, но, похоже, мне нужно было явно установить скорость передачи данных.

rm = visa.ResourceManager()
smu = rm.open_resource("ASRL2::INSTR")
smu.baud_rate = 57600
Другие вопросы по тегам