Форматом по умолчанию возвращенных данных является M- 1 объект данных HDA OPC, содержащий значения данных, тип которых задан типом варианта OPC, сервер сохранил его как. В некоторых случаях, такой как readAtTime и readProcessed, можно указать, что операции чтения возвращают данные в нативном MATLAB® типы данных, включая структуры и массивы ячеек.
Например, можно запросить тот же набор данных следующими способами.
В этом случае операция чтения возвращает один выходной параметр, содержащий четыре поля:
struct = HDAObject.readAtTime('Random.Int1', TimeStamps, 'struct')
struct =
ItemID: 'Random.Int1'
Timestamp: [8x1 double]
Quality: [8x1 double]
Value: [8x1 int8]Когда вы запрашиваете MATLAB числовые типы, как выведено, операция чтения возвращает четыре выходных параметра: ID Элемента, Значение, Качество и TimeStamp. Value выход преобразован в тип данных MATLAB, который требуют. Следующий пример возвращает все данные о Значении как 32-битные целые числа без знака:
[itmId, val, Q, ts] = HDAObject.readAtTime('Random.Int1', TimeStamps, 'uint32');При запросе массива ячеек выход операция чтения возвращает четыре выходных параметра: ID Элемента, Значение, Качество и TimeStamp. Value выход является массивом ячеек, сохраняя исходный тип данных элемента на сервере.
[cItemId, cVal, cQ, cTimes] = HDAObject.readAtTime('Random.Int1', TimeStamps, 'cell')