copyobj

Сделайте копию объекта доступа к 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

Смотрите также

|

Представлено до R2006a