Вы устанавливаете необходимое поведение объекта инструмента путем конфигурирования значений свойств. Вы можете сконфигурировать значения свойств, используя set
функция или запись через точку или путем определения пар имя/значение свойства во время создания объекта. Вы можете вернуть значения свойств, используя get
функция или запись через точку.
Объекты интерфейса обладают двумя типами свойств:
Базовые свойства: Они поддерживаются для всех объектов интерфейса (последовательный порт, GPIB, VISA-VXI и так далее). Для примера, BytesToOutput
свойство поддерживается для всех объектов интерфейса.
Специфичные для интерфейса свойства: Они поддерживаются только для объектов заданного типа интерфейса. Для примера, BaudRate
свойство поддерживается только для последовательных портов и VISA-последовательных объектов.
После создания объекта инструмента можно задать конфигурируемые свойства. Кроме того, если свойство имеет конечный набор вектора символов значений, то set
также возвращает эти значения.
Для примера - конфигурируемые свойства для объекта GPIB g
показаны ниже. Сначала перечисляются основные свойства, далее указываются специфические для GPIB свойства.
g = gpib('ni',0,1); set(g) ByteOrder: [ {littleEndian} | bigEndian ] BytesAvailableFcn BytesAvailableFcnCount BytesAvailableFcnMode: [ {eosCharCode} | byte ] ErrorFcn InputBufferSize Name OutputBufferSize OutputEmptyFcn RecordDetail: [ {compact} | verbose ] RecordMode: [ {overwrite} | append | index ] RecordName Tag Timeout TimerFcn TimerPeriod UserData GPIB specific properties: BoardIndex CompareBits EOIMode: [ {on} | off ] EOSCharCode EOSMode: [ {none} | read | write | read&write ] PrimaryAddress SecondaryAddress
Можно отобразить одно или несколько свойств и их текущих значений в переменной или в командной строке.
Для примера все свойства и их текущие значения для объекта GPIB g
показаны ниже. Сначала перечисляются основные свойства, далее указываются специфические для GPIB свойства.
get(g) ByteOrder = littleEndian BytesAvailable = 0 BytesAvailableFcn = BytesAvailableFcnCount = 48 BytesAvailableFcnMode = eosCharCode BytesToOutput = 0 ErrorFcn = InputBufferSize = 512 Name = GPIB0-1 OutputBufferSize = 512 OutputEmptyFcn = RecordDetail = compact RecordMode = overwrite RecordName = record.txt RecordStatus = off Status = closed Tag = Timeout = 10 TimerFcn = TimerPeriod = 1 TransferStatus = idle Type = gpib UserData = [] ValuesReceived = 0 ValuesSent = 0 GPIB specific properties: BoardIndex = 0 BusManagementStatus = [1x1 struct] CompareBits = 8 EOIMode = on EOSCharCode = LF EOSMode = none HandshakeStatus = [1x1 struct] PrimaryAddress = 1 SecondaryAddress = 0
Чтобы отобразить текущее значение для одного свойства, вы задаете имя свойства get
.
g.OutputBufferSize ans = 512
Чтобы отобразить текущие значения для нескольких свойств, вы включаете имена свойства в качестве элементов массива ячеек.
g.BoardIndex ans = [0]
g.TransferStatus ans = 'idle'
Можно также использовать запись через точку для отображения одного значения свойства.
g.PrimaryAddress ans = 1
Значения свойств можно сконфигурировать с помощью объекта
g.EOSMode = 'read'
Чтобы сконфигурировать значения для нескольких свойств, можно задать каждый из них следующим образом.
g.EOSCharCode = 'CR' g.Name = 'Test1-gpib'
Обратите внимание, что вы можете конфигурировать только одно значение свойства за раз, используя запись через точку.
На практике можно сконфигурировать многие свойства в любое время, пока существует объект инструмента - в том числе во время создания объекта. Однако некоторые свойства не настраиваются, когда объект соединяется с инструментом или при записи информации на диск. Используйте propinfo
или обратитесь к документации свойств, чтобы понять, когда можно сконфигурировать свойство.
Имена свойства объекта прибора представлены с помощью смешанного случая. Хотя это облегчает чтение имен свойства, можно использовать любой нужный случай при указании имен свойства. Кроме того, вам нужно использовать только достаточно букв, чтобы идентифицировать имя свойства уникально, так что вы можете сокращать большинство имен свойства. Для примера можно сконфигурировать EOSMode
свойство любым из этих способов.
g.EOSMode = 'read' g.eosmode = 'read' g.EOSM = 'read'
Однако при включении имен свойства в файл следует использовать полное имя свойства. Эта практика может предотвратить проблемы с будущими релизами программного обеспечения Instrument Control Toolbox™, если укороченное имя больше не является уникальным из-за сложения новых свойств.
Если вы явным образом не задаете значение для свойства, то используется значение по умолчанию. Все конфигурируемые свойства имеют значения по умолчанию.
Примечание
Значения по умолчанию предусмотрены для всех свойств объекта прибора. Для объектов последовательного порта значения по умолчанию заданы операционной системой. Для объектов приборов GPIB и VISA значения по умолчанию предоставляются инструментами, поставляемыми поставщиком. Однако эти настройки переопределяются MATLAB® код, и не будет влиять на ваше приложение управления инструментом.
Если свойство имеет конечный набор значений векторов символов, то значение по умолчанию заключается в {}
(фигурные скобки). Для примера значение по умолчанию для EOSMode
свойство none
.
g.EOSMode ans = none
Вы также можете использовать propinfo
function или обратитесь к документации функций, чтобы найти значение по умолчанию для любого свойства.
Чтобы получить список опций, которые можно использовать на функции, нажмите клавишу Tab после ввода функции в командной строке MATLAB. Список расширяется, и можно прокрутить, чтобы выбрать свойство или значение. Для примера, когда вы создаете gpib
объект, можно получить список установленных поставщиков:
g = gpib('
При нажатии Tab после круглых скобок и одинарной кавычки, как показано здесь, отображается список установленных поставщиков GPIB, таких как keysight
, ics
, mcc
, и ni
.
Формат функции конструктора объектов GPIB:
g = gpib('vendor',boardindex,primaryaddress)
Когда вы нажимаете Tab, где должно появиться поле, вы получаете список опций для этого поля. Другие объекты интерфейса, такие как Bluetooth, Serial, TCP/IP и т.д., также включают эту возможность в свои функции конструктора объектов.
Можно также получить значения для пар «свойство-значение». Для примера, чтобы получить возможные значения терминатора строки при создании последовательного объекта, введите:
s = serial('COM1','Terminator','
Нажмите Tab после ввода одинарной кавычки после Terminator
чтобы получить возможные значения для этого свойства, как показано здесь.
Многие другие функции тулбокса также имеют заполнение клавишей Tab. Для примера при использовании fread
вы можете задать тип точности с помощью заполнения клавишей Tab.
data = fread(s,256,'
Нажмите Tab после ввода одинарной кавычки после size
(256 значений в этом примере), поскольку точность является следующим аргументом fread
функция принимает, чтобы получить возможные значения для типов точности, таких как 'double'
, 'int16'
, и т.д.
Когда список возможных значений длинный, во всплывающем окне появляется полоса прокрутки, как показано в этом примере.
Property Inspector позволяет вам просматривать и устанавливать свойства для одного или нескольких объектов инструмента. В нем содержится список всех свойств и отображаются их текущие значения.
Настраиваемые свойства в списке связаны с устройством редактирования, которое соответствует значениям, принятым конкретным свойством. Например, GUI конфигурации обратного вызова для установки ErrorFcn
, всплывающее меню для установки RecordMode
, и текстовое поле для задания TimerPeriod
. Значения свойств только для чтения выделены серым цветом.
Вы открываете Property Inspector с inspect
функция. Также можно открыть Property Inspector в браузере Рабочей области, щелкнув правой кнопкой мыши объект инструмента и выбрав Call Property Inspector в контекстном меню или дважды щелкнув объект.