writeasync
(To be removed) Asynchronously write values to group or items
Support for the OPC Data Access (DA) standard will be removed in a future release. Instead use OPC Unified Architecture (UA). See Version History.
Syntax
TransID = writeasync(GObj,Values)
TransID = writeasync(IObj,Values)
Description
TransID = writeasync(GObj,Values)
asynchronously writes values to all the items contained in the
dagroup
object GObj
.
Values
is a cell array of values and is the same size as the
number of items in GObj
. TransID
is a unique
transaction ID for the asynchronous request.
TransID = writeasync(IObj,Values)
asynchronously writes values to all the items contained in the vector of
daitem
objects specified by IObj
.
To ensure that a specific value is written to the correct item object, you should
construct the Values
cell array based on the order of the items
returned by the Item
property. Because the values are written to
the device, this operation might be time consuming.
The data types of the values do not need to match the canonical data type of the associated items. If a data type conversion cannot be performed, a warning is issued.
When the asynchronous write operation completes, a write async event is generated
by the server. If a callback function file is specified for the
WriteAsyncFcn
property, then the function executes when the
event is generated.
Note
The behavior of an OPC server when writing NaN
to an item
is server-dependent. If you attempt to write NaN
to an OPC
server, the value might be silently ignored by the OPC server. That is, the
server might not generate any events in response to writing
NaN
to an item.
Examples
Configure a client, group, and items, for the Matrikon™ Simulation Server:
da = opcda('localhost', 'Matrikon.OPC.Simulation'); connect(da); grp = addgroup(da, 'ExWrite'); itm = additem(grp, {'Bucket Brigade.Real8', ... 'Bucket Brigade.String'});
Configure the WriteAsyncFcn
callback to read from the
group:
grp.WriteAsyncFcn = 'r=read(grp,''device'')';
Write values asynchronously to the group:
writeasync(grp, {123.456, 'MATLAB is great!'})
Version History
Introduced before R2006aSee Also
cancelasync
| read
| readasync
| refresh
| write