Работа измерительных приборов с системой MAT LAB

February 14, 2012 by admin Комментировать »

4.4.1. Назначение матричной системы MAT LAB

Выше были рассмотрены программные средства, специально ориентированные на организацию связи с ПК и обеспечивающие передачу в ПК изображений осциллограмм и данных (кодов). Однако особенно большие возможности в обработке сигналов дают современные версии систем компьютерной математики (СКМ) [104], математические и графические средства которых чрезвычайно разнообразны и обширны. Кта- ким СКМ относятся Mathcad [105], MATLAB [106-107] и др.

К сожалению, поддержка формата файлов .CSV, используемого в осциллографах TDS 1000В/2000В, файлов сигналов генераторов AFG3000 и других этими системами прямо не обеспечивается. Кроме того, желательна непосредственная работа с осциллографами СКМ, без идентификации и активизации осциллографов указанными выше программами и без промежуточного преобразования данных в файлы. Все это обеспечивает пакет расширения Instrument Control Toolbox системы MATLAB, введенный в ее последние версии. При этом обеспечивается поддержка виртуальных инструментов стандартной архитектуры VISA (Virtual Instrument Standard Architecture).

4.4.2. Подготовка к стыковке осциллографов с системой MAT LAB

К сожалению, примеры применения в справке этого пакета (в его описании) даны применительно к более старым моделям осциллографов, подключаемым к ПК через медленные порты — коммутационный RS-232 (СОМ) и приборный GPIB. Поддержка соединения через USB-порт хотя и обеспечена пакетом Instrument Control Toolbox, но описана очень кратко и без реальных примеров применения. Это не удивительно, поскольку пакет Instrument Control Toolbox был создан до появления массовых осциллографов с USB-интерфейсом, в частности TDS1000B/2000B. Этот серьезный пробел восполнила статья [103], материал которой положен в основу приведенного ниже описания.

Сразу же отметим, что предполагается, что осциллограф серии TDS1000В/2000В подключен кабелем к порту USB и на ПК установлена СКМ MATLAB с пакетом расширения Instrument Control Toolbox. Практически использовалась версия СКМ MATLAB R2006b. Должна быть установлена и программа VISATek.

Пакет расширения Instrument Control Toolbox предоставляет для разработки программ стыковки осциллографа с системой MATLAB следующие основные функции: instrhwinf о — информация о подключенном к ПК устройстве; visa — конструирование VISA-объекта; fopen — подключение VISA-объекта к прибору; query — запись или чтение форматированных данных с прибора; fprintf — запись текста в прибор; f close — отключает связь с прибором; binblockread — поблочное чтение данных с прибора.

Для детального знакомства с каждой из этих функций достаточно в командном окне MATLAB выполнить команду

» insthelp name

Здесь name — имя функции.

Перед проектированием программ необходимо убедиться в том, что на ПК установлена программа TekVISA Для этого следует воспользоваться следующей командой:

» tekvisainfo=instrhwinfо(‘visa’,’tek’) tekvisainfo =

AdaptorDllName:                                       [1×67 char]

AdaptorDllVersion:                            ‘Version 2.4.1’

AdaptorName:                                  ‘ТЕК’

AvailableChassis:                               []

AvailableSerialPorts:                       {‘ASRL1’}

InstalledBoardlds:                              []

ObjectConstructorName:                   {‘visa(‘tek’, ‘ASRL1::INSTR’);’}

SerialPorts:                                                        {‘ASRL1’}

VenclorDlIName :                                            ‘ vi sa32 . ell 1 ‘

VenclorDriverDescription:                              ‘ Tektroni:-: VISA Driver’

VenclorDriverVersion:                                     3

Эта информация указывает на то, что изначально предполагается работа прибора с СОМ-портом ASRL1. Чтобы работать с портом USB, надо создать программу на языке системы MATLAB, определив при этом описание осциллографа. Для этого можно воспользоваться поставляемой с прибором программой OpenChoice. На рис. 4.48 показан момент регистрации осциллографа TDS-2024B в окне этой программы. Для получения списка объектов надо активизировать кнопку Refresh. В данном случае осциллограф является одним из трех подключенных к ПК USB-объектов. Выделив нужный объект, его можно идентифицировать, активизируя кнопку Identify. Имя объекта появится под списком объектов. Завершается идентификация активизацией кнопки ОК.

Рис. 4.48. Начало регистрации подключенных к ПК приборов

Далее следует выяснить имя VISA-устройства, которым является применяемый осциллограф. Для этого надо открыть окно Preferences программы OpenChoice Desktop и активизировать (мышью) кнопку VISA. Появится окно OpenChoice Instrument Manager со списком доступных для регистрации приборов. Выделив осциллограф, необходимо нажать кнопку Свойства. Это приведет к появлению окна TDS2024B с данными о приборе (рис. 4.49). В нем указано имя VISA-устройства и обычное имя прибора.

Рис. 4.49. Определение имени VISA-устройства для осциллографа TDS2024B

4.4.3. МАТ LAB-программы для работы с цифровыми осциллографами

На этом потребность в программе OpenChoice завершается, и ее можно закрыть и в дальнейшем использовать только тогда, когда нужны именно ее возможности — например, для получения на экране дисплея ПК точной копии экрана осциллографа. Все нужное для активизации осциллографа берет на себя программа, созданная в среде MATLAB. Она должна начинаться с создания объекта типа USB-VISA, выполнив команду:

» vu = visa ( ‘tek’ , ‘TJSBO: : 16 8 Э : : 874 : : СОЮ 511: : INSTR ‘ ) ;

В ней первый параметр в прямых апострофах указывает на тип объекта — осциллограф фирмы Tektronix, а второй параметр — имя VISA-устройства, определение которого было описано выше. Это имя содержит указание на порт USB, идентификационные номера устройства и его серийный номер. Важно обеспечить полную точность указания этих данных. Выполнение команды должно пройти гладко и закончиться приглашением MATLAB к дальнейшей работе в виде знака "»". При этом происходит активизация VISA-объекта осциллографа. Исполнив команду vu, можно получить данные о созданном объекте.

Для детального знакомства с объектом vu можно использовать команды вызова окон инспектора объекта и обзора методов, используемых в этом программном объекте:

» inspect(vu); » methoclsview (vu )

Эти окна показаны на фоне окна сессии MATLAB на рис. 4.50. В них содержится детальная информация о созданном VISA-объекте — в нашем случае осциллографе TDS2124B.

Рис. 4.50. Информация о VISA-объекте (осциллографе) в окнах системы MATLAB

Теперь создадим программу (М-файл) на языке системы MATLAB, которая обеспечивает активизацию осциллографа и передачу данных с памяти канала СН1 осциллографа в рабочую область (память) системы MATLAB с построением осциллограммы (см. рис. 4.51) в графическом окне системы MATLAB.

Для создания программы используется редактор М-файлов системы MATLAB. По завершении ввода программы надо записать файл с заданным именем, например osc.m. Эта программа представлена ниже и использует команды и функции пакета расширения Instrument Control Toolbox:

%Программа обеспечивает передачу данных с осциллографов %в рабочее пространство (память)системы MATLAB, создание %массивов xdata и ydata данных осциллограммы канала СН1 %и определение параметров, нужных для построения графика %осциллограммы в графическом окне системы MATLAB. %Создание VISA-объекта

vu = visa ( ‘tek’ , ‘TJSBO: : 1689 : : 874 : :C010511: : INSTR ‘ ) ; fopen(vu); %Открытие объекта vu

^Считывание данный с канала CHI и определение длины записи id=query (vu , ‘ *IDN? ‘ ) ; fprintf(vu, ‘DATA:SOURCE CHI ‘ ) ;

L=query(vu,’HORIZONTAL:RECORDLENGTH?’,’%s\n’,’%d’); fclose(vu); ^Закрытие объекта

vu.InputBufferSise = L; ^Задание длины входного буфера fopen(vu) %Открытие объекта vu %Считывание данных построения осциллограмм fpri ntf(vu, ‘CURVE?’ ) data=binblockread (vu , ‘ schar ‘ ) ;

ymult = str2num(query(vu,’WFMP:YMULT?’)); Шасштаб CHI yoff = str2num(query(vu,’WFMP:YOFF?’)); %Сдвиг CHI xmult = str2num(query(vu,’WFMP:XINCR?’)); %Масштаб по оси X Tic> f f = Str2rium (query (vu, ‘WFMP: PT_OFF? ‘)) ; %Сдвиг по оси X xzero = str2num(query(vu,’WFMP:XZERO?’)); %Нуль на оси X %Реконструкция данных для построения графики %осциллограммы уdata = ymult*(data — yoff); ^Координаты точек по оси Y xclata = xmult *(( 0 : length (data )-1) -xoff ) +xzero; %то же по оси X %Построение осциллограммы в графическом окне MATLAB рlot(xda t а,уda t а)

title(‘Scaled Waveform Data’); ylabel(‘Amplitude (V) ‘); xlabel(‘Time (s)’)

fclose(vu)                %3акрытие объекта vu

Fs = 1/xmult;             ^Вычисление частоты отсчетов

NFFT = 1024;              ^Задание числа гармоник FFT

Рис. 4.51. Реальная осциллограмма треугольного сигнала

При исполнении данной программы (командой OSC в окне командного режима MATLAB) осциллограф активизируется и создается ряд массивов, которые видны в окне рабочего пространства системы MATLAB, которое показано на рис. 4.52 слева. Справа виден график, построенный по полученным от осциллографа данным. Сравнение его с реальной осциллограммой (рис. 4.51) указывает на их полную идентичность. Из массивов наиболее важными являются ydata (значения координат точек осциллограмм по вертикали) и xdata (координаты точек по горизонтали). Важны также значения переменных масштаба и смещения по вертикальной и горизонтальной осям, положения нуля на горизонтальной оси, частота отсчетов Fs и число гармоник NFFT. Они обеспечивают реконструкцию полученных от осциллографа данных, что и позволяет строить рисунок осциллограммы в графическом окне MATLAB.

Рис. 4.52. Данные и график осциллограммы в системе MATLAB

Вполне возможно считывание данных автоматических измерений осциллографа. Например, для считывания двойной амплитуды сигнала, представленного осциллограммой, перед последней строкой приведенной выше программы достаточно вставить фрагмент:

%Считывание данны:-: измерения — двойной амплитуды fprintf(vu, ‘MEASU:IMM:SOU CHI ‘ ) ; fprintf(vu, ‘MEASU:IMM:TYP PK2 ‘ ) ; pk2pk = query(vu,’MEASU:IMMrVAL?’)

Тогда исполнение команды о S С даст вывод значения двойной амплитуды:

» OSC pk2pk =

1. 0320000648Е0

В данном случае на вход осциллографа был подан синусоидальный сигнал от генератора AFG3101 с двойной амплитудой 1 В.

Источник: Дьяконов В. П.  Генерация и генераторы сигналов / В. П. Дьяконов. — М. : ДМК Пресс, 2009. — 384 е., ил.

Оставить комментарий

микросхемы мощности Устройство импульсов питания пример приемника провода витков генератора выходе напряжение напряжения нагрузки радоэлектроника работы сигнал сигнала сигналов управления сопротивление усилитель усилителя усиления устройства схема теория транзистора транзисторов частоты