Используя read
и readasync
функции описали в Считанных Данных из Элемента, можно получить информацию о значениях элемента Сервера OPC по запросу. OPC Data доступ к спецификации предоставляет другой механизм клиентам, чтобы получить информацию о значениях серверного элемента. Этот механизм позволяет Серверу OPC уведомлять клиент, когда значение серверного элемента или качество обновились. Этот механизм называется событием изменения данных. Программное обеспечение OPC Toolbox™ поддерживает уведомление о событии изменения данных путем выполнения функции MATLAB®, когда событие изменения данных получено от связанного Сервера OPC. В этом разделе описывается использовать уведомление о событии изменения данных.
Событие изменения данных имеет место в dagroup
уровень объектов. Используя dagroup
свойства объектов, можно управлять, сгенерировано ли событие изменения данных для конкретной группы, минимальное время между последовательными событиями и функция MATLAB, чтобы запуститься, когда уведомление о событии получено и обработано программным обеспечением OPC Toolbox. Можно также управлять, какие элементы в конкретной группе должны быть проверены для изменений данных. Таким образом можно управлять номером и частотой событий изменения данных, которые должен обработать MATLAB. На занятом Сервере OPC можно также выключить уведомление об изменении данных для групп, что вы в настоящее время не интересуетесь.
Следующие разделы описывают, как управлять уведомлением об изменении данных.
Управляйте Уведомлением об Изменении Данных для Группы, описывает, как выключить уведомление об изменении данных для dagroup
объект.
Временно Отключите Элементы в Группе, описывает, как управлять, какие элементы в группе должны быть проверены для изменений данных.
Настройте предоставленную информацию Ответа События Изменения Данных о том, как сконфигурировать функцию MATLAB, чтобы запуститься, когда событие изменения данных имеет место.
Следующие свойства dagroup
возразите управлению, уведомляет ли сервер, что группа данных изменяется на элементах в той группе:
UpdateRate
: UpdateRate
свойство задает уровень, на котором Сервер OPC должен контролировать значения серверного элемента и сгенерировать события изменения данных. Даже если значение серверного элемента будет изменяться более часто, чем частота обновления, Сервер OPC только сгенерирует изменение данных в интервале, заданном частотой обновления.
Subscription
: Subscription
свойство задает, сгенерирует ли Сервер OPC событие изменения данных для группы. Когда вы создаете dagroup
объект, Subscription
свойство установлено в 'on'
. Когда вы устанавливаете Subscription
свойство к 'off'
, вы говорите Серверу OPC не генерировать события изменения данных для той группы.
Active
: Active
свойством должен быть 'on'
поскольку данные изменяют события, которые будут сгенерированы. Когда вы создаете dagroup
объект, Active
свойство установлено в 'on'
. Когда вы устанавливаете Active
свойство к 'off'
, вы удаляете любую способность считать данные из группы, изменяют ли посредством операций чтения или данных события.
Сводные данные чтения группы, запишите, и поведение изменения данных для Active
и Subscription
свойства даны в следующей таблице.
Активный | Подписка | Чтение | Запись | Изменение данных |
---|---|---|---|---|
|
| Да | Да | Да |
|
| Да | Да | Нет |
|
| Нет | Нет | Нет |
|
| Нет | Нет | Нет |
Можно временно отключить элементы в группе, не удаляя элемент из группы. Когда вы отключаете daitem
объект, Сервер OPC больше не наблюдает изменения в значении связанного серверного элемента и поэтому не сгенерирует события изменения данных, когда значение того серверного элемента изменяется.
Можно отключить daitem
объект путем установки, что Active
объекта свойство к
'off'
. Можно повторно включить daitem
объект путем установки Active
свойство к 'on'
.
Можно обеспечить Сервер OPC, чтобы сгенерировать событие изменения данных для всех активных элементов в группе при помощи refresh
функция с dagroup
возразите в качестве первого аргумента. Сервер OPC сгенерирует событие изменения данных, содержащее информацию для каждого активного элемента в группе.
Можно передать дополнительный второй аргумент refresh
функция, чтобы сообщить Серверу OPC, где получить значения данных, которые передают обратно в событии изменения данных. Путем определения источника 'device'
, вы даете Серверу OPC команду обновлять значения от устройства. Путем определения источника 'cache'
(значение по умолчанию), вы сообщаете Серверу OPC к возвращаемым значениям из кэша Сервера OPC.
Программное обеспечение OPC Toolbox использует события изменения данных для многих задач. Следующие действия происходят, когда событие изменения данных имеет место:
Value
, Quality
, и TimeStamp
свойства daitem
объект автоматически обновляется. Для получения дополнительной информации об этих свойствах смотрите OPC Data: Значение, Качество и TimeStamp.
Если dagroup
объект регистрирует, событие изменения данных регистрируется к памяти и/или диску как запись. Для получения информации о логгировании смотрите, Регистрируют Данные о Сервере OPC.
Если dagroup
DataChangeFcn
объекта свойство не пусто, эта функция вызвана информацией о событии изменения данных. По умолчанию это свойство пусто, поскольку события изменения данных часто имеют место. Можно настроить поведение тулбокса путем установки этого свойства вызвать функцию, которую вы выбираете. Для получения информации о событии изменения данных смотрите страницу с описанием для
DataChangeFcn
свойство.
Примечание
Если вы отключаете события изменения данных путем установки Subscription
свойство к 'off'
или Active
свойство к 'off'
, ни одно из упомянутых выше действий не может произойти. Вы не можете изменить Active
или Subscription
свойства, в то время как dagroup
объект регистрирует, в противном случае задача логгирования никогда не может завершаться.
Одно из действий, которое происходит, когда программное обеспечение OPC Toolbox получает событие изменения данных от Сервера OPC, является выполнением функции, определяемой в DataChangeFcn
свойство. Путем установки этого свойства на имя функции, которую вы записали, можно полностью настроить поведение события изменения данных тулбокса. Например, можно сконфигурировать dagroup
возразите, чтобы контролировать серверный элемент, который обновляется от интерфейса оператора. Путем нажатия на кнопку в интерфейсе оператора значение серверного элемента изменится, инициируя событие изменения данных на той группе. Путем конфигурирования DataChangeFcn
свойство запустить функцию MATLAB, которая выполняет оптимизацию цикла управления, можно позволить оператору инициировать тест производительности цикла управления на всех критических циклах управления на объекте.