Считайте данные из сервера HDA OPC в требуемые времена
DObj = readAtTime(HdaClient,ItmList,TimeStamps)
[ItmList,Value,Quality,TimeStamp]
= readAtTime(HdaClient,ItmList,TimeStamps,'DataType
')
S = readAtTime(HdaClient,ItmList,TimeStamps,'struct')
DObj = readAtTime(HdaClient,ItmList,TimeStamps)
считывает данные из элементов, заданных ItmList
, с Сервера HDA OPC, сопоставленного с объектом клиента HdaClient
, в то время, когда штампы заданы TimeStamps
. HdaClient
должен быть скаляр соединенный Клиент HDA OPC. ItmList
вектор символов, строка или массив, задающий один или несколько Полностью определенный ItemIDs в пространстве имен Сервера OPC. TimeStamps
должен быть вектор чисел даты MATLAB. DObj
возвращен как opc.hda.Data
объектный массив тот же размер как количество элементов задан ItmList
. Каждый элемент DObj
как гарантируют, будет иметь ту же метку времени как другие элементы DObj
.
Когда никакое значение не будет существовать для штампа требуемого времени, сервер интерполирует значение от окружающих значений, чтобы представлять значение, в то время штампуют, и Quality
поскольку та метка времени будет включать Interpolated
бит.
[ItmList,Value,Quality,TimeStamp]
= readAtTime(HdaClient,ItmList,TimeStamps,'
где DataType
')'DataType'
один из встроенных числовых массивов MATLAB ('double'
единственный
, и т.д.) или 'cell'
, возвращает данные в заданном типе данных. ItmID
возвращен как массив ячеек из символьных векторов 1 на n. Value
массив значений M на n. Quality
массив качественных идентификаторов M на n и TimeStamp
массив M-1 меток времени как числа даты MATLAB.
S = readAtTime(HdaClient,ItmList,TimeStamps,'struct')
возвращает структуру, содержащую поля ItemID
Значение
, Quality
и TimeStamp
.
Создайте Клиент HDA OPC и соедините клиент с сервером.
hdaObj = opchda('localhost','Matrikon.OPC.Simulation'); connect(hdaObj);
Считайте значения двух элементов каждые 10 секунд в течение прошлого часа.
DObj = readAtTime(hdaObj,{'Random.Real8','Random.Real4'},[now-1/24:10/86400:now]);