В этом примере показано, как изучить журнал событий OPC Toolbox™ после задачи регистрации.
НЕОБХОДИМЫЕ УСЛОВИЯ:
Создайте клиент, соедините и создайте связанные объекты для задачи регистрации.
da = opcda('localhost','Matrikon.OPC.Simulation.1'); connect(da); grp = addgroup(da,'CallbackTest'); additem(grp,'Triangle Waves.Real8');
Сконфигурируйте группу для регистрации только 10 записей, а затем запустите задачу и дождитесь ее завершения.
grp.RecordsToAcquire = 10; start(grp) wait(grp)
Доступ к EventLog
свойство объекта клиента.
events = da.EventLog
events = 1×2 struct array with fields: Type Data
Выполнение задачи регистрации групп сгенерировало два события: start
и stop
. Значение EventLog
свойство является массивом структур событий 1 на 2.
Список событий, записанных в EventLog
свойство, путем исследования содержимого Type
поле.
{events.Type}
ans = 1×2 cell array {'Start'} {'Stop'}
Доступ к Data
поле для получения информации о stop
событие.
stopdata = events(2).Data
stopdata = struct with fields: LocalEventTime: [2020 10 19 11 38 3.8710] GroupName: 'CallbackTest' RecordsAcquired: 10
Вычислим время между stop
событие и start
событие.
waitDuration = datetime(events(2).Data.LocalEventTime)...
- datetime(events(1).Data.LocalEventTime);
waitSeconds = seconds(waitDuration)
waitSeconds = 5.3740
Примечание: waitSeconds
не обязательно время между первой и последней выборкой в записанные данные наборе. The LocalEventTime
свойство является временем обработки MATLAB ® события, полученного от сервера; может быть некоторая задержка между сервером, отправляющим уведомление, и обработкой его MATLAB. Вы должны проконсультироваться с TimeStamp
свойство записанных данных для точной временной информации, относящейся к данным.
Отсоедините клиент от сервера и удалите объекты OPC Toolbox из памяти, когда они вам больше не нужны. Удаление объекта клиента также удаляет группу и объекты элемента.
disconnect(da) delete(da)