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 объект, который имеет записи в памяти из сеанса логгирования, копируется без этих записей.

    Объекты OPC HDA не поддерживают 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