OPC Toolbox™ предоставляет клиент OPC UA для подключения к серверам OPC UA. Используя клиент, вы соединяетесь с сервером, запрашиваете состояние сервера, просматриваете пространство имен сервера, читаете и записываете текущие значения и считываете исторические значения с узлов на сервере. Исторические данные извлекаются как объекты OPC Data, которые позволяют обрабатывать исторические данные при подготовке к общим задачам анализа.
Вы создаете клиент OPC UA, используя opcua
функция. Настройте строение безопасности для соединения используя setSecurityModel
. Вы соединяете клиент с сервером используя connect
, опционально передает учетные данные аутентификации пользователя. Клиент включает в себя ряд свойств, описывающих возможности сервера, включая поддерживаемые модели безопасности и опции аутентификации пользователя. См. opc.ua.Client
для получения дополнительной информации о свойствах, доступных клиенту. Вы также можете запросить у сервера расширенную информацию о состоянии, используя getServerStatus
.
Вы используете клиент для выполнения любой связи с сервером, включая просмотр пространства имен сервера, чтение и запись текущих значений и чтение исторических значений с сервера.
Клиент OPC UA включает в себя Namespace
свойство, которое содержит верхний уровень пространства имен сервера как массив узлов. Переменная OPC UA Node описывает узел на сервере и содержит другие подузлы в Children
свойство. Узлы имеют NodeType
который можно 'Object'
или 'Variable'
. Узлы объекта не имеют значения, сопоставленного с ними, и используются чисто для организации пространства имен сервера. Переменные узлы сохраняют текущие значения, представляющие значение датчика или привода, сопоставленное с сервером. Для получения дополнительной информации смотрите opc.ua.Node
Серверы могут выполнять историзацию узлов (хранить предыдущие значения данных для этого узла). The Historizing
свойство Node определяет, является ли сервер историческим узлом или not.Если вы пытаетесь получить исторические данные из узла Variable с Historizing
установлено на false
данные не возвращаются, и отображается ошибка.
Можно считать и записывать текущие значения и извлекать исторические данные, используя переменные Node непосредственно. Это просто короткая рука для выполнения тех же операций на узле Client
свойство.
Данные, полученные с серверов OPC UA, включают три важных значения. Значение сопровождается качеством и временной меткой. Качество представляет, насколько точно Значение данных рассматривается как отражающее фактическое исходное значение, присоединенное к серверу. Временная метка представляет время, в течение которого сервер записал значение или получил уведомление от источника данных о том, что значение является текущим.
При извлечении текущих значений значения, качество и временная метка извлекаются в отдельные массивы. При извлечении исторических значений серверы OPC UA могут возвращать разное количество массивов Value, Quality и Timestamp для каждого запрашиваемого узла. Эти данные упаковываются в объект OPC UA Data, который позволяет вам обрабатывать этот набор данных в процессе подготовки к общим задачам анализа. Для получения дополнительной информации введите
help opc.ua.Data
Пример работы с данными OPC UA см. в разделе Визуализация и предварительная обработка данных OPC UA.
Значения качества OPC UA являются 32-битными целочисленными значениями. OPC UA Qualities кодируют много различных характеристик качества данных, возвращаемых от текущей или исторические данные операции чтения, включая Основное качество (Хорошее, Неопределенное или Плохое), качество substatus (в зависимости от Основного качества), значение пределов (Высокий предел, Низкий предел, Константа) и историю источника и характеристик (Raw, Interpolated, Calculed). Можно запросить эти признаки по отдельности с помощью функций, характерных для переменной Качество, которая возвращается в операции чтения. Для получения дополнительной информации введите
help opc.ua.QualityID
Серверы OPC UA возвращают метки времени для состояния сервера и для всех текущих и исторических операций чтения. Временная метка представляет время, в которое сервер записал значение данных, возвращенное в операции чтения. Временные метки представлены в MATLAB® около datetime
значения. Значения datetime всегда возвращаются в часовом поясе клиента MATLAB, используемого для извлечения данных с сервера OPC UA. Функции исторического чтения OPC UA требуют временных областей значений или определенных массивов временных меток, по которым можно получить исторические данные. Вы можете задать временные области значений, используя MATLAB datetime
значения или в виде номеров дат MATLAB. Любое числовое значение, переданное как временная метка, интерпретируется как номер даты MATLAB. Для функций, требующих начальной и конечной временной метки, можно также передать стартовую временную метку и a duration
.