Сделайте копию объекта доступа к OPC Data
NewObj = copyobj(Obj)
NewObj = copyobj(Obj, ParentObj)
NewObj = copyobj(Obj) делает копию всех объектов в Obj, и возвращает их в NewObj. Obj может быть скалярный объект OPC Toolbox™ или вектор из объектов тулбокса.
NewObj = copyobj(Obj, ParentObj) делает копию объектов в Obj в родительском объекте ParentObj. ParentObj должен быть допустимый скалярный родительский объект для Obj. Если любые объекты в Obj не может быть создан в ParentObj, предупреждение будет сгенерировано.
Скопированный объект тулбокса содержит новые версии всех дочерних элементов, их дочерних элементов и любых родительских элементов, которые требуются, чтобы создавать тот объект. Скопированный объект отличается от своего родительского объекта следующими способами:
Значения свойств только для чтения не будут скопированы в новый объект. Например, если объект сохранен с Status значение свойства 'connected', объект будет воссоздан с Status значение свойства 'disconnected' (значение по умолчанию). Можно использовать propinfo определить, только ли свойство для чтения. А именно, связанный opcda объект копируется в разъединенном состоянии и копии логгирования dagroup объект не сбрасывается к состоянию логгирования.
Скопированный dagroup объект, который имеет записи в памяти от сеанса логгирования, копируется без тех записей.
Объекты ОПКА ХДЫ не поддерживают copyobj.
Создайте связанный клиент Доступа к данным с группой, содержащей элемент:
da1 = opcda('localhost', 'Matrikon.OPC.Simulation'); connect(da1); grp1 = addgroup(da1, 'CopyobjEx'); itm1 = additem(grp1, 'Random.Real8');
Скопируйте объект клиента. Это также копирует объекты элемента и группа.
da2 = copyobj(da1); grp2 = da2.Group
Измените первое название группы и обратите внимание, что второе название группы неизменно:
grp1.Name = 'NewGroupName';
grp2.Name