opcuanode

Создайте объекты узла OPC UA

Описание

пример

NodeList = opcuanode(Index,Id) создает объект узла OPC UA или массив объектов из информации в Index и Id. Index - числовой или числовой вектор. Id - вектор символов, строка, скалярное целое число или массив ячеек, содержащий векторы символов и скалярные целые числа. Используйте этот синтаксис для создания объектов узлов для известных узлов на сервере OPC UA. Каждый узел Name для свойства задано значение 'Index:Identifier', и другие свойства узла остаются пустыми, пока вы не используете узел для доступа к серверу OPC UA. Когда вы успешно используете объект узла с клиентом используя writeValue или readValue, а Client свойство узла устанавливается на клиент, и другие атрибуты считываются с этого клиента.

пример

NodeList = opcuanode(Index,Id,UaClient) немедленно связывает объект узла с заданным клиентом UaClient. Если UaClient соединяется в это время, opcuanode функция также извлекает другие свойства с сервера, сопоставленного с UaClient.

Использовать opcuanode создание объектов узлов только тогда, когда вы знаете индекс и идентификатор интересующих вас узлов. Для узлов, которые необходимо найти с сервера, создайте объекты узла, просматривая пространство имен связанного объекта клиента OPC UA с browseNamespace или getNamespace, или просмотреть Parent и Children свойства существующих объектов узлов.

Примеры

свернуть все

Создайте объект узла из значений индексов и идентификаторов. Используйте узел, чтобы записать значение на сервер, затем обратите внимание, что узел имеет установленные свойства с сервера.

S = opcuaserverinfo('localhost');
UaClient = opcua(S);
connect(UaClient);
myNode = opcuanode(2,10225); % Not associated with server yet.
writeValue(UaClient,myNode,pi)
myNode
myNode = 
OPC UA Node:
   Node Information:
                      Name: 2:10225
               Description: 
            NamespaceIndex: 2
                Identifier: 10225
                  NodeType: Variable

   Hierarchy Information:
                    Parent: ''
                  Children: 0

   Server Information:
            ServerDataType: Float
        AccessLevelCurrent: read/write
        AccessLevelHistory: none
               Historizing: 0

Создайте известный объект узла и используйте его для поиска других узлов.

UaClient = opcua('localhost',51210);
connect(UaClient);
boilerNode = opcuanode(4,1241,UaClient);
ftxNodes = findNodeByName(boilerNode,'FTX','-partial')
ftxNodes = 
1x2 OPC UA Node array:
    index   Name   NsInd  Identifier  NodeType  Children
    -----  ------  -----  ----------  --------  --------
      1    FTX001  4      1243        Object    1
      2    FTX002  4      1266        Object    1

Входные параметры

свернуть все

Индекс узла, заданный как числовое значение или массив.

Пример: 2

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Идентификатор узла, заданный как число, символ, строковое значение или массив из них.

Пример: 10225

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | char | string

Клиент OPC UA, заданный как opc.ua.Client объект. Вы можете создать клиент, используя opcua функция.

Пример: opcua()

Выходные аргументы

свернуть все

Узлы OPC UA, возвращенные как массив opc.ua.Node объекты. Объект узла OPC UA хранит информацию о узле в сервере OPC UA. Вы можете читать и записывать текущие данные и считать исторические данные с помощью переменных узлов. Вы можете просматривать пространство имен с помощью объектов и переменных.

Тип узла описывается его NodeType свойство, которое может указывать на 'Object' или 'Variable' тип. Узлы переменного типа могут содержать значения данных, в то время как узлы объектного типа не могут содержать значения. Каждый тип узла может содержать другие узлы: узлы объекта могут содержать узлы объекта и переменные узлы, узлы переменных могут содержать другие узлы переменных.

Объекты узла включают следующие свойства.

СвойствоОписание
Тождества
NameОтображаемое имя узла.
NodeTypeТип узла: 'Object' или 'Variable'.
NamespaceIndexИндекс пространства имен для этого узла.
IdentifierTypeТип идентификатора: 'string', 'numeric', или 'GUID'.
IdentifierУникальный идентификатор. Вектор символов или целое число, в зависимости от IdentifierType.
Свойства связи
ParentРодительский узел этого узла.
ChildrenДочерние узлы этого узла.
ClientСсылка на клиент OPC UA, сопоставленный с узлом.
FullyQualifiedIdВектор символов, который однозначно описывает этот узел.
Основные атрибуты
DescriptionВектор символов, описывающий узел.
MinimumSamplingIntervalМинимальная скорость, с которой может измениться значение узла.
HistorizingTrue, если сервер хранит историю для узла.
ServerDataTypeТип данных OPC UA для узла.
Информативные атрибуты
AccessLevelCurrentУровень доступа пользователя к текущему значению: 'none', 'read', 'write', 'read/write'.
AccessLevelHistoryУровень доступа пользователя к историческим значениям: 'none', 'read', 'write', 'read/write'.
ServerValueRankОграничения размера на значение сервера: 'unrestricted', 'scalar', 'vector', или 'array'.
ServerArrayDimensionsИзмерения массива значения сервера. Возможно, это пустое свойство не является обязательным для серверов.
Введенный в R2015b