Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

Update MATLAB Plots While Logging OPC Data

This example show you how to use a custom callback for the OPC Toolbox™ to plot data acquired during a logging task.

The example makes use of the display_opcdata function, which plots recently acquired data in a figure window.

PREREQUISITES:

Step 1: Create the OPC Toolbox™ Object Hierarchy

Create a hierarchy of OPC Toolbox objects.

da = opcda('localhost','Matrikon.OPC.Simulation.1');
connect(da);
grp = addgroup(da,'CallbackTest');
additem(grp,'Triangle Waves.Real8');
additem(grp,'Saw-toothed Waves.UInt2');

Step 2: Configure Property Values

Configure the logging task to acquire 200 records at 0.1 second intervals.

grp.RecordsToAcquire = 200;
grp.UpdateRate = 0.1;

Specify the display_opcdata function as the RecordsAcquiredFcn callback, which must be called after each 10 records are acquired.

grp.RecordsAcquiredFcnCount = 10;
grp.RecordsAcquiredFcn = @display_opcdata;

Step 3: Acquire Data

Start the group object. After every 10 records are acquired, the object executes the display_opcdata callback function. This callback function plots the most recently acquired records logged to the memory buffer.

start(grp)
wait(grp)

Step 4: Clean Up

Always remove OPC Toolbox objects from memory when you no longer need them.

delete(da)

Deleting the client object disconnects the client from the server, and deletes the group and item objects also.

Was this topic helpful?