Считайте исторические данные из узлов сервера UA OPC в конкретные моменты времени
UaData = readAtTime(UaClient,NodeList,TimeVector)
UaData = readAtTime(NodeList,TimeVector)
UaData = readAtTime(UaClient,NodeList,TimeVector)
считывает хранимые исторические данные из узлов, данных NodeList
, в требуемые времена в TimeVector
. NodeList
массив объектов узла UA OPC, которые можно создать использование getNamespace
, browseNamespace
, или opcuanode
Временной вектор
массив MATLAB datetimes или чисел даты.
UaData
возвращен как вектор из объектов данных UA OPC. Сервер интерполирует или экстраполирует данные, если это не хранится во времена, заданные в TimeVector
. Качество данных установлено соответственно для интерполированных данных. Если readHistory
сбои, чтобы получить историю для данного узла, тот узел не включен в возвращенный объект данных UA OPC, и предупреждение выдано. Если все требуемые узлы перестали работать, ошибка сгенерирована.
UaData = readAtTime(NodeList,TimeVector)
чтения от узлов идентифицированы NodeList
. Все узлы должны иметь тот же связанный клиент.
Серверы UA OPC обеспечивают исторические данные только от узлов типа Variable
. При попытке считать значения из Object
узел, никакие данные не возвращены для того узла, состояние для того узла установлено в Bad:AttributeNotSupported
, и узел не включен в возвращенный UaData
объект.
Получите 10-минутную произведенную историю в течение текущего дня от локального сервера.
uaClnt = opcua('localhost',62550); connect(uaClnt); nodeId = '1:Quickstarts.HistoricalAccessServer.Data.Dynamic.Double.txt'; nodeList = opcuanode(2,nodeId,uaClnt); TimeVector = datetime('today'):minutes(10):datetime('now'); dataObj = readAtTime(uaClnt,nodeList,TimeVector);