Instrument driver для мультиметров Keithley со сканером

Простейшие вопросы в области инженерной разработки
Ответить
Johnik
interested
interested
Сообщения: 5
Зарегистрирован: 05 окт 2017, 12:53
Версия LabVIEW: 8.6
Контактная информация:

Instrument driver для мультиметров Keithley со сканером

Сообщение Johnik »

Имеется мультиметр Keithley 2010 (GPIB) со сканером каналов (2000-scan), контроллер GPIB NI-488.2, Labview 8.6.
Скачал стандартный Instrument driver для Keithley 2000. Этот драйвер работает с 2010. Добавил в него еще возможность с измерением 7 знака, т.к. 2000 измеряет только 6. А вот возможности считывать несколько каналов в этом драйвере нет. Поиском пошерстил - не нашел подобных тем, в поисковике тоже. С нуля писать/разбираться энтузиазма пока нет... Имею ввиду напрямую подавать команды в GPIB. Может кто подскажет где взять готовое решение?
Blackman

Activity
leader
leader
Сообщения: 932
Зарегистрирован: 17 янв 2016, 15:02
Награды: 1
Версия LabVIEW: 6.1,8.5,20

Re: Instrument driver для мультиметров Keithley со сканером

Сообщение Blackman »

...А вот возможности считывать несколько каналов в этом драйвере нет...
??? :wink:
Keithley 2000.lvlib:Configure Scan.vi
Johnik
interested
interested
Сообщения: 5
Зарегистрирован: 05 окт 2017, 12:53
Версия LabVIEW: 8.6
Контактная информация:

Re: Instrument driver для мультиметров Keithley со сканером

Сообщение Johnik »

Blackman, эту функцию видел. Я тогда не понимаю как оно работает. Я думал scan просто переключает каналы. Т.к. на выходе этого инструмента нет данных.
Мне надо считать несколько каналов напряжения и один сопротивления, как с помощью этой функции сделать я не понимаю. Примеров со сканом нет. ReadMultiple просто считывает несколько раз один и тот же канал
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5458
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 27 раз
Поблагодарили: 86 раз

Re: Instrument driver для мультиметров Keithley со сканером

Сообщение IvanLis »

Keithley 2000 Read Multiple.vi - многократное чтение одного канала.
Делайте последовательный опрос необходимых каналов.
Сложно представить, каким образом по одной шине, одновременно опрашивать несколько устройств.
Johnik
interested
interested
Сообщения: 5
Зарегистрирован: 05 окт 2017, 12:53
Версия LabVIEW: 8.6
Контактная информация:

Re: Instrument driver для мультиметров Keithley со сканером

Сообщение Johnik »

IvanLis, устройство одно, мультиметр 2010, к нему идет сканер каналов (вставляется внутрь), получается 10 каналов, их можно как-то считать scan и передать дальше. Как именно не знаю.
Вы предлагаете последовательный опрос каналов, так и хотел изначально делать, НО в стандартных инструментах нет функции считать именно этот канал, есть только функция считать, и считывает я так понимаю то что подцеплено к передней/задней панели. Чтобы выбрать канал похоже надо использовать скан, пробовал им считать один канал, почему-то функция циклит сам прибор - постоянно начинает считывать, надо как-то прекращать это...
В Read Multiple тоже нет функции выбрать и считать именно один канал, хотя зачем-то есть выходные данные Channels.
Вот как организовать последовательно считывать хотя бы два канала с помощью стандартного драйвера инструмента? Даже примера нет на этот счет...
Blackman

Activity
leader
leader
Сообщения: 932
Зарегистрирован: 17 янв 2016, 15:02
Награды: 1
Версия LabVIEW: 6.1,8.5,20

Re: Instrument driver для мультиметров Keithley со сканером

Сообщение Blackman »

Документация:
http://www.testequipmentdepot.com/keith ... manual.pdf
https://xdevs.com/doc/Keithley/2001/doc ... 01_01C.pdf
https://cdn.testequity.com/documents/pd ... SC-man.pdf

Примеры от KEITHLEY
https://forum.tek.com/viewtopic.php?f=3 ... 20#p242947

*RST
:ROUTE:SCAN (@1:10)
:ROUTE:SCAN:LSEL INT
:SAMPLE:COUNT 10
:TRACE:POINTS 10
:TRACE:FEED:CONT NEXT
:INIT
:TRACE:DATA?
Вложения
Keithley 2000 Read Multiple with Scanner.png
ke2010 scanner LV711.llb
(231.94 КБ) 127 скачиваний
Johnik
interested
interested
Сообщения: 5
Зарегистрирован: 05 окт 2017, 12:53
Версия LabVIEW: 8.6
Контактная информация:

Re: Instrument driver для мультиметров Keithley со сканером

Сообщение Johnik »

Blackman, спасибо большое за помощь. Сделал подобную программу. В общем мультиметр Keithley пишет error 222. Поменял в ОС разделитель с "," на "." - не помогло...
И еще в библиотеке ke2010, что Вы приложили, программы как на картинке нет, это из-за разности версий или вы просто из другого места взяли?
scanner read.JPG
Johnik
interested
interested
Сообщения: 5
Зарегистрирован: 05 окт 2017, 12:53
Версия LabVIEW: 8.6
Контактная информация:

Re: Instrument driver для мультиметров Keithley со сканером

Сообщение Johnik »

С этой ошибкой вроде справился, почему-то нельзя ставить таймаут на read как я сделал, только если его совсем нет - тогда работает. Ну и количество раз считывания здесь неправильно, надо сколько каналов считал. Считывать несколько каналов одного и того же научился (напряжение или сопротивление)
Теперь не могу считать вперемешку, чтоб считался один канал сопротивления и остальные напряжения. Выдает ошибку уже на close -260,"Expression error". Уже как только не пробовал. Непонятно единый read должен быть или раздельный для сопротивления и напряжения. Да и вообще после одного скана второй никак не хочет запускаться.
Я уже дозреваю, чтобы напрямую писать команды в шину, нежели разбираться с инструментами драйвера
Аватара пользователя
Kosist

Activity Gold
expert
expert
Сообщения: 1236
Зарегистрирован: 21 фев 2011, 23:44
Награды: 2
Версия LabVIEW: 2013-2020
Благодарил (а): 23 раза
Поблагодарили: 30 раз
Контактная информация:

Re: Instrument driver для мультиметров Keithley со сканером

Сообщение Kosist »

Johnik писал(а):С этой ошибкой вроде справился, почему-то нельзя ставить таймаут на read как я сделал, только если его совсем нет - тогда работает.
Думаю, что таймаут ставить можно, только большее значение, чем ставили Вы. Ибо функция чтения (VISA Read) будет все равно использовать таймаут, пусть даже и дефолтный.
Johnik писал(а):Теперь не могу считать вперемешку, чтоб считался один канал сопротивления и остальные напряжения. Выдает ошибку уже на close -260,"Expression error". Уже как только не пробовал. Непонятно единый read должен быть или раздельный для сопротивления и напряжения. Да и вообще после одного скана второй никак не хочет запускаться.
Не знаю, как Вы конкретно это пытаетесь, но думаю, что вся загвоздка в логике программы. Все всегда работает по принципу: открыли ссылку, сделали конфиг канала, получили данные; сделали другой конфиг, получили данные, и т.д. и т.п., закрыли ссылку. И может конфигурацию каналов Вы делаете неправильно, либо последовательность конфигурации -> считывания неправильная.
Johnik писал(а):Я уже дозреваю, чтобы напрямую писать команды в шину, нежели разбираться с инструментами драйвера
Это да, иногда легче. Но можете использовать вперемешку - некоторые виайки-драйверы, а некоторые посылайте напрямую...
Мы делили апельсин - много наших полегло...
Blackman

Activity
leader
leader
Сообщения: 932
Зарегистрирован: 17 янв 2016, 15:02
Награды: 1
Версия LabVIEW: 6.1,8.5,20

Re: Instrument driver для мультиметров Keithley со сканером

Сообщение Blackman »

... Непонятно единый read должен быть или раздельный для сопротивления и напряжения.
User Manual page 221
...
You can use the scanner card two ways.
One is to issue a command to close a particular channel before sending other commands to take readings.
The other way is to program the scan list, and let the meter take care of closing a channel before taking a reading.

The following example program measures DC volts on channel 1, AC volts on channel 2, and 2-wire resistance on channel 3, using the ROUTe:CLOSe command.

'Example program to demonstrate taking readings on different scanner channels
'...

The following example program sets up the DMM using a scan list to measure DC voltage on channels 1, 2 and 3.
The meter takes ten sets of readings, with each set spaced 15 seconds apart, and each of the three readings in each group taken as fast as possible.
The DMM stores the readings in the buffer, and asserts SRQ when the buffer is full.
The program waits for the SRQ, then reads the readings from the buffer.

'Example program to demonstrate using the scan list
'...
Ответить

Вернуться в «Для чайников»