getnamespace

Пространство имен сервера OPC DA

Описание

пример

S = getnamespace(DAObj) возвращает все пространство имен сервера, сопоставленное с доступом к данным (opcda) объект, заданный DAObj. S - рекурсивный массив структур, представляющий пространство имен сервера. Каждый элемент S является узлом в пространстве имен. S содержит поля:

  • Name - описательное имя

  • FullyQualifiedID - полный набор ItemID этого узла

  • NodeType - определяет узел как 'branch' узел (содержащий другие узлы) или 'leaf' узел (не содержащий других узлов)

  • Nodes - массив структур с теми же полями, что и S, представляющий узлы, содержащиеся в этой ветви пространства имен.

Использование flatnamespace для выравнивания иерархического пространства имен.

S = getnamespace(DAObj,'Filter1',Val1,'Filter2',Val2, ...) позволяет фильтровать полученное пространство имен на основе ряда доступных фильтров обзора. Доступные фильтры описаны в таблице в Browse Filters.

Примеры

свернуть все

  1. Получите все пространство имен для сервера Matrikon™ Simulation Server на локальном хосте:

    da = opcda('localhost','Matrikon.OPC.Simulation');
    connect(da);
    nsFull = getnamespace(da)
  2. Получите только первый уровень пространства имен:

    nsPart = getnamespace(da,'Depth',1)
  3. Добавьте узлы, содержащиеся в первой ветви пространства имен, в существующую структуру:

    nsPart(1).Nodes = getnamespace(da, ...
       'StartItemID', nsPart(1).FullyQualifiedID, ...
       'Depth',1);

Совет

BrowseFilter

Описание

'StartItemID'

Задайте FullyQualifiedID узла ветви в виде вектора символов или строки. Будут возвращены только узлы, содержащиеся в этом узле ветви. Некоторые Серверы OPC не поддерживают получение частичного пространства имен на основе этой опции: При попытке использовать 'StartItemID' генерируется ошибка просматривать фильтр на таком сервере.

'Depth'

Задайте глубину возвращаемого пространства имен. A 'Depth' значение 1 возвращает только узлы, содержащиеся в начальном положении. A 'Depth' значение 2 возвращает узлы, содержащиеся в начальной позиции, и все их узлы. A 'Depth' значение Inf возвращает все узлы. В сочетании с 'StartItemID' фильтр, 'Depth' фильтр предоставляет полезный способ исследования иерархии сервера имен по одному слою за раз.

'AccessRights'

Ограничивает поиск листовыми узлами с особыми характеристиками права доступа. Задайте 'read' для возврата узлов, которые включают право доступа для чтения и 'write' для возврата узлов, которые включают право доступа на запись. Пустой пустой символьный вектор ('') возвращает узлы с любыми правами доступа. Обратите внимание, что узлы ветви все еще будут возвращаться в пространстве имен, порядок содержать конечные узлы, которые имеют запрошенные права доступа.

'DataType'

Ограничивает поиск узлами с определенным каноническим типом данных. Допустимые типы данных 'double', 'single', 'int8', 'int16', 'int32', 'uint8', 'uint16', 'uint32', 'logical', 'currency', и 'date'. Используйте 'DataType' фильтр для поиска серверных элементов с определенным типом данных, например 'double' или 'date'. Обратите внимание, что узлы ветви все еще будут возвращаться в пространстве имен, порядок содержать конечные узлы, которые имеют необходимый тип данных.

См. также

Функции

Представлено до R2006a