Этот пример показывает вам, как исследовать журнал событий 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 = 'Start' 'Stop'
Доступ к Data
поле, чтобы получить информацию о stop
событие.
stopdata = events(2).Data
stopdata = LocalEventTime: [2016 4 12 16 11 50.3170] GroupName: 'CallbackTest' RecordsAcquired: 10
Вычислите время между stop
событие и start
событие.
waitDuration = datenum(events(2).Data.LocalEventTime) ...
- datenum(events(1).Data.LocalEventTime);
waitSeconds = waitDuration * 24*60*60
waitSeconds = 5.8630
Примечание: waitSeconds
не обязательно время между первой и последней выборкой в наборе записанных данных. LocalEventTime
свойство является временем, когда MATLAB® обработал событие, полученное от сервера; может быть некоторая задержка между сервером, отправляющим уведомление и MATLAB, обрабатывающим его. Необходимо консультироваться с TimeStamp
свойство записанных данных для точной информации времени, связанной с данными.
Отключите клиент от сервера и удалите объекты OPC Toolbox из памяти, когда вам больше не будут нужны они. Удаление объекта клиента также удаляет объекты элемента и группа.
disconnect(da) delete(da)