Этот пример показывает вам, как исследовать журнал событий 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)