Асинхронно запишите значения в группу или элементы
TransID = writeasync(GObj,Values)
TransID = writeasync(IObj,Values)
TransID = writeasync(GObj,Values)
асинхронно значения записей ко всем элементам содержали в объекте dagroup
GObj
. Values
является массивом ячеек значений и одного размера как количество элементов в GObj
. TransID
является уникальным ID транзакции для асинхронного запроса.
TransID = writeasync(IObj,Values)
асинхронно значения записей ко всем элементам, содержавшимся в векторе объектов daitem
, заданы IObj
.
Чтобы гарантировать, что определенное значение записано в правильный объект элемента, необходимо создать массив ячеек Values
на основе порядка элементов, возвращенных свойством Item
. Поскольку значения записаны в устройство, эта операция может быть трудоемкой.
Типы данных значений не должны совпадать с каноническим типом данных связанных элементов. Если преобразование типа данных не может быть выполнено, предупреждение выдано.
Когда асинхронная операция записи завершается, запись, асинхронное событие сгенерировано сервером. Если файл функции обратного вызова задан для свойства WriteAsyncFcn
, то функция выполняется, когда событие сгенерировано.
Поведение Сервера OPC при записи NaN
в элемент зависимо сервером. При попытке записать NaN
в Сервер OPC, значение может быть тихо проигнорировано Сервером OPC. Таким образом, сервер не может сгенерировать события в ответ на запись NaN
к элементу.
Сконфигурируйте клиент, группу и элементы, для Сервера Симуляции Matrikon™:
da = opcda('localhost', 'Matrikon.OPC.Simulation'); connect(da); grp = addgroup(da, 'ExWrite'); itm = additem(grp, {'Bucket Brigade.Real8', ... 'Bucket Brigade.String'});
Сконфигурируйте коллбэк WriteAsyncFcn
, чтобы читать из группы:
grp.WriteAsyncFcn = 'r=read(grp,''device'')';
Запишите значения асинхронно в группу:
writeasync(grp, {123.456, 'MATLAB is great!'})
cancelasync
| read
| readasync
| refresh
| write