Корзина пуста

  • +7 (495) 777-55-91

    ул. Плеханова 15А


Андрей Н. (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
В7-78/1, медленный обмен
 
Это неправильно отрабатывал следующий слой ПО: не получив ожидаемого символа конца строки он снова вызывал команду viRead, которой уже нечего было считывать.
В7-78/1, медленный обмен
 
Разобрался с проблемой, тему можно удалить. Ниже приведу решение, вдруг кому-то будет полезным.

Проблема была в том, что функция viRead, входящая в состав VISA API, возвращает ответ мультиметра БЕЗ завершающего символа конца строки. Может быть сам мультиметр его не передаёт, но скорее всего так работает реализация VISA API от компании National Instruments. Возможно это поведение может быть скорректировано настройкой инструмента, но по умолчанию оно таково.

Для сравнения, в реализации VISA API от компании Agilent ответ устройства возвращается вместе с символом конца строки.

Спасибо службе поддержки за оперативную реакцию.
В7-78/1, медленный обмен
 
Почему-то функция viRead из VISA API возвращает ошибку VI_ERROR_TMO "The read/write operation was aborted because timeout expired while operation was in progress."

Похоже она не реагирует на символ LF в конце. Требуется ли какая-либо настройка устройства в VISA API?

Если ли примеры работы с вольтметром на C/C++?
В7-78/1, медленный обмен
 
Вопрос: а какую последовательность использует сам вольтметр для обозначения конца строки: LF или CRLF?
В7-78/1, медленный обмен
 
Вопрос: а какую последовательность использует сам вольтметр для обозначения конца строки: LF или CRLF?
В7-78/1, медленный обмен
 
С вашим ПО обмен быстрый. Не подскажете, в чём может быть проблема? Связь с VISA через C API.

*IDN?
Prist,V7-78/1,TW00036614,03.36-01-04
В7-78/1, медленный обмен
 
При отправке команды в качестве конца строки используется одиночный символ 0x0Ah.
В7-78/1, медленный обмен
 
Здравствуйте.

Пытаюсь произвести автоматизированные измерения с использованием В7-78/1. Вольтметр подключён через USB. Наше программное обеспечение использует драйвера VISA и язык команд SCPI.

Вот пример обмена командами. Галочка вправо - это команда вольтметру, галочка влево - ответ вольтметра:

[2020-03-03T15:49:54] > *RST;*CLS
[2020-03-03T15:49:54] > SYSTEM:VERSION?
[2020-03-03T15:49:56] < 1991.0
[2020-03-03T15:49:56] > CONFIGURE:VOLTAGE:DC AUTO
[2020-03-03T15:49:56] > SENSE:VOLTAGE:DC:RANGE:AUTO ON
[2020-03-03T15:49:56] > SENSE:ZERO:AUTO ON
[2020-03-03T15:49:56] > SENSE:VOLTAGE:DC:NPLC 10
[2020-03-03T15:49:56] > :SAMPLE:COUNT 1
[2020-03-03T15:49:56] > SYSTEM:ERROR?
[2020-03-03T15:49:58] < +0,"No error"
[2020-03-03T15:50:06] > :INIT
[2020-03-03T15:50:06] > *OPC?
[2020-03-03T15:50:16] < 1
[2020-03-03T15:50:26] > FETCH?
[2020-03-03T15:50:28] < -1.07519040E-05

Обратите внимание на 2 момента:
1) Любой запрос, например, SYSTEM:VERSION?, занимает примерно 2 секунды.
2) Ожидание окончания измерения - запрос *OPC? - требует целых 10 секунд.

Вопросы:
а) Чем может быть вызвано долгое время ожидания при любом запросе?
б) Как работает запрос *OPC? и почему он занимает такое продолжительное время?

Заранее благодарен.
Страницы: 1

Внимание! Отсутствие ошибок и опечаток не гарантируется. В технические характеристики средств измерений неутвержденного типа производителем могут быть внесены изменения без предварительного уведомления. Соответствие важных параметров требует уточнения. Полные технические характеристики предоставляются по отдельному запросу. Нашли ошибку? Выделите мышкой и нажмите Ctrl+Enter.

Войти в личный кабинет

Заказать обратный звонок

Обратите внимание, все поля - обязательны для заполнения.
Обновить

Обратная связь

Обратите внимание, все поля - обязательны для заполнения.
Обновить